# HG changeset patch # User Myhailo Danylenko # Date 1237158289 -7200 # Node ID 90e52372b59519e0d1d7541867d0c6ac65910ca9 # Parent 92b254b643601d1bf38521e526138b340c680eef Merged disco output diff -r 92b254b64360 -r 90e52372b595 examples/xep0030.lua --- a/examples/xep0030.lua Mon Mar 16 00:47:44 2009 +0200 +++ b/examples/xep0030.lua Mon Mar 16 01:04:49 2009 +0200 @@ -67,11 +67,16 @@ disco_items ( function ( items ) if type ( items ) == 'string' then - main.print_info ( who, string.format ( "Service items discovery for %s (%s) failed: %s", who, node or '', items ) ) + main.print_info ( who, ("Items service discovery for %s (%s) failed: %s"):format ( who, node or '', items ) ) else - main.print_info ( who, string.format ( "Service items discovery result for %s (%s):", who, node or '' ) ) + local text = '' for index, item in ipairs ( items ) do - main.print_info ( who, string.format ( " [%s (%s)] %s", item.jid or '', item.node or '', item.name or '' ) ) + text = text .. ("\n [%s (%s)] %s"):format ( item.jid or '', item.node or '', item.name or '' ) + end + if text ~= '' then + main.print_info ( who, ("Items service discovery result for %s (%s):%s"):format ( who, node or '', text ) ) + else + main.print_info ( who, ("No items in discovery result for %s (%s)"):format ( who, node or '' ) ) end end end, who, node ) @@ -79,16 +84,26 @@ disco_info ( function ( identities, features ) if type ( identities ) == 'string' then - main.print_info ( who, string.format ( "Service info discovery for %s failed: %s", who, identities ) ) + main.print_info ( who, ("Info service discovery for %s failed: %s"):format ( who, identities ) ) else - main.print_info ( who, string.format ( "Service info discovery result for %s:", who ) ) - main.print_info ( who, " Identities:" ) + main.print_info ( who, ("Service info discovery result for %s:"):format ( who ) ) + local text = '' for index, identity in ipairs ( identities ) do - main.print_info ( who, string.format ( " [%s (%s)] %s", identity.category or '', identity.type or '', identity.name or '' ) ) + text = text .. ("\n [%s (%s)] %s"):format ( identity.category or '', identity.type or '', identity.name or '' ) + end + if text ~= '' then + main.print_info ( who, " Identities:" .. text ) + else + main.print_info ( who, " No identities" ) end - main.print_info ( who, " Features:" ) + text = '' for index, feature in ipairs ( features ) do - main.print_info ( who, string.format ( " [%s]", feature or '' ) ) + text = text .. ("\n [%s]"):format ( feature or '' ) + end + if text ~= '' then + main.print_info ( who, " Features:" .. text ) + else + main.print_info ( who, " No features" ) end end end, who )