Firebase聊天推送通知

我正在开发一个使用Firebase作为后端的聊天应用程序。 要求在每一个新的消息接收者得到一个推送通知,说他得到了一个新的消息。 这是我第一次做这样的事情,所以我有一个问题:

由于我们没有使用我们自己的服务器,我们是否需要第三方提供者(例如批处理)来处理推送通知? 如果我没有弄错,我想Firebase不支持发送像这样的推送通知,但只支持从控制台发送的通知。

任何帮助将是伟大的。

希望有人认为这有用,它在我的情况帮助。

目前,通过Firebase提供的解决scheme,无法通过设备向设备发送推送通知。 如果你想要这种types的东西,你应该尝试免费的OneSignal ,很容易实现。

新Firebase中有两个function向用户发送通知:

  • Firebase云消息传递 – 下一代Google云消息传递
  • Firebase通知 – build立在云消息传递之上,可让您轻松地通过Firebase控制台向用户发送通知

要使用云消息传送消息,您需要在请求中指定授权密钥。 由于知道此密钥可以代表您发送消息,因此您需要限制对可信进程的访问。 这确实可以是一个服务器,但任何可信的过程都是好的。

(iOS)有点迟到; 但也许可以用这个来帮助任何人。

我最近有这个问题,我的解决scheme是利用设备组方法。

人机工程学:

  1. 将使用registration_ids(或用于推送的设备ID数组)来创build设备组,

  2. 然后将推送到所述设备组

  3. 删除设备组

请参阅: https : //firebase.google.com/docs/cloud-messaging/ios/device-group

您可以使用Http POST请求从Android发送推送通知,我正在使用改造,例如:

url: https : //fcm.googleapis.com/fcm/send

http头:

Content-Type: application/json Authorization: key=Your_FCM_Key 

机构(JSON):

 { "to" : "user_device_id" "data" : { "message": "test message", "color": "black" }, "notification" : { "title": "Testing FCM", "body":"My first notification", "tag":"chat_msg", "color" : "#FF4081", "icon" : "ic_stat_onesignal_default", } } 

您可以使用高级rest客户端“谷歌浏览器扩展”进行testing