يمكن أن تمثّل الرسائل أنواعًا مختلفة من البيانات الواردة. في معظم الحالات، يتم إرسال الرسائل إلى التطبيق بعد أن يبدأها المطوّر. يتم أيضًا إرسال رسائل إلى تطبيقك لتمثيل أحداث الرسائل المرسَلة وأحداث أخطاء إرسال الرسائل وأحداث الرسائل المحذوفة. ويمكن التمييز بين هذه الأحداث الخاصة من خلال التحقّق من الحقل MessageType.
تم حذف الرسائل
يتم إرسال هذا الرمز إلى تطبيقك عندما يحذف خادم FCM الرسائل المعلّقة.
سيصبح MessageType هو "deleted_messages". قد يتم حذف الرسائل في الحالات التالية:
يتم تخزين عدد كبير جدًا من الرسائل على خادم FCM.
يمكن أن يحدث ذلك عندما ترسل خوادم أحد التطبيقات مجموعة من الرسائل غير القابلة للتصغير إلى خوادم FCM أثناء عدم اتصال الجهاز بالإنترنت.
لم يتصل الجهاز بالإنترنت لفترة طويلة، وأرسل خادم التطبيق رسالة إلى التطبيق على هذا الجهاز مؤخرًا (خلال الأسابيع الأربعة الماضية).
ويُنصح التطبيق بإجراء مزامنة كاملة مع خادم التطبيق بعد تلقّي هذا الطلب.
إرسال حدث
يتم استدعاء هذه الطريقة عند إرسال رسالة من الخادم إلى الجهاز بنجاح إلى FCM.
سيصبح MessageType هو "send_event".
حدث خطأ أثناء الإرسال
يتم استدعاء هذه الطريقة عند حدوث خطأ أثناء إرسال رسالة إلى الخادم.
سيصبح MessageType هو "send_error".
تاريخ التعديل الأخير: 2025-09-03 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","easyToUnderstand","thumb-up"],["ساعَدني المحتوى في حلّ مشكلتي.","solvedMyProblem","thumb-up"],["غير ذلك","otherUp","thumb-up"]],[["لا يحتوي على المعلومات التي أحتاج إليها.","missingTheInformationINeed","thumb-down"],["الخطوات معقدة للغاية / كثيرة جدًا.","tooComplicatedTooManySteps","thumb-down"],["المحتوى قديم.","outOfDate","thumb-down"],["ثمة مشكلة في الترجمة.","translationIssue","thumb-down"],["مشكلة في العيّنات / التعليمات البرمجية","samplesCodeIssue","thumb-down"],["غير ذلك","otherDown","thumb-down"]],["تاريخ التعديل الأخير: 2025-09-03 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],null,["Receive and handle messages\n\nTo receive messages, your app must assign a callback to the\n[Firebase.Messaging.FirebaseMessaging.MessageReceived](/docs/reference/unity/class/firebase/messaging/firebase-messaging#messagereceived)\nevent handler.\n\n`MessageReceived` Event\n\nBy overriding assigning a callback to\n[Firebase.Messaging.FirebaseMessaging.MessageReceived](/docs/reference/unity/class/firebase/messaging/firebase-messaging#messagereceived)\nyou can perform actions based on the received message and get the message data: \n\n```c#\npublic void OnMessageReceived(object sender, Firebase.Messaging.MessageReceivedEventArgs e) {\n UnityEngine.Debug.Log(\"From: \" + e.Message.From);\n UnityEngine.Debug.Log(\"Message ID: \" + e.Message.MessageId);\n}\n```\n\nMessages can represent different kinds of incoming data. Most commonly,\nmessages are sent to the app after being initiated by the developer. Messages\nare also sent to you app to represent message sent events, message send error\nevents, and messages deleted events. These special events can be differentiated\nby checking the `MessageType` field.\n\nMessages Deleted\n\nSent to your app when the FCM server deletes pending messages.\n`MessageType` will be `\"deleted_messages\"`. Messages may be deleted if:\n\n1. Too many messages are stored on the FCM server.\n\n This can occur when an app's servers send a bunch of non-collapsible\n messages to FCM servers while the device is offline.\n2. The device hasn't connected in a long time and the app server has\n recently (within the last 4 weeks) sent a message to the app on that\n device.\n\n It is recommended that the app do a full sync with the app\n server after receiving this call.\n\nSend Event\n\nCalled when an upstream message has been successfully sent to FCM.\n`MessageType` will be `\"send_event\"`.\n\nSend Error\n\nCalled when there was an error sending an upstream message.\n`MessageType` will be `\"send_error\"`."]]