Hi Everyone,
I am trying to add DMQ for redundancy of registrations and USRLOC, and I’m
trying to send calls to the correct SBC that is the original registrar for a
handset. I’ve been using the thread here where Charles gave some guidance on
how to use path to store and use the original SBC:
https://lists.kamailio.org/pipermail/sr-users/2018-February/100246.html and
https://lists.kamailio.org/pipermail/sr-users/2013-September/079736.html
I am struggling with when to decide to modify the destination URI. My testing
shows this is required otherwise some handsets will ignore the invite, but
right now I am doing it in a blanket form, right before SIPOUT (which is where
the origin SBC handles the invite instead of LOCATION). I am sure this is being
too heavy-handed though and there are some cases where I won’t want to set
this, but I am not sure which?
# record routing for dialog forming requests (in case they are routed)
# - remove preloaded route headers
remove_hf("Route");
if (is_method("INVITE|SUBSCRIBE")) {
record_route();
}
…
xlog("Setting du according to path. Current du is $du\n");
xlog("Current route header: $(hdr(Route))\n");
xlog("Current route: $(hdr(Route){uri.host})\n");
>>> $du = $(hdr(Route){param.value,received});
#xlog("New du destination uri is: $du\n");
# dispatch requests to foreign domains
route(SIPOUT);
In the linked threads, Charles mentioned that only the last-hop registrar
should make this change, but what’s the best way to determine if I am on the
last-hop registrar?
As per the snippet above, I tried using the {uri.host} transformation to
extract the origin SBC’s IP from the route header. My plan is to then compare
this against “myself” but I am struggling to extract the right info from the
route header. And I am not even sure if this is the right general approach?
The route header looks like this:
<sip:ORIGIN_SBC_IP:5060;received=sip:UAC_WAN_IP:2048;lr>
Any guidance or examples would be appreciated.
Thanks!
Rhys Hanrahan | Chief Information Officer
e: [email protected]<mailto:[email protected]>
[www.nexusone.com.au]<http://www.nexusone.com.au/> [signature_555064778]
<http://www.fusiontech.com.au/>
NEXUS ONE | FUSION TECHNOLOGY SOLUTIONS
p: 1800 NEXUS1 (1800 639 871) or 1800 565 845 | a: Suite 12.03 Level 12, 227
Elizabeth Street, Sydney NSW 2000
www.nexusone.com.au<http://www.nexusone.com.au/> |
www.fusiontech.com.au<http://www.fusiontech.com.au/>
The information in this email and any accompanying attachments may contain; a.
Confidential information of Fusion Technology Solutions Pty Ltd, Nexus One Pty
Ltd or third parties; b. Legally privileged information of Fusion Technology
Solutions Pty Ltd, Nexus One Pty Ltd or third parties; and or c. Copyright
material Fusion Technology Solutions Pty Ltd, Nexus One Pty Ltd or third
parties. If you have received this email in error, please notify the sender
immediately and delete this message. Fusion Technology Solutions Pty Ltd, Nexus
One Pty Ltd does not accept any responsibility for loss or damage arising from
the use or distribution of this email.
Please consider the environment before printing this email.
__________________________________________________________
Kamailio - Users Mailing List - Non Commercial Discussions
* [email protected]
Important: keep the mailing list in the recipients, do not reply only to the
sender!
Edit mailing list options or unsubscribe:
* https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users