FCM, mesajları oluşturan, taşıyan ve alan aşağıdaki bileşenlere dayanır:
Mesaj istekleri oluşturmak veya oluşturmak için araçlar. Bildirimler oluşturucu, bildirim istekleri oluşturmak için GUI tabanlı bir seçenek sunar. Tüm mesaj türleri için tam otomasyon ve destek için, Firebase Admin SDK veya FCM sunucu protokollerini destekleyen güvenilir bir sunucu ortamında mesaj istekleri oluşturmanız gerekir. Bu ortam Cloud Functions for Firebase, App Engine veya kendi uygulama sunucunuz olabilir.
(Diğer işlevlerin yanı sıra) mesaj isteklerini kabul eden FCM arka ucu, konular aracılığıyla iletilerin dağılımını gerçekleştirir ve ileti kimliği gibi ileti meta verilerini oluşturur.
Mesajı hedeflenen cihaza yönlendiren, mesaj teslimini yöneten ve uygun olduğunda platforma özgü yapılandırmayı uygulayan platform düzeyinde bir taşıma katmanı. Bu taşıma katmanı şunları içerir:
- Google Play hizmetlerine sahip Android cihazlar için Android taşıma katmanı (ATL)
- Apple cihazları için Apple Anında Bildirim hizmeti (APN'ler)
Web uygulamaları için web push protokolü
Bildirimin görüntülendiği veya mesajın, uygulamanın ön plan/arka plan durumuna ve ilgili herhangi bir uygulama mantığına göre işlendiği, kullanıcının cihazındaki FCM SDK'sı.
Yaşam döngüsü akışı
- FCM'den mesaj almak için cihazları kaydedin . Bir istemci uygulaması örneği, uygulama örneğini benzersiz şekilde tanımlayan bir kayıt belirteci alarak mesajları almak için kaydolur.
- Aşağı akış mesajları gönderin ve alın .
- Bir mesaj göndermek. Uygulama sunucusu, istemci uygulamasına mesajlar gönderir:
- Mesaj, Notifications oluşturucusunda veya güvenilir bir ortamda oluşturulur ve FCM arka ucuna bir mesaj isteği gönderilir.
- FCM arka ucu, mesaj talebini alır, bir mesaj kimliği ve diğer meta veriler oluşturur ve bunu platforma özgü taşıma katmanına gönderir.
- Cihaz çevrimiçi olduğunda, mesaj platforma özgü taşıma katmanı aracılığıyla cihaza gönderilir.
- Cihazda, istemci uygulaması mesajı veya bildirimi alır.
- Bir mesaj göndermek. Uygulama sunucusu, istemci uygulamasına mesajlar gönderir: