Heim > Backend-Entwicklung > PHP-Tutorial > Wie sende ich mehrere Push-Benachrichtigungen über APNS in PHP?

Wie sende ich mehrere Push-Benachrichtigungen über APNS in PHP?

Linda Hamilton
Freigeben: 2024-10-21 15:42:02
Original
806 Leute haben es durchsucht

How to Send Multiple Push Notifications via APNS in PHP?

Senden mehrerer iPhone-Push-Benachrichtigungen: Beherrschen von APNS mit PHP

In einem Szenario, in dem PHP die Benutzerkommunikation über eine Website und eine iPhone-Anwendung verwaltet, wird die Es besteht die Notwendigkeit, Push-Benachrichtigungen an registrierte Benutzer zu senden. Dieser Artikel befasst sich mit der Implementierung einer PHP-basierten Lösung zum Versenden mehrerer Push-Benachrichtigungen.

Voraussetzung:Stellen Sie sicher, dass Sie bei der Registrierung die Geräte-Tokens für jeden Benutzer gespeichert haben.

Erstellen einer robusten Push-Benachrichtigungsfunktion:

<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>
Nach dem Login kopieren

Verwendung:

Um eine Push-Benachrichtigung an einen bestimmten Benutzer zu senden, rufen Sie einfach die auf sendNotification-Funktion mit dem entsprechenden Geräte-Token und der entsprechenden Nachricht. Zum Beispiel:

<code class="php">if ($teacherReply) {
    sendNotification($studentDeviceToken, "New response from teacher", $passphrase);
} else {
    sendNotification($teacherDeviceToken, "New question from student", $passphrase);
}</code>
Nach dem Login kopieren

Fehlerbehandlung:

Die sendNotification-Funktion enthält Fehlerbehandlungsmechanismen, um Sie im Falle einer fehlgeschlagenen Zustellung zu benachrichtigen. Es gibt einen booleschen Wert zurück, der Erfolg oder Misserfolg angibt.

Durch die Nutzung dieses Codes können Sie nahtlos mehrere Push-Benachrichtigungen implementieren und so sicherstellen, dass Ihre Benutzer zeitnahe Updates zu Konversationen und Antworten erhalten.

Das obige ist der detaillierte Inhalt vonWie sende ich mehrere Push-Benachrichtigungen über APNS in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage