examples/lm/iq.lua
author Myhailo Danylenko <isbear@ukrpost.net>
Thu, 17 Mar 2016 23:17:00 +0200
changeset 151 5d90caa7fb2c
parent 68 742878c74b8e
permissions -rw-r--r--
Switch global name from 'main' to 'mcabber' (v0.0.5)


-- CORE, IQ

-- library

local lm = require 'lm'

--

local F = { }

function F.send ( conn, to, smtype, data, success, fail )
	data.mtype = 'iq-' .. smtype
	data.to    = to
	conn:send ( lm.message.create ( data ),
		function ( conn, mess )
			local mtype, smtype = mess:type ()
			if smtype == 'result' then
				success ( mess )
			elseif smtype == 'error' then
				fail ( mess:child( 'error' ):child():name (), mess ) -- FIXME
			else
				fail ( mess:xml (), mess )
				return false
			end
			return true
		end )
end

return F

-- vim: se ts=4: --