Java 使用FCM向一组设备发送通知
我希望能够调用这样的函数:(从客户端) 使用这样的DB结构Java 使用FCM向一组设备发送通知,java,firebase,firebase-cloud-messaging,Java,Firebase,Firebase Cloud Messaging,我希望能够调用这样的函数:(从客户端) 使用这样的DB结构 /userTokens/userId:userInstanceId /groupMembers/groupId/[userIds...] /serverRequests/... 现在,我在研究之后,我想我有一个关于如何接近它的想法,但是我不知道它是否是正确的方法,它是非常重要的,因为我认为这应该是一个非常简单的任务,所以我想知道是否有更简单的方法来解决我的问题。 我会这样做的 [后端] 在运行在谷歌云上的Servlet中的节点上注册C
/userTokens/userId:userInstanceId
/groupMembers/groupId/[userIds...]
/serverRequests/...
现在,我在研究之后,我想我有一个关于如何接近它的想法,但是我不知道它是否是正确的方法,它是非常重要的,因为我认为这应该是一个非常简单的任务,所以我想知道是否有更简单的方法来解决我的问题。 我会这样做的
[后端]/serverRequests/Push/groupId:message
/groupMembers/groupId/
并将用户标识保存在列表中/userTokens/userId
中获取其userInstanceId并保存到列表中.equalTo
查询,而且我无法下载整个userTokens节点…首先,我将使用它,而不是您设置的自定义侦听器。你可以看到一个例子
接下来,我会考虑使用,因为它将覆盖您所描述的用例(向组的成员发送消息)。这是我自己用的,很有魅力
现在,您的流程将如下所示:- 客户端告诉FCM它想订阅主题
groupID
- 在某个时刻,有一条消息被推送到您的
中的一个端点(或者您想如何构造它,请记住,!)/groupId/messages/
- 然后使用云函数收听
,并将新消息发布到主题/{groupId}/messages/{messageId}
/groupId
我希望这是有意义的,并且我正确理解了您的问题谢谢您的回答,如果没有更好的答案,我将评分接受。虽然我对javascript了解不多,但似乎我必须学习它来实现云函数解决方案,在看了它之后,它确实使事情变得更简单。(AppEngine服务器解决方案将花费大量资金)。还有一件事仍然很棘手,正如你所说的,客户要求订阅主题,因为在我的例子中,管理员可以将用户添加到组中,然后他们就不会被订阅了?或者我也要为此实现云功能吗?我不知道让管理员将人员添加到通知组是否是一种好的做法。但如果确实需要这样做,只需让客户端侦听数据库中的端点,当出现新密钥时,客户端获取密钥并订阅主题
/userTokens/userId:userInstanceId
/groupMembers/groupId/[userIds...]
/serverRequests/...