24.8.2022 |

Sending web push notifications from Spring Boot

grafik

Senden von Web-Push-Benachrichtigungen mit Spring Boot.

Eine Herausforderung in der heutige Zeit ist es, Benutzer(innen) von einer App/Tool über neue Ereignisse zu informieren bzw. aufgrund von neuen Events gewisse Workflow zu triggern.

Lange war u. a. WebSockets dafür die erste Wahl. Mit dieser Implementierung ist man in der Lage, Clients in Echtzeit über Ereignisse zu informieren. Jedoch erfordert dieses eine (je nach Framework) aufwendige Implementierung.

Um Benutzer(innen) trotzdem eine eventbasierte Benachrichtigung/Workflow zu ermöglichen, kann man auch Web-Push-Notifcation nutzen. Die Implementierung ist meist schnell und einfach umgesetzt.

Der Client schickt ein Post-Request an den Web-Push-Endpunkt und signalisiert somit der API/Server die Bereitschaft, Nachrichten empfangen zu wollen. Sollte ein neues Ereignis getriggert werden, schickt der Server an alle bzw. dem relevanten Client eine Push-Notification. Der Client fungiert sozusagen als eigener Endpunkt.

Dabei ist es sogar möglich diverse Informationen mitzuschicken Bsp. Ein Link, wo der/die Benutzer(in) navigieren kann bzw. soll. Ebenfalls wäre eine Möglichkeit Workflows im Client zu triggern Bsp. wenn ein spezieller Endpunkt im Anschluss abgefragt werden soll, etc.

Klingt alles super? Absolut! Einzige Abhängigkeit dabei ist jedoch der/die Benutzer(in) selbst, denn wenn es keine Zustimmung für Benachrichtigungen gibt, können auch keine Informationen empfangen werden.

Weitere Informationen zu konkreten Implementierung findet man im folgenden Artikel.

Dennis
Zur Übersicht

Mehr vom DevSquad...

Tim Tilch

Perfomance Optimierung für Jest auf CI

Philipp Hunder

Praktikumsaufgabe: Jira-Moco-Report-APl mit Spring