{loglevel, 2}. {hosts, ["chatdomain.com"]}. {listen, [ {5222, ejabberd_c2s, [ {access, c2s}, {shaper, c2s_shaper}, {max_stanza_size, 65536}, {max_fsm_queue, 1000} ]}, {5269, ejabberd_s2s_in, [ {shaper, s2s_shaper}, {max_stanza_size, 131072} ]}, {5280, ejabberd_http, [ http_bind, http_poll, web_admin ]} ]}. {host_config, "chatdomain.com", [{auth_method, [internal, anonymous]},{allow_multiple_connections, false},{anonymous_protocol, both}]}. {shaper, normal, {maxrate, 1000}}. {shaper, fast, {maxrate, 50000}}. {max_fsm_queue, 1000}. {acl, admin, {user, "admin", "chatdomain.com"}}. {acl, mucadmins, {user, "chatadmin", "chatdomain.com"}}. %{acl, mucadmins, {user, "uncognitous", "chatdomain.com"}}. {acl, local, {user_regexp, ""}}. {access, max_user_sessions, [{10, all}]}. {access, max_user_offline_messages, [{5000, admin}, {100, 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_admin, [{allow, mucadmins}]}. {access, muc_create, [{allow, all}]}. {access, muc, [{allow, all}]}. {access, pubsub_createnode, [{allow, local}]}. {language, "pt"}. {modules, [ {mod_adhoc, []}, {mod_announce, [{access, announce}]}, % recommends mod_adhoc {mod_caps, []}, {mod_configure,[]}, % requires mod_adhoc {mod_disco, []}, {mod_irc, []}, {mod_http_bind, []}, {mod_last, []}, {mod_muc, [ {host, "conference.@HOST@"}, {access, muc}, {access_create, muc_create}, {access_persistent, muc_create}, {access_admin, muc_admin} ]}, {mod_muc_log,[ {access_log, muc}, {cssfile, "http://domain.com/public/chatlog.css"}, {dirtype, plain}, {dirname, room_jid}, {outdir, "/var/www/nginx-default/chat/muclogs"}, {timezone, universal}, {spam_prevention, true}, {top_link, {"http://domain.com/chat/", "My Chat"}} ]}, {mod_muc_admin, []}, {mod_offline, []}, {mod_ping, []}, {mod_privacy, []}, {mod_private, []}, {mod_pubsub, [ {access_createnode, pubsub_createnode}, {ignore_pep_from_offline, true}, % reduces resource comsumption, but XEP incompliant {last_item_cache, false}, {plugins, ["flat", "hometree", "pep"]} % pep requires mod_caps ]}, {mod_register, [ {welcome_message, {"Welcome!", "Hi.\nWelcome to this XMPP server."}}, {access, register} ]}, {mod_roster, []}, {mod_shared_roster,[]}, {mod_stats, []}, {mod_time, []}, {mod_vcard, []}, {mod_shit, []}, {mod_version, []} ]}.