Firebase云消息传递是否需要服务器?

时间:2017-07-10 16:07:00

标签: android firebase raspberry-pi firebase-cloud-messaging

我目前正在开发Android应用,我想要包含Firebase云消息传递。 我计划让Raspberry Pi每隔5分左右检查一个网站,并在发生变化时发送推送通知。 在官方文档中,他们说我需要一个“app-server”才能通过Firebase发送消息。

这是否意味着我需要将我的Raspi作为服务器全天候运行并且需要静态IP /域? 或者是否足以让我的Raspi通过Api(https://fcm.googleapis.com/fcm/send)发送消息,因为我只需要下游消息?

任何帮助和解释都会受到高度赞赏,因为我无法在任何主题或文档中找到明确的答案。

3 个答案:

答案 0 :(得分:2)

您不需要只需一台设备的app-server。如果您在Raspberry Pi设备上有某种互联网连接,那么您需要做的就是向firebase API发出请求。

Firebase(Google服务器)将通过向所有已注册的设备发送通知来处理其余内容。

答案 1 :(得分:1)

发送下游消息(消息设备)要求您指定FCM 服务器键。此密钥允许代表您发送FCM消息,因此只应在您信任的环境中使用。

通常,这意味着您可以控制的服务器。但最近推出了Cloud Functions for Firebase can also serve as such a trusted environment。毕竟:只有有权访问Firebase项目的开发人员才能访问您的Cloud Functions代码,而这些开发人员已经可以使用Firebase控制台中的“通知”面板发送消息。

您在自己的环境中控制的任何设备都可以作为受信任的环境使用。它不必具有固定的IP地址,因为FCM服务器通常receives its instructions through XMPP或(更常见的是这些天)through the Firebase Database。这两种方法都启动了从受信任设备到Google服务器的连接,因此可以在不接受传入连接的情况下运行。

答案 2 :(得分:0)

您不需要任何服务器来实施FCM。