Ricevi messaggi su un'app client Unity

Ricevere e gestire i messaggi

Per ricevere messaggi, l'app deve assegnare un callback al gestore degli eventi Firebase.Messaging.FirebaseMessaging.MessageReceived.

MessageReceived evento

Sostituendo l'assegnazione di un callback a Firebase.Messaging.FirebaseMessaging.MessageReceived puoi eseguire azioni in base al messaggio ricevuto e ottenere i dati del messaggio:

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

I messaggi possono rappresentare diversi tipi di dati in arrivo. Di solito, i messaggi vengono inviati all'app dopo essere stati avviati dallo sviluppatore. I messaggi vengono inviati anche alla tua app per rappresentare gli eventi di invio dei messaggi, gli eventi di errore di invio dei messaggi e gli eventi di eliminazione dei messaggi. Questi eventi speciali possono essere differenziati controllando il campo MessageType.

Messaggi eliminati

Inviata alla tua app quando il server FCM elimina i messaggi in attesa. MessageType sarà "deleted_messages". I messaggi potrebbero essere eliminati se:

  1. Troppi messaggi archiviati sul server FCM.

    Questo può accadere quando i server di un'app inviano una serie di messaggi non comprimibili ai server FCM mentre il dispositivo è offline.

  2. Il dispositivo non si è connesso da molto tempo e il server dell'app ha recentemente (nelle ultime 4 settimane) inviato un messaggio all'app sul dispositivo.

    È consigliabile che l'app esegua una sincronizzazione completa con il server di app dopo aver ricevuto questa chiamata.

Invia evento

Viene chiamato quando un messaggio a monte è stato inviato correttamente a FCM. MessageType sarà "send_event".

Errore di invio

Viene chiamato quando si verifica un errore durante l'invio di un messaggio a monte. MessageType sarà "send_error".