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

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

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

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

  • تكون ميزة "الرسائل حول المواضيع" مناسبة بشكلٍ أفضل للمحتوى مثل الطقس أو أي معلومات أخرى متاحة للجميع.

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

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

  • تتيح ميزة "المراسلة حسب المواضيع" إمكانية الاشتراك في عدد غير محدود من المواضيع. ومع ذلك، تفرض خدمة FCM قيودًا في هذه المجالات:

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

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

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

للاشتراك في موضوع، اتصل على subscribeToTopic() مع ذكر اسم الموضوع. تُعرِض هذه الطريقةFuture، والذي يتم حلّه عند نجاح الاشتراك:

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

لإلغاء الاشتراك، يُرجى الاتصال بالرقم unsubscribeFromTopic() مع ذكر اسم الموضوع.

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

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