计算 Firebase 云消息传递中某个主题的订阅者
Count subscribers of a topic in Firebase Cloud Messaging
我想用我的应用程序做的是:用户可以 select 不同的兴趣,一旦超过 ~5 个人对同一事物感兴趣,我想向他们发送通知。
我认为 Firebase + Topics 是一个不错的选择。
但是我如何知道有多少人订阅了某个主题?
无法API检查一个主题有多少订阅者。 (看我的回答)
您必须在服务器端实现映射,保存主题名称并添加到订阅者列表中。订阅后,添加新订阅者,检查计数(查看它是否在您的首选数量内),然后触发通知。
没有直接的方法可以做到这一点。您仅有的两个选择是:
- Using stored deviceIDs in your own DB, manually script to retrieve each users subscriptions.
- Already track in your own DB each users deviceIDs AND every topic they subscribe to.
虽然这两种方法都有很多问题。令人沮丧的主题 managmenet 在 FCM 控制台中尚不存在。我写了 Google FCM 云通知主题管理的功能请求,这是我得到的回复:
We're aware that many developers, such as yourself, would like to have
this topic management. There's actually an existing feature request
regarding this. However, I can't provide any details or timelines as
to when this will be available.
您可以使用它来获取订阅者数量:
- 转到 Firebase 控制台“https://console.firebase.google.com/”
- 在增长下,单击云消息。
- 打开您的开发者工具。
- 单击新通知并输入一些标题和消息
- 在“目标”选项卡上,单击主题
- 在开发人员工具的网络选项卡中,您会看到一个与此类似的 url 请求
https://gcmcontextualcampaign-pa.clients6.google.com/v1/4/projects/${projectId}/topics?prefix=%2Ftopics%2F&key=${key}
参考:https://gist.github.com/timrijckaert/218be90541a7285e21455fafa2962dea
我想用我的应用程序做的是:用户可以 select 不同的兴趣,一旦超过 ~5 个人对同一事物感兴趣,我想向他们发送通知。
我认为 Firebase + Topics 是一个不错的选择。
但是我如何知道有多少人订阅了某个主题?
无法API检查一个主题有多少订阅者。 (看我的回答
您必须在服务器端实现映射,保存主题名称并添加到订阅者列表中。订阅后,添加新订阅者,检查计数(查看它是否在您的首选数量内),然后触发通知。
没有直接的方法可以做到这一点。您仅有的两个选择是:
- Using stored deviceIDs in your own DB, manually script to retrieve each users subscriptions.
- Already track in your own DB each users deviceIDs AND every topic they subscribe to.
虽然这两种方法都有很多问题。令人沮丧的主题 managmenet 在 FCM 控制台中尚不存在。我写了 Google FCM 云通知主题管理的功能请求,这是我得到的回复:
We're aware that many developers, such as yourself, would like to have this topic management. There's actually an existing feature request regarding this. However, I can't provide any details or timelines as to when this will be available.
您可以使用它来获取订阅者数量:
- 转到 Firebase 控制台“https://console.firebase.google.com/”
- 在增长下,单击云消息。
- 打开您的开发者工具。
- 单击新通知并输入一些标题和消息
- 在“目标”选项卡上,单击主题
- 在开发人员工具的网络选项卡中,您会看到一个与此类似的 url 请求 https://gcmcontextualcampaign-pa.clients6.google.com/v1/4/projects/${projectId}/topics?prefix=%2Ftopics%2F&key=${key}
参考:https://gist.github.com/timrijckaert/218be90541a7285e21455fafa2962dea