Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save MohammadaliMirhamed/a01f41b077a1887a1e49b09c14838fef to your computer and use it in GitHub Desktop.
Save MohammadaliMirhamed/a01f41b077a1887a1e49b09c14838fef to your computer and use it in GitHub Desktop.
forked from MohammadaliMirhamed/PhpFireBaseNotificationSample.php -Simple PHP FireBase (FCM) script showing how to send an Android push notification. -Be sure to replace the SERVER_API_ACCESS_KEY with a proper one from the Google API's Console page. -Create project on firebase console, It returns me Server Accesss key and Legacy key under Projec…
<?php
#API access key from Google API's Console
define( 'API_ACCESS_KEY', 'YOUR-SERVER-API-ACCESS-KEY-GOES-HERE' );
$registrationIds = $_GET['id'];
$topic = $_GET['topic'];
#prep the bundle
$msg = array
(
'body' => 'Body Of Notification',
'title' => 'Title Of Notification',
'icon' => 'myicon',
'sound' => 'mySound'
);
$fields = array
(
'notification' => $msg
);
if ($topic){
$fields = array_merge($fields, array('condition' => "'$topic' in topics"));
}else if ($registrationIds){
$fields = array_merge($fields, array('to' => $registrationIds));
}else{
echo "No topic or target device ID was informed. Please review your parameters!";
exit;
}
print_r( $fields);
$headers = array
(
'Authorization: key=' . API_ACCESS_KEY,
'Content-Type: application/json'
);
#Send Reponse To FireBase Server
$ch = curl_init();
curl_setopt( $ch,CURLOPT_URL, 'https://fcm.googleapis.com/fcm/send' );
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 );
curl_close( $ch );
#Echo Result Of FireBase Server
echo $result;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment