0

自分で書いた後、できるだけ多くのさまざまな Web サイトから PHP コードを使用していますが、Apple プッシュ通知フィードバック サービスへの接続ですべてが失敗します。

手短に:

$stream_context = stream_context_create();


stream_context_set_option($stream_context, 'ssl', 'local_cert', $certkeypath);      

stream_context_set_option($stream_context, 'ssl', 'passphrase', $pass);

$apns = stream_socket_client('ssl://feedback.sandbox.push.apple.com:2196', $errcode, $errstr, 60, STREAM_CLIENT_CONNECT, $stream_context);

if(!$apns) {
 echo "ERROR $errcode: $errstr\n";
 return;
}

上記のコードは、今夜のすべての接続要求を 100% タイムアウトさせます。しかし!アドレスが feedback.sandbox.push.apple.com から gateway.sandbox.push.apple.com に変更され、ポートが 2196 から 2195 に変更された場合、すべてが 100% 機能し、すべてのプッシュ通知が配信されます。デバイスの 1 つからアプリを削除し、プッシュ通知を送信し続けたので、フィードバックから実際の結果を期待していましたが、何もありませんでした。

ゲートウェイが機能するのにフィードバックが機能しない理由はありますか。唯一の違いはポートとアドレスのようです。おそらくフラグですが、他の人が動作すると主張するコードを使用しています。

APNs フィードバック サービスがメンテナンスのためにダウンしていると思われます。

4

1 に答える 1

0

3週間後、アイデア:ファイアウォールになる可能性がありますか?

案の定、そうでした。

これで、タイムアウトなしで APNs フィードバックを読むことができます。:D

于 2012-11-20T06:15:18.477 に答える