local lm = require 'lm'
local ping = require 'lm.ping'
main.command ( 'ping',
function ( args )
local who
if args[1] then
who = args[1]
else
who = main.full_jid ()
end
local time = os.time ()
ping.send ( lm.connection.bless ( main.connection () ), who,
function ()
main.print_info ( who, ('Pong: %d seconds'):format ( os.time () - time ) )
end,
function ( mesg )
main.print_info ( who, 'Ping failed: ' .. mesg )
end )
end, true, 'jid' )
commands_help['ping'] = '[jid]\n\nSends XMPP ping request to specified jid or current buddy'
--[[
local ping_handler = lm.message_handler.new ( ping.iq_handler )
local ping_handler_registered = false
hooks_d['hook-post-connect'].ping =
function ( args )
lm.connection.bless( main.connection () ):handler ( ping_handler, 'iq', 'normal' )
ping_handler_registered = true
hooks_d['hook-post-connect'].ping = nil
hooks_d['hook-quit'].ping =
function ( args )
if ping_handler_registered then
lm.connection.bless( main.connection () ):handler ( ping_handler, 'iq' )
end
end
end
main.add_feature ( 'urn:xmpp:ping' )
--]]
-- vim: se ts=4: --