由于本地主机不提供MUC(XEP-45)服务,因此无法执行操作
问题描述:
我试图对Smack插件使用多用户呼叫,但收到以下错误。由于本地主机不提供MUC(XEP-45)服务,因此无法执行操作
Can't perform operation because localhost does not provide a MUC (XEP-45) service.
它似乎来自没有在ejabberd中启用mod_muc,但我不知道如何激活它。我以为我在我的ejabberd.yml中这样做。
这里是我的ejabberd.yml mod_muc部分:
mod_muc:
## host: "[email protected]@"
access: muc
access_create: muc
access_admin: muc_admin
history_size: 5
max_users: 4
default room options:
allow_change_subj: true
allow_private_messages: false
allow_user_invites: true
members_by_default: true
public: true
public_list: true
persistent: false
是任何人都得到XEP-45不提供的错误?我该如何解决它?
答
您正尝试将MUC查询发送至localhost
JID,而您应发送至MUC服务的JID。取消host: "[email protected]@"
并将conference.localhost
用作所有MUC请求的JID
确保您在'ejabberd'配置中具有'mod_muc' enabeld。 – Dunedan
我应该设置什么参数? – Yambotron
我不确定在哪里启用它。 – Yambotron