Yes ,GRUU can solve this situation. So, is there any similar mechanism with presence info to only keep the latest presence status of the same register.
BR, Frank.zheng 2014-10-09 18:32 GMT+08:00 Bogdan-Andrei Iancu <[email protected]>: > Hi Jayesh, > > Maybe you should look into GRUU stuff ;). > > On the TCP error - even if you set the TCP persistence flag, the UAC may > close the TCP conn -> you end up in the same situation. What you can do is > to prevent OpenSIPS to open TCP conns when routing to end-users - the idea > is to have end-users connecting to OpenSIPS and not the other way around. > See "tcp_no_new_conn_bflag" : > http://www.opensips.org/Documentation/Script-CoreParameters-1-11#toc96 > > Regards, > > Bogdan-Andrei Iancu > OpenSIPS Founder and Developerhttp://www.opensips-solutions.com > > On 08.10.2014 17:31, Jayesh Nambiar wrote: > > Hi Bogdan, > 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. > 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: > ERROR:core:tcp_blocking_connect: timeout 10 s elapsed from 10 s > ERROR:core:tcpconn_connect: tcp_blocking_connect failed > ERROR:core:tcp_send: connect failed > ERROR:tm:msg_send: tcp_send failed > > Looks like opensips tries to do a TCP connect first with all registered > contacts before actually routing the call. > I do, > modparam("registrar", "tcp_persistent_flag", "TCP_PERSISTENT") > > if(is_method("REGISTER")) { > setflag(TCP_PERSISTENT); > setbflag(30); > if(!save("location", "fc1")) { > t_reply("500", "Error while saving AOR"); > } > } > > --- Jayesh > > > > > > > On Wed, Oct 8, 2014 at 3:10 PM, Bogdan-Andrei Iancu <[email protected]> > wrote: > >> Hi Jayesh, >> >> Basically you do not what to have more registrations from the same IP, >> right ? >> >> Exactly the opposit of the is_other_contact() function : >> >> http://www.opensips.org/html/docs/modules/1.11.x/registrar.html#id294660 >> >> Regards, >> >> Bogdan-Andrei Iancu >> OpenSIPS Founder and Developerhttp://www.opensips-solutions.com >> >> On 01.10.2014 18:15, Jayesh Nambiar wrote: >> >> Hi, >> 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. >> At times when the device loses network, proxy doesn'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 "fc1" flag while doing a save("location") but I need multiple >> registrations to be allowed from different devices !! >> So is there a way where while doing a save("location"), 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. >> Do let me know if I make sense here and there's a solution to this. >> Thanks for any suggestions and directions. >> >> Thanks, >> >> --- Jayesh >> >> >> _______________________________________________ >> Users mailing >> [email protected]http://lists.opensips.org/cgi-bin/mailman/listinfo/users >> >> >> > > > _______________________________________________ > Users mailing list > [email protected] > http://lists.opensips.org/cgi-bin/mailman/listinfo/users > >
_______________________________________________ Users mailing list [email protected] http://lists.opensips.org/cgi-bin/mailman/listinfo/users
