2017-10-12 6 views
1

Je n'arrive pas à envoyer un message FCM à envoyer à plusieurs sujets avec le champ condition. Pour une raison quelconque, même si FCM n'envoie aucune erreur, mes appareils ne reçoivent pas le message lorsque vous utilisez ce champ.Le champ FCM 'condition' ne fonctionne pas

Quand j'envoie ceci:

{ 
"to": "/topics/topic1", 
"data": { 
    "message": "test" 
    } 
} 

le message est reçu, mais je ne reçois rien avec ceci:

{ 
"condition": "'topic1' in topics", 
"data": { 
    "message": "test" 
    } 
} 

même pensé à la fois un message utiliser le même nom de sujet et à la fois le retour de message un message de succès de Firebase.

Répondre

0

Vous devez vous abonner à vos appareils à votre sujet, vous pouvez effectuer une pause service pour vous abonner. Reference Et quand vous voulez envoyer un message, vous pouvez fournir un titre et le corps

Exemple:

{ 
    "message":{ 
     "condition": "'topic1' in topics", 
     "data": { 
      "message": "test" 
     }, 
    "notification" : { 
     "body" : "This is an FCM notification message!", 
     "title" : "FCM Message", 
     } 
    } 
} 

Avec réponse modelée reference Sujet requête HTTP POST

Send to a single topic: 

https://fcm.googleapis.com/fcm/send 
Content-Type:application/json 
Authorization:key=AIzaSyZ-1u...0GBYzPu7Udno5aA 
{ 
    "to": "/topics/foo-bar", 
    "data": { 
    "message": "This is a Firebase Cloud Messaging Topic Message!", 
    } 
} 
Send to devices subscribed to topics "dogs" or "cats": 

https://fcm.googleapis.com/fcm/send 
Content-Type:application/json 
Authorization:key=AIzaSyZ-1u...0GBYzPu7Udno5aA 
{ 
    "condition": "'dogs' in topics || 'cats' in topics", 
    "data": { 
    "message": "This is a Firebase Cloud Messaging Topic Message!", 
    } 
} 
Topic HTTP response 

//Success example: 
{ 
    "message_id": "1023456" 
} 

//failure example: 
{ 
    "error": "TopicsMessageRateExceeded" 
} 

Je l'ai fait avec java RestTemplate et échanger la réponse.

+0

Mes appareils sont déjà abonnés au sujet, sinon je ne recevrai rien dans le premier cas. Mon problème est que je ne reçois rien quand j'envoie un message avec "condition", même si je reçois normalement quand j'utilise le "to" – Laetan