[OpenSIPS-Users] RE-INVITEs being sent to original contact doesn't properly adjust RTP ports on transfer?
Tyler Merritt
tmerritt at fonality.com
Wed Feb 9 11:20:11 CET 2011
Just an update on this: it's ridiculously hard.
We've done some major surgery on the route logic, and at this point I have the strange condition where opensips seems to be sending multiple ACKs to the carrier on a single reINVITE. The carrier should be sending us two invites - one for each leg of the call (because we are transferring the call into a DID we own).
I am tcpdumping the packets and we have tons of these ACKs flying all directions.
I still have to make a mod based on the to domain of the first ACK, but I don't think that is going to clear everything up all at once.
Why would we generate multiple ACKs? Some loop in my routing logic?
Sent from my iPhone 4
On Feb 4, 2011, at 22:34, Bogdan-Andrei Iancu <bogdan at opensips.org> wrote:
> Hi Tyler,
>
> So ngrep-ing on proxy, you do not see the second re-INVITE (which leads to one way audio)....A possibility is that the re-INVITE may by-pass your opensips. Do you do record-routing also for sequential requests ? There are some bogus UAC/UAS that continuously update the route set, even after the dialog was setup. So maybe the first re-InVITE works ok as you correctly do RR for initial INVITE, but second re-INVITE fails because UAC/UAS expect RR on first re-INVITE too....
>
> Just a supposition
>
> Regards,
> Bogdan
>
> Tyler Merritt wrote:
>> Hi,
>>
>> We've got three parties for this example: A, B, C
>>
>> A - Asterisk end-point Polycom
>>
>> B - Asterisk end-point Polycom
>>
>> C - Outside end-point Uniden
>>
>> OpenSIPs sits in front of the Asterisk servers and communicates with a carrier C5 switch directly (same local area network inside a lab facility)
>>
>> A calls C - call completes - talk, no issues.
>>
>> C presses the transfer button, which is a flash-hook putting A on hold. C dials B.
>>
>> B answers the call - both parties talk.
>>
>> C presses the flash-hook button again in order to complete the transfer.
>>
>> A can hear B - B cannot hear A.
>>
>> The RTP debug from Asterisk shows that RTP packets from B are still going to C.
>>
>> B didn't get the RE-INVITE apparently - but I cannot figure out where the packet is. It's not showing up in OpenSIPs sip_trace, and it's definitely not getting to Asterisk.
>>
>> I don't have control of the Carrier-side C5 to check, and they have been slow to provide me with a wireshark trace.
>> Is there anything else I could do in OpenSIPs to determine if the RE-INVITE is not being handled properly besides what I've already mentioned?
>>
>> Thanks in advance.
>>
>> Tyler
>
> --
> Bogdan-Andrei Iancu
> OpenSIPS Event - expo, conf, social, bootcamp
> 2 - 4 February 2011, ITExpo, Miami, USA
> OpenSIPS solutions and "know-how"
>
More information about the Users
mailing list