FCM s'appuie sur l'ensemble de composants suivant qui génère, transporte et reçoit des messages :
Outils pour composer ou créer des demandes de messages. Le compositeur de notifications fournit une option basée sur une 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 messages dans un environnement de serveur de confiance prenant en charge le SDK d'administration Firebase 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 messages, effectue la diffusion des messages via des sujets et génère des métadonnées de message telles que l'ID du message.
Une couche de transport au niveau de la plate-forme, qui achemine le message vers le périphérique ciblé, gère la livraison des messages et applique la configuration spécifique à la plate-forme, le cas échéant. Cette couche de transport comprend :
- Couche de transport Android (ATL) pour les appareils Android dotés des services Google Play
- Service de notification Apple Push (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 du cycle de vie
- Enregistrez les appareils pour recevoir des messages de FCM . Une instance d'une application client s'enregistre pour recevoir des messages, obtenant ainsi un jeton d'enregistrement qui identifie de manière unique l'instance d'application.
- Envoyez et recevez des messages en aval .
- Envoyer un message. Le serveur d'application envoie des messages à l'application client :
- Le message est composé, soit dans le composeur de notifications, soit dans un environnement approuvé, 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 client reçoit le message ou la notification.
- Envoyer un message. Le serveur d'application envoie des messages à l'application client :