إرسال رسائل بشأن المواضيع على Flutter

استنادًا إلى نموذج النشر/الاشتراك، تتيح لك ميزة المراسلة بشأن مواضيع "المراسلة عبر السحابة الإلكترونية من Firebase" إرسال رسالة. على أجهزة متعددة تم تفعيل موضوع معين فيها. يتم إنشاء رسائل المواضيع باسم كما أن خدمة "المراسلة عبر السحابة الإلكترونية من Firebase" تتعامل مع التوجيه وتسليمها بشكل موثوق إلى جهة اليمين الأجهزة.

على سبيل المثال، مستخدمو المد المحلي إمكانية تفعيل تطبيق للتوقّعات في "تنبيهات تيارات المد والجزر" الموضوع وتلقي والظروف المثلى لصيد المياه المالحة في مناطق محددة. مستخدمو تطبيق رياضي يمكنهم الاشتراك في التحديثات التلقائية في نتائج المباريات المباشرة لمبارياتهم المفضلة الفرق.

بعض النقاط التي يجب مراعاتها بشأن المواضيع:

  • تتلاءم رسائل المواضيع بشكلٍ أفضل مع محتوى مثل حالة الطقس وغير ذلك من المحتوى العلني المعلومات المتوفرة.

  • تم تحسين رسائل المواضيع لمعالجة البيانات بدلاً من وقت الاستجابة. بالنسبة إلى التحميل السريع، التسليم الآمن لأجهزة فردية أو مجموعات صغيرة من الأجهزة، استهداف الرسائل برموز التسجيل المميَّزة وليس موضوعات.

  • إذا كنت بحاجة إلى إرسال رسائل إلى أجهزة متعدّدة لكل مستخدم، ننصحك المراسلة الجماعية على الأجهزة لحالات الاستخدام هذه.

  • تتيح ميزة "رسائل المواضيع" اشتراكات غير محدودة لكل موضوع. أمّا خدمة "المراسلة عبر السحابة الإلكترونية من Firebase" فرض حدود في الجوانب التالية:

    • لا يمكن الاشتراك في نسخة واحدة من التطبيق في أكثر من 2000 موضوع.
    • في حال استخدام الاستيراد المجمّع للاشتراك في مثيلات التطبيقات، يمكن أن يقتصر كل طلب على 1, 000 نسخة افتراضية من التطبيق.
    • يكون تكرار الاشتراكات الجديدة محدودًا لمعدل لكل مشروع. إذا أرسلت خلال فترة زمنية قصيرة للغاية، ستطلب خوادم "المراسلة عبر السحابة الإلكترونية من Firebase" الرد باستخدام ردّ 429 RESOURCE_EXHAUSTED ("تم تجاوز الحصة المحدّدة"). إعادة المحاولة مع تراجع أسّي.

إشراك تطبيق العميل في موضوع

يمكن لتطبيقات العملاء الاشتراك في أي موضوع حالي، أو يمكنها إنشاء موضوع جديد الموضوع. عندما يشترك تطبيق عميل في اسم موضوع جديد (اسم موضوع غير موجود بالفعل لمشروع Firebase)، فإن الموضوع الجديد بهذا الاسم هو التي أنشأتها في خدمة "المراسلة عبر السحابة الإلكترونية من Firebase" ويمكن لأي عميل الاشتراك فيها في وقت لاحق.

للاشتراك في موضوع، اتصل بـ subscribeToTopic() مع ذكر اسم الموضوع. هذه الطريقة تعرض الخطأ Future، والذي تتم معالجته عند نجاح الاشتراك:

await FirebaseMessaging.instance.subscribeToTopic("topic");

لإلغاء الاشتراك، اتصل بـ unsubscribeFromTopic() مع ذِكر اسم الموضوع.

لا يمكن استخدام subscribeToTopic() وunsubscribeFromTopic() للويب. الدائمين. للتعرّف على كيفية إدارة الاشتراكات لمستخدمي الويب، يُرجى الاطّلاع على إرسال رسائل إلى مواضيع على الويب/JavaScript

الخطوات التالية