<!DOCTYPE html>
<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Hello,</p>
    <p>is it possible to return the call back to the same OpenSIPS
      instance when using topology hiding with Call-ID header encoding?</p>
    <p>It doesn't work for me. The call flow is:</p>
    <p>1. caller -> OpenSIPS, call_id_1 =
      <a class="moz-txt-link-abbreviated" href="mailto:39e20b8211b311ef9f35a0369f28db67@X.X.X.X">39e20b8211b311ef9f35a0369f28db67@X.X.X.X</a><br>
      2. OpenSIPS -> the same OpenSIPS, call_id_2 =
PNiupb663sWqpd38kW1sITWF4YSZ1cFgODEw1emUldnJfUgxHay0ycnEBUVpETGBnYnV.b1pc,
      encoded call_id of the first leg<br>
      3. OpenSIPS -> callee, call_id_3 = <span
style="color: rgb(0, 0, 0); font-family: arial; font-size: 14px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: nowrap; background-color: rgb(255, 255, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; display: inline !important; float: none;">PNiupb663sWqpFAgoHBsIQ2V6IxM3MQ1YUh4EeCMNEhYvXzMmCXgzAiEOLS4dRDYkBSgiLyMNPxIrATE9djgKBS83Bh8gARIGKwUzGwVnMnU2Ig--,
        encoded call_id of the second leg<br>
      </span></p>
    <p>This scheme doesn't work for a subsequent requests from the first
      OpenSIPS to itself including ACK to the INVITE transaction. It
      doesn't work because OpenSIPS decodes call_id_2 when it receives
      the request and decoded call_id doesn't match with the call_id of
      appropriate dialog found by DID:</p>
    <p><font face="monospace">DBG:dialog:api_match_dialog: We found DID
        param in R-URI with value of f72.357c45e4<br>
        DBG:dialog:dlg_onroute: route param is 'f72.357c45e4' (len=12)<br>
        DBG:dialog:lookup_dlg: dialog id=1314178899 found on entry 639<br>
        DBG:core:parse_headers: flags=58<br>
        WARNING:dialog:dlg_onroute: tight matching failed for ACK with
        callid='<a class="moz-txt-link-abbreviated" href="mailto:39e20b8211b311ef9f35a0369f28db67@X.X.X.X">39e20b8211b311ef9f35a0369f28db67@X.X.X.X</a>'/45,
        ftag='vQ5R9OFRXdslE8jhUV3bJRPFV8VLpAAq'/32,
        ttag='271887064-24388-26114'/21 and direction=0<br>
        WARNING:dialog:dlg_onroute: dialog identification elements are
callid='PNiupb663sWqpd38kW1sITWF4YSZ1cFgODEw1emUldnJfUgxHay0ycnEBUVpETGBnYnV.b1pc'/73,
        caller tag='vQ5R9OFRXdslE8jhUV3bJRPFV8VLpAAq'/32, callee
        tag='271887064-24388-26114'/21<br>
        DBG:core:parse_headers: flags=200<br>
        DBG:core:grep_sock_info_ext: checking if host==us: 9==9
        &&  [127.0.0.1] == [127.0.0.1]<br>
        DBG:core:grep_sock_info_ext: checking if port 5060 matches port
        5060</font><br>
    </p>
    <p>Could you please explain, is it somehow possible to use call_id
      hiding with call loops?<br>
    </p>
    <pre class="moz-signature" cols="72">-- 
Best regards,
Alexander Kogan,
Director of R&D
5g Future
<a class="moz-txt-link-freetext" href="http://5gfuture.com">http://5gfuture.com</a></pre>
  </body>
</html>