تقدّم هذه الصفحة مساعدة في تحديد المشاكل وحلّها وإجابات عن الأسئلة الشائعة حول Cloud Messaging.
ما الفرق بين أداة إنشاء الإشعارات وFCM؟
توفّر Firebase Cloud Messaging مجموعة كاملة من إمكانات المراسلة من خلال حِزم تطوير البرامج (SDK) الخاصة بالعملاء وبروتوكول خادم HTTP. إذا كانت عمليات النشر تتضمّن متطلبات مراسلة أكثر تعقيدًا، فإنّ FCM هو الخيار المناسب.
"أداة إنشاء الإشعارات" هي حلّ خفيف الوزن وبدون خادم لإرسال الرسائل، وهو يستند إلى Firebase Cloud Messaging. وبفضل وحدة التحكّم الرسومية سهلة الاستخدام ومتطلبات الترميز المنخفضة، تتيح "أداة إنشاء الإشعارات" للمستخدمين إرسال رسائل لإعادة جذب المستخدمين والاحتفاظ بهم وتعزيز نمو التطبيق ودعم الحملات التسويقية.
| الإمكانات |
|
منشئ الإشعارات |
Cloud Messaging |
| الهدف |
جهاز واحد |
|
|
|
العملاء المشتركون في مواضيع
(مثل الطقس) |
|
|
|
العملاء في شريحة المستخدمين المحدّدة مسبقًا (التطبيق والإصدار واللغة) |
|
|
|
العملاء في شرائح جمهور "إحصاءات Google" المحدّدة |
|
|
|
العملاء في مجموعات الأجهزة |
|
|
|
التحميل من العميل إلى الخادم |
|
|
| نوع الرسالة |
الإشعارات التي تصل إلى 2 كيلوبايت |
|
|
|
رسائل البيانات التي تصل إلى 4 كيلوبايت |
|
|
| التسليم |
فوري |
|
|
|
التوقيت المحلي لجهاز العميل المستقبلي |
|
|
| إحصاءات Google |
جمع إحصاءات "الإشعارات المضمّنة" وتحليل مسار الإحالة الناجحة |
|
|
هل يجب استخدام خدمات Firebase أخرى لاستخدام FCM؟
يمكنك استخدام Firebase Cloud Messaging كعنصر مستقل بدون استخدام خدمات Firebase الأخرى.
لماذا لا تتلقّى الأجهزة المستهدَفة الرسائل على ما يبدو؟
عندما يبدو أنّ الأجهزة لم تتلقَّ الرسائل بنجاح، تحقَّق أولاً من هذين السببين المحتملَين:
التعامل مع الرسائل التي تظهر في المقدّمة لرسائل الإشعارات يجب أن تضيف تطبيقات العميل منطق معالجة الرسائل للتعامل مع رسائل الإشعارات عندما يكون التطبيق في المقدّمة على الجهاز. اطّلِع على التفاصيل الخاصة بأجهزة
iOS وAndroid.
قيود جدار الحماية للشبكة: إذا كانت مؤسستك تستخدم جدار حماية يقيّد الزيارات من الإنترنت أو إليه، عليك ضبطه للسماح بالاتصال بخدمة FCM كي تتمكّن تطبيقات عميل Firebase Cloud Messaging من تلقّي الرسائل. المنافذ التي يجب فتحها هي:
يستخدم FCM عادةً المنفذ 5228، ولكنّه يستخدم أحيانًا المنفذَين 5229 و5230.
لا يوفّر FCM عناوين IP محدّدة، لذا عليك السماح لجدار الحماية بقبول الاتصالات الصادرة لجميع عناوين IP المضمّنة في مجموعات عناوين IP الواردة في رقم النظام المستقل (ASN) 15169 الخاص بـ Google.
لماذا لا يتم استدعاء onMessageReceived في تطبيق Android؟
عندما يكون تطبيقك يعمل في الخلفية، يتم عرض رسائل الإشعارات في علبة النظام، ولا يتم استدعاء onMessageReceived. بالنسبة إلى رسائل الإشعارات التي تتضمّن حمولة بيانات، يتم عرض رسالة الإشعار في علبة النظام، ويمكن استرداد البيانات التي تم تضمينها في رسالة الإشعار من الغرض الذي تم إطلاقه عندما ينقر المستخدم على الإشعار.
لمزيد من المعلومات، يُرجى الاطّلاع على تلقّي الرسائل والتعامل معها.
لماذا تظهر لي رسالة الخطأ 404 عند إرسال رسائل إلى نسخة نشطة من التطبيق تم استعادتها من نسخة احتياطية؟
معرّف تثبيت Firebase (FID) هو معرّف لنسخة من التطبيق. يتم تلقائيًا الاحتفاظ بنسخة احتياطية من بيانات تثبيت Firebase واستعادتها. وبالتالي، في حالة الاستعادة، تتشارك النسخة المستعادة من التطبيق والنسخة الأصلية من التطبيق المعرّف نفسه. وبما أنّ خدمة "مراسلة Firebase السحابية" تخزّن رمزًا مميزًا واحدًا فقط لكل معرّف FID، فإذا تم استخدام كلّ من النسخة الأصلية من التطبيق والنسخة المستعادة من التطبيق، عند تسجيل إحدى النسختَين من التطبيق في خدمة "مراسلة Firebase السحابية"، تتم إزالة الرمز المميز للنسخة الأخرى من التطبيق، ما يؤدي إلى حدوث أخطاء 404.
ننصح المطوّرين باتّخاذ الإجراءات التالية في تطبيقاتهم:
- استبعاد
بيانات تثبيت Firebase من النسخة الاحتياطية يتم تخزين بيانات تثبيت Firebase في ملف
PersistedInstallation....json. اسم الملف هو قيمة ثابتة لأحد التطبيقات، مثل <exclude domain="file" path="PersistedInstallation.W0R...GQ.json"
/>
أعلنت شركة Apple عن إيقاف بروتوكول APNs الثنائي القديم نهائيًا. هل يلزمني اتخاذ أي إجراء؟
لا، فقد انتقلت خدمة Firebase Cloud Messaging إلى بروتوكول APNs المستند إلى HTTP/2 في عام 2017. إذا كنت تستخدم FCM لإرسال إشعارات إلى أجهزة iOS، لن تحتاج إلى اتخاذ أي إجراء.
حصص واستخدام FCM
كيف يمكنني إرسال إشعارات إلى قاعدة كبيرة من العملاء في غضون دقيقتَين؟
لا يمكن إتاحة حالة الاستخدام هذه، ويجب توزيع عدد الزيارات على مدار 5 دقائق.
يُرسل تطبيقي إشعارات للمستخدمين بشأن الأحداث، ويجب تسليم هذه الرسائل على الفور لدعم نموذج عملي. هل يمكنني الحصول على حصة أكبر؟
لا يمكننا الموافقة على طلبات زيادة الحصة لهذا السبب، بل عليك توزيع عدد الزيارات على مدار 5 دقائق لتجنُّب الزيارات المفاجئة.
رسائلي تتعلّق بأحداث مجدوَلة. كيف يمكنني إرسال كل الزيارات في بداية الساعة؟
ننصحك ببدء إرسال الإشعارات قبل 5 دقائق على الأقل من موعد الحدث، أو يمكنك إرسال رسائل البيانات وتنفيذ النسخة المشابهة من معالج onMessageReceived في منصتك لجدولة الإشعارات المحلية مسبقًا.
من الصعب عليّ وعلى مؤسستي التعامل مع أخطاء 429. هل يمكنني الحصول على إعفاء أو حصة أكبر لتجنُّب تلقّي الرمز 429؟
ندرك أنّ حدود الحصة قد تكون صعبة، ولكنّها ضرورية للحفاظ على موثوقية الخدمة، ولا يمكننا منح استثناءات. استخدِم عمليات إعادة المحاولة من أجل التعامل بشكل صحيح مع أخطاء 429.
كم من الوقت يستغرق تنفيذ طلب زيادة الحصة؟
يعتمد طلب زيادة الحصة على استخدامك FCM. وفي أي حال، يمكنك توقّع تلقّي ردّ في غضون بضعة أيام عمل. وفي بعض الحالات، قد يكون هناك بعض المراسلات بشأن استخدامك FCM وظروف مختلفة، ما قد يؤدي إلى إطالة العملية. وفي حال استيفاء جميع المتطلبات، سيتم التعامل مع معظم الطلبات في غضون أسبوعَين.
هل يمكنني الحصول على حصة إضافية لفعالية مؤقتة؟
يمكنك طلب حصة إضافية لاستيعاب حدث يستمر لمدة تصل إلى شهر واحد.
يجب تقديم الطلب قبل شهر واحد على الأقل من موعد الفعالية مع توفير تفاصيل واضحة حول وقت بدء الفعالية ووقت انتهائها، وستبذل FCM كل جهد ممكن لتلبية الطلب. وفي حال الموافقة على طلبك، سيتم إلغاء هذه الزيادات في الحصة بعد تاريخ انتهاء الحدث.
هل يمكن أن تتغير حصتي الحالية؟
مع أنّ Google لن تجري هذه التغييرات إلا عند الضرورة، قد يتم تغيير الحصص حسب الحاجة لحماية سلامة النظام. وستُعلمك Google مسبقًا بهذه التغييرات كلما أمكن ذلك. احرص على تعديل جهات الاتصال في اتفاقية الخدمة الرئيسية (MSA) على Cloud لزيادة فرص تلقّي إشعارات الخدمة.