331 else -- private stanza |
331 else -- private stanza |
332 local o_data = rooms:get(room, to); |
332 local o_data = rooms:get(room, to); |
333 if o_data then |
333 if o_data then |
334 log("debug", "%s sent private stanza to %s (%s)", from, to, o_data.jid); |
334 log("debug", "%s sent private stanza to %s (%s)", from, to, o_data.jid); |
335 local jid = o_data.jid; |
335 local jid = o_data.jid; |
336 if stanza.name=='iq' and type=='get' and stanza.tags[1].attr.xmlns == 'vcard-temp' then jid = jid_bare(jid); end |
336 -- TODO if stanza.name=='iq' and type=='get' and stanza.tags[1].attr.xmlns == 'vcard-temp' then jid = jid_bare(jid); end |
337 stanza.attr.to, stanza.attr.from = jid, current_nick; |
337 stanza.attr.to, stanza.attr.from = jid, current_nick; |
338 core_route_stanza(component, stanza); |
338 core_route_stanza(component, stanza); |
339 elseif type ~= "error" and type ~= "result" then -- recipient not in room |
339 elseif type ~= "error" and type ~= "result" then -- recipient not in room |
340 origin.send(st.error_reply(stanza, "cancel", "item-not-found", "Recipient not in room")); |
340 origin.send(st.error_reply(stanza, "cancel", "item-not-found", "Recipient not in room")); |
341 end |
341 end |