Diff

plugins/mod_csi.lua @ 9073:a5daf3f6d588

mod_csi: Imported from prosody-modules 66b3085ecc49
author Matthew Wild <mwild1@gmail.com>
date Wed, 01 Aug 2018 10:26:08 +0100
child 9651:989cf872d5c0
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/plugins/mod_csi.lua	Wed Aug 01 10:26:08 2018 +0100
@@ -0,0 +1,22 @@
+local st = require "util.stanza";
+local xmlns_csi = "urn:xmpp:csi:0";
+local csi_feature = st.stanza("csi", { xmlns = xmlns_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/"..xmlns_csi..":active", refire_event("csi-client-active"));
+module:hook("stanza/"..xmlns_csi..":inactive", refire_event("csi-client-inactive"));
+