使用Firebase的应用推送通知应用于Swift

时间:2016-07-24 17:56:11

标签: swift firebase firebase-cloud-messaging firebase-notifications

我有一个有管理员登录的应用。我正在尝试添加管理员从应用程序内部发送推送通知的功能,而无需转到我的Firebase控制台。当我询问Firebase支持时,我收到了此回复。

“可以通过Firebase云消息传递。您可以做的是从您的应用程序向应用服务器发送上游消息,然后它将处理上游消息以向客户端应用程序发送推送通知。”

以前有人这样做过吗?我试图弄清楚这是如何工作的。由于非管理员只是在没有登录的情况下使用该应用程序,我是否会创建一个默认用户ID,该应用程序本身会监听上游消息,这意味着推送通知会被发送到?有没有办法通过手机上的应用程序向任何人发送上游消息作为推送通知?

2 个答案:

答案 0 :(得分:1)

您可以使用Firebase控制台GUI向您的客户端应用发送推送通知: https://firebase.google.com/docs/notifications/

但是,如果您希望直接从客户端应用程序(移动或网络)发送推送通知,则必须实施自己的应用服务器,该服务器将与FCM(Firebase云消息传递)服务器一起向其他客户端发送通知。 / p>

此处在Firebase文档中进行了解释: https://firebase.google.com/docs/cloud-messaging/server

还有Firebase博客文章关于此: https://firebase.googleblog.com/2016/08/sending-notifications-between-android.html

答案 1 :(得分:0)

听起来您希望管理员能够从应用的管理版本中启动FCM消息。在这种情况下,Firebase支持是正确的,有几种方法可以实现这种类型的东西。

基本逻辑是:

  1. 管理员告诉服务器发送请求。
  2. 服务器代表管理员发送请求。
  3. 您有几个选项可以实现步骤1,步骤2将始终相同。对于第1步,您可以:

    • 在您的服务器上创建一个仅接受管理员用户请求的端点。管理员用户向该端点发送HTTP请求,其中包含服务器所需的所有信息,然后向所有相关用户发送FCM消息。
    • 通过与FCM的XMPP连接,使用从客户端到服务器的上游消息传递。管理员用户将使用FCM客户端SDK发送"上游"发送到您的服务器的FCM消息,您的服务器将向所有相关用户发送FCM消息。

    我认为第一个选项更容易,并且也可以正常工作,假设我了解您的要求。