mod_csi_muc_priorities/mod_csi_muc_priorities.lua
author Kim Alvefur <zash@zash.se>
Mon, 01 Apr 2019 08:22:29 +0200
changeset 3539 bcb0eb9121a9
parent 3538 700340b57851
child 3540 eed657091329
permissions -rw-r--r--
mod_csi_muc_priorities: Add a comment

local jid_bare = require "util.jid".bare;

module:hook("csi-is-stanza-important", function (event)
	local stanza, session = event.stanza, event.session;
	if stanza.name == "message" then
		if stanza.attr.type == "groupchat" then
			local body = stanza:get_child_text("body");
			if not body then return end

			local room_jid = jid_bare(stanza.attr.from);

			-- Look for mention
			local rooms = session.rooms_joined;
			if not rooms then return; end

			local room_nick = rooms[room_jid];
			if room_nick and body:find(room_nick, 1, true) then return true; end

			return false;
		end
	end
end);