Mercurial > prosody-modules
diff mod_muc_restrict_nick/mod_muc_restrict_nick.lua @ 4588:e7b126161e7b
mod_muc_restrict_nick: New module to restrict MUC occupant nicknames
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Tue, 15 Jun 2021 12:35:17 +0100 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mod_muc_restrict_nick/mod_muc_restrict_nick.lua Tue Jun 15 12:35:17 2021 +0100 @@ -0,0 +1,13 @@ +local jid = require "util.jid"; +local st = require "util.stanza"; + +local nick_pattern = module:get_option_string("muc_restrict_nick_pattern", "^%w+$"); + +module:hook("muc-occupant-pre-join", function (event) + local nick = jid.resource(event.occupant.nick); + if not nick:match(nick_pattern) then + local reply = st.error_reply(event.stanza, "modify", "policy-violation", "Unacceptable nickname, please try another"); + module:send(reply); + return true; + end +end);