تتيح لك ميزة FCM إرسال الرسائل حسب الموضوع إرسال رسالة إلى أجهزة متعددة وافقت على تلقّي رسائل حول موضوع معيّن. يمكنك إنشاء رسائل المواضيع حسب الحاجة، ويتولّى FCM عملية التوجيه وتسليم الرسالة بشكل موثوق إلى الأجهزة المناسبة.
في ما يلي النقاط الرئيسية حول المراسلة حسب الموضوع:
- الأكثر ملاءمةً للمعلومات المتاحة للجميع، مثل تنبيهات الطقس
- تم تحسين رسائل المواضيع لتحقيق معدل نقل بيانات أعلى بدلاً من تقليل وقت الاستجابة. لإرسال الرسائل بسرعة وأمان إلى أجهزة فردية أو مجموعات صغيرة، يمكنك استهداف الرسائل باستخدام رموز التسجيل بدلاً من المواضيع.
الحصص والحدود
تتيح ميزة المراسلة حسب الموضوع عددًا غير محدود من الاشتراكات لكل موضوع. ومع ذلك، تفرض FCM قيودًا في المجالات التالية:
- يمكن الاشتراك في ما لا يزيد عن 2,000 موضوع لكل مثيل تطبيق.
- إذا كنت تستخدم الاشتراك المجمّع للاشتراك في مثيلات التطبيق، يقتصر كل طلب على 1, 000 مثيل تطبيق.
تقييد الاشتراك
يقتصر معدّل إضافة الاشتراكات في المواضيع أو إزالتها على 3,000 طلب بحث في الثانية لكل مشروع.
يتم تحديد معدّل تكرار الاشتراكات الجديدة لكل مشروع. إذا أرسلت عددًا كبيرًا جدًا من طلبات الاشتراك خلال فترة زمنية قصيرة، ستردّ خوادم FCM برسالة 429 RESOURCE_EXHAUSTED ("QUOTA_EXCEEDED"). أعِد المحاولة باستخدام خوارزمية الرقود الأسي الثنائي.
تقييد التوزيع الموسَّع
عملية إرسال الرسائل إلى أجهزة متعددة هي عملية إرسال رسالة إلى أجهزة متعددة، مثل استهداف مواضيع ومجموعات، أو استخدام أداة إنشاء الإشعارات لاستهداف شرائح الجمهور أو شرائح المستخدمين.
لا يتم إرسال الرسائل إلى عدة وجهات بشكل فوري، لذا قد يكون لديك أحيانًا عمليات إرسال متعددة قيد التقدم في الوقت نفسه. نحصر عدد عمليات إرسال الرسائل المتزامنة إلى عدة مستلمين لكل مشروع بـ 1,000. بعد ذلك، قد نرفض طلبات إضافية لتوزيع البيانات أو نؤجّل توزيع البيانات إلى أن تكتمل بعض عمليات التوزيع الجارية.
يتأثر معدل التوزيع الفعلي الذي يمكن تحقيقه بعدد المشاريع التي تطلب عمليات توزيع في الوقت نفسه. من الشائع أن يبلغ معدّل التوزيع 10,000 طلب في الثانية لمشروع فردي، ولكن هذا الرقم ليس مضمونًا وهو نتيجة إجمالي الحمل على النظام. من المهم ملاحظة أنّ سعة النشر المتاحة يتم تقسيمها بين المشاريع وليس على مستوى طلبات النشر. لذا، إذا كان مشروعك يتضمّن عمليتَي توسيع نطاق قيد التقدّم، لن ترى كل عملية توسيع نطاق سوى نصف معدّل توسيع النطاق المتاح. الطريقة المقترَحة لتحقيق أقصى سرعة في عملية التوزيع هي أن يكون لديك عملية توزيع نشطة واحدة فقط قيد التقدّم في كل مرة.
الخطوات التالية
- تعرَّف على كيفية إدارة الاشتراكات في المواضيع باستخدام Admin SDK أو من تطبيق العميل.
- تعرَّف على كيفية إرسال الرسائل إلى المواضيع باستخدام Admin SDK أو الإصدار 1 من واجهة برمجة تطبيقات HTTP لمراسلة Firebase السحابية.