Firebase Cloud Messaging
خدمة Firebase Cloud Messaging ( FCM )، المعروفة سابقًا باسم Google Cloud Messaging (GCM)، هي خدمة سحابية متعددة المنصات لإرسال الرسائل والإشعارات لتطبيقات Android و iOS والويب ، والتي يمكن استخدامها مجانًا اعتبارًا من أبريل 2025. [ 2 ] تتيح Firebase Cloud Messaging لمطوري تطبيقات الطرف الثالث إرسال الإشعارات أو الرسائل من خوادم تستضيفها FCM إلى مستخدمي المنصة أو المستخدمين النهائيين .
تُقدّم هذه الخدمة من قِبل Firebase ، وهي شركة تابعة لشركة Google . في 21 أكتوبر 2014، أعلنت Firebase عن استحواذ Google عليها مقابل مبلغ لم يُفصح عنه. [ 3 ] يشير الموقع الرسمي لخدمة Google Cloud Messaging إلى Firebase Cloud Messaging (FCM) باعتباره الإصدار الجديد من GCM. [ 4 ] Firebase هي منصة تطبيقات جوال تدعم المستخدمين في تطوير تطبيقات الجوال والويب. Firebase Cloud Messaging هو أحد المنتجات العديدة التي تُشكّل جزءًا من منصة Firebase. على هذه المنصة، يُمكن للمستخدمين دمج ودمج ميزات Firebase المختلفة في تطبيقات الويب والجوال.
تاريخ
تُعدّ خدمة Firebase Cloud Messaging (FCM) جزءًا من منصة Firebase، وهي نموذج خدمة سحابية يُؤتمت تطوير الواجهة الخلفية، أو ما يُعرف بالواجهة الخلفية كخدمة (BaaS). بعد استحواذ جوجل على شركة Firebase عام 2014، دُمجت بعض منتجات أو تقنيات منصة Firebase مع خدمات جوجل الحالية. استُبدلت خدمة إشعارات جوجل للأجهزة المحمولة، Google Cloud Messaging (GCM)، بخدمة FCM عام 2016. وفي 10 أبريل 2018، أزالت جوجل خدمة GCM، وفي 29 مايو 2019، أُوقف دعم خادم GCM وواجهة برمجة تطبيقات العميل. [ 5 ] أصبحت FCM بديلًا لخدمة GCM، وهي متوافقة مع مجموعات تطوير البرامج (SDK) الحالية من جوجل. [ 6 ]
خدمة Firebase Cloud Messaging هي خدمة مراسلة متعددة المنصات تتيح للمستخدم إرسال الرسائل مجانًا. تتوافق هذه الخدمة مع منصات متنوعة، بما في ذلك أندرويد وiOS. [ 7 ] أطلقت جوجل دعم تطبيقات الويب في 17 أكتوبر 2016، بما في ذلك تطبيقات الويب على الأجهزة المحمولة . [ 8 ] على منصة Firebase Cloud Messaging، يمكن لمطوري تطبيقات الطرف الثالث إرسال إشعارات ورسائل فورية عبر واجهة برمجة التطبيقات (API) إلى المستخدمين النهائيين. [ 9 ] بعد موافقة المستخدمين على تلقي الإشعارات الفورية، يصبح بإمكانهم الحصول على معلومات أو بيانات في الوقت الفعلي للمزامنة.
تطوير
يرث FCM البنية الأساسية لـ GCM، ولكنه يُبسّط تطوير جانب العميل. يوفر كل من GCM وFCM التشفير، والإشعارات الفورية، والرسائل، ودعمًا أصليًا لحزم تطوير البرامج (SDK) لأنظمة Android وiOS . يتطلب كلاهما وجود وسيط بين تطبيق العميل والبيئة الموثوقة، مما قد يُسبب تأخيرًا في مسار الاتصال بين الجهاز المحمول وخادم التطبيق. [ 9 ] يدعم FCM بروتوكولات الخادم HTTP و XMPP ، وهي مُطابقة لبروتوكولات GCM.
لا يُطلب من المطورين كتابة عمليات تسجيل فردية أو إعادة محاولة تسجيل الدخول في تطبيق العميل. [ 5 ] تتعامل كل من FCM وGCM مع الرسائل عبر نفس التعليمات، ولكن بدلاً من خوادم اتصال GCM، تُمرر الرسائل عبر خوادم FCM. تستبعد حزمة تطوير برامج FCM (SDK) كتابة منطق إعادة محاولة التسجيل أو الاشتراك بشكل فردي، مما يُسرّع عملية تطوير العميل. توفر حزمة FCM SDK حلاً جديداً للإشعارات يسمح للمطورين باستخدام إشعارات Firebase بدون خادم على وحدة تحكم ويب، استناداً إلى تحليلات Firebase. تُمكّن FCM من إرسال عدد غير محدود من الرسائل في اتجاهي الإرسال والاستقبال. [ 7 ]
القدرات الرئيسية
تتمتع خدمة Firebase Cloud Messaging بثلاث قدرات رئيسية. أولها، تمكين المستخدم من استقبال رسائل الإشعارات أو رسائل البيانات التي يمكن فك تشفيرها بواسطة كود التطبيق. ثانيًا، إمكانية توجيه الرسائل، حيث يمكن إرسالها إلى تطبيق العميل عبر طرق مختلفة؛ من منصة FCM إلى أجهزة فردية، أو مجموعات أجهزة محددة، أو أجهزة مشتركة في نطاقات مواضيع معينة. ثالثًا، قناة الاتصال بين تطبيقات العميل والخادم، حيث تتيح FCM إرسال أنواع مختلفة من الرسائل من أجهزة أو تطبيقات عميل محددة عبر هذه القناة. [ 10 ]
التفاصيل الفنية
ترسل خدمة Firebase Cloud Messaging الإشعارات والرسائل إلى الأجهزة التي تم تثبيت تطبيقات محددة تدعم Firebase عليها. تتطلب إضافة دعم FCM إلى تطبيق ما عدة خطوات: إضافة الدعم إلى مشروع Android Studio ، والحصول على رموز التسجيل، وتنفيذ معالجات لتحديد إشعارات الرسائل. [ 11 ] يمكن إرسال إشعارات الرسائل عبر وحدة تحكم Firebase مع خيار تقسيم المستخدمين.
بنية FCM
تتضمن بنية FCM ثلاثة مكونات: خادم اتصال FCM، وبيئة موثوقة مع خادم تطبيقات يعتمد على بروتوكول HTTP أو XMPP ووظائف سحابية، وتطبيق عميل. يتطلب إرسال واستقبال الرسائل بيئة أو خادمًا آمنًا لإنشاء الرسائل وتوجيهها وإرسالها، وتطبيق عميل يعمل بنظام iOS أو Android أو تطبيق ويب لاستقبالها. [ 12 ] هناك نوعان من الرسائل التي يمكن للمطورين إرسالها باستخدام FCM: رسائل الإشعارات ورسائل البيانات. رسائل الإشعارات هي الرسائل التي يعرضها FCM على الجهاز وتتم إدارتها تلقائيًا بواسطة حزمة تطوير البرامج (SDK) الخاصة بـ FCM. أما رسائل البيانات، فيتم معالجتها بواسطة تطبيق العميل. [ 13 ] لذلك، تُستخدم رسائل الإشعارات عندما يحتاج المطور إلى أن يتولى FCM عرض الإشعارات لتطبيقات العميل. بينما تُستخدم رسائل البيانات عندما يحتاج المطور إلى معالجة الرسائل داخل تطبيق العميل.

