Firebase 云消息传递 - 有多个主题 - 没有消息重复

Posted

技术标签:

【中文标题】Firebase 云消息传递 - 有多个主题 - 没有消息重复【英文标题】:Firebase Cloud Messaging - having multiple topics - without message duplication 【发布时间】:2018-01-31 15:23:13 【问题描述】:

我一直在浏览 Firebase 云消息传递 (FCM) 的文档,我想知道是否有人遇到同样的问题。

我有一个供稿,用户有时可以订阅多个重叠的主题。例如#News,#Weather 可能出现在有关天气事件的帖子中。

给出的示例检查新闻或天气 (主题中的“新闻”||主题中的“天气”)主题中

我的问题是,FCM 是否会选择它遇到的第一个选项,例如。带有“新闻”标签的新闻和消息人,还是它也会发送相同的消息两次 - 创建重复? (1 表示给用户的新闻,然后 1 表示天气)。

提前致谢! 基兰

【问题讨论】:

【参考方案1】:

一个简单的测试应该能够解决这个问题。相应的用户只会收到一个消息。 FCM 服务器根据条件处理请求,在这种情况下,您使用的是 OR 条件 - 意思是,只要其中一个条件变为真(在您的场景中,第一个条件是令牌是否已订阅到News),然后服务器将照常发送通知,并忽略其他条件。

PS:我在发布之前对此进行了测试,所以我对这种行为持肯定态度。

【讨论】:

非常感谢。我明天也要测试这个。如果能这样就太好了! @kierandes 你能测试一下吗?成功了吗?

以上是关于Firebase 云消息传递 - 有多个主题 - 没有消息重复的主要内容,如果未能解决你的问题,请参考以下文章

Firebase 云消息传递为一组用户发送通知

是否跨 Firebase 项目共享云消息传递主题?

Firebase 云消息传递 - iOS - 未注册或无法订阅主题

使用 Firebase 云消息传递从服务器端管理主题订阅的示例 GET 请求

Firebase 云消息传递多个设备和一个帐户

一次向多个(超过 3 个)主题发送 Firebase 云消息(又名推送通知)