File

mod_csi/mod_csi.lua @ 1483:90fe03e65d2c

mod_csi: Client State Indication support
author Matthew Wild <mwild1@gmail.com>
date Fri, 15 Aug 2014 16:34:10 +0100
child 1590:fbb4cd2922a1
line wrap: on
line source

local st = require "util.stanza";
local csi_feature = st.stanza("csi", { xmlns = "urn:xmpp:csi" });

module:hook("stream-features", function (event)
	if event.origin.username then
		event.features:add_child(csi_feature);
	end
end);

function refire_event(name)
	return function (event)
		if event.origin.username then
			module:fire_event(name, event);
			return true;
		end
	end;
		
end

module:hook("stanza/urn:xmpp:csi:active", refire_event("csi-client-active"));
module:hook("stanza/urn:xmpp:csi:inactive", refire_event("csi-client-inactive"));