| Выберите платформу: | iOS+ Android Веб Flutter Unity C++ |
Чтобы получать сообщения, приложение должно назначить обратный вызов обработчику событий 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);
}
Сообщения могут представлять разные типы входящих данных. Чаще всего сообщения отправляются в приложение после того, как их инициирует разработчик. В ваше приложение также отправляются сообщения, представляющие события отправки сообщений, ошибки отправки сообщений и события удаления сообщений. Эти особые события можно отличить по полю Message::message_type.
Сообщения удалены
Отправляется в приложение, когда сервер FCM удаляет ожидающие сообщения.
Message::message_type будет стоить "deleted_messages". Сообщения могут быть удалены по следующим причинам:
На сервере FCM хранится слишком много сообщений.
Это может произойти, когда серверы приложения отправляют множество негруппируемых сообщений на серверы FCM, пока устройство находится в офлайн-режиме.
Устройство долго не подключалось, а сервер приложения недавно (в течение последних четырех недель) отправил сообщение приложению на этом устройстве.
После получения этого вызова рекомендуется выполнить полную синхронизацию приложения с сервером.
Отправка события
Вызывается, когда исходящее сообщение успешно отправлено в FCM.
MessageType будет стоить "send_event".
Ошибка отправки
Вызывается, если при отправке исходящего сообщения произошла ошибка.
MessageType будет стоить "send_error".