<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns:mv="http://macVmlSchemaUri" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Title" content="">
<meta name="Keywords" content="">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
        {font-family:Arial;
        panose-1:2 11 6 4 2 2 2 2 2 4;}
@font-face
        {font-family:"Courier New";
        panose-1:2 7 3 9 2 2 5 2 4 4;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:Calibri;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";}
tt
        {mso-style-priority:99;
        font-family:"Courier New";}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:Courier;}
span.EmailStyle20
        {mso-style-type:personal;
        font-family:Calibri;
        color:windowtext;}
span.EmailStyle21
        {mso-style-type:personal-reply;
        font-family:Calibri;
        color:windowtext;}
span.msoIns
        {mso-style-type:export-only;
        mso-style-name:"";
        text-decoration:underline;
        color:teal;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style>
</head>
<body bgcolor="white" lang="EN-US" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt">I understand that normally you would not need RR with TH, but the two concepts are not mutually exclusive in SIP. As I said,
</span><span style="font-size:11.0pt">I have a need to Record-Route the call on my server as I am advertising a different address than I am listening on. This means that TH will populate the Contact header with the advertised address and if I cannot Record-Route
with the actual address then I will not receive sequential requests.</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
<div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p> </o:p></span></p>
</div>
</div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">Ben Newlin</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="color:black">From: </span></b><span style="color:black">Bogdan-Andrei Iancu <bogdan@opensips.org><br>
<b>Date: </b>Wednesday, July 27, 2016 at 3:59 AM<br>
<b>To: </b>OpenSIPS users mailling list <users@lists.opensips.org>, "Newlin, Ben" <Ben.Newlin@inin.com><br>
<b>Subject: </b>Re: [OpenSIPS-Users] Record-Route and Dialog topology_hiding()<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-family:"Times New Roman""><o:p> </o:p></span></p>
</div>
<div>
<div>
<p class="MsoNormal"><tt><span style="font-size:10.0pt">Hi Ben,</span></tt><span style="font-size:10.0pt;font-family:"Courier New""><br>
<br>
<tt>As I mentioned in different thread, TH is not compatible with the RR mechanism. If you do TH, your OpenSIPS will act as and end point (from SIP perspective), so there will be no Route/RR headers at all. So no need to do loose_route or so. You just do TH
matching for the sequential requests and nothing more.</tt><br>
<br>
<tt>Regards,</tt><br>
<br>
</span><o:p></o:p></p>
<pre>Bogdan-Andrei Iancu<o:p></o:p></pre>
<pre>OpenSIPS Founder and Developer<o:p></o:p></pre>
<pre><a href="http://www.opensips-solutions.com">http://www.opensips-solutions.com</a><o:p></o:p></pre>
<div>
<p class="MsoNormal">On 22.07.2016 16:48, Newlin, Ben wrote:<o:p></o:p></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal"><span style="font-size:11.0pt">Hi,</span><o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:11.0pt"> </span><o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:11.0pt">I am using the Dialog module with topology_hiding() in my server and I have a need to Record-Route the call on my server as I am advertising a different address than I am listening on. I have found what I
believe is an inconsistency in the handling of Record-Route within the Dialog topology_hiding functionality. The topology_hiding isn’t a true B2BUA, but it does set up different parameters for the incoming UAC and outgoing UAS sides of the call for the Via
headers, Record-Route and Route headers, and the Contact header(s).</span><o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:11.0pt"> </span><o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:11.0pt">The problem is that the record_route() and loose_route() functions operate on different sides of the call. The record_route() function will only add a Record-Route header to the outgoing UAS side of the call.
And since the record_route() function cannot be called from onreply_route, but is no way to add a Record-Route header to the UAC side of the call.</span><o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:11.0pt"> </span><o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:11.0pt">On the other hand, the loose_route() function only operates on the incoming UAC side of the call and there is no way to perform loose_route() on the UAS side of the call.</span><o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:11.0pt"> </span><o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:11.0pt">So there is a situation where Record-Route headers can only be added on the outgoing UAS side, but the associated Route headers can only be removed on the incoming UAC side (where they won’t exist since they
can’t be added) and any added headers on the UAS side cannot be processed properly due to the lack of loose_route.</span><o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:11.0pt"> </span><o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:11.0pt">I can provide further information if this is unclear. It should be easily reproducible by attempting to use record_route in a topology_hiding scenario. The route is added to the outbound leg, but is not removed
by loose_route so the message is looped back every time.</span><o:p></o:p></p>
<div>
<p class="MsoNormal" style="line-height:16.8pt;background:white"><span style="font-size:9.0pt;font-family:Arial;color:#666666"> </span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="line-height:16.8pt;background:white"><b><span style="font-size:10.0pt;font-family:Arial;color:#155570">Ben Newlin</span></b><b><span style="font-size:10.0pt;font-family:Arial;color:#666666"> </span></b><span style="font-size:10.0pt;font-family:Arial;color:#666666">|
Sr Voice Network Engineer, PureCloud</span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="line-height:16.8pt;background:white"><span style="font-size:10.0pt;font-family:Arial;color:#666666">phone & fax +1.317.957.1009 | </span><span style="font-size:10.0pt;font-family:Arial;color:#0585A7"><a href="mailto:ben.newlin@inin.com">ben.newlin@inin.com</a> </span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="line-height:16.8pt;background:white"><span style="font-size:9.0pt;font-family:Arial;color:#666666;border:solid windowtext 1.0pt;padding:0in"><img border="0" width="196" height="21" id="_x0000_i1025" src="cid:Word%20Work%20File%20D_.jpg" alt="mage removed by sender."></span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="line-height:12.0pt;background:white"><span style="font-size:10.0pt;font-family:Arial;color:#0585A7"><a href="http://www.inin.com">www.inin.com</a></span><o:p></o:p></p>
</div>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal"><span style="font-family:"Times New Roman""><br>
<br>
<br>
<o:p></o:p></span></p>
<pre>_______________________________________________<o:p></o:p></pre>
<pre>Users mailing list<o:p></o:p></pre>
<pre><a href="mailto:Users@lists.opensips.org">Users@lists.opensips.org</a><o:p></o:p></pre>
<pre><a href="http://lists.opensips.org/cgi-bin/mailman/listinfo/users">http://lists.opensips.org/cgi-bin/mailman/listinfo/users</a><o:p></o:p></pre>
</blockquote>
<p class="MsoNormal"><span style="font-family:"Times New Roman""><o:p> </o:p></span></p>
</div>
</div>
</div>
</body>
</html>