我可以通过PHP发送到我的swift 2 app推送通知。 现在我想有一个反馈服务的脚本。
我发现了这个:
$ctx = stream_context_create();
stream_context_set_option($ctx, 'ssl', 'local_cert', 'xxx.pem');
stream_context_set_option($ctx, 'ssl', 'verify_peer', false);
$fp = stream_socket_client('ssl://feedback.push.apple.com:2196', $error, $errorString, 60, STREAM_CLIENT_CONNECT, $ctx);
if (!$fp) {
echo "Failed to connect feedback server:".$err.". ".$errstr."<br />";
exit();
}
else {
echo "Connection to feedback server OK<br />";
}
echo "APNS feedback results<br />";
while ($devcon = fread($fp, 38))
{
$arr = unpack("H*", $devcon);
$rawhex = trim(implode("", $arr));
$feedbackTime = hexdec(substr($rawhex, 0, 8));
$feedbackDate = date('Y-m-d H:i', $feedbackTime);
$feedbackLen = hexdec(substr($rawhex, 8, 4));
$feedbackDeviceToken = substr($rawhex, 12, 64);
echo "TIMESTAMP:" . $feedbackDate . "<br />";
echo "DEVICE ID:" . $feedbackDeviceToken. "<br /><br />";
}
fclose($fp);
此代码向我显示:
Connection to feedback server OK
APNS feedback results
但没有结果。我几分钟前发送并将通知推送到令牌0.这是一个无效的令牌。
但为什么我没有通过反馈服务获得此无效令牌?
答案 0 :(得分:0)
只有在显示某些内容时才能获得结果。结果会显示一次,之后会被删除,因此您应该在收到时立即处理