تلقّي الرسائل على تطبيق عميل Unity

تلقّي الرسائل ومعالجتها

لتلقّي الرسائل، يجب أن يحدّد تطبيقك وظيفة استدعاء لواجهة معالجة حدث Firebase.Messaging.FirebaseMessaging.MessageReceived.

حدث واحد (MessageReceived)

من خلال إلغاء تعيين طلب معاودة الاتصال إلى Firebase.Messaging.FirebaseMessaging.MessageReceived يمكنك تنفيذ إجراءات استنادًا إلى الرسالة المستلَمة والحصول على بيانات الرسالة:

public void OnMessageReceived(object sender, Firebase.Messaging.MessageReceivedEventArgs e) {
  UnityEngine.Debug.Log("From: " + e.Message.From);
  UnityEngine.Debug.Log("Message ID: " + e.Message.MessageId);
}

يمكن أن تمثّل الرسائل أنواعًا مختلفة من البيانات الواردة. في أغلب الأحيان، يتم إرسال الرسائل إلى التطبيق بعد أن يبدأ المطوّر عملية إرسالها. يتم أيضًا إرسال الرسائل إلى تطبيقك لتمثيل أحداث إرسال الرسائل وأحداث خطأ إرسال الرسائل وأحداث حذف الرسائل. يمكن التمييز بين هذه الأحداث الخاصة من خلال وضع علامة في الحقل MessageType.

الرسائل المحذوفة

يتم إرسال هذا الإشعار إلى تطبيقك عندما يحذف خادم FCM الرسائل في انتظار التسليم. سيكون سعر MessageType"deleted_messages". قد يتم حذف الرسائل في الحالات التالية:

  1. تم تخزين عدد كبير جدًا من الرسائل على خادم FCM.

    يمكن أن يحدث ذلك عندما ترسل خوادم التطبيق مجموعة من الرسائل التي لا يمكن تصغيرها إلى خوادم FCM عندما يكون الجهاز غير متصل بالإنترنت.

  2. لم يتم ربط الجهاز منذ فترة طويلة، وقد أرسل خادم التطبيق مؤخرًا (خلال آخر 4 أسابيع) رسالة إلى التطبيق على هذا الجهاز.

    ننصح بإجراء التطبيق لمزامنة كاملة مع ملف برمجي التطبيق بعد تلقّي هذا الطلب.

إرسال الحدث

يتمّ استدعاؤه عند إرسال رسالة إلى FCM بنجاح. سيكون سعر MessageType"send_event".

حدث خطأ في الإرسال

يتمّ استدعاؤه عند حدوث خطأ في إرسال رسالة إلى مصدر البيانات. سيكون سعر MessageType"send_error".