// =============================== // Firebase Push Notification // =============================== // Firebaseサービスアカウントパス define('FIREBASE_CREDENTIALS', ABSPATH . 'wp-content/firebase/firebase-service-account.json'); // アクセストークン取得 function get_firebase_access_token() { $credentials = json_decode(file_get_contents(FIREBASE_CREDENTIALS), true); $header = [ "alg" => "RS256", "typ" => "JWT" ]; $now = time(); $payload = [ "iss" => $credentials['client_email'], "scope" => "https://www.googleapis.com/auth/firebase.messaging", "aud" => "https://oauth2.googleapis.com/token", "exp" => $now + 3600, "iat" => $now ]; $jwt = generate_jwt($header, $payload, $credentials['private_key']); $response = wp_remote_post("https://oauth2.googleapis.com/token", [ 'body' => [ 'grant_type' => 'urn:ietf:params:oauth:grant-type:jwt-bearer', 'assertion' => $jwt ] ]); $body = json_decode(wp_remote_retrieve_body($response), true); return $body['access_token']; } // JWT生成 function generate_jwt($header, $payload, $private_key) { $base64UrlHeader = str_replace(['+', '/', '='], ['-', '_', ''], base64_encode(json_encode($header))); $base64UrlPayload = str_replace(['+', '/', '='], ['-', '_', ''], base64_encode(json_encode($payload))); $signature = ''; openssl_sign($base64UrlHeader . "." . $base64UrlPayload, $signature, $private_key, 'sha256WithRSAEncryption'); $base64UrlSignature = str_replace(['+', '/', '='], ['-', '_', ''], base64_encode($signature)); return $base64UrlHeader . "." . $base64UrlPayload . "." . $base64UrlSignature; } // 投稿公開時に通知送信 add_action('publish_post', 'send_firebase_notification'); function send_firebase_notification($post_id) { $post = get_post($post_id); if ($post->post_status !== 'publish') { return; } $access_token = get_firebase_access_token(); $project_id = "あなたのFirebaseプロジェクトID"; // ←変更必須 $url = "https://fcm.googleapis.com/v1/projects/{$project_id}/messages:send"; $message = [ "message" => [ "topic" => "all", // Swift側で購読しているトピック名 "notification" => [ "title" => get_bloginfo('name'), "body" => $post->post_title ], "data" => [ "url" => get_permalink($post_id) ] ] ]; wp_remote_post($url, [ 'headers' => [ 'Authorization' => 'Bearer ' . $access_token, 'Content-Type' => 'application/json' ], 'body' => json_encode($message) ]); } カリフォルニア州で稀少な「ウルヴァリン」の目撃情報、複数寄せられる – Switch News(スウィッチ・ニュース)

Switch news

知っておきたい世界のニュース

カリフォルニア州で稀少な「ウルヴァリン」の目撃情報、複数寄せられる

カリフォルニア州で稀少な「ウルヴァリン」の目撃情報、複数寄せられる
CDFW

カリフォルニア州東部の山脈で、非常に珍しい「ウルヴァリン」の目撃情報が複数寄せられた。

 

100年間で2頭しか確認できず

 

「ウルヴァリン」とは「クズリ(別名:クロアナグマ:イタチ科)」のこと。体長は65cmから1mほどで小柄だが、性格は非常に獰猛で、自分よりも大型の獲物の背中に飛び乗って、攻撃するという。

 

主に寒い地域、カナダやスウェーデン、ノルウェーやフィンランド、アメリカ西部にも生息していると言われているが、カリフォルニア州では過去100年間で確認された「クズリ」は2頭しかいない。

 

flickr_USFWS Mountain-Prairie

 

ところが先月、カリフォルニア州東部に広がるシエラ・ネバダ(山脈)で、「クズリ」の目撃情報が複数寄せられた。

 

専門家も「クズリ」と確認

 

カリフォルニア州魚類野生生物局(CDFW)は先日、5月にシエラ・ネバダ(山脈)で同一の「クズリ」と思われる複数の目撃情報を確認したと発表した。

 

2件の目撃情報は、Inyo郡とMono郡の「Inyo National Forest」から寄せられ、3件目は、Tuolumne郡の「ヨセミテ国立公園」で目撃されたという。

 

これらの画像や動画は、それぞれ別の場所で、別の人物によって撮影され、分析のためにCDFWに送られた。(ただし現時点で公開されているのは、写真のみ)

 

その後、CDFWが森林局の「クズリ」の専門家と協議。科学者たちは、その大きさ、体の比率、色合い、動きのパターンなどから、「クズリ」であることを確認したそうだ。

 

CDFW

過去とは別の個体である可能性

 

「クズリ」は、カナダとアラスカに広く分布し、アメリカでもロッキー山脈とカスケード山脈(カナダから連なる)には、より少数の個体群があるという。

 

しかし、カリフォルニア州では、2008年から2018年までに1頭のクズリを記録したのみ。それ以前に、州内で「クズリ」の目撃情報が確認されたのは1920年代だったという。

 

クズリの寿命は、通常12~13年ほど。そのことを考えると、今回の「クズリ」は、2018年に目撃されたものとは、別の個体である可能性が高い。

 

カリフォルニア州では、「クズリ」は完全保護種に分類され、カリフォルニア絶滅危惧種法に基づく「絶滅危惧種」に指定されている。

 

「クズリ」は森の中で最強の動物と言われることもあり、オオカミも恐れないことから、「狼狩りをする人」という意味で「ウルヴァリン」と呼ばれるようになったとの説があるという。(了)

 

出典元:ABC7:Rare sighting: Wolverine spotted by multiple witnesses in Sierra Nevada Mountains(6/3)

出典元:CDFW:Rare Sighting Of Wolverine Confirmed In Multiple California Counties(6/1)

記事が気に入ったら
Switch Newsをフォローしよう!


Return Top