现在,我有一个组超过一万名成员,对于一个组,我创建了一个主题(通知主题(,其中组中的所有用户都订阅了该主题。现在,在组内,任何用户都可以添加图像,文件或视频之类的发布。当用户添加帖子时,我需要向所有订阅该主题的用户发送通知,但除一个主题外,即添加帖子的人。我该如何实现?
现在通知将向所有用户,包括添加帖子的人。
当前没有任何类型的参数可以将特定用户排除在其订阅的主题中接收消息。但是,作为解决方法,您可以简单地进行自定义实现,以构建有效载荷并处理消息以接收消息。
根据您的构建有效载荷的方式,您只需添加一个自定义的键值对,其中包括发布数据的用户ID(例如posterId
或userId
(。
然后在您的客户端,处理推送通知时,只需检查ID是否是用户的。如果是同一用户,请不要显示通知,否则请显示。例如:
if (userId == currentUserId) {
// if user is the one that sent the message, don't show the notification
return;
}
即使这个问题已经回答并且有点旧,也有解决方法。因此,我仍然会添加答案以备将来参考。您可以做的是从主题中订阅用户,将消息发送到主题并再次订阅用户。当然,这是更多的工作,并打电话给Firebase,但是您已经拥有了想要的东西。
只是一个想法