FCM מסתמך על קבוצת הרכיבים הבאה ליצירה, להעברה ולקבלה של הודעות:
כלים ליצירה או לפיתוח של בקשות להצטרפות לצ'אט. הכלי ליצירת התראות מספק אפשרות מבוססת-ממשק משתמש ליצירת בקשות התראה. כדי ליהנות מאוטומציה מלאה ותמיכה בכל סוגי ההודעות, צריך ליצור בקשות שליחת הודעות בסביבה מהימנה של שרת שתומכת ב-Firebase Admin SDK או בפרוטוקול השרת של FCM. הסביבה הזו יכולה להיות Cloud Functions for Firebase, App Engine או שרת האפליקציות שלכם.
הקצה העורפי של FCM, שמקבל (בין היתר) בקשות להעברת הודעות, מבצע חלוקה של הודעות לפי נושאים ויוצר מטא-נתונים של הודעות, כמו מזהה ההודעה.
שכבת התעבורה ברמת הפלטפורמה, שמנתבת את ההודעה למכשיר היעד, מטפלת בהעברת ההודעה ומחילה הגדרות ספציפיות לפלטפורמה במקרים הרלוונטיים. שכבת התעבורה הזו כוללת:
- שכבת התעבורה של Android (ATL) למכשירי Android עם Google Play Services
- Apple Push Notification Service (APNs) למכשירי Apple
פרוטוקול Web Push לאפליקציות אינטרנט
ה-FCM SDK במכשיר של המשתמש, שבו ההתראה מוצגת או שההודעה מטופלת בהתאם למצב של האפליקציה בחזית או ברקע וללוגיקה הרלוונטית של האפליקציה.
תהליך מחזור החיים
- רישום מכשירים לקבלת הודעות מ-FCM. מופע של אפליקציית לקוח נרשם לקבלת הודעות, ומקבל אסימון רישום שמזהה באופן ייחודי את מופע האפליקציה.
- שליחת הודעות קבלה במורד הזרם.
- שלח הודעה. שרת האפליקציה שולח הודעות לאפליקציית הלקוח:
- ההודעה נכתבת ב-Notifications Composer או בסביבה מהימנה, ובקשת שליחת הודעה נשלחת לקצה העורפי של FCM.
- הקצה העורפי של FCM מקבל את בקשת ההודעה, יוצר מזהה הודעה ומטא-נתונים אחרים ושולח אותם לשכבת התעבורה הספציפית לפלטפורמה.
- כשהמכשיר מחובר לאינטרנט, ההודעה נשלחת אליו דרך שכבת התעבורה הספציפית לפלטפורמה.
- במכשיר, אפליקציית הלקוח מקבלת את ההודעה או ההתראה.
- שלח הודעה. שרת האפליקציה שולח הודעות לאפליקציית הלקוח: