[SR-Users] Differentiation between ACK INVITE and ACK CANCEL
inge
inge at legos.fr
Tue Jul 6 19:32:19 CEST 2010
Hi Alex,
It seems to be exactly what I want to do.
Unfortunately, I'm running SER 0.9.x and "t_check_trans" doesn't exist.
I was thinking also that I can probably do a "setflag" on an INVITE and
test it within the onreply-route. In that case, CANCEL should never came
into this call-flow.
Because, what I want to do exactly, is to handle a call for launching a
script. And so far I launched the script on ACK, therefore, the CANCEL
came in this case too.
I hope I'm clear.
Regards,
Adrien
Le mardi 06 juillet 2010 à 11:11 -0400, Alex Balashov a écrit :
> Hi Adrien,
>
> On 07/06/2010 10:39 AM, inge wrote:
>
> > Firstly, I was thinking to make a difference using the CSeq field, but
> > it seems that the CSeq on ACK contains the ACK himself. Probably because
> > ACK is a request and not a response.
>
> You are correct; ACK is a wholly different request and a separate
> transaction from the exchange it is meant to acknowledge.
>
> It is possible to differentiate end-to-end vs. hop-by-hop ACKs using
> t_check_trans():
>
> http://www.kamailio.org/docs/modules/3.0.x/modules/tm.html#t_check_trans
>
> See its usage in the stock kamailio.cfg.
>
> Note that 200 response to CANCEL does not generate an ACK, but a 487
> response does, so your question is rather academic.
>
More information about the sr-users
mailing list