【问题标题】:Sending APN from node server to device从节点服务器向设备发送 APN
【发布时间】:2018-02-20 23:53:25
【问题描述】:

我有一个配置为向指定设备令牌发送通知的快速应用程序,并且我能够发送和接收通知。

我的问题是,我目前通过输入设备令牌从我的服务器手动将通知发送到设备。我可以从连接到我的应用程序的 firebase 数据库中获取令牌。

我如何为数据库更改的每个事件发送单个设备的令牌。我没有在数据库中分配特定用户(或者我无法弄清楚快速应用程序如何跟踪任何用户)。有没有办法我可以设法获取特定用户,获取他的令牌,然后发送所需的通知。通知的内容存在于用户的数据库文档中。

我可以放置一个观察者/听众吗?或者有没有其他方法。 我是 APNS 新手。

P.S : 我正在使用 node-apn npm 进行 APNS 连接。

我希望我很清楚。 谢谢!

【问题讨论】:

    标签: ios node.js express firebase-realtime-database apple-push-notifications


    【解决方案1】:

    您需要以下内容:

    1)。一个新的表“设备”,用于存储用户的所有设备令牌以及以下内容:

    userId
    deviceType (should be enum [“android”, “ios”])
    deviceId (string, id)
    

    2)。移动应用端的两个api:

    注册特定的移动设备 - 移动应用在登录应用后会立即发送“userId”和“deviceId”。服务器检查是否存在相同“userId”和“deviceId”的记录,如果不存在,则必须在“设备表”中创建一个

    注销特定移动设备 - 移动应用将发送“deviceId”以在从应用注销时释放。 (这样做是因为有时 2 个不同的用户可以在同一设备上登录移动应用程序)后端会删除相同设备 ID 的记录。

    最终,当您收到任何要向用户发送推送的事件时,从表中检索设备令牌并将推送发送到该令牌。

    【讨论】:

    • 我的 firebase 应用中已经有令牌。您是否要求在我的服务器端创建一个新表?
    猜你喜欢
    • 2019-07-06
    • 2020-08-31
    • 2016-05-06
    • 1970-01-01
    • 1970-01-01
    • 2016-07-19
    • 1970-01-01
    • 2016-09-17
    • 1970-01-01
    相关资源
    最近更新 更多