ภาพรวมสถาปัตยกรรม FCM

FCM อาศัยส่วนประกอบต่อไปนี้ในการสร้าง ขนส่ง และรับข้อความ:

  1. เครื่องมือในการเขียนหรือสร้างคำขอข้อความ ตัวเขียนการแจ้งเตือนมีตัวเลือกที่ใช้ GUI สำหรับสร้างคำขอการแจ้งเตือน สำหรับการทำงานอัตโนมัติเต็มรูปแบบและรองรับ ข้อความทุกประเภท คุณต้องสร้างคำขอข้อความใน สภาพแวดล้อมเซิร์ฟเวอร์ ที่เชื่อถือได้ซึ่งสนับสนุน Firebase Admin SDK หรือโปรโตคอลเซิร์ฟเวอร์ FCM สภาพแวดล้อมนี้อาจเป็น Cloud Functions สำหรับ Firebase, App Engine หรือเซิร์ฟเวอร์แอปของคุณเอง

    ไดอะแกรมของเลเยอร์สถาปัตยกรรมสามชั้นที่อธิบายไว้ในหน้านี้

  2. แบ็กเอนด์ FCM ซึ่ง (รวมถึงฟังก์ชันอื่นๆ) ยอมรับคำขอข้อความ ดำเนินการเผยแพร่ข้อความผ่านหัวข้อ และสร้างข้อมูลเมตาของข้อความ เช่น ID ข้อความ

  3. ชั้นการขนส่งระดับแพลตฟอร์ม ซึ่งกำหนดเส้นทางข้อความไปยังอุปกรณ์เป้าหมาย จัดการการส่งข้อความ และใช้การกำหนดค่าเฉพาะแพลตฟอร์มตามความเหมาะสม ชั้นการขนส่งนี้ประกอบด้วย:

    • Android Transport Layer (ATL) สำหรับอุปกรณ์ Android ที่มีบริการ Google Play
    • บริการแจ้งเตือนแบบพุชของ Apple (APN) สำหรับอุปกรณ์ Apple
    • โปรโตคอลเว็บพุชสำหรับเว็บแอพ

  4. FCM SDK บนอุปกรณ์ของผู้ใช้ ซึ่งการแจ้งเตือนแสดงขึ้นหรือข้อความได้รับการจัดการตามสถานะเบื้องหน้า/พื้นหลังของแอปและตรรกะของแอปพลิเคชันที่เกี่ยวข้อง

การไหลของวงจรชีวิต

  • ลงทะเบียนอุปกรณ์เพื่อรับข้อความจาก FCM อินสแตนซ์ของแอปไคลเอนต์ลงทะเบียนเพื่อรับข้อความ รับโทเค็นการลงทะเบียนที่ระบุอินสแตนซ์ของแอปโดยไม่ซ้ำกัน
  • ส่งและรับข้อความดาวน์สตรีม
    • ส่งข้อความ. เซิร์ฟเวอร์แอปส่งข้อความไปยังแอปไคลเอ็นต์:
      1. ข้อความถูกสร้างขึ้น ทั้งในผู้สร้างการแจ้งเตือนหรือสภาพแวดล้อมที่เชื่อถือได้ และคำขอข้อความจะถูกส่งไปยังแบ็กเอนด์ FCM
      2. แบ็กเอนด์ FCM ได้รับคำขอข้อความ สร้างรหัสข้อความและข้อมูลเมตาอื่นๆ และส่งไปยังเลเยอร์การขนส่งเฉพาะแพลตฟอร์ม
      3. เมื่ออุปกรณ์ออนไลน์ ข้อความจะถูกส่งผ่านเลเยอร์การขนส่งเฉพาะแพลตฟอร์มไปยังอุปกรณ์
      4. บนอุปกรณ์ แอปไคลเอ็นต์จะได้รับข้อความหรือการแจ้งเตือน