[ previous ] [ next ] [ threads ]
 To :  Stephane <stephane@s...>
 From :  andrzej.ciupek@a...
 Subject :  Re: [yate] sip cancel close all the session
 Date :  Wed, 04 Jul 2012 08:28:16 +0200
Hello

We have solved this issue at Our b2bua, we modify Call-ID for every  
new transaction, that fork from main session.

Greetings
Andrzej

> Hi Andrzej,
>
>> It seems, that Yate can only cancel the whole dialog once the 'CANCEL'
>> message is received.
>
> There's no way to differentiate the legs in that case, whether it's at
> the transaction level or at the dialog level. You must generate a new
> branch if you want that kind of behavior to work.
>
>> But there is also a point in RFC: [section 17.1.3]
>
> The section you mentioned says:
> - "value of the branch parameter in top Via header"
> - "method parameter in CSeq header field"
>
> Notice only the CSeq *method* is mentioned. Since we are outside of a
> dialog, the CSeq sequence number present in the CANCEL is a new,
> arbitrary number [section 8.1.1.5] and can't be used for matching.
>
> To paraphrase section 5, "a CANCEL request constitutes its own
> transaction, but references the transaction to be cancelled."
>
> HTH,
> S.
>