WebPush: Eine Seite möchte Ihnen Benachrichtigungen senden
Apps können es schon lange, etwas neuer ist die Möglichkeit, dass Webseiten Benachrichtigen senden können. Mit Hilfe von WebPush können Benutzer aktiv benachrichtigt werden, auch wenn sich diese gar nicht mehr auf der entsprechenden Webseite befinden. Als Voraussetzung muss lediglich der Browser geöffnet sein.
Voraussetzungen
WebPush empfangen: der Browser
Für das Empfangen von WebPush-Nachrichten sind keine speziellen Apps erforderlich. WebPush ist direkt in allen neuen Browsern implementiert. Verantwortlich für den Empfang sind sogenannte Service Worker. Die Service Worker werden beim Eingang einer Benachrichtigung aktiviert, woraufhin diese angezeigt wird. Beim Service Worker handelt es sich um eine JavaScript-Datei, welche vom Webserver bereitgestellt und im Browser registriert wird. Um den entsprechenden Service Worker für eine Seite zu aktivieren, reicht es, die Erlaubnis für Push-Benachrichtigungen zu erteilen:
Durch das Zulassen der Benachrichtigungen wird über die Web Push API und dem vom Webserver zur Verfügung gestellten VAPID Key Pair (öffentlich und privates Schlüsselpaar) eine sogenannte Subscription mit dem PushService erzeugt.
PushService
Der PushService ist ein Dienst im Internet, welcher für das Abschließen der Subscription und das Zustellen der Nachrichten von den jeweiligen Browserherstellern betrieben wird.
WebPush senden: der Webserver
Beim Aktivieren der Push-Benachrichtigung wird mithilfe des VAPID Key Pair und einem, vom Browserhersteller betriebenen PushService eine Endpoint-URL, ein PublicKey und ein Token erzeugt. Die Daten werden am Webserver abgespeichert und können dann vom Betreiber der Webseite für das Erstellen der Benachrichtigungen verwendet werden. Damit der Service Worker (Browser) vom PushService (Internet-Dienst des Browserherstellers) Nachrichten empfangen kann, müssen diese vorher am Webserver mit dem privaten Schlüssel des VAPID Pair verschlüsselt werden.
Benachrichtigungen erlauben / verbieten
Die Erlaubnis für das Senden von Benachrichtigungen kann jederzeit im Browser aktiviert oder deaktiviert werden.
Die Benachrichtigungseinstellungen der Webseite sind am einfachsten über das Schloss-Symbol links neben der URL zu erreichen:
Firefox
Android
Google Chrome
Mit folgender URL können in Google Chrome alle Service-Worker angezeigt werden:
chrome://serviceworker-internals/?devtools
WebPush Anbieter vs. Skript
Im Internet kursieren zahlreiche Anbieter die Services für Push-Benachrichtigungen anbieten, dabei kann die Benachrichtigung mit den entsprechenden Skripts ganz ohne zusätzlichen Dienstleister umgesetzt werden: Eine Demo-Implementierung für Laravel kann auf folgender Seite begutachtet werden: https://github.com/cretueusebiu/laravel-web-push-demo
Details zu Laravel, siehe: www.script-example.com/topic/laravel
{{percentage}} % positiv