El Thursday 29 May 2008 18:37:39 Pete Kay escribió:
Hi,
After next_gw(), openser appends "64.231.23.234:5060;transport=tcp" as the domain of th ruri.
When doing a t_relay with that ruri, I am getting ERROR:tm:update_uac_dst.
before relay ruri = sip:86143455048@64.231.23.234:5060;transport=tcp starting to relay May 29 21:18:04 [12107] ERROR:tm:update_uac_dst: failed to fwd to af 2, proto 2 (no corresponding listening socket) May 29 21:18:04 [12107] ERROR:tm:t_forward_nonack: failure to add branches
However, if I do a t_relay with ruri= "sip:86143455048@64.231.23.234sip%3A86143455048@64.231.23.234", then the call can go through. Could anyone tell me why?
Are your OpenSer listening in TCP? or just UDP? You need adding a "listen" in TCP to send TCP request.
A workaround that I can think of is to reconstruct the ruri to get rid of the port and the "transport=tcp" with something like:
rewriteuri("sip:$rU@$rd");
But, the above line gives "sip:$rU@$rd" instead of the desired " sip:86143455048@64.231.23.234 sip%3A86143455048@64.231.23.234". Is there anyway of using psuedo variable in rewriteuri?
Of course:
$ru = "sip" + $rU + "@" + $rd;
but is better if you use the "uri" module that has functions to handle RURI parameters.