Bạn có thể gửi và nhận tin nhắn cho người dùng cuối bằng chrome.gcm. Vì được xây dựng dựa trên Giải pháp gửi thông báo qua đám mây của Firebase (FCM), nên tính năng này dựa vào một dịch vụ bên ngoài mà bạn cần thiết lập. Hướng dẫn này sẽ hướng dẫn bạn về tất cả các bước cần thiết để tính năng này hoạt động trong tiện ích của bạn.
Mặc dù chrome.gcm
vẫn được hỗ trợ, nhưng mã này đã được tạo từ hơn một thập kỷ trước trước tiêu chuẩn Đẩy. Nói chung, bạn nên sử dụng tiêu chuẩn web thay vì API dành riêng cho tiện ích. Nếu không có nhu cầu sử dụng chrome.gcm
cụ thể, bạn nên sử dụng tính năng Đẩy.
Điều kiện tiên quyết
Để sử dụng chrome.gcm
, bạn cần phải thiết lập tài khoản Firebase.
Sau khi tạo tài khoản, bạn cần mở bảng điều khiển của Firebase rồi chọn dự án hiện có để sử dụng hoặc tạo một dự án mới cho tiện ích của mình.
Tiếp tục đến trang cài đặt cho giải pháp Gửi thông báo qua đám mây.
Nếu đã có tài khoản nhắn tin qua đám mây trong dự án này, bạn sẽ muốn sao chép Mã nhận dạng người gửi ở dạng số được liệt kê.
Nếu chưa bật tính năng gửi thông báo qua đám mây, bạn cần bật Firebase Cloud Messaging API cho dự án bên trong Google Cloud. Trong hình ảnh sau đây, bạn có thể thấy vị trí có một đường liên kết trực tiếp đến trang này trong phần cài đặt Firebase.
Sau khi bật, hãy quay lại trang cài đặt cho Cloud Messaging và sao chép Mã nhận dạng người gửi.
Định cấu hình chrome.gcm
Giờ đây khi đã có Mã người gửi từ Firebase, bạn có thể định cấu hình tiện ích để theo dõi thông báo. Để bắt đầu, hãy đảm bảo rằng bạn đã thêm quyền gcm
vào manifest.json
của tiện ích
{
"manifest_version": 3,
...
"permissions": ["gcm"]
Giờ đây, bạn đã có quyền truy cập vào API chrome.gcm
. Bạn có thể đăng ký nghe thông báo đẩy bằng cách gọi chrome.gcm.register
Nghe tin nhắn
Sau khi tiện ích này đăng ký Mã nhận dạng người gửi, bạn cần thêm mã để xử lý tin nhắn đến.
Firebase mà không cần Firebase
Mặc dù chrome.gcm
luôn đi qua Firebase, nhưng bạn có thể định cấu hình Firebase để hoạt động như một proxy cho các nhà cung cấp thông báo đẩy bên ngoài. Thông thường, các nhà cung cấp sẽ liệt kê rõ ràng khả năng hỗ trợ cho Tiện ích của Chrome. Tuy nhiên, mọi nhà cung cấp hỗ trợ thông báo đẩy cũ của Firebase sẽ hoạt động. Nếu nhà cung cấp của bạn liệt kê có hỗ trợ thông báo đẩy cũ của Firebase, hãy dùng thử tính năng này. Nếu bạn gặp sự cố, nhóm hỗ trợ nhà cung cấp có thể làm rõ mọi hạn chế áp dụng.
Trên kênh và chủ đề
chrome.gcm
đang sử dụng các API Firebase Messaging cũ. Điều này rất quan trọng vì API cũ không hỗ trợ các kênh thông báo. Mọi thông báo được đẩy sẽ được gửi tới mọi ứng dụng. Nếu tiện ích của người dùng chỉ quan tâm đến một tập hợp con các thông báo, thì bạn cần phải tự lọc.
Mặc dù Firebase bắt đầu dưới dạng tài khoản miễn phí, nhưng bạn sẽ bị tính phí khi vượt quá một ngưỡng sử dụng nhất định. Nếu bạn định gửi thông báo đến các nhóm cụ thể, thì tính năng lọc phía máy khách có thể sẽ gây ra chi phí cao hơn mức đảm bảo. Bạn có thể giải quyết vấn đề này bằng cách tạo nhiều dự án để sao chép từng kênh riêng lẻ (một dự án và một Mã nhận dạng người gửi cho mỗi kênh). Bất kỳ tiện ích nào cũng có thể đăng ký nhiều Mã nhận dạng người gửi, tối đa 100.
Ngoài ra, nếu cần hỗ trợ về kênh hoặc muốn sử dụng thông báo đẩy mà không cần thông qua Firebase, bạn có thể sử dụng Push API.