我正在使用PHP Restful服务使用Firebase云消息传递(FCM)向Android设备发送推送通知。如何跟踪FCM推送通知是否使用消息ID发送或不使用
使用以下URL我能够成功发布消息到FCM并获得相应的消息ID。
https://gcm-http.googleapis.com/gcm/send
但如何知道消息是否被传递到设备或不使用上述消息的ID。
任何帮助,将不胜感激。
我正在使用PHP Restful服务使用Firebase云消息传递(FCM)向Android设备发送推送通知。如何跟踪FCM推送通知是否使用消息ID发送或不使用
使用以下URL我能够成功发布消息到FCM并获得相应的消息ID。
https://gcm-http.googleapis.com/gcm/send
但如何知道消息是否被传递到设备或不使用上述消息的ID。
任何帮助,将不胜感激。
下面是成功地发送到一个JSON消息的简单情况不规范的ID一个接收者在响应:
{ "multicast_id": 108,
"success": 1,
"failure": 0,
"canonical_ids": 0,
"results": [
{ "message_id": "1:08" }
]
}
下面是与成功3个消息PR(分别标识4,8,15,16,23,和42)JSON结果6页的收件人已返回1个规范注册令牌,以及3个错误:
{ "multicast_id": 216,
"success": 3,
"failure": 3,
"canonical_ids": 1,
"results": [
{ "message_id": "1:0408" },
{ "error": "Unavailable" },
{ "error": "InvalidRegistration" },
{ "message_id": "1:1516" },
{ "message_id": "1:2342", "registration_id": "32" },
{ "error": "NotRegistered"}
]
}
成功表示请求已成功处理。它可能不会告诉消息的确切传送。
为了完整地了解请read
我知道通知是否已成功发送给用户? – Naresh
他们不保证传递,但他们会尝试最多4周的时间来传递消息,具体取决于您在发送给Google GCM服务器的消息中设置的持续时间,如果您希望让Google保留数据以最终传递消息给该设备在消息被传送时设备处于脱机状态。 –
当设备确认收到CCS发送的消息时,您可以使用上游消息传递获取交付收据(从CCS发送到您的第三方应用服务器)。 –
试试这个:在PHP端你从FCM响应像
{
"multicast_id":8042731220476088762,
"success":1,
"failure":0,
"canonical_ids":0,
"results":[{"message_id":"0:1474456734183863%97da1d69f9fd7ecd"}]
}
这样的消息被传递到该ID是否成功是1
是的,我收到了这个回应,成功是1,虽然消息没有传递到设备。我想知道通知是否已成功传递给用户使用消息ID – Naresh
尝试我的下面的答案 –