Software /
code /
prosody-modules
Annotate
mod_muc_reserve_nick_pattern/mod_muc_reserve_nick_pattern.lua @ 5585:5b316088bef5
mod_rest: Use logger of HTTP request in trunk
In Prosody trunk rev c975dafa4303 each HTTP request gained its own log
sink, to make it easy to log things related to each request and group
those messages. Especially where async is used, spreading the request
and response apart as mod_rest does with iq stanzas, this grouped
logging should help find related messages.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Fri, 07 Jul 2023 00:10:37 +0200 |
parent | 5172:dc6a10629670 |
rev | line source |
---|---|
5172
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
1 local jid = require "util.jid"; |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
2 local st = require "util.stanza"; |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
3 |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
4 local nick_patterns = module:get_option_array("muc_reserve_nick_patterns", {}); |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
5 |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
6 module:hook("muc-occupant-pre-join", function (event) |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
7 local nick = jid.resource(event.occupant.nick); |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
8 for k, nick_pattern in pairs(nick_patterns) do |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
9 if nick:match(nick_pattern) then |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
10 local reply = st.error_reply(event.stanza, "modify", "conflict", "Unacceptable nickname, please try another"); |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
11 module:send(reply); |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
12 return true; |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
13 end |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
14 end |
dc6a10629670
New module, mod_muc_reserve_nick_pattern
Stephen Paul Weber <singpolyma@singpolyma.net>
parents:
diff
changeset
|
15 end); |