Hello, In our network topology we use Kamailio at the edge of our network proxying requests from a core set of FreeSWITCH servers.
I have a new termination provider where a session timer ReINVITE fails because the ACK is sent to the contact address of the FreeSWITCH server, not the proxy. Can I Record-Route these in dialog requests? If so, where should I do it in the config?
A quick google search returned this thread: https://lists.cs.columbia.edu/pipermail/sip-implementors/2003-June/005089.ht... which confused me a little.
Thanks, Spencer
My in dialog config block looks like this: # Handle requests within SIP dialogs route[WITHINDLG] { if (has_totag()) { # sequential request withing a dialog should # take the path determined by record-routing if (loose_route()) { if (is_method("BYE")) { setflag(FLT_ACC); # do accounting ... setflag(FLT_ACCFAILED); # ... even if the transaction fails setflag(FLT_SIPTRACE); } if (is_method("ACK")) { # ACK is forwarded statelessy route(NATMANAGE); } route(RELAY); } else { if ( is_method("ACK") ) { if (t_check_trans()) { # no loose-route, but stateful ACK; # must be an ACK after a 487 # or e.g. 404 from upstream server t_relay(); exit; } else { # ACK without matching transaction ... ignore and discard exit; } } sl_send_reply("404","Not here"); } exit; } }