[OpenSIPS-Users] dialog and CANCEL
bogdan at opensips.org
Wed Apr 6 16:35:25 CEST 2011
On 03/21/2011 01:55 PM, Denis Putyato wrote:
> There is such scheme of call
> One gateway – 22.214.171.124
> Opensips – 126.96.36.199
> Another gateway – 188.8.131.52
> Calls from 184.108.40.206 to 220.127.116.11 through 18.104.22.168
> I use CDR_flag for accounting
> As you can see in testlog file, 22.214.171.124 trying cancel initial request
> by sending CANCEL, this CANCEL Opensips forwarding to 126.96.36.199 but from
> 188.8.131.52 Opensips receives 200 OK on INVITE. Because of this there is
> no CANCEL of the dialog on Opensips and after 1800 sec (see
> “default_timeout”) I have a CDR record in Opensips with duration of
> 1800 sec.
> The question. Why does Opensips forward 200 OK from 184.108.40.206 to 220.127.116.11
> when initial request was cancelled, and why Opensips makes accounting
> dialog when initial request was cancelled?
RFC3261 says a proxy must forward all 2xx replies (disregarding the
transaction state), just to solve the possible race between CANCEL and
2xx -> such race must be handled by end point and not by proxy.
So, it your case, if caller sent a CANCEL but still receives a 200
(callee picked up before actually receiving the CANCEL from caller), the
caller must sent a BYE and the callee should send a negative reply to
So, it is a bug in the caller device.
OpenSIPS eBootcamp - 2nd of May 2011
OpenSIPS solutions and "know-how"
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Users