272 else -- private stanza |
272 else -- private stanza |
273 local o_data = self._participants[to]; |
273 local o_data = self._participants[to]; |
274 if o_data then |
274 if o_data then |
275 log("debug", "%s sent private stanza to %s (%s)", from, to, o_data.jid); |
275 log("debug", "%s sent private stanza to %s (%s)", from, to, o_data.jid); |
276 local jid = o_data.jid; |
276 local jid = o_data.jid; |
277 if stanza.name=='iq' and type=='get' and stanza.tags[1].attr.xmlns == 'vcard-temp' then jid = jid_bare(jid); end |
277 -- TODO if stanza.name=='iq' and type=='get' and stanza.tags[1].attr.xmlns == 'vcard-temp' then jid = jid_bare(jid); end |
278 stanza.attr.to, stanza.attr.from = jid, current_nick; |
278 stanza.attr.to, stanza.attr.from = jid, current_nick; |
279 self:route_stanza(stanza); |
279 self:route_stanza(stanza); |
280 elseif type ~= "error" and type ~= "result" then -- recipient not in room |
280 elseif type ~= "error" and type ~= "result" then -- recipient not in room |
281 origin.send(st.error_reply(stanza, "cancel", "item-not-found", "Recipient not in room")); |
281 origin.send(st.error_reply(stanza, "cancel", "item-not-found", "Recipient not in room")); |
282 end |
282 end |