يتكوّن جانب الخادم في Firebase Cloud Messaging من مكوّنَين:
- FCM الخلفية التي توفّرها Google
- خادم التطبيق أو بيئة خادم موثوق بها أخرى يتم فيها تشغيل منطق الخادم، مثل وظائف Firebase السحابية أو بيئات سحابية أخرى تديرها Google
يرسل خادم التطبيق أو بيئة الخادم الموثوق بها طلبات الرسائل إلى الواجهة الخلفية لخدمة FCM، والتي توجّه الرسائل بعد ذلك إلى تطبيقات العميل التي تعمل على أجهزة المستخدمين.
باستخدام بروتوكولات خادم التطبيق Firebase Admin SDK أو FCM، يمكنك إنشاء طلبات الرسائل وإرسالها إلى هذه الأنواع من الأهداف:
- اسم الموضوع
- الشرط
- رمز التسجيل المميز لـ "FCM"
- اسم مجموعة الأجهزة (متوقّفة نهائيًا، ستتم إزالتها في 29 سبتمبر 2027)
يمكنك إرسال رسائل تتضمّن حمولة إشعار تتألف من حقول محدّدة مسبقًا، أو حمولة بيانات تتضمّن حقولاً يحدّدها المستخدم، أو رسالة تتضمّن كلا النوعَين من الحمولة. لمزيد من المعلومات، يُرجى الاطّلاع على أنواع الرسائل.
متطلبات بيئة الخادم الموثوق بها
يجب أن تستوفي بيئة خادم التطبيق المعايير التالية:
- يمكنه إرسال طلبات رسائل منسَّقة بشكل صحيح إلى الخلفية في FCM.
- القدرة على معالجة الطلبات وإعادة إرسالها باستخدام التراجع الأسي
- القدرة على تخزين بيانات اعتماد تفويض الخادم والرموز المميّزة لتسجيل العميل بشكل آمن
بيانات الاعتماد المطلوبة لمشروع Firebase
استنادًا إلى ميزات "FCM" التي تستخدمها، قد تحتاج إلى بيانات الاعتماد التالية من مشروعك على Firebase:
| بيانات الاعتماد | الوصف |
|---|---|
| رقم تعريف المشروع | معرّف فريد لمشروع Firebase، يُستخدَم في الطلبات المرسَلة إلى نقطة نهاية HTTP للإصدار الأول من FCM. تتوفّر هذه القيمة في لوحة الإعدادات ضمن Firebase وحدة تحكّم. |
| الرمز المميّز للتسجيل | سلسلة رمز مميّز فريدة تحدّد كل مثيل لتطبيق عميل يجب استخدام الرمز المميّز للتسجيل لإرسال الرسائل إلى مثيل تطبيق واحد ومجموعة أجهزة. يُرجى العِلم أنّه يجب الحفاظ على سرية رموز التسجيل المميّزة. |
| معرّف المرسِل | قيمة رقمية فريدة يتم إنشاؤها عند إنشاء مشروع Firebase، وتكون متاحة في علامة التبويب Cloud Messaging ضمن لوحة الإعدادات في وحدة تحكّم Firebase. رقم تعريف المرسِل هو نفسه رقم المشروع. يُستخدم رقم تعريف المُرسِل لتحديد كل مُرسِل يمكنه إرسال رسائل إلى تطبيق العميل. |
| رمز الدخول | رمز OAuth 2.0 مميّز قصير الأمد يفوّض الطلبات إلى الإصدار 1 من واجهة برمجة تطبيقات HTTP يرتبط هذا الرمز المميز بحساب خدمة ينتمي إلى مشروع Firebase الخاص بك. لإنشاء رموز الدخول وتغييرها، اتّبِع الخطوات الموضّحة في تفويض طلبات الإرسال. |
تحديد خيار الخادم
عليك اختيار طريقة للتفاعل مع خوادم "FCM": إما باستخدام Firebase Admin SDK أو الإصدار 1 من واجهة برمجة التطبيقات HTTP في "FCM". بسبب توافقها مع لغات البرمجة الشائعة وطرقها المريحة للتعامل مع المصادقة والتفويض، تُعدّ Firebase Admin SDK الطريقة المقترَحة.
تشمل خيارات التفاعل مع خوادم FCM ما يلي:
Firebase Admin SDK، الذي يتيح استخدام Node وJava وPython وC# وGo.
الإصدار الأول من واجهة برمجة تطبيقات HTTP في FCM، وهي واجهة برمجة تطبيقات REST API مزوّدة بمصادقة آمنة وإمكانات مرنة للمراسلة على عدة أنظمة أساسية (يستند Firebase Admin SDK إلى هذا البروتوكول ويوفّر جميع مزاياه الأساسية).
Firebase Admin SDK
يتولّى Firebase Admin SDK معالجة المصادقة مع الخلفية ويسهّل إرسال الرسائل وإدارة الاشتراكات في المواضيع. باستخدام Firebase Admin SDK، يمكنك:
- إرسال رسائل إلى نُسخ فردية من التطبيق
- إرسال الرسائل إلى المواضيع وعبارات الشروط التي تتطابق مع موضوع واحد أو أكثر
- إرسال رسائل إلى مجموعات الأجهزة
- الاشتراك في المواضيع وإلغاء الاشتراك فيها من خلال نُسخ التطبيق
- إنشاء حمولات رسائل مخصّصة لمنصات مستهدفة مختلفة
لإعداد "Firebase Admin SDK"، يُرجى الاطّلاع على مقالة إضافة "Firebase Admin SDK" إلى خادمك. إذا كان لديك مشروع Firebase، ابدأ بإضافة حزمة تطوير البرامج (SDK). يُرجى أيضًا التأكّد من تفعيل واجهة برمجة التطبيقات Firebase Cloud Messaging API (الإصدار 1) في صفحة إعدادات خدمة المراسلة عبر السحابة الإلكترونية لمشروعك. بعد تثبيت Firebase Admin SDK، يمكنك البدء في كتابة المنطق لإنشاء طلبات الإرسال.
FCM HTTP v1 API
توفّر FCM واجهة برمجة التطبيقات FCM HTTP v1 للمطوّرين الذين يفضّلون استخدام بروتوكول خادم أولي.
لإرسال رسالة، يُصدر خادم التطبيق طلب POST يتضمّن عنوان HTTP ونص HTTP يتألف من أزواج قيم ومفاتيح JSON. لمعرفة التفاصيل حول خيارات العنوان والنص، يُرجى الاطّلاع على إرسال رسالة باستخدام الإصدار الأول من واجهة برمجة التطبيقات HTTP في FCM.