FCM si basa sul seguente insieme di componenti che costruiscono, trasportano e ricevono messaggi:
Strumenti per comporre o creare richieste di messaggi. Il compositore di notifiche fornisce un'opzione basata su GUI per la creazione di richieste di notifica. Per l'automazione e il supporto completi per tutti i tipi di messaggi , devi creare richieste di messaggi in un ambiente server attendibile che supporti l'SDK Firebase Admin o i protocolli del server FCM. Questo ambiente potrebbe essere Cloud Functions per Firebase, App Engine o il tuo server app.
Il backend FCM, che (tra le altre funzioni) accetta richieste di messaggi, esegue il fanout di messaggi tramite argomenti e genera metadati del messaggio come l'ID del messaggio.
Un livello di trasporto a livello di piattaforma, che instrada il messaggio al dispositivo di destinazione, gestisce la consegna del messaggio e applica la configurazione specifica della piattaforma ove appropriato. Questo livello di trasporto include:
- Livello di trasporto Android (ATL) per dispositivi Android con servizi Google Play
- Servizio Apple Push Notification (APN) per dispositivi Apple
Protocollo push web per app web
L'SDK FCM sul dispositivo dell'utente, dove viene visualizzata la notifica o il messaggio viene gestito in base allo stato in primo piano/in background dell'app e a qualsiasi logica dell'applicazione pertinente.
Flusso del ciclo di vita
- Registra i dispositivi per ricevere messaggi da FCM . Un'istanza di un'app client si registra per ricevere messaggi, ottenendo un token di registrazione che identifica in modo univoco l'istanza dell'app.
- Inviare e ricevere messaggi a valle .
- Mandare un messaggio. Il server app invia messaggi all'app client:
- Il messaggio viene composto, nel compositore delle notifiche o in un ambiente attendibile, e una richiesta di messaggio viene inviata al backend FCM.
- Il backend FCM riceve la richiesta del messaggio, genera un ID messaggio e altri metadati e lo invia al livello di trasporto specifico della piattaforma.
- Quando il dispositivo è online, il messaggio viene inviato tramite il livello di trasporto specifico della piattaforma al dispositivo.
- Sul dispositivo, l'app client riceve il messaggio o la notifica.
- Mandare un messaggio. Il server app invia messaggi all'app client: