نمای کلی معماری FCM

FCM به مجموعه مؤلفه‌های زیر متکی است که پیام‌ها را می‌سازند، منتقل می‌کنند، و دریافت می‌کنند:

  1. ابزار برای نوشتن یا ساختن درخواست‌های پیام. «سازنده اعلان‌ها» گزینه‌ای مبتنی بر GUI برای ایجاد درخواست‌های اعلان ارائه می‌دهد. برای خودکارسازی کامل و پشتیبانی از همه انواع پیام، باید درخواست‌های پیام را در محیط سرور مطمئنی بسازید که از Firebase Admin SDK یا پروتکل سرور FCM پشتیبانی می‌کند. این محیط می‌تواند «توابع ابری ویژه Firebase»،‏ App Engine، یا سرور برنامه خودتان باشد.

    نموداری از سه لایه معماری که در این صفحه شرح داده شده است.

  2. پایانه FCM که (در میان سایر عملکردها) درخواست‌های پیام را می‌پذیرد، پیام‌ها را ازطریق موضوعات توزیع می‌کند، و فراداده پیام مانند شناسه پیام را تولید می‌کند.

  3. لایه انتقال در سطح پلاتفرم که پیام را به دستگاه هدف هدایت می‌کند، ارسال پیام را مدیریت می‌کند، و پیکربندی مختص پلاتفرم را درصورت لزوم اعمال می‌کند. این لایه حمل‌ونقل شامل موارد زیر است:

    • لایه انتقال Android‏ (ATL) برای دستگاه‌های Android دارای «خدمات Google Play»
    • سرویس اعلان لحظه‌ای Apple‏ (APNs) برای دستگاه‌های Apple
    • پروتکل ارسال وب برای برنامه‌های وب

  4. کیت توسعه نرم‌افزار FCM در دستگاه کاربر، جایی که اعلان نمایش داده می‌شود یا پیام براساس وضعیت پیش‌زمینه/پس‌زمینه برنامه و هر منطق برنامه مربوطه مدیریت می‌شود.

جریان چرخه حیات

  • ثبت دستگاه‌ها برای دریافت پیام از FCM. نمونه‌ای از برنامه کارخواه برای دریافت پیام ثبت می‌شود و یک کد ثبت دریافت می‌کند که نمونه برنامه را به‌طور منحصربه‌فرد شناسایی می‌کند.
  • ارسال و دریافت پیام‌های پایین‌دست.
    • پیامی ارسال کنید. سرور برنامه پیام‌ها را به برنامه کارخواه ارسال می‌کند:
      1. پیام در «سازنده اعلان‌ها» یا محیطی مطمئن ساخته می‌شود و درخواست پیام به پسای FCM ارسال می‌شود.
      2. بخش پشتی FCM درخواست پیام را دریافت می‌کند، شناسه پیام و فراداده‌های دیگر را تولید می‌کند، و آن را به لایه انتقال مختص پلاتفرم ارسال می‌کند.
      3. وقتی دستگاه آنلاین است، پیام ازطریق لایه انتقال مختص پلاتفرم به دستگاه ارسال می‌شود.
      4. در دستگاه، برنامه کارخواه پیام یا اعلان را دریافت می‌کند.