lm.lua
changeset 17 ab4470465a0c
parent 16 09b375e9ce32
child 18 6effa1929af7
equal deleted inserted replaced
16:09b375e9ce32 17:ab4470465a0c
   151 	else
   151 	else
   152 		error "at least server name parameter required"
   152 		error "at least server name parameter required"
   153 	end
   153 	end
   154 end
   154 end
   155 
   155 
       
   156 --[=[
   156 -- recursively fills a node, see lm.message.create
   157 -- recursively fills a node, see lm.message.create
   157 function lm.message_node.fill ( n, a )
   158 function lm.message_node.fill ( n, a )
   158 	for name, value in pairs ( a ) do
   159 	for name, value in pairs ( a ) do
   159 		if type ( value ) == "table" then
   160 		if type ( value ) == "table" then
   160 			if type ( value[1] ) == "table" then
   161 			if type ( value[1] ) == "table" then
   169 		else
   170 		else
   170 			n:attribute ( name, value )
   171 			n:attribute ( name, value )
   171 		end
   172 		end
   172 	end
   173 	end
   173 end
   174 end
   174 
       
   175 --[[
   175 --[[
   176 -- recursively fills a message
   176 -- recursively fills a message
   177 lm.message.create { mtype = 'iq-result', to = 'foo@bar.xyz',
   177 lm.message.create { mtype = 'iq-result', to = 'foo@bar.xyz',
   178 	command = { xmlns = 'http://jabber.org/protocol/commands', node = 'http://jabber.org/protocol/rc#set-status', status = 'executing', sessionid = 'set-status:aaa3',
   178 	command = { xmlns = 'http://jabber.org/protocol/commands', node = 'http://jabber.org/protocol/rc#set-status', status = 'executing', sessionid = 'set-status:aaa3',
   179 		x = { xmlns = 'jabber:x:data', type = 'form',
   179 		x = { xmlns = 'jabber:x:data', type = 'form',
   223 	a.to = nil
   223 	a.to = nil
   224 	a.mtype = nil
   224 	a.mtype = nil
   225 	lm.message_node.fill ( m, a )
   225 	lm.message_node.fill ( m, a )
   226 	return m
   226 	return m
   227 end
   227 end
       
   228 --]=]
   228 
   229 
   229 -- TODO: multiple nodes with same name
   230 -- TODO: multiple nodes with same name
   230 function lm.message_node.parse ( node, r )
   231 function lm.message_node.parse ( node, r )
   231 	local n = node:children ()
   232 	local n = node:children ()
   232 	while n do
   233 	while n do