0
장치 토큰이있는 장치에 푸시 알림을 보내려면 APNS에 연결하려고합니다. 내 PHP 파일을 출력하는 "13 #errstrn을 연결하지 못했습니다"내가 밀어하려고하는 텍스트를 제출하면. 이 문제를 해결하는 방법에 대한 제안 사항이 있으십니까?사과 푸시 알림 서버에 연결할 수없고 오류가 계속 발생합니다.
<?php
$message = $_POST["push"];
echo $message;
if($message){
$deviceToken = '*device token here';
$message = stripslashes($message);
$payload = '{
"aps":
{ "alert":"'.$message.'",
"badge":1,
"sound":"bingbong.aiff"
}
}';
$ctx = stream_context_create();
stream_context_set_option($ctx, 'ssl', 'local_cert', 'ck.pem');
stream_context_set_option($ctx, 'ssl', 'passphrase', 'passphrase_here');
$fp = stream_socket_client('ssl://gateway.sandbox.push.apple.com:2195', $err, $errstr, 30, STREAM_CLIENT_CONNECT|STREAM_CLIENT_PERSISTENT, $ctx);
if(!$fp){
print "Failed to connect $err #errstrn";
return;
}
else{
print "Notification sent!";
}
$devArray = array();
$devArray[]= $deviceToken;
foreach($devArray as $deviceToken){
$msg = chr(0) . pack("n",32) . pack('H*', str_replace(' ', '', $deviceToken)) . pack("n", strlen($payload)) . $payload;
print "sending message: " . $payload . "n";
fwrite($fp, $msg);
}
fclose($fp);
}
?>
에 SSL 터널이 인증서를 사용하여 만들 수 있습니다 여부를 확인 했습니까? 네트워크 문제 일 수 있습니다. – Raptor