It’s #FrontendFriday – Firebase Cloud-Messaging

06.10.2023

Hallo #FrontendFriday Leser/innen. Weiter geht es mit unserer Blogpostreihe zu Firebase mit Firebase Cloud-Messaging.

Was ist Firebase Cloud-Messaging?

Firebase Cloud Messaging (FCM) ist ein Service, der es Entwicklern ermöglicht, plattformübergreifend Nachrichten zu versenden bzw. zu erhalten.

Firebase Cloud-Messaging bietet dabei folgende Schlüsselfähigkeiten: [1]

  • Benachrichtigung oder Datennachrichten

Der Nutzer erhält Benachrichtigungen wie beispielsweise eine Info über ein bestimmtes Ereignis

  • Vielseitiges Nachrichten-Targeting

Es kann definiert werden, ob eine Nachricht an ein bestimmtes Device, an eine Gruppe von Devices oder anhand eines vordefinierten Themas verteilt werden.

  • Nachrichten von Client-Apps senden

Es ist möglich, Nachrichten von einem Devices/ Client an den Server zu senden.

 

Wie funktioniert Firebase Cloud-Messaging?

Die Cloud-Messaging-Architektur von Firebase lässt sich in 4 Abschnitte unterteilen und ist in nachfolgender Abbildung zu sehen. Die Basis (1) bildet eine Serverumgebung. Dies kann ein eigener App-Server sein oder sich auch um Cloud Functions für Firebase handeln. Sie ist verantwortlich für das Erstellen, Zielsetzen und Senden von Nachrichten. Anschließend folgt das Firebase Cloud-Messaging Backend (2), welches Nachrichtenanfragen entgegennimmt und verteilt. (3) stellt die Transportschicht dar, welche Nachrichten an die entsprechenden Endgeräte weiterleitet. Dabei kann es sich Google Play-Dienste, Apple Push Services oder auch Web-Push-Protokolle handeln. Das Endgerät, welches die Nachricht schlussendlich anzeigt, bildet das Ende der Kette (4).

Architekturdiagramm
https://firebase.google.com/static/docs/cloud-messaging/images/diagram-FCM.png?authuser=0&hl=de

 

 

Eine durch FCM übermittelte Nachricht ist im JSON-Format strukturiert und sieht in etwa wie folgt aus:

{
  "message":{
    "token":"bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1...",
    "notification":{
      "title":"Dies ist der Titel",
      "body":"Hallo, dies ist eine Testnachricht"
    }
  }
}

Durch den Token („token“) kann die Nachricht eindeutig zugeordnet werden. Das Attribut „notification“ beinhaltet die Nachricht und ist gegliedert in „title“ für den Betreff und body für den eigentlich Nachrichteninhalt.

 

Sollte ich Firebase Cloud-Messaging nutzen?

FCM bietet vielseitige Einsatzmöglichkeiten. Besonders nützlich ist FCM, um Nutzer in Echtzeit über Updates oder neue Inhalte innerhalb der App zu informieren. Darüber hinaus kann es genutzt werden, um einfache Chat-Funktionen einzurichten. Dabei können die Benachrichtigung sowohl automatisiert als auch manuell ausgelöst werden, was eine flexible Kommunikation mit den Benutzern ermöglicht. Durch die Nutzung des Firebase Cloud-Messaging Service entfällt zudem der Aufwand, sich selbst um die Netzwerkkommunikation zu kümmern. Zuletzt ist der FCM-Service grundsätzlich komplett kostenlos. Allerdings können indirekte Kosten anfallen, beispielsweise durch die Nutzung von Cloud Storage. Wird dort eine große Anzahl an Nachrichten gespeichert, können hier Kosten entstehen [5]

 


[1] Firebase Cloud-Messaging

[2] Firebase Cloud-Messaging Dokumentation

[3] Firebase Cloud-Messaging Architektur

[4] Firebase Cloud-Messaging Architektur Abbildung

[5] Firebase Cloud-Messaging Kosten

Zurück zur Übersicht

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

*Pflichtfelder

*