<div dir="ltr"><div><div>Hello,<br>Wanted to correct the message below:<br></div>I had added fc1 in the save(&quot;location&quot;) after I got this problem to avoid more than one registration. Before adding fc1, i had this problem of TCP timeout. Sorry for the wrong info.<br><br></div>--- Jayesh<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Oct 8, 2014 at 8:01 PM, Jayesh Nambiar <span dir="ltr">&lt;<a href="mailto:jayesh1017@gmail.com" target="_blank">jayesh1017@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div>Hi Bogdan,<br></div>So I thought of doing this and I have another problem. Say if a device registered from IP 1.2.3.4, and then moved out to different network and re-registered from IP 4.3.2.1, there is a stale registration lying in opensips for the same device from 1.2.3.4.<br></div>Now when I use TCP as transport, opensips waits till connect timed out on unreachable IPs before sending the call to registered contact and the following messages are logged in syslog:<br>ERROR:core:tcp_blocking_connect: timeout 10 s elapsed from 10 s<br> ERROR:core:tcpconn_connect: tcp_blocking_connect failed<br> ERROR:core:tcp_send: connect failed<br> ERROR:tm:msg_send: tcp_send failed<br><br></div><div>Looks like opensips tries to do a TCP connect first with all registered contacts before actually routing the call.<br></div><div>I do,<br>modparam(&quot;registrar&quot;, &quot;tcp_persistent_flag&quot;, &quot;TCP_PERSISTENT&quot;)<br><br>if(is_method(&quot;REGISTER&quot;)) {<br>setflag(TCP_PERSISTENT);<br>        setbflag(30);<br>        if(!save(&quot;location&quot;, &quot;fc1&quot;)) {<br>                t_reply(&quot;500&quot;, &quot;Error while saving AOR&quot;);<br>        }<br>}<span class="HOEnZb"><font color="#888888"><br><br></font></span></div><span class="HOEnZb"><font color="#888888"><div>--- Jayesh<br></div><div><br><br><br></div><div><br></div><br></font></span></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Oct 8, 2014 at 3:10 PM, Bogdan-Andrei Iancu <span dir="ltr">&lt;<a href="mailto:bogdan@opensips.org" target="_blank">bogdan@opensips.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  
    
  
  <div text="#000000" bgcolor="#FFFFFF">
    <div><tt>Hi Jayesh,<br>
        <br>
        Basically you do not what to have more registrations from the
        same IP, right ?<br>
        <br>
        Exactly the opposit of the is_other_contact() function :<br>
           
        <a href="http://www.opensips.org/html/docs/modules/1.11.x/registrar.html#id294660" target="_blank">http://www.opensips.org/html/docs/modules/1.11.x/registrar.html#id294660</a><br>
        <br>
        Regards,<br>
      </tt>
      <pre cols="72">Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
<a href="http://www.opensips-solutions.com" target="_blank">http://www.opensips-solutions.com</a></pre><div><div>
      On 01.10.2014 18:15, Jayesh Nambiar wrote:<br>
    </div></div></div>
    <blockquote type="cite"><div><div>
      <div dir="ltr">
        <div>
          <div>
            <div>
              <div>
                <div>Hi,<br>
                </div>
                I am trying to solve a problem of having one
                registration per AOR per device. So user 1234 can
                register from device A, device B and device C. But the
                user 1234 should not have multiple contacts from device
                A alone. <br>
              </div>
              At times when the device loses network, proxy doesn&#39;t
              receive de-register and the contact stays in opensips till
              its expiry time. So the same device is thus capable of
              creating multiple contacts. I could solve this by using
              &quot;fc1&quot; flag while doing a save(&quot;location&quot;) but I need
              multiple registrations to be allowed from different
              devices !!<br>
            </div>
            So is there a way where while doing a save(&quot;location&quot;), I
            set some sort of device id along with it such that I
            identify and overwrite the existing contact only if the
            registration comes from same device-id or else add it up for
            parallel forking.<br>
          </div>
          Do let me know if I make sense here and there&#39;s a solution to
          this. Thanks for any suggestions and directions.<br>
          <br>
          Thanks,<br>
          <br>
        </div>
        --- Jayesh<br>
      </div>
      <br>
      <fieldset></fieldset>
      <br>
      </div></div><pre>_______________________________________________
Users mailing list
<a href="mailto:Users@lists.opensips.org" target="_blank">Users@lists.opensips.org</a>
<a href="http://lists.opensips.org/cgi-bin/mailman/listinfo/users" target="_blank">http://lists.opensips.org/cgi-bin/mailman/listinfo/users</a>
</pre>
    </blockquote>
    <br>
  </div>

</blockquote></div><br></div>
</div></div></blockquote></div><br></div>