I need some help with chat-rooms and mod_muc. I can refresh rooms list (at the moment I have none), but it's impossible to add new room or do anything else, doesn't matter if I'm trying it with ordinary user or jabber/muc admin. I searched Internet with google and I looked into a lot of related topics on this forum, tried a lot of configurations, but it didn't help me much. I'll be very grateful for any help in this matter.
I'm using ejabberd 2.0.1-6+lenny1 (on Debian Lenny) with pidgin clients (v. 2.5.5). Let's say my domain is example.com and name of my jabber server is im.example.com.
In fact, the jabber server im.example.com works behind the firewall. DNS server is directing traffic to the firewall and the firewall is forwarding ports 5222 and 5269 to the jabber server. Below I'm including the ejabberd configuration (I changed my domain name to example.com and admin user name to myadminuser):
override_acls. {acl, admin, {user, "myadminuser", "example.com"}}. {im, ["example.com"]}. {loglevel, 4}. {hosts, ["example.com"]}. {route_subdomains, s2s}. {listen, [ {5222, ejabberd_c2s, [ {access, c2s}, {shaper, c2s_shaper}, {max_stanza_size, 65536}, starttls_required, {certfile, "/etc/ejabberd/ejabberd.pem"} ]}, {5269, ejabberd_s2s_in, [ {shaper, s2s_shaper}, {max_stanza_size, 131072} ]}, {5280, ejabberd_http, [ http_poll, web_admin ]} ]}. {s2s_use_starttls, true}. {s2s_certfile, "/etc/ejabberd/ejabberd.pem"}. {auth_method, internal}. {shaper, normal, {maxrate, 1000}}. {shaper, fast, {maxrate, 50000}}. {acl, local, {user_regexp, ""}}. {access, max_user_sessions, [{10, all}]}. {access, local, [{allow, local}]}. {access, c2s, [{deny, blocked}, {allow, all}]}. {access, c2s_shaper, [{none, admin}, {normal, all}]}. {access, s2s_shaper, [{fast, all}]}. {access, announce, [{allow, admin}]}. {access, configure, [{allow, admin}]}. {access, muc_admin, [{allow, admin}]}. {access, muc, [{allow, all}]}. {access, register, [{deny, all}]}. {access, pubsub_createnode, [{allow, all}]}. {language, "en"}. {modules, [ {mod_adhoc, []}, {mod_announce, [{access, announce}]}, % requires mod_adhoc {mod_caps, []}, {mod_configure,[]}, % requires mod_adhoc {mod_ctlextra, []}, {mod_disco, []}, {mod_irc, []}, {mod_last, []}, {mod_muc, [ {host, "im.example.com"}, {access, muc}, {access_create, muc}, {access_persistent, muc}, {access_admin, muc_admin}, {max_users, 500} ]}, {mod_offline, []}, {mod_privacy, []}, {mod_private, []}, {mod_pubsub, [ {access_createnode, pubsub_createnode}, {plugins, ["default", "pep"]} ]}, {mod_register, [ {welcome_message, {"Welcome!", "Welcome to a Jabber service powered by Debian. " "For information about Jabber visit " "http://www.jabber.org"}}, {access, register} ]}, {mod_roster, []}, {mod_stats, []}, {mod_time, []}, {mod_vcard, []}, {mod_version, []} ]}.
The /etc/hosts contains:
127.0.0.1 localhost
127.0.1.1 im.example.com im
The /etc/hostname
im.example.com
From what it looks, your
From what it looks, your Jabber domain will be "example.com", and the MUC service will be "im.example.com".
You said that you can view the list of rooms, so the option {access, muc} of mod_muc works correctly. You said that you can't create a new room. The related access option looks correct: {access_create, muc}.
You didn't say why it is impossible to create a room. Do you receive an error in the client? What error? Do you see any other error message in the ejabberd log files?
about logs and debug messages
Thank you for your reply. My users have accounts likeuser@example.com . Both, the jabber server and MUC server are set to im.example.com
Actually I can press "refresh rooms list" (only this button is active, I don't know why) and I'm getting empty list. I haven't create any room so it seems to be correct. In client's debug I'm getting message:
(04:51:35) roomlist: reffing list, ref count now 2
(04:51:37) jabber: Sending (ssl): <iq type='get' id='purple3c3c0cf3' to='im.example.com'><query xmlns='http://jabber.org/protocol/disco#items'/></iq>
(04:51:38) jabber: Recv (ssl)(147): <iq from='im.example.com' to='myadminuser@example.com/pidgin' id='purple3c3c0cf3' type='result'><query xmlns='http://jabber.org/protocol/disco#items'/></iq>
(04:51:38) roomlist: unreffing list, ref count now 1
Other buttons like 'add conference", etc. are inactive (grayed), even after refreshing list. No error messages are displayed.
There is no errors in /var/log/ejabberd/ejabbrd.log ...actually in logs I can't see anything about activity related to MOD_MUC
> My users have accounts like
> My users have accounts likeuser@example.com . Both, the jabber server and MUC server are set to im.example.com
What you say is impossible. If your Jabber server is example.com, then user accounts are user@example. And then, if you have your MUC service as im.example.com, the rooms will be likebeijing2009@im.example.com .