mod_ping: Updated to use events (which also fixes a few minor issues).
authorWaqas Hussain <waqas20@gmail.com>
Sun, 18 Oct 2009 18:26:58 +0500
changeset 2011 8159497c86e3
parent 2010 1a4f14ea39b6
child 2012 12131e7d3c25
mod_ping: Updated to use events (which also fixes a few minor issues).
plugins/mod_ping.lua
--- a/plugins/mod_ping.lua	Sun Oct 18 18:10:05 2009 +0500
+++ b/plugins/mod_ping.lua	Sun Oct 18 18:26:58 2009 +0500
@@ -6,15 +6,16 @@
 -- COPYING file in the source package for more information.
 --
 
-
-
 local st = require "util.stanza";
 
 module:add_feature("urn:xmpp:ping");
 
-module:add_iq_handler({"c2s", "s2sin"}, "urn:xmpp:ping",
-	function(session, stanza)
-		if stanza.attr.type == "get" then
-			session.send(st.reply(stanza));
-		end
-	end);
+local function ping_handler(event)
+	if event.stanza.attr.type == "get" then
+		event.origin.send(st.reply(event.stanza));
+		return true;
+	end
+end
+
+module:hook("iq/bare/urn:xmpp:ping:ping", ping_handler);
+module:hook("iq/host/urn:xmpp:ping:ping", ping_handler);