Mercurial > prosody-modules
view mod_muc_block_pm/mod_muc_block_pm.lua @ 2752:d0e75bf21d30
mod_delegation: added disco#items support
disco#items are forwarded to managing entity when suitable. This feature is not yet in XEP-0355, but it should be added soon.
"http://jabber.org/protocol/disco#items:*" is used as a pseudo-namespace to activate this delegation.
Also changed spaces to tabs to follow Prosody coding style.
author | Goffi <goffi@goffi.org> |
---|---|
date | Sun, 27 Aug 2017 20:46:04 +0200 |
parents | 69d3e0037435 |
children | afedc2430b0d |
line wrap: on
line source
local bare_jid = require"util.jid".bare; local st = require"util.stanza"; local muc_rooms = module:depends"muc".rooms; module:hook("message/full", function(event) local stanza, origin = event.stanza, event.origin; local to, from = stanza.attr.to, stanza.attr.from; local room = muc_rooms[bare_jid(to)]; local to_occupant = room and room._occupants[to]; local from_occupant = room and room._occupants[room._jid_nick[from]] if not ( to_occupant and from_occupant ) then return end if from_occupant.affiliation then to_occupant._pm_block_override = true; elseif not from_occupant._pm_block_override then origin.send(st.error_reply(stanza, "cancel", "not-authorized", "Private messages are disabled")); return true; end end, 1);