Open sergey-safarov opened 4 years ago
Example how maybe set multiple Route headers
originate {^^|sip_invite_route_uri='<sip:sbc-a0.nga911.com;lr;transport=tcp>,<sip:sbc-a1.nga911.com;lr;transport=tcp>'}sofia/sipinterface_1/sip:911@sbc-a1.nga911.com &park()
I want to specify
Route:
header inoriginate
command. Do this I execute the command:Here
sip:192.184.122.216;transport=tcp
is valid SIP URI. According to RFC3261Route:
header notation: 1) Route = "Route" HCOLON route-param (COMMA route-param) 2) route-param = name-addr ( SEMI rr-param ) 3) name-addr = [ display-name ] LAQUOT addr-spec RAQUOT 4) addr-spec = SIP-URI / SIPS-URI / absoluteURISo RFC allow use Route header like
When executes
originate
command (example above) FreeSwitch send INVITE likeSo looks as FreeSwitch not properly format SIP URI. FreeSwitch format SIP URI from
To
And now string
transport=tcp
meansrr-param
instead ofuri-parameter
.Why this important Router header we use to specify Kamailio which transport need use during SIP message routing. As FreeSwitch now lose
uri-parameter
(transport=tcp
), thenKamailio
not able set required transport for next hop.Work around As workaround need to use
name-addr
instead ofaddr-spec
. Example