Firebase 聊天推送通知
Firebase chat Push Notifications
我正在开发一个使用 Firebase 作为后端的聊天应用程序。
要求每个新消息接收者都收到一个推送通知,说明他收到了一条新消息。这是我第一次做这样的事情所以我有一个问题:
由于我们不为此使用自己的服务器,是否需要第 3 方提供商(例如 Batch)来处理推送通知?如果我没记错的话,我认为 Firebase 不支持发送这样的推送通知,但只支持您从控制台发送的推送通知。
任何帮助都会很棒。
新版 Firebase 中有两个向用户发送通知的功能:
- Firebase Cloud Messaging - Google 云消息
的下一代
- Firebase 通知 - 构建在云消息传递之上,让您可以轻松地通过 Firebase 控制台向用户发送通知
要使用云消息传递发送消息,您需要在请求中指定授权密钥。由于知道此密钥允许代表您发送消息,因此您需要将对它的访问限制为受信任的进程。这确实可以是服务器,但任何受信任的进程都可以。
您可以使用 Http POST 请求从 Android 发送推送通知,我正在使用改造来做到这一点,例如:
Url: https://fcm.googleapis.com/fcm/send
HTTP Headers:
Content-Type: application/json
Authorization: key=Your_FCM_Key
Body(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",
}
}
您可以使用 Advanced Rest Client 进行测试 "Extension of Google Chrome"
希望有人觉得这有用,它对我的情况有所帮助。
目前无法使用 Firebase 提供的解决方案从设备向设备发送推送通知。如果您想要那种类型的东西,您应该尝试 OneSignal,它是免费的并且很容易实现。
(iOS) 有点晚了;但也许将来可以帮助任何人。
我最近遇到了这个问题,我的解决方案是利用设备组方法。
因此:
将使用 registration_ids(或用于推送的设备 ID 数组)
创建一个设备组
然后将推送发送到所述设备组
删除设备组
参见:https://firebase.google.com/docs/cloud-messaging/ios/device-group
我正在开发一个使用 Firebase 作为后端的聊天应用程序。 要求每个新消息接收者都收到一个推送通知,说明他收到了一条新消息。这是我第一次做这样的事情所以我有一个问题:
由于我们不为此使用自己的服务器,是否需要第 3 方提供商(例如 Batch)来处理推送通知?如果我没记错的话,我认为 Firebase 不支持发送这样的推送通知,但只支持您从控制台发送的推送通知。
任何帮助都会很棒。
新版 Firebase 中有两个向用户发送通知的功能:
- Firebase Cloud Messaging - Google 云消息 的下一代
- Firebase 通知 - 构建在云消息传递之上,让您可以轻松地通过 Firebase 控制台向用户发送通知
要使用云消息传递发送消息,您需要在请求中指定授权密钥。由于知道此密钥允许代表您发送消息,因此您需要将对它的访问限制为受信任的进程。这确实可以是服务器,但任何受信任的进程都可以。
您可以使用 Http POST 请求从 Android 发送推送通知,我正在使用改造来做到这一点,例如:
Url: https://fcm.googleapis.com/fcm/send
HTTP Headers:
Content-Type: application/json
Authorization: key=Your_FCM_Key
Body(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",
}
}
您可以使用 Advanced Rest Client 进行测试 "Extension of Google Chrome"
希望有人觉得这有用,它对我的情况有所帮助。
目前无法使用 Firebase 提供的解决方案从设备向设备发送推送通知。如果您想要那种类型的东西,您应该尝试 OneSignal,它是免费的并且很容易实现。
(iOS) 有点晚了;但也许将来可以帮助任何人。
我最近遇到了这个问题,我的解决方案是利用设备组方法。
因此:
将使用 registration_ids(或用于推送的设备 ID 数组)
创建一个设备组
然后将推送发送到所述设备组
删除设备组
参见:https://firebase.google.com/docs/cloud-messaging/ios/device-group