I am trying to send push notification to my android device from server using firebase cloud messaging system. I was able to successfully register my device and token for my devi
Try to use 'to' instead of 'registration_ids'
Here is body data saved in postman history[i don't remember whether it works or not]:
{ "data": {
"score": "5x1",
"time": "15:10" }, "to" : "token_id"}
Check this script: If you want to do topic messaging
$url = "https://fcm.googleapis.com/fcm/send";
$topic = "topic_name";
$fields = array(
"to" => "/topics/".$topic,
"data" => $message,
"time_to_live" => 30,
"delay_while_idle" => true
);
$auth_key = "auth_key";
$headers = array(
"Authorization: key=".$auth_key,
"Content-Type: application/json"
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($fields));
$result = curl_exec($ch);
Hope that help
Thanks much @Shubham for the solution.
Guys please use @Shubham's code for sending notifications to "Topics'
I have modified his code a bit to address Single recipient messaging. Here it goes
<?php
$url = "https://fcm.googleapis.com/fcm/send";
$val = "<your recipient id>";
$message = array("message" => "This is a test message from server");
$fields = array(
"to" => $val,
"data" => $message,
"time_to_live" => 30,
"delay_while_idle" => true
);
$auth_key = "<Your auth key>";
$headers = array(
"Authorization: key=".$auth_key,"Content-Type: application/json"
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($fields));
$result = curl_exec($ch);
?>
to - Single recipient
registration_ids - multicast messages (Many recipients - should be in array)
This may not be the ideal solution from my end but it definitely works :)