استخدام "المراسلة عبر السحابة الإلكترونية من Firebase" (FCM) مع chrome.gcm

يمكنك إرسال الرسائل واستلامها من خلال chrome.gcm. وبما أنّها مبنية على خدمة المراسلة عبر السحابة الإلكترونية من Firebase (FCM)، فهي تعتمد على خدمة خارجية تحتاج إلى إعدادها. يرشدك هذا الدليل إلى جميع الخطوات اللازمة لاستخدامه في إضافة Chrome.

على الرغم من أنّ chrome.gcm ما زال متاحًا، إلا أنّه تم إنشاؤه قبل أكثر من عقد من الزمن قبل معيار Push. بشكل عام، من أفضل الممارسات دائمًا استخدام معيار الويب بدلاً من واجهة برمجة تطبيقات خاصة بامتداد معيّن. ما لم تكن لديك حاجة محدّدة لاستخدام chrome.gcm، ننصحك باستخدام Push.

المتطلبات الأساسية

لاستخدام chrome.gcm، عليك إعداد حساب على Firebase.

صفحة Firebase.com الرئيسية.
صفحة Firebase.com الرئيسية

بعد إنشاء حساب، عليك فتح وحدة تحكّم Firebase واختيار مشروع حالي لاستخدامه أو إنشاء مشروع جديد لإضافة.

لقطة شاشة لبيانات المشاريع على "وحدة تحكُّم Firebase".
قوائم المشاريع في وحدة تحكّم Firebase

انتقِل إلى صفحة الإعدادات لخدمة "الرسائل في السحابة الإلكترونية".

لقطة شاشة لصفحة إعدادات "المراسلة عبر السحابة الإلكترونية من Firebase".
صفحة إعدادات "المراسلة عبر السحابة الإلكترونية من Firebase"

إذا كان لديك حساب حالي على خدمة المراسلة في السحابة الإلكترونية في هذا المشروع، عليك نسخ رقم تعريف المُرسِل المدرَج.

إذا لم تكن ميزة "المراسلة عبر السحابة الإلكترونية" مفعّلة، يجب تفعيل واجهة برمجة تطبيقات المراسلة عبر السحابة الإلكترونية من Firebase للمشروع داخل Google Cloud. في الصورة التالية، يمكنك الاطّلاع على مكان توفّر رابط يؤدي مباشرةً إلى هذه الصفحة في إعدادات Firebase.

لقطة شاشة لموقع الرابط لتفعيل Firebase Messaging API في Google Cloud
فتح رابط إعدادات Google Cloud في Firebase

بعد تفعيل هذه الميزة، ارجع إلى صفحة الإعدادات في ميزة "رسائل Google"، وانسخ رقم تعريف المُرسِل.

ضبط chrome.gcm

بعد الحصول على معرّف المُرسِل من Firebase، يمكنك ضبط الإضافة للاستماع إلى الرسائل. في البداية، يجب الحرص على إضافة الإذن gcm إلى إذن manifest.json في إضافتك.

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

يمكنك الآن الوصول إلى واجهة برمجة تطبيقات chrome.gcm. يمكنك التسجيل للاستماع إلى الرسائل الفورية من خلال الاتصال على chrome.gcm.register

الاستماع إلى الرسائل

بمجرد أن تسجل الإضافة لمعرف المرسل، ستحتاج إلى إضافة رمز للتعامل مع الرسائل الواردة.

Firebase بدون Firebase

على الرغم من أنّ chrome.gcm يتم إجراؤه دائمًا من خلال Firebase، يمكن ضبط Firebase ليعمل كوكيل لمورّدي رسائل الإشعارات الفورية الخارجيين. سيُدرج المورّدون عادةً بشكل صريح التوافق مع إضافات Chrome، ولكن من المفترض أن يعمل أي مورّد يتيح الإشعارات الفورية القديمة من Firebase. إذا كان موفِّر الخدمة يُدرج توفُّر ميزة "الإشعارات الفورية القديمة" في Firebase، جرِّبها. إذا واجهت مشاكل، من المفترض أن يتمكّن فريق الدعم لدى مقدّمي الخدمة من توضيح أي قيود قد تكون مفروضة.

في القنوات والمواضيع

يستخدم تطبيق chrome.gcm واجهات برمجة تطبيقات Firebase Messaging القديمة. هذا مهم لأنّ واجهة برمجة التطبيقات القديمة لا تتوافق مع قنوات الرسائل. سيتم إرسال كل رسالة يتم دفعها إلى كل عميل. إذا كانت إضافة المستخدم مهتمة فقط بمجموعة فرعية من الرسائل، عليك إجراء الفلترة بنفسك.

على الرغم من بدء Firebase كحساب مجاني، سيتم تحصيل الرسوم منك عند تجاوز حد معيّن للاستخدام. وإذا كنت تخطط لإرسال رسائل إلى مجموعات محددة، فقد تكلف التصفية من جانب العميل أكثر مما يلزم. يمكنك التغلب على هذه المشكلة من خلال إنشاء مشاريع متعددة لنسخ قنوات فردية (مشروع واحد ومعرّف مُرسِل واحد لكل قناة). يمكن لأي إضافة معيّنة تسجيل معرّفات مُرسِلين متعددة تصل إلى 100 معرّف.

بدلاً من ذلك، إذا كنت بحاجة إلى دعم القنوات أو كنت تريد استخدام الإشعارات الفورية بدون استخدام Firebase، يمكنك استخدام Push API.