[SR-Users] Record-route in dialog requests
Klaus Darilion
klaus.mailinglists at pernau.at
Mon Oct 21 10:11:52 CEST 2013
Just as a note: If you need to record_route for in-dialog requests then
the clients are buggy and you should report the issue.
regards
Klaus
On 18.10.2013 19:46, Spencer Thomason wrote:
> Thanks Daniel,
>
> That did the trick!
>
> BR,
> Spencer
>
>
> On Oct 18, 2013, at 10:32 AM, Daniel-Constantin Mierla <miconda at gmail.com> wrote:
>
>> Hello,
>>
>> On 10/18/13 7:25 PM, Spencer Thomason wrote:
>>> 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.html
>>> which confused me a little.
>> yes, you can re-enforce record route for requests within dialog, although not required by specs. See below the position.
>>
>>>
>>>
>>> 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()) {
>>
>> Add it after the above line, like:
>>
>> record_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;
>>> }
>>> }
>> Cheers,
>> Daniel
>>
>> --
>> Daniel-Constantin Mierla - http://www.asipto.com
>> http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
>> Kamailio Advanced Trainings - Berlin, Nov 25-28; Miami, Nov 18-20, 2013
>> - more details about Kamailio trainings at http://www.asipto.com -
>>
>>
>> _______________________________________________
>> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
>> sr-users at lists.sip-router.org
>> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>>
>
>
> _______________________________________________
> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
> sr-users at lists.sip-router.org
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>
More information about the sr-users
mailing list