annotate mod_ignore_host_chatstates/mod_ignore_host_chatstates.lua @ 5170:4d6af8950016

mod_muc_moderation: Derive role from reserved nickname if occupant When using a different client to moderate than the one used to participate in the chat, e.g. a command line tool like clix, there's no occupant and no role to use in the permission check. Previously the default role based on affiliation was used. Now if you are present in the room using your reserved nick, the role you have there is used in the permission check instead of the default affiliation-derived role.
author Kim Alvefur <zash@zash.se>
date Sun, 19 Feb 2023 18:17:37 +0100
parents aed47ebd26d3
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3419
aed47ebd26d3 mod_ignore_host_chatstates: Discard chat state messages sent to a bare host
Kim Alvefur <zash@zash.se>
parents:
diff changeset
1 module:hook("message/host", function (event)
aed47ebd26d3 mod_ignore_host_chatstates: Discard chat state messages sent to a bare host
Kim Alvefur <zash@zash.se>
parents:
diff changeset
2 local stanza = event.stanza;
aed47ebd26d3 mod_ignore_host_chatstates: Discard chat state messages sent to a bare host
Kim Alvefur <zash@zash.se>
parents:
diff changeset
3 if #stanza.tags == 1 and stanza.tags[1].attr.xmlns == "http://jabber.org/protocol/chatstates" then
aed47ebd26d3 mod_ignore_host_chatstates: Discard chat state messages sent to a bare host
Kim Alvefur <zash@zash.se>
parents:
diff changeset
4 return true;
aed47ebd26d3 mod_ignore_host_chatstates: Discard chat state messages sent to a bare host
Kim Alvefur <zash@zash.se>
parents:
diff changeset
5 end
aed47ebd26d3 mod_ignore_host_chatstates: Discard chat state messages sent to a bare host
Kim Alvefur <zash@zash.se>
parents:
diff changeset
6 end, -10);