author | Myhailo Danylenko <isbear@ukrpost.net> |
Fri, 27 Mar 2009 12:06:19 +0200 | |
changeset 66 | 542f61e113cb |
parent 64 | bf7521ed96eb |
child 68 | 742878c74b8e |
permissions | -rw-r--r-- |
55 | 1 |
|
2 |
-- XMPP PING (XEP-0199) |
|
3 |
||
4 |
-- library |
|
5 |
||
66 | 6 |
local lm = require 'lm' |
64
bf7521ed96eb
Rewrite of ibb in object style
Myhailo Danylenko <isbear@ukrpost.net>
parents:
60
diff
changeset
|
7 |
local iq = require 'iq' |
55 | 8 |
|
66 | 9 |
-- |
55 | 10 |
|
66 | 11 |
local F = { } |
55 | 12 |
|
66 | 13 |
function F.send ( conn, to, success, fail ) |
60 | 14 |
iq.send ( conn, to, 'get', |
15 |
{ |
|
16 |
ping = { xmlns = 'urn:xmpp:ping' }, |
|
17 |
}, success, fail ) |
|
55 | 18 |
end |
19 |
||
66 | 20 |
function F.iq_handler ( conn, mess ) |
21 |
local mtype, smtype = mess:type () |
|
22 |
if smtype == 'get' then |
|
23 |
local p = mess:child ( 'ping' ) |
|
24 |
if p and p:attribute ( 'xmlns' ) == 'urn:xmpp:ping' then |
|
25 |
conn:send ( lm.message.create { mtype = 'iq-result', to = mess:attribute ( 'from' ), id = mess:attribute ( 'id' ) } ) |
|
26 |
return true |
|
55 | 27 |
end |
66 | 28 |
end |
29 |
return false |
|
30 |
end |
|
55 | 31 |
|
66 | 32 |
return F |
55 | 33 |
|
34 |
-- vim: se ts=4: -- |