Envoi de plusieurs notifications push iPhone : maîtriser APNS avec PHP
Dans un scénario où PHP gère la communication des utilisateurs via un site Web et une application iPhone, le il est nécessaire d'envoyer des notifications push aux utilisateurs enregistrés. Cet article se penche sur la mise en œuvre d'une solution basée sur PHP pour l'envoi de plusieurs notifications push.
Prérequis : Assurez-vous d'avoir enregistré les jetons d'appareil pour chaque utilisateur lors de l'inscription.
Créer une fonction de notification push robuste :
<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>
Utilisation :
Pour envoyer une notification push à un utilisateur spécifique, appelez simplement le fonction sendNotification avec le jeton de périphérique et le message appropriés. Par exemple :
<code class="php">if ($teacherReply) { sendNotification($studentDeviceToken, "New response from teacher", $passphrase); } else { sendNotification($teacherDeviceToken, "New question from student", $passphrase); }</code>
Gestion des erreurs :
La fonction sendNotification comprend des mécanismes de gestion des erreurs pour vous alerter en cas d'échec de livraison. Il renvoie une valeur booléenne indiquant le succès ou l'échec.
En exploitant ce code, vous pouvez mettre en œuvre de manière transparente plusieurs notifications push, garantissant ainsi que vos utilisateurs reçoivent des mises à jour en temps opportun sur les conversations et les réponses.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!