بيئة الخادم الخاص بك وFCM

يتكون جانب الخادم لـ Firebase Cloud Messaging من مكونين:

  • الواجهة الخلفية FCM المقدمة من Google.
  • خادم التطبيق الخاص بك أو بيئة خادم موثوقة أخرى حيث يتم تشغيل منطق الخادم الخاص بك، مثل Cloud Functions for Firebase أو البيئات السحابية الأخرى التي تديرها Google.

يرسل خادم التطبيق أو بيئة الخادم الموثوقة طلبات الرسائل إلى الواجهة الخلفية لـ FCM، والتي تقوم بعد ذلك بتوجيه الرسائل إلى تطبيقات العميل التي تعمل على أجهزة المستخدمين.

متطلبات بيئة الخادم الموثوقة

يجب أن تستوفي بيئة خادم التطبيق لديك المعايير التالية:

  • قادر على إرسال طلبات الرسائل المنسقة بشكل صحيح إلى الواجهة الخلفية لـ FCM.
  • قادر على التعامل مع الطلبات وإعادة إرسالها باستخدام التراجع الأسي.
  • قادر على تخزين بيانات اعتماد ترخيص الخادم ورموز تسجيل العميل بشكل آمن.

اختيار خيار الخادم

ستحتاج إلى تحديد طريقة للتفاعل مع خوادم FCM: إما باستخدام Firebase Admin SDK أو البروتوكول الأولي. نظرًا لدعمها عبر لغات البرمجة الشائعة وطرقها الملائمة للتعامل مع المصادقة والترخيص، فإن Firebase Admin SDK هي الطريقة الموصى بها.

تتضمن خيارات التفاعل مع خوادم FCM ما يلي:

Firebase Admin SDK لـ FCM

تتعامل واجهة Admin FCM API مع المصادقة مع الواجهة الخلفية وتسهل إرسال الرسائل وإدارة اشتراكات المواضيع. باستخدام Firebase Admin SDK، يمكنك:

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

توفر Admin Node.js SDK طرقًا لإرسال الرسائل إلى مجموعات الأجهزة.

لإعداد Firebase Admin SDK، راجع إضافة Firebase Admin SDK إلى الخادم الخاص بك . إذا كان لديك بالفعل مشروع Firebase، فابدأ بإضافة SDK . تأكد أيضًا من تمكين Cloud Messaging API في صفحة إعدادات Cloud Messaging لمشروعك. وبعد ذلك، بمجرد تثبيت Firebase Admin SDK، يمكنك البدء في كتابة المنطق لإنشاء طلبات الإرسال .

بروتوكول خادم FCM

توفر FCM واجهة برمجة تطبيقات FCM HTTP v1 للمطورين الذين يفضلون بروتوكول الخادم الأولي.

لإرسال رسالة، يصدر خادم التطبيق طلب POST برأس HTTP ونص HTTP يتكون من أزواج قيمة مفتاح JSON. للحصول على تفاصيل حول خيارات الرأس والنص، راجع إنشاء طلبات إرسال خادم التطبيق