PHP経由でiOSアプリケーションにプッシュ通知を送信しようとしています。そのため、iOS 開発者は私に pem ファイルを提供してくれます。ホスティング サーバーに開くように要求したところgateway.sandbox.push.apple.com:2195
、ポートが開かれました。しかし、プッシュ通知を送信しようとすると、次のエラーが発生します。私のコードは次のようになります
$deviceToken='XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';
$passphrase="";
$ctx = stream_context_create();
stream_context_set_option($ctx, 'ssl', 'local_cert', '/home/sitename/public_html/push/ck.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;
次のエラーを取得する
Failed to connect amarnew: 0
それで、telnet経由でAppleに接続しようとしましたが、その結果は
root@uio3-i [~]# telnet gateway.sandbox.push.apple.com 2195
Trying XX.XXX.XXX.XX...
Connected to gateway.sandbox.push.apple.com.
Escape character is '^]'.
^\q
^]
telnet> q
Connection closed.
root@uio3-i [~]#
私はこれが初めてなので、ここで立ち往生しました。誰か助けてください
前もって感謝します