Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xmpp 如何从ejabberd服务器向多个客户端发送消息_Xmpp_Ejabberd - Fatal编程技术网

Xmpp 如何从ejabberd服务器向多个客户端发送消息

Xmpp 如何从ejabberd服务器向多个客户端发送消息,xmpp,ejabberd,Xmpp,Ejabberd,我刚刚开始使用ejabberd服务器。 我的问题是如何将消息从ejabberd服务器发送到多个客户端。我可以使用以下命令向单个客户端发送消息: ejabberdctl send_message chat 192.168.33.50 user1@192.168.33.50 "subject" "message from server" (其中192.168.33.50是运行ejabberd的机器的IP地址) 但是,我无法找到一种方法来同时发送到多个客户端。 我想方法是创建一个组,将用户添加到该组

我刚刚开始使用ejabberd服务器。 我的问题是如何将消息从ejabberd服务器发送到多个客户端。我可以使用以下命令向单个客户端发送消息:

ejabberdctl send_message chat 192.168.33.50 user1@192.168.33.50 "subject" "message from server"
(其中192.168.33.50是运行ejabberd的机器的IP地址) 但是,我无法找到一种方法来同时发送到多个客户端。 我想方法是创建一个组,将用户添加到该组中,然后向该组发送消息

我尝试使用以下命令创建组并向其中添加用户:

ejabberdctl srg_create group1 192.168.33.50 "group1" "group1" "group1"
ejabberdctl srg_user_add user1 192.168.33.50 group1 192.168.33.50
ejabberdctl srg_user_add user2 192.168.33.50 group1 192.168.33.50
但是,当我尝试使用组名而不是用户名使用以下命令发送消息时,服务器未发送任何消息:

ejabberdctl send_message chat 192.168.33.50 group1@192.168.33.50 "subject" "message from server"

因此,我想知道如何实现从ejabberd服务器向多个客户端发送消息的用例?

消息广播可以通过使用来实现。正如米克尔在这里回答的那样:


但是,在Ejabberd商业版中,“开始播放消息”命令可用于消息广播。

谢谢您的回答。但是,我想知道如何使用/启用XEP-0033向多个客户端发送消息。我在某个地方读到,为此需要在ejabberd.yml文件中启用“mod_multicast”。对吗?我还有一个基本问题,就是应该运行什么命令来实现这一点(相当于“ejabberdctl send_message”,它适用于单个用户)。我查看了所有ejabberdctl命令,没有找到任何命令?那么,我是否需要以交互模式启动ejabberd(使用“ejabberdctl-live”)并以XML格式粘贴完整的消息?