全部好,
有没有人能够从iPhone APNS反馈服务使用PHP返回的二进制数据中提取设备令牌?我正在寻找类似于使用python实现的东西 http://www.google.com/codesearch/p?hl=en&sa=N&cd=2&ct=rc#m5eOMDWiKUs/APNSWrapper/init.py&q=feedback.push.apple.com
根据Apple文档,我知道前4个字节是时间戳,接下来的2个字节是令牌的长度,其余字节是二进制格式的实际令牌。 (http://developer.apple.com/IPhone/library/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/CommunicatingWIthAPS/CommunicatingWIthAPS.html#//apple_ref/doc/uid/TP40008194-CH101-SW3)
我成功地从数据反馈服务返回中提取时间戳,但是我使用PHP的内置方法bin2hex()转换为十六进制后获得的设备令牌实际上与原始设备令牌不同。我在转换中做了一些愚蠢的事情。如果他们已经使用PHP实现了APNS反馈服务,有人可以帮助我吗?
TIA, -Anish
答案 0 :(得分:1)
答案 1 :(得分:0)
实现这一目标的最佳地点实际上是iPhone门户网站内部的Apple开发者论坛 - 有大量不同语言的示例用于处理这些推送请求。
我目前也参加360iDev推送会议,并且他们注意到可以在以下位置找到开源PHP服务器:
答案 2 :(得分:0)
获得二进制流后,您可以像这样处理它:
while ($data = fread($stream, 38)) {
$feedback = unpack("N1timestamp/n1length/H*devtoken", $data);
// Do something
}
$ feedback将是一个包含元素“timestamp”,“length”和“devtoken”的关联数组。