Quando FCM riceve una chiamata di messaggistica upstream da un'app client, genera la stanza XMPP necessaria per l'invio del messaggio upstream.
FCM aggiunge i campi category
e from
, quindi invia al server dell'app una stanza come la seguente:
<message id=""> <gcm xmlns="google:mobile:data"> { "category":"com.example.yourapp", // to know which app sent it "data": { "hello":"world", }, "message_id":"m-123", "from":"REGID" } </gcm> </message>
Invio di un messaggio ACK
In risposta a un messaggio upstream come quello riportato sopra, il server dell'app deve utilizzare la stessa connessione per inviare un messaggio di ACK contenente l'ID messaggio univoco. Se FCM non riceve un ACK, potrebbe riprovare a inviare il messaggio al server dell'app.
<message id=""> <gcm xmlns="google:mobile:data"> { "to":"REGID", "message_id":"m-123" "message_type":"ack" } </gcm> </message>
Per ulteriori informazioni sulla sintassi dei messaggi a monte, consulta il riferimento del server di connessione XMPP.