複数の iPhone プッシュ通知の送信: PHP を使用した APNS のマスター
PHP が Web サイトと iPhone アプリケーションを介したユーザー通信を処理するシナリオでは、登録ユーザーにプッシュ通知を送信する必要がある場合。この記事では、複数のプッシュ通知を送信するための PHP ベースのソリューションの実装について詳しく説明します。
前提条件: 登録時に各ユーザーのデバイス トークンを保存していることを確認してください。
堅牢なプッシュ通知機能の作成:
<code class="php">function sendNotification($deviceToken, $message, $passphrase) { $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) { echo "Failed to connect: $err $errstr" . PHP_EOL; return false; } $body = [ 'aps' => [ 'badge' => +1, 'alert' => $message, 'sound' => 'default' ] ]; $payload = json_encode($body); $msg = chr(0) . pack('n', 32) . pack('H*', $deviceToken) . pack('n', strlen($payload)) . $payload; $result = fwrite($fp, $msg, strlen($msg)); if (!$result) { echo 'Message not delivered' . PHP_EOL; return false; } else { echo 'Message successfully delivered: ' . $message . PHP_EOL; return true; } fclose($fp); }</code>
使用法:
特定のユーザーにプッシュ通知を送信するには、単に適切なデバイス トークンとメッセージを使用して sendNotification 関数を実行します。例:
<code class="php">if ($teacherReply) { sendNotification($studentDeviceToken, "New response from teacher", $passphrase); } else { sendNotification($teacherDeviceToken, "New question from student", $passphrase); }</code>
エラー処理:
sendNotification 関数には、配信が失敗した場合に警告するエラー処理メカニズムが含まれています。成功または失敗を示すブール値を返します。
このコードを利用すると、複数のプッシュ通知をシームレスに実装でき、ユーザーが会話や返信に関する最新情報をタイムリーに受信できるようになります。
以上がPHP で APNS 経由で複数のプッシュ通知を送信するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。