< Previous by Date Date Index Next by Date >
< Previous in Thread Thread Index Next in Thread >

Re: [reSIProcate] CANCEL without To-tag not working


Thanks Scott, I now realize that this has nothing to do with To-tag,
here is the problem:
UA sends an INVITE with a procedure code to initiate call diversion, and
our system responds with a 200 Ok to connect it to the gateway for
playing an acknowledgment message. The UA does not like a 200 Ok without
a prior provisonal and sends CANCEL:

-- IMVITE ->
<- 200 Ok --  (state UAS_Accepted)
-- CANCEL -> ServerInviteSession::dispatchAccepted resends 200 OK
<- 200 OK --

Is this really the right thing to do? Shouldn't the UA be allowed to
cancel in this phase (no ACK has been sent)?

Best Regards
Björn

On Thu, 2010-02-18 at 09:22 -0500, Scott Godin wrote:
> I'm not tracking any known issues with CANCEL processing.  It's normal
> for a CANCEL message not to have a to-tag.  Resip uses a CancelMap,
> indexed by transactionId to match an incoming cancel message to it's
> DialogSet.  Do you have logs for your scenario?
> 
> On Thu, Feb 18, 2010 at 8:08 AM, Bjorn Andersson
> <bjorn.andersson@xxxxxxxxxx> wrote:
>         Hi,
>         If an UAC cancels an invite without sending the To-tag, the
>         DialogSet
>         will not be found and nothing happens. I think resiprocate
>         should be
>         able to handle this, as provisionals are normally unreliable.
>         Is this a
>         known issue?
>         
>         Best Regards
>         Björn Andersson
>         _______________________________________________
>         resiprocate-devel mailing list
>         resiprocate-devel@xxxxxxxxxxxxxxx
>         https://list.resiprocate.org/mailman/listinfo/resiprocate-devel
>