5 |
5 |
6 function verse.plugins.vcard(stream) |
6 function verse.plugins.vcard(stream) |
7 function stream:get_vcard(jid, callback) --jid = nil for self |
7 function stream:get_vcard(jid, callback) --jid = nil for self |
8 stream:send_iq(verse.iq({to = jid, type="get"}) |
8 stream:send_iq(verse.iq({to = jid, type="get"}) |
9 :tag("vCard", {xmlns=xmlns_vcard}), callback and function(stanza) |
9 :tag("vCard", {xmlns=xmlns_vcard}), callback and function(stanza) |
10 local lCard, xCard; |
10 local vCard = stanza:get_child("vCard", xmlns_vcard); |
11 vCard = stanza:get_child("vCard", xmlns_vcard); |
|
12 if stanza.attr.type == "result" and vCard then |
11 if stanza.attr.type == "result" and vCard then |
13 vCard = vcard.from_xep54(vCard) |
12 vCard = vcard.from_xep54(vCard) |
14 callback(vCard) |
13 callback(vCard) |
15 else |
14 else |
16 callback(false) -- FIXME add error |
15 callback(false) -- FIXME add error |