<div dir="ltr">Hello All, <div><br></div><div>I don't know if this is by design or me not implementing correctly! I'm a newbie to OpenSIPS... </div><div><br></div><div>So I generated a new opensips_residential.cfg file and only edited it with topology_hiding("UC"); under INVITE. Plus all the extras to make ATA register successfully and SIP trunk. </div><div><br></div><div>Every time I make a call two INVITE dialogs are created. One from ATA to OpenSIPS and second one from OpenSIPS to Outbound Provider. When a PSTN call is answered, the Outbound Provider sends 200 OK back to OpenSIPS, and OpenSIPS sends back 200 OK to ATA. Then ATA acknowledges with ACK back to OpenSIPS BUT OpenSIPS fails to send ACK to the Outbound Provider. So Outbound Provider sends 200 OK again to OpenSIPS and OpenSIPS sends 200 OK to ATA then ATA acknowledges with ACK back to OpenSIPS BUT OpenSIPS fails to send back ACK... This dance goes on for 30 secs and until Outbound Provider drops the call due to no ACK. </div><div><br></div><div>On the sngrep it shows that call from ATA to OpenSIPS "COMPLETED" while OpenSIPS to Outbound Provider "CALL SETUP".</div><div><br></div><div>If I comment out topology_hiding("UC"); then everything works perfectly and sngrep shows only one INVITE dialog from ATA to OpenSIPS to Outbound Provider except the Outbound Provider can see everything that is ATA's IP info, etc...</div><div><br></div><div>Here is my cfg:</div><div><br></div><div>route {</div><div>...</div><div><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">if (dp_translate(10 ,$rU ,$rU) ) {</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">                xlog("*** Dial plan translate from source $avp(src) to $rU ***\n");</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">                $avp(furi) = "<a href="mailto:sip%3Axxxxxxxxxx@gothamcity.com">sip:xxxxxxxxxx@gothamcity.com</a>";</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">                uac_replace_from( , "$avp(furi)");</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">                #strip(1);</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">                if (!do_routing(0)) {</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">                        send_reply(500,"No PSTN Route found");</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">                        exit;</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">                }</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">                # t_on_branch("change_from");</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">                route(relay);</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">                exit;</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">        }</span><br></div><div><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">...</span></div><div>}</div><div><br></div><div><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">route[relay] {</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">        # for INVITEs enable some additional helper routes</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">        if (is_method("INVITE")) {</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">                # create_dialog();</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">                topology_hiding("UC");</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">                if(remove_hf("User-Agent")){</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">                        xlog("*** 4. User-Agent found and removed. ***\n");</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">                }</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">                if (isflagset("NAT") && has_body("application/sdp")) {</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">                        rtpproxy_offer("ro");</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">                }</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">                t_on_branch("per_branch_ops");</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">                t_on_reply("handle_nat");</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">                t_on_failure("missed_call");</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">        }</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">        if (isflagset("NAT")) {</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">                add_rr_param(";nat=yes");</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">        }</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">        if (!t_relay()) {</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">                send_reply(500,"Internal Error");</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">        }</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">        exit;</span><br style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">}</span><br></div><div><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px"><br></span></div><div><span style="color:rgb(0,0,0);font-family:Helvetica;font-size:12px">My eyes are sore and my head is spinning... </span><span style="font-size:12px;color:rgb(0,0,0);font-family:Helvetica">Any help will be highly appreciated... Thanks! </span></div><div><font color="#000000" face="Helvetica"><span style="font-size:12px"><br></span></font></div><div><font color="#000000" face="Helvetica"><span style="font-size:12px">Cheers,</span></font></div><div><font color="#000000" face="Helvetica"><span style="font-size:12px">Nitesh</span></font></div><div><font color="#000000" face="Helvetica"><span style="font-size:12px"><br></span></font></div></div>