FCM s'appuie sur l'ensemble suivant de composants qui génèrent, transportent et reçoivent des messages :
Outils pour composer ou construire des demandes de message. Le composeur de notifications fournit une option basée sur l'interface graphique pour créer des demandes de notification. Pour une automatisation et une prise en charge complètes de tous les types de messages , vous devez créer des demandes de message dans un environnement de serveur de confiance prenant en charge le SDK Firebase Admin ou le protocole de serveur FCM. Cet environnement peut être Cloud Functions pour Firebase, App Engine ou votre propre serveur d'applications.
Le backend FCM, qui (entre autres fonctions) accepte les demandes de message, effectue la diffusion des messages via des rubriques et génère des métadonnées de message telles que l'ID de message.
Une couche de transport au niveau de la plate-forme, qui achemine le message vers l'appareil ciblé, gère la livraison des messages et applique une configuration spécifique à la plate-forme, le cas échéant. Cette couche transport comprend :
- Couche de transport Android (ATL) pour les appareils Android avec les services Google Play
- Service Apple Push Notification (APN) pour les appareils Apple
Protocole Web push pour les applications Web
Le SDK FCM sur l'appareil de l'utilisateur, où la notification est affichée ou le message est traité en fonction de l'état de premier plan/arrière-plan de l'application et de toute logique d'application pertinente.
Flux de cycle de vie
- Enregistrez les appareils pour recevoir des messages de FCM . Une instance d'une application cliente s'enregistre pour recevoir des messages, obtenant un jeton d'inscription qui identifie de manière unique l'instance d'application.
- Envoyer et recevoir des messages en aval .
- Envoyer un message. Le serveur d'application envoie des messages à l'application client :
- Le message est composé, soit dans l'éditeur de notifications, soit dans un environnement de confiance, et une demande de message est envoyée au backend FCM.
- Le backend FCM reçoit la demande de message, génère un ID de message et d'autres métadonnées, et l'envoie à la couche de transport spécifique à la plate-forme.
- Lorsque l'appareil est en ligne, le message est envoyé via la couche de transport spécifique à la plate-forme vers l'appareil.
- Sur l'appareil, l'application cliente reçoit le message ou la notification.
- Envoyer un message. Le serveur d'application envoie des messages à l'application client :