微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

发送多个iPhone推送通知APNS PHP

我正在开发一个PHP网站iPhone应用程序和iPhone应用程序的API,有一个学生和医生的消息系统,当任何人发送消息(从网站或iPhone),其他用户应该在他的iPhone上获得推送通知.例如,如果学生为教师添加新问题,将向教师发送教师iPhone / iPad的推送通知,当教师回复学生的答案时,学生将收到推送通知.

由于教师和学生注册网站的数量没有限制,我的问题是如何向注册用户的iPhone发送推送消息?我想在有人回复添加问题时立即发送推送消息.请提供PHP代码以发送多个推送消息.
我在注册时为每个用户保存设备令牌.

当老师回复问题我发送邮件给学生时,我也想向学生发送推送通知,反之亦然,所以请指定能够管理错误条件的代码.

解决方法:

不使用任何文件的简单方法.您可以使用不同的tokeid多次调用它.

$ctx = stream_context_create();
stream_context_set_option($ctx, 'ssl', 'local_cert', 'ckipad.pem');
stream_context_set_option($ctx, 'ssl', 'passphrase', $passphrase);

$fp = stream_socket_client('ssl://gateway.sandBox.push.apple.com:2195', 
    $err, 
    $errstr, 
    60, 
    STREAM_CLIENT_CONNECT|STREAM_CLIENT_PERSISTENT, 
    $ctx);

//if (!$fp)
//exit("Failed to connect amarnew: $err $errstr" . PHP_EOL);

//echo 'Connected to APNS' . PHP_EOL;

// Create the payload body
$body['aps'] = array(
    'badge' => +1,
    'alert' => $message,
    'sound' => 'default'
);

$payload = json_encode($body);

// Build the binary notification
$msg = chr(0) . pack('n', 32) . pack('H*', $devicetoken) . pack('n', strlen($payload)) . $payload;

// Send it to the server
$result = fwrite($fp, $msg, strlen($msg));

if (!$result)
    echo 'Message not delivered' . PHP_EOL;
else
    echo 'Message successfully delivered amar'.$message. PHP_EOL;

// Close the connection to the server
fclose($fp);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