【发布时间】:2013-11-15 23:11:15
【问题描述】:
首先从这个问题开始: Asmack/openfire How do I keep a user permanently in groupchat room
我读到我不能使用 MUC 来保持用户在组中的持久性,他们会自动离开组并在他们再次上线后可以重新加入,这个概念就像 IRC 就像这里被问到的一样 -> http://community.igniterealtime.org/thread/48020.
然后从我读到的关于使用 pubsub 的 stackoverflow 问题中,我做了一些关于 pubsub 的研究,我得到的是 pubsub 可以将用户保持在组中,即使用户处于脱机状态但消息流是更像是从发布者到订阅者的一个方向(只读)。
所以如果我想创建一个群聊应用程序,我可以使用 pubsub 并将所有成员设置为发布者和订阅者吗?还是有任何替代解决方案?或者我对pubsub和MUC的理解不正确? 我的目标是创建一些群聊,例如在 whatsapp 或 blackberry messenger 群中。
谢谢。
【问题讨论】:
-
不是 100% 确定您要做什么。您是否试图完成保留用户列表并显示他们的在线状态?
-
@MarkStraley 不,不需要那样,所以我想创建一个信使应用程序,用户可以在其中创建组,并且组成员将始终在组中,并且消息将始终在群里投递,所以当用户想要阅读群消息时,他/她必须打开群聊,你明白我的意思吗?
-
如果我没听错的话,看看名单。您可以使用花名册创建组。我认为名册组和 pubsub 的某种组合可能是您所追求的。我的第一个想法不会是 MUC。一旦您在名册中订阅/授权,它就会一直保留,直到被删除。
-
@MarkStraley 啊我没听说过名册,我先研究一下,谢谢你的建议标记!
-
@nayoso 你最后是怎么做到的?几个星期以来,我一直陷入与您完全相同的问题。请分享您的发现。
标签: xmpp chat publish-subscribe openfire multiuserchat