[SR-Users] processing ACK
Alex Balashov
abalashov at evaristesys.com
Thu Mar 10 02:07:14 CET 2016
Hello,
I think you may be missing a couple of key fundamentals of SIP protocol
mechanics:
1) By definition, one cannot respond to an ACK; an ACK garners no responses.
2) End-to-end ACKs for 2xx INVITE responses are generated by a SIP UA; a
proxy simply cannot behave as though it were an endpoint since it has no
hand in SDP negotiation.
So, you really have no choice but to forward an end-to-end ACK to the
destination for which it is intended. If you intercepted it at the proxy
and absorbed it somehow, the UA that is waiting for it (the callee)
would eventually end the dialog because it remains in
established-nonconfirmed state.
Now, as far as Kamailio goes: an ACK is a separate transaction from the
INVITE to which it corresponds, and accordingly, does not have access to
transaction-persistent variables associated with that INVITE. There are
two or three ways to maintain dialog-persistent variables:
1) Stuff them into Record-Route parameters.
2) Put them in htable entries.
3) Use $dlg_var():
http://www.kamailio.org/wiki/cookbooks/4.3.x/pseudovariables#dlg_var_key
However, whatever you're trying to do here, it doesn't sound like it's
going to work. I would encourage you to acquire a deeper understanding
of SIP before proceeding further.
-- Alex
--
Alex Balashov | Principal | Evariste Systems LLC
1447 Peachtree Street NE, Suite 700
Atlanta, GA 30309
United States
Tel: +1-800-250-5920 (toll-free) / +1-678-954-0671 (direct)
Web: http://www.evaristesys.com/, http://www.csrpswitch.com/
More information about the sr-users
mailing list