FCM'条件'字段不起作用

时间:2017-10-12 15:37:59

标签: firebase firebase-cloud-messaging

我无法使用条件字段发送要发送到多个主题的FCM消息。出于某种原因,即使FCM没有发送任何错误,我的设备在使用此字段时也不会收到消息。

当我发送时:

LastModificationTime

收到了消息,但我没有收到任何信息:

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

甚至认为两条消息都使用相同的主题名称,并且这两条消息都会从Firebase返回成功消息。

1 个答案:

答案 0 :(得分:0)

您必须将您的设备订阅到您的主题,您可以为订阅提供休息服务。 Reference 当你想发送信息时,你可以提供标题和正文

示例:

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

使用建模响应reference     主题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"
}

我使用java RestTemplate并交换响应。