Hello List,
of course - best way is not to use sips: uri scheme. But i have to deal with that.
I try to configure an multihomed kamailio (public/private IP) in front of my SIP-Servers. One of my softphones variants used TLS for connection but the INVITES of this softphone use the "sips" URI scheme.
As i saw in other posts, this seems to be an issue for many people. In my case it breaks the routing to my internal sip-server (only plain udp).
Most of my config is similar to havfos example + TLS. https://github.com/havfo/WEBRTC-to-SIP/blob/master/etc/kamailio/kamailio.cfg
I tried to fixed that with this extra route - but this breaks the dialog somewhere - after 60 seconds i have no audio and the BYE becomes another CSeq:
in the request_route right after route(AUTH) i add my route(FIX_SIPS)
if (is_method("INVITE|SUBSCRIBE")) { if ($ru =~ "^sips:") { route(FIX_SIPS); } else { record_route(); } }
route[FIX_SIPS] { if ($ru =~ "^sips:") { xlog("L_INFO","---FIX_SIPS-before: ru:($ru)"); $var(orig_uri) = $ru; $ru = "sip:" + $rU + "@" + $td; xlog("L_INFO","---FIX_SIPS-now: $rU $td ru:($ru) orig_uri:($var(orig_uri))"); record_route(); #$ru = $var(orig_uri); xlog("L_INFO","---FIX_SIPS-after: ru:($ru)"); } }
172.20.120.81 = Kamailio private IP 172.20.120.79 = My internal SIP-Server (B2BUA)
I used kamailio with CentOS 7 and RTPENGINE 63bdd615 from master kamailio-5.0.2-3.1.x86_64 kamailio-tls-5.0.2-3.1.x86_64 kamailio-mysql-5.0.2-3.1.x86_64 kamailio-websocket-5.0.2-3.1.x86_64
Hello List,
someone with an advice for me to reform the sips:// uri schema to sip:// ?
Would be great.
2017-08-18 13:54 GMT+02:00 Karsten Horsmann khorsmann@gmail.com:
Hello List,
of course - best way is not to use sips: uri scheme. But i have to deal with that.
I try to configure an multihomed kamailio (public/private IP) in front of my SIP-Servers. One of my softphones variants used TLS for connection but the INVITES of this softphone use the "sips" URI scheme.
As i saw in other posts, this seems to be an issue for many people. In my case it breaks the routing to my internal sip-server (only plain udp).
Most of my config is similar to havfos example + TLS. https://github.com/havfo/WEBRTC-to-SIP/blob/master/etc/ kamailio/kamailio.cfg
I tried to fixed that with this extra route - but this breaks the dialog somewhere - after 60 seconds i have no audio and the BYE becomes another CSeq:
in the request_route right after route(AUTH) i add my route(FIX_SIPS)
if (is_method("INVITE|SUBSCRIBE")) { if ($ru =~ "^sips:") { route(FIX_SIPS); } else { record_route(); } }
route[FIX_SIPS] { if ($ru =~ "^sips:") { xlog("L_INFO","---FIX_SIPS-before: ru:($ru)"); $var(orig_uri) = $ru; $ru = "sip:" + $rU + "@" + $td; xlog("L_INFO","---FIX_SIPS-now: $rU $td ru:($ru) orig_uri:($var(orig_uri))"); record_route(); #$ru = $var(orig_uri); xlog("L_INFO","---FIX_SIPS-after: ru:($ru)"); } }
172.20.120.81 = Kamailio private IP 172.20.120.79 = My internal SIP-Server (B2BUA)
I used kamailio with CentOS 7 and RTPENGINE 63bdd615 from master kamailio-5.0.2-3.1.x86_64 kamailio-tls-5.0.2-3.1.x86_64 kamailio-mysql-5.0.2-3.1.x86_64 kamailio-websocket-5.0.2-3.1.x86_64
-- Kind Regards *Karsten Horsmann*
Hello List,
i answering myself - just for the records.
For my issues i found an solution.
1.) If sips from broken client, save "sip://" scheme to record-route (like described before) and then reformat it to the old $ru 2.) Attach a FLT_Flag to this 3.) On my dispatcher route i force "transport=udp" to it, if my FLT_Flag there is
The 60 second sound problem was an rfc4028 - session timer issue between UAC and target B2BUA (FreeSWITCH). I could solve this with 'param name="enable-timer" value="false"' within FreeSWITCH sip-profile.
#!define FLT_SRCSIPS 19
request_route { ... remove_hf("Route"); if (is_method("INVITE|SUBSCRIBE")) { if ($ru =~ "^sips:") { route(FIX_SIPS); } else { record_route(); } } ... }
route[FIX_SIPS] { if ($ru =~ "^sips:") { xlog("L_INFO","---FIX_SIPS-before: ru:($ru)"); $var(orig_uri) = $ru; $ru = "sip:" + $rU + "@" + $td; xlog("L_INFO","---FIX_SIPS-now: $rU $td ru:($ru) orig_uri:($var(orig_uri))"); record_route(); $ru = $var(orig_uri); xlog("L_INFO","---FIX_SIPS-after: ru:($ru)"); setflag(FLT_SRCSIPS); } }
route[DISPATCHIVR] { ... if(isflagset(FLT_SRCSIPS)) { $var(orig_du) = $du; $du = "sip:" + $rd + ":" + $rp + ";transport=udp"; xlog("L_INFO","reformate ($var(orig_du)) to ($du)"); } ... }
2017-08-18 13:54 GMT+02:00 Karsten Horsmann khorsmann@gmail.com:
Hello List,
of course - best way is not to use sips: uri scheme. But i have to deal with that.
I try to configure an multihomed kamailio (public/private IP) in front of my SIP-Servers. One of my softphones variants used TLS for connection but the INVITES of this softphone use the "sips" URI scheme.
As i saw in other posts, this seems to be an issue for many people. In my case it breaks the routing to my internal sip-server (only plain udp).
Most of my config is similar to havfos example + TLS. https://github.com/havfo/WEBRTC-to-SIP/blob/master/etc/ kamailio/kamailio.cfg
[...]