تلقّي الرسائل على تطبيق عميل 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".