我正在尝试在 Centos 5 上为 ejabberd 配置多用户聊天。我无法让它工作。
我可以使用 Psi 创建群聊室,但似乎无法从其他帐户加入。
我从 rpm 安装了 ejabberd,并且基本上只是配置了主机名。
用户到用户的即时消息有效,但 MUC 无效。我已经为 SSL 打开了端口 5222 和 5223。MUC 是否运行在不同的端口上?
此外,当我在一个客户端上创建聊天室时,我必须在另一个客户端中使用服务发现,并尝试特定节点 1 到 5。这仅用于小型公司消息传递系统,所以无论如何都可以让 ejabberd 只创建 1 个节点?
最好查看您的实际配置,但 MUC 通常必须作为服务启用。服务发现确实是发现MUC服务和浏览聊天室的方式,但客户端应该能够将它们加入书签或将它们放入名册以备下次使用。
无论如何,/etc/ejabberd/ejabberd.cfg
您启用了mod_muc
吗?如果是这样,您能否粘贴设置。在我的 ejabberd 服务器上,我使用:
{mod_muc, [
%%{host, "conference.@HOST@"},
{access, muc},
{access_create, muc},
{access_persistent, muc},
{access_admin, muc_admin},
{history_size, 50},
{max_users, 500},
{default_room_options,
[
{allow_change_subj, true},
{allow_private_messages, true},
{allow_user_invites, true},
{anonymous, true},
{logging, true},
{members_by_default, true},
{persistent, true},
{public, true},
{public_list, false}
]}
]},
{mod_muc_log, [
{access_log, muc},
{dirtype, plain},
{dirname, room_jid},
{outdir, "/var/www/muclogs"},
{timezone, universal},
{spam_prevention, true}
]},
Run Code Online (Sandbox Code Playgroud)
在您的访问规则中,您还应该包括:
%% Admins of this server are also admins of MUC service:
{access, muc_admin, [{allow, admin}]}.
%% All users are allowed to use MUC service:
{access, muc, [{allow, all}]}.
Run Code Online (Sandbox Code Playgroud)
这种方式对我来说非常好。当然,您可能不想要日志文件之类的,只需调整相应的设置即可。ejabberd 主页有可用选项的完整文档。
归档时间: |
|
查看次数: |
20597 次 |
最近记录: |