PHPを使用してFirebase APIを使用し、JSON形式を使用して投稿データを送信しています。応答は私に与えていmessage_id
ますが、メッセージは配信されていません。
同じフィールドを持つ API の代わりに Firebase コンソールを使用すると、正常に配信されました。
私のphpコード:
<?php
$json_data = '{ "data": {
"title": "Hey you got a message",
"text": "Hi from firebase api"
},
"to": "/topics/all",
"priority": "high"
}';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://fcm.googleapis.com/fcm/send');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Authorization:key="Used my server key here"'
));
curl_setopt($ch, CURLOPT_POSTFIELDS, $json_data);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$output = curl_exec($ch);
curl_close($ch);
echo $output;
?>
応答:
{"message_id":64666973642901*****}
PS: 情報を隠すためにアスタリスクを使用しました。
更新:to
フィールドを特定のトークン
に設定すると、メッセージが配信されます。ただし、に設定すると機能しませんtopics/all
。コンソールと同じように、アプリに関連付けられているすべての人に送信できる他の方法はありますか?