Я использую этот плагин для добавления push-уведомлений в мой проект iOS -> https://github.com/fechanique/cordova-plugin-fcm
Я могу получать уведомления и открывать приложение по щелчку.НО, когда я отправляю уведомление с моего сервера с параметрами, оно не работает (функция onNotification (обратный вызов) не срабатывает).
Я использую эту структуру для отправки уведомлений с моего сервера:
{
"notification":{
"title":"Notification title",
"body":"Notification body",
"sound":"default",
"click_action":"FCM_PLUGIN_ACTIVITY",
"icon":"fcm_push_icon"
},
"data":{
"param1":"value1",
"param2":"value2"
},
"to":"token_id",
"priority":"high",
}
Кто-нибудь знает, в чем проблема?Единственная проблема связана с функцией onNotification.
FCMPlugin.onNotification(function(data){
if(data.wasTapped){
console.log( JSON.stringify(data) );
}else{
console.log( JSON.stringify(data) );
}
});
Мой php код для отправки уведомления с сервера:
$url = "https://fcm.googleapis.com/fcm/send";
$token = $fcmtokuser;
$serverKey = 'serverkey';
$body = "".$nottext."";
$notification = array( 'body' => $body,'title' => $title, 'click_action'=> 'FCM_PLUGIN_ACTIVITY', 'badge' => $totalbadgenum);
$datanot = array( 'param1' => $t4, 'param2' => 'newnot');
$arrayToSend = array('to' => $token,'data'=> $datanot, 'notification' => $notification,'priority'=>'high');
$json = json_encode($arrayToSend);
$headers = array();
$headers[] = 'Content-Type: application/json';
$headers[] = 'Authorization: key='. $serverKey;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST,"POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $json);
curl_setopt($ch, CURLOPT_HTTPHEADER,$headers);
$response = curl_exec($ch);
if ($response === FALSE) {
die('FCM Send Error: ' . curl_error($ch));
}
curl_close($ch);