שימוש בהעברת הודעות בענן ב-Firebase (FCM) עם chrome.gcm

אפשר לשלוח ולקבל הודעות למשתמשי קצה באמצעות chrome.gcm. מכיוון שהיא מבוססת על העברת הודעות בענן ב-Firebase (FCM), היא מסתמכת על שירות חיצוני שצריך להגדיר. במדריך הזה מוסבר איך לעשות את זה באמצעות כל השלבים הנחוצים כדי שהוא יפעל בתוסף.

למרות ש-chrome.gcm עדיין נתמך, הוא נוצר לפני יותר מעשור לפני תקן Push. באופן כללי, תמיד מומלץ להשתמש בתקן האינטרנט ולא ב-API ספציפי לתוסף. מומלץ להשתמש ב-Push, אלא אם יש צורך ספציפי ב-chrome.gcm.

דרישות מוקדמות

כדי להשתמש ב-chrome.gcm, צריך להגדיר חשבון Firebase.

בדף הבית של Firebase.com.
דף הבית של Firebase.com

אחרי שיוצרים חשבון, פותחים את מסוף Firebase ובוחרים פרויקט קיים, או יוצרים פרויקט חדש לתוסף.

צילום מסך של דפי רישום הפרויקטים במסוף Firebase.
כרטיסי מוצר במסוף Firebase

המשך אל דף ההגדרות של האפליקציה 'העברת הודעות בענן'.

צילום מסך של דף הגדרות של העברת הודעות בענן ב-Firebase.
דף ההגדרות של העברת הודעות בענן ב-Firebase

אם יש לכם בפרויקט חשבון קיים להעברת הודעות בענן, כדאי להעתיק את מזהה השולח המספרי שמופיע ברשימה.

אם לא הפעלתם העברת הודעות בענן, תצטרכו להפעיל את Firebase Cloud Messaging API עבור הפרויקט בתוך Google Cloud. בתמונה הבאה אפשר לראות איפה יש קישור ישיר לדף הזה בהגדרות של Firebase.

צילום מסך של מיקום הקישור להפעלת Firebase Messaging API ב-Google Cloud.
פתיחת הקישור להגדרות של Google Cloud ב-Firebase

לאחר ההפעלה, חוזרים לדף ההגדרות של 'העברת הודעות בענן' ומעתיקים את מזהה השולח.

הגדרת chrome.gcm

עכשיו, אחרי שקיבלתם את מזהה השולח מ-Firebase, אפשר להגדיר את התוסף כך שיאזין להודעות. קודם כול, מוודאים שהוספתם את ההרשאה gcm לmanifest.json של התוסף

  {
    "manifest_version": 3,
    ...
    "permissions": ["gcm"]

עכשיו יש לך גישה ל-API chrome.gcm. תוכלו להירשם כדי להאזין להודעות בדחיפה על ידי חיוג אל chrome.gcm.register

האזנה להודעות

אחרי שהתוסף רשם את מזהה השולח, תצטרכו להוסיף קוד כדי לטפל בהודעות נכנסות.

Firebase בלי Firebase

chrome.gcm תמיד עובר דרך Firebase, אבל אפשר להגדיר את Firebase לפעול כשרת proxy של ספקים חיצוניים להעברת הודעות. בדרך כלל ספקים מפרטים תמיכה במפורש בתוספים ל-Chrome, אבל כל ספק שתומך בהתראות מדור קודם של Firebase אמור לעבוד. אם הספק שלכם מצביע על תמיכה בהתראות מדור קודם של Firebase, תוכלו לנסות אותו. אם תיתקלו בבעיות, נציגי התמיכה של התמיכה יוכלו להבהיר את ההגבלות אם יהיו.

בערוצים ובנושאים

chrome.gcm משתמש בממשקי ה-API של העברת הודעות של Firebase מהדור הקודם. זה חשוב כי ה-API מהדור הקודם לא תומך בערוצי הודעות. כל הודעה שנשלחת תועבר לכל לקוח. אם תוסף של משתמש מעוניין רק בקבוצת משנה של הודעות, עליך לסנן את עצמך.

כשפלטפורמת Firebase מתחילה כחשבון בחינם, נחייב אתכם ברגע שתחרגו מסף מסוים של שימוש. אם אתם מתכננים לשלוח הודעות לקבוצות ספציפיות, הסינון בצד הלקוח עשוי להיות גבוה יותר מהנדרש. כדי לעקוף את הבעיה, תוכלו ליצור כמה פרויקטים לשכפול ערוצים נפרדים (פרויקט אחד ומזהה שולח אחד לכל ערוץ). כל תוסף נתון יכול להירשם לכמה מזהי שולחים, עד 100.

לחלופין, אם אתם צריכים תמיכה בערוצים או לקבל התראות בלי לעבור דרך Firebase, תוכלו להשתמש ב-Push API.