【发布时间】:2016-06-23 09:54:34
【问题描述】:
在使用 XMPP 协议时,向组/用户发送系统消息的最佳做法是什么?该组中的所有用户都应收到该消息。 我怎样才能实现它?
可能有用的解决方案:
- 公告 - 我遇到了announce 等等 特别是this module。
- 发布-订阅http://www.xmpp.org/extensions/xep-0060.html
- 总是有 创建将发送消息的管理员用户的选项。
提前致谢。
【问题讨论】:
在使用 XMPP 协议时,向组/用户发送系统消息的最佳做法是什么?该组中的所有用户都应收到该消息。 我怎样才能实现它?
可能有用的解决方案:
提前致谢。
【问题讨论】:
最佳方法取决于您的限制,尤其是在您控制客户端的情况下。例如,如果您使用不是您开发的客户端,它可能无法正常呈现 pubsub 消息。
要考虑的第二件事是如何定义组。用户正在注册警报吗?在那种情况下, in 似乎与 pubsub 情况相匹配。否则,如果组不是太大,您可以使用管理员用户发送到您想要的用户列表。您甚至可以使用XEP-0033: Extended Stanza Addressing(有时称为“多播”)向多个用户发送一条消息。
mod_announce 只能针对所有用户或所有在线用户,所以在“群组”方面似乎不符合您的需求。
我在一次演讲(视频和幻灯片)中解释了大部分选项:https://blog.process-one.net/implementing-state-of-the-art-one-to-many-chat-services-with-ejabberd-ejabberd-workshop-1/
它更广泛,因为它不仅包括广播,还包括群聊,但它应该有助于澄清你的选择。
【讨论】: