使用Passbook API发送推送通知

时间:2012-10-08 18:12:57

标签: php json apple-push-notifications payload passbook

我正在尝试使用Passbook API发送一些推送通知。我创建了以下发送给APNS服务器的JSON对象:

$payload = json_encode(array('aps' => array('alert' => 'Hello World!')));

但是,此消息未到达。我一直在互联网上搜索使用Passbook时如何做到这一点,但我找不到它。当我发送这样的空载荷时:

$payload = json_encode(new ArrayObject());

(更新)通知到达并且通过更新。

那么,有没有人知道我应该如何向APNS服务器发送自定义消息?

提前致谢!

1 个答案:

答案 0 :(得分:8)

Passbook专门忽略了推送通知的有效负载。它故意忽略它,因此如果错过推送通知则不会错过更改。

Passbook简单地将通知用作信号,告诉它使用推送通知所签署的证书中包含的PassIdentifier来更新通行证。

一旦收到通知(同样,无论有效负载如何),它只会向webserviceURL发送一个GET请求,以获取与DeviceID和serialNumber相关的传递。如果以前请求更新,它还会添加一个查询参数passUpdatedSince。如果这是第一次请求更新,则查询参数将不存在。

因此,总而言之,您实际上不应该通过推送通知向Passbook传递发送自定义JSON有效负载,这与您正在与自己的应用进行通信的经典推送通知相反。