FCM korzysta z tych komponentów, które tworzą, przesyłają i odbierają wiadomości:
narzędzia do tworzenia próśb o wiadomość; Edytor powiadomień udostępnia opcję tworzenia żądań powiadomień za pomocą interfejsu graficznego. Aby zapewnić pełną automatyzację i obsługę wszystkich typów wiadomości, musisz tworzyć żądania wiadomości w zaufanym środowisku serwera, które obsługuje pakiet SDK Firebase Admin lub protokół serwera FCM. Może to być Cloud Functions dla Firebase, App Enginelub własny serwer aplikacji.
Backend FCM, który (wraz z innymi funkcjami) akceptuje żądania wiadomości, realizuje zwielokrotnienie wiadomości za pomocą tematów i generuje metadane wiadomości, takie jak identyfikator wiadomości.
Warstwę transportu na poziomie platformy, która kieruje wiadomość do docelowego urządzenia, obsługuje dostarczanie wiadomości i w odpowiednich przypadkach stosuje konfigurację specyficzną dla danej platformy. Warstwa transportowa obejmuje:
- Warstw transportu Androida (ATL) na urządzeniach z Androidem i Usługami Google Play
- Usługa Apple Push Notification (APNs) na urządzeniach Apple
Protokół Web push dla aplikacji internetowych
Pakiet FCM SDK na urządzeniu użytkownika, na którym wyświetlane jest powiadomienie lub w którym wiadomość jest obsługiwana zgodnie ze stanem aplikacji (pierwszy plan/tło) i odpowiednią logiką aplikacji.
Proces cyklu życia
- Zarejestruj urządzenia, aby otrzymywać wiadomości z FCM. Instancja aplikacji klienckiej rejestruje się, aby odbierać wiadomości, uzyskując token rejestracji, który jednoznacznie identyfikuje instancję aplikacji.
- Wysyłanie i odbieranie wiadomości w pobliżu.
- Wyślij wiadomość. Serwer aplikacji wysyła wiadomości do aplikacji klienckiej:
- Wiadomość jest tworzona w narzędziu do tworzenia powiadomień lub w zaufanym środowisku, a żądanie jest wysyłane do backendu FCM.
- Backend FCM odbiera żądanie wiadomości, generuje identyfikator wiadomości i inne metadane, a następnie wysyła je do warstwy transportu specyficznej dla platformy.
- Gdy urządzenie jest w trybie online, wiadomość jest do niego wysyłana przez warstwę transportową specyficzną dla platformy.
- Na urządzeniu aplikacja kliencka odbiera wiadomość lub powiadomienie.
- Wyślij wiadomość. Serwer aplikacji wysyła wiadomości do aplikacji klienckiej: