blob: 0bfcac667d96e332573c7a4be1efb38a46f0f37b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
-- Prosody IM
-- Copyright (C) 2008-2010 Matthew Wild
-- Copyright (C) 2008-2010 Waqas Hussain
--
-- This project is MIT/X11 licensed. Please see the
-- COPYING file in the source package for more information.
--
local st = require "util.stanza";
module:add_feature("urn:xmpp:ping");
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);
-- Ad-hoc command
local datetime = require "util.datetime".datetime;
function ping_command_handler (self, data, state)
local now = datetime();
return { info = "Pong\n"..now, status = "completed" };
end
local adhoc_new = module:require "adhoc".new;
local descriptor = adhoc_new("Ping", "ping", ping_command_handler);
module:add_item ("adhoc", descriptor);
|