يُمكن لخدمة FCM إيصال الرسائل المُستهدفة إلى التطبيقات عبر ثلاث طرق: إلى جهاز واحد، أو إلى مجموعة أجهزة، أو إلى الأجهزة المُشتركة في مواضيع مُحددة. يقوم المُطورون بإنشاء وإرسال رسائل مُستهدفة إلى مجموعة مُختارة من المُستخدمين عبر "مُنشئ الإشعارات". [ 11 ] يتم دمج الرسائل المُرسلة عبر FCM مع Google Analytics لتتبُّع تفاعل المُستخدمين ومعدلات تحويلهم. [ 14 ]
تطبيق
تتألف عملية التنفيذ من عنصرين أساسيين. أولاً، يلزم توفير بيئة آمنة لإرسال واستقبال الرسائل لخوادم FCM أو خوادم التطبيقات الأخرى لتسهيل عملية تبادل الرسائل. ثانياً، يلزم وجود تطبيق عميل من الأنواع الممكنة، مثل iOS أو Android أو الويب (JavaScript)، على أن يكون متوافقاً مع خدمة النظام الأساسي المختارة.
تبدأ عملية تنفيذ FCM بتثبيت حزمة تطوير البرامج (SDK) الخاصة بها وفقًا للتعليمات المحددة للمنصة المختارة. بعد التثبيت، يجب تطوير تطبيق العميل. يُضاف إلى تطبيق العميل معالجة الرسائل، ومنطق الاشتراك في المواضيع، والميزات الأخرى المطلوبة. خلال هذه الخطوة، يمكن أيضًا إرسال رسائل اختبارية من مُنشئ الإشعارات. بعد ذلك، يتم تطوير خادم التطبيق لبناء منطق الإرسال. يتم إنشاء بيئة الخادم الأساسية بدون كتابة أي كود برمجي. [ 5 ]
تدفق معماري
يتطلب الأمر أولاً تسجيل الجهاز وإعداده لاستقبال الرسائل من FCM. سيتم تسجيل تطبيق العميل وتخصيص رمز تسجيل أو رمز FCM له، والذي تصدره خوادم اتصال FCM، مما يمنح التطبيق مُعرّفًا فريدًا. بعد ذلك، يصبح التطبيق قادرًا على إرسال واستقبال الرسائل. تشير الرسائل الواردة إلى إرسال إشعار فوري من خادم التطبيق إلى تطبيق العميل. تتضمن هذه العملية أربع خطوات: أولاً، بعد إنشاء رسالة في مُنشئ الإشعارات أو في بيئة آمنة أخرى، سيتم إرسال طلب للرسالة إلى خادم FCM. ثانيًا، سيستقبل خادم FCM طلب الرسالة ويقبله، ويُجهز الرسائل لكل موضوع مُحدد، ويُنشئ بيانات تعريفية للرسالة، مثل مُعرّف الرسالة، ويرسلها إلى طبقة نقل خاصة بالمنصة. ثالثًا، سيتم إرسال الرسالة عبر طبقة النقل الخاصة بالمنصة إلى جهاز متصل بالإنترنت. تتولى طبقة النقل على مستوى المنصة مسؤولية توجيه الرسالة إلى جهاز مُحدد، ومعالجة تسليمها، وتطبيق إعدادات مُحددة على المنصة. رابعاً، سيتلقى تطبيق العميل الإشعار أو الرسالة عبر جهازه. [ 15 ]
ميزات وأدوات إضافية
التحليلات
تُقدّم Firebase أدوات تحليل مجانية وغير محدودة لمساعدة المستخدم على فهم سلوك المستخدمين النهائيين فيما يتعلق بنقرات الإعلانات واستخدام التطبيقات. وبالتزامن مع ميزات Firebase الأخرى، تُمكّن Firebase Analytics المستخدم من استكشاف مجموعة واسعة من الوظائف واستخدامها، بدءًا من معدلات النقر وصولًا إلى حالات تعطل التطبيقات. [ 16 ]
تكوين Firebase عن بُعد
هو مخزن بيانات بسيط يعتمد على نظام المفتاح والقيمة، ويعمل على السحابة، ويتيح للمستخدم إجراء تعديلات يمكن للتطبيق قراءتها. يتضمن Firebase Remote Config أيضًا أداة إنشاء الجمهور، بالإضافة إلى الميزة الأساسية، مما يساعد المستخدم على إنشاء جماهير مخصصة وإجراء اختبارات A/B. [ 16 ]
دعم متعدد المنصات
تتيح واجهات برمجة التطبيقات المجمعة في حزم تطوير برمجية (SDKs) واحدة لأنظمة iOS وAndroid وJavaScript وC++، بالإضافة إلى دعم المنصات المتعددة الذي توفره FCM، للمطور إمكانية التوسع عبر منصات مختلفة دون الحاجة إلى تعديل البنية التحتية. [ 16 ]
دعم إشعارات الويب
يمكن للمطورين تطبيق واجهات برمجة تطبيقات IETF Web Push القياسية واستهداف متصفحات الويب. على سبيل المثال، في متصفح Chrome، يمكن للمطورين إرسال رسائل إلى Chrome على نظام Android أو صفحات Chrome على أنظمة Mac وWindows وLinux. تشمل الميزات الإضافية لدعم Web Push ميزة مراسلة المواضيع وإمكانية إرسال الرسائل إلى مجموعات المواضيع. [ 16 ]
الرسائل الموضوعية
يستطيع المطورون إرسال رسالة واحدة إلى أجهزة متعددة. وهي طريقة لإشعار المستخدمين المهتمين بمواضيع مشتركة، مثل الأحداث الرياضية والفنانين وأنواع الموسيقى. يحتاج المطورون إلى نشر رسالة على منصة FCM، والتي تُرسل تلقائيًا إلى الأجهزة المشتركة في الموضوع المحدد. لا يوجد حد لعدد المشتركين في موضوع واحد أو عدة مواضيع في التطبيق. [ 16 ]
رسائل تجمع بين المواضيع
إذا كان المستخدمون مشتركين في مواضيع مختلفة، ولمنع نشر الرسالة نفسها في مواضيع مختلفة ومنع المستخدمين من تلقي رسائل مكررة، يمكن للمطورين استخدام واجهة برمجة التطبيقات المُحدَّثة. يستطيع المطورون تحديد شروط معينة لـ FCM لتسليم الرسالة فقط للمستخدمين الذين يستوفون معايير هذه الشروط. [ 16 ]
تقارير تسليم الرسائل
تُنشئ أداة إعداد التقارير في FCM تقارير تسليم الرسائل (MDR)، مما يتيح للمطورين الحصول على رؤى تحليلية حول عملية تسليم الرسائل. في تقارير تسليم الرسائل، يستطيع المطورون تقييم مدى وصول الرسائل المرسلة إلى مستخدمين محددين من خلال عرض بيانات الرسائل المرسلة إلى مختلف حزم تطوير البرامج (SDKs) الخاصة بـ FCM (أندرويد، iOS). [ 17 ]
تحليل مسار الإشعارات
تتضمن منصة FCM أداة تحليل مسار الإشعارات (NFA). وباستخدام هذه الأداة، يستطيع المطورون الاطلاع على سلوك المستخدمين واتجاهاتهم من خلال بيانات الاستجابات للإشعارات المختلفة. تشمل أنواع بيانات الإشعارات التي يمكن تحليلها: "الإشعارات المرسلة"، و"الإشعارات المفتوحة"، وعدد المستخدمين الفريدين. ويمكن استخراج تقرير تحليلي من أداة NFA. كما يمكن للمطورين تخصيص مسارات الإشعارات وإنشائها. [ 17 ]
مشكلة رئيسية
مخاوف أمنية
يُسهّل نظام إدارة المحتوى السحابي (FCM) عملية تصميم وتنفيذ تطبيقات الجوال. وبفضل إمكانية إرسال رسائل اختبارية عبر مُنشئ الإشعارات في منصة Firebase، تُختصر عملية الاختبار أيضًا. مع ذلك، تنطوي حلول المراسلة السحابية على مخاطر أمنية ومخاطر تتعلق بالخصوصية، والتي يجب معالجتها ومراعاتها قبل تطبيقها في أي مشروع. يتضمن تطوير الحوسبة السحابية بنية شبكية مفتوحة وتجميعًا مرنًا للموارد المشتركة، مما يزيد من الحاجة إلى وضع تدابير أمنية سحابية. [ 18 ]
تُشكل إمكانية استغلال مفاتيح الخادم المخزنة في ملفات حزمة تطبيق أندرويد (APK) الخاصة بـ FCM مصدر قلق أمني. ففي حال استغلالها، يُمكن إرسال إشعارات فورية إلى جميع مستخدمي منصة Firebase. وقد سبق لـ GCM الإبلاغ عن ثغرات أمنية تسببت في عمليات تصيد احتيالي وإعلانات خبيثة.
تتضمن الحماية من التهديدات الأمنية خطوات متعددة وقد تترتب عليها آثار إضافية. سيؤدي تعطيل خدمة المراسلة السحابية إلى منع المعاملات الفورية. مع ذلك، قد يؤدي ذلك إلى توقف تطبيقات أخرى مثبتة على الجهاز المحظور والتي تعتمد على خدمة المراسلة السحابية. [ 18 ] يتمثل أحد الحلول الممكنة في حظر قناة إشعارات محددة أو إلغاء الاشتراك في موضوع معين. تتضمن حلول أخرى إعداد أنظمة إشعارات لحركة الرسائل للكشف عن المعلومات الضارة التي يتم إرسالها عبر منصة خدمة المراسلة السحابية. [ 19 ] يتطلب تطبيق هذا الحل خطوات إضافية. يحتاج المستخدم في البداية إلى تحديد قناة الاتصال أو الموضوع الذي يُحتمل أن يستخدمه التطبيق الضار.
مخاوف الخصوصية
تُشكل المراسلة السحابية مخاطر ومشاكل تتعلق بالخصوصية. فقد يتمكن قراصنة الإنترنت من اختراق أمان منصة Firebase Cloud Messaging والحصول على مُعرّف تسجيل تطبيق المستخدم أو معلومات حساسة أخرى. ومن أمثلة الاختراقات الأمنية إرسال الرسائل الخاصة من حساب المستخدم على وسائل التواصل الاجتماعي إلى جهاز المخترق. ولضمان خصوصية المنصة، يمكن للمستخدم إنشاء أنظمة حماية شاملة حول قنوات الاتصال المفتوحة التي توفرها خدمات المراسلة السحابية، والتي تُعد غير آمنة. توفر FCM للمستخدمين تشفيرًا للبيانات المرسلة. [ 18 ]
مراجع
- ↑ "لوحة معلومات حالة Firebase" . status.firebase.google.com . تم الاطلاع عليه في 1 أكتوبر 2024 .
- ↑ "أسعار Firebase" . مطورو Google . تم الاطلاع عليه في 20 أبريل 2025 .
- ↑ تامبلين، جيمس. "انضمام فايربيس إلى جوجل!" . شركة فايربيس . تم الاطلاع عليه بتاريخ 21 أكتوبر 2014 .
- ↑ "خدمة المراسلة السحابية من جوجل - الموقع الرسمي" . تم الاطلاع عليه بتاريخ 20 أبريل 2025 .
- 1 2 3 كانتاماني، س. (2020). خدمة المراسلة السحابية من فايربيس. تم الاسترجاع في 7 سبتمبر 2020، من https://medium.com/developermind/using-firebase-cloud-messaging-for-remote-notifications-in-ios-d35de1dc67b2 مؤرشف في 4 يناير 2021، في أرشيف الإنترنت (Wayback Machine) .
- ↑ توندولو، موسى (27 يوليو 2018). "فهم فايربيس: الجزء 1 (مراسلة فايربيس السحابية)" . ميديوم . تم الاطلاع عليه في 17 نوفمبر 2020 .
- 1 2 موروني، ل. (2017). خدمة المراسلة السحابية من فايربيس. في الدليل الشامل لفايربيس (ص 163-188). دار نشر أبريس، بيركلي، كاليفورنيا.
- ↑ نوفيت، ج. (2016). جوجل تطلق خدمة Firebase Cloud Messaging للويب. تم الاطلاع عليه بتاريخ 7 أكتوبر 2020، من الرابط: https://venturebeat.com/2016/10/17/google-launches-firebase-cloud-messaging-for-the-web/
- 1 2 ألبرتينجو، جي.، ديبيلي، إف جي، حسن، دبليو.، وستراماندينو، دي. (2020). حول أداء خدمات الويب، وخدمة الرسائل السحابية من جوجل، وخدمة الرسائل السحابية من فايربيس. الاتصالات الرقمية والشبكات، 6(1)، 31-37.
- ↑ "خدمة المراسلة السحابية من فايربيس" . فايربيس . تم الاطلاع عليه بتاريخ 16 نوفمبر 2020 .
- 1 2 يلماز، واي إس، أيدين، بي آي، وديميرباس، إم. (ديسمبر 2014). خدمة المراسلة السحابية من جوجل (GCM): تقييم. في مؤتمر IEEE العالمي للاتصالات لعام 2014 (ص 2807-2812). IEEE.
- ↑ موكار، م. أ.، فاجيري، س. أ.، وفتوح، س. إ. (سبتمبر 2019). استخدام خدمة Firebase Cloud Messaging للتحكم في تطبيقات الجوال. في المؤتمر الدولي لعام 2019 حول هندسة الحاسوب والتحكم والكهرباء والإلكترونيات (ICCCEEE) (ص 1-5). IEEE
- ↑ "حول رسائل FCM" . Firebase . تم الاسترجاع في 17 نوفمبر 2020 .
- ↑ "تحليلات جوجل لـ Firebase" . Firebase . تم الاطلاع عليه في 15 مايو 2023 .
- ↑ "نظرة عامة على بنية FCM" . Firebase . تم الاطلاع عليه بتاريخ 17 نوفمبر 2020 .
- 1 2 3 4 5 6 شارما، ر. (2020). ما هي GCM وFCM؟ (الاختلافات والقيود). تم الاسترجاع في 2 أكتوبر 2020، من https://www.izooto.com/blog/everything-that-you-need-to-know-about-firebase-cloud-messaging-platform
- 1 2 "فهم عملية تسليم الرسائل" . فايربيس . تم الاطلاع عليه بتاريخ 17 نوفمبر 2020 .
- إسبوزيتو ، كريستيان؛ بالميري ، فرانشيسكو؛ تشو، كيم-كوانغ ريموند (مارس 2018). "نظام إدارة الرسائل والإشعارات السحابية: التحديات والفرص" . مجلة IEEE للحوسبة السحابية . 5 ( 2): 11-16 . doi : 10.1109/mcc.2018.022171662 . ISSN 2325-6095 . S2CID 19248242 .
- ↑ لي، نا؛ دو، يانهوي؛ تشين، غوانغشوان (ديسمبر 2013). "دراسة استقصائية لخدمة إشعارات الدفع في المراسلة السحابية" . المؤتمر الدولي المصاحب لعلوم المعلومات والحوسبة السحابية لعام 2013. معهد مهندسي الكهرباء والإلكترونيات. الصفحات 273-279 . doi : 10.1109/iscc-c.2013.132 . ISBN 978-1-4799-5245-8. S2CID 15771293 .
روابط خارجية
- خدمات الاتصالات المتنقلة
- جوجل كلاود
- تقنية الدفع
