Tổng quan về kiến ​​trúc FCM

FCM dựa vào tập hợp các thành phần sau để xây dựng, vận chuyển và nhận thông báo:

  1. Công cụ để soạn hoặc xây dựng các yêu cầu tin nhắn. Trình tổng hợp Thông báo cung cấp tùy chọn dựa trên GUI để tạo các yêu cầu thông báo. Để tự động hóa hoàn toàn và hỗ trợ tất cả các loại thông báo , bạn phải tạo các yêu cầu thông báo trong môi trường máy chủ đáng tin cậy hỗ trợ SDK quản trị Firebase hoặc các giao thức máy chủ FCM. Môi trường này có thể là Chức năng đám mây cho Firebase, App Engine hoặc máy chủ ứng dụng của riêng bạn.

    Sơ đồ ba lớp kiến ​​trúc được mô tả trong trang này.

  2. Phần phụ trợ FCM, (trong số các chức năng khác) chấp nhận các yêu cầu tin nhắn, thực hiện chuyển đổi tin nhắn qua các chủ đề và tạo siêu dữ liệu tin nhắn chẳng hạn như ID tin nhắn.

  3. Lớp truyền tải cấp nền tảng, định tuyến thông điệp đến thiết bị được nhắm mục tiêu, xử lý việc gửi thông báo và áp dụng cấu hình dành riêng cho nền tảng nếu thích hợp. Lớp vận chuyển này bao gồm:

    • Lớp truyền tải Android (ATL) dành cho các thiết bị Android có dịch vụ của Google Play
    • Dịch vụ thông báo đẩy của Apple (APN) dành cho các thiết bị Apple
    • Giao thức đẩy web cho các ứng dụng web

  4. SDK FCM trên thiết bị của người dùng, nơi thông báo được hiển thị hoặc thông báo được xử lý theo trạng thái nền / nền của ứng dụng và bất kỳ logic ứng dụng nào có liên quan.

Dòng chảy vòng đời

  • Đăng ký thiết bị để nhận tin nhắn từ FCM . Một bản sao của ứng dụng khách đăng ký để nhận tin nhắn, lấy mã thông báo đăng ký nhận dạng duy nhất bản sao ứng dụng.
  • Gửi và nhận tin nhắn xuôi dòng .
    • Gửi tin nhắn. Máy chủ ứng dụng gửi thông báo đến ứng dụng khách:
      1. Tin nhắn được soạn, trong trình soạn thảo Thông báo hoặc môi trường đáng tin cậy và một yêu cầu tin nhắn sẽ được gửi tới chương trình phụ trợ FCM.
      2. Phần phụ trợ FCM nhận yêu cầu tin nhắn, tạo ID tin nhắn và các siêu dữ liệu khác và gửi nó đến lớp truyền tải cụ thể của nền tảng.
      3. Khi thiết bị trực tuyến, tin nhắn sẽ được gửi qua lớp truyền tải dành riêng cho nền tảng đến thiết bị.
      4. Trên thiết bị, ứng dụng khách sẽ nhận được tin nhắn hoặc thông báo.