Mercurial > prosody-modules
view mod_muc_reserve_nick_pattern/mod_muc_reserve_nick_pattern.lua @ 5803:f55e65315ba0
mod_pubsub_serverinfo: implemented all basic features
This commit replaces the earlier proof-of-concept to a solution that:
- reports on remotely-connected domains
- uses disco/info to detect if those domains opt-in
- publishes domain names for remote domains that do so
- caches the disco/info response
author | Guus der Kinderen <guus.der.kinderen@gmail.com> |
---|---|
date | Wed, 03 Jan 2024 23:05:14 +0100 |
parents | dc6a10629670 |
children |
line wrap: on
line source
local jid = require "util.jid"; local st = require "util.stanza"; local nick_patterns = module:get_option_array("muc_reserve_nick_patterns", {}); module:hook("muc-occupant-pre-join", function (event) local nick = jid.resource(event.occupant.nick); for k, nick_pattern in pairs(nick_patterns) do if nick:match(nick_pattern) then local reply = st.error_reply(event.stanza, "modify", "conflict", "Unacceptable nickname, please try another"); module:send(reply); return true; end end end);