[SR-Users] Is there any way to remove stale registrations before expires time from usrloc ?

sagar malam sagarmalam at gmail.com
Mon Sep 14 09:27:20 CEST 2020

Hello ,

On Mon, Sep 14, 2020 at 4:16 AM Alex Balashov <abalashov at evaristesys.com>

> Hi,
> On 2020-09-11 08:19, sagar malam wrote:
> > Hello ,
> > I am using the usrloc module to store registrations. I could not find
> > any way to remove stale registrations before expires time. Most of the
> > registrations are mobile app so they wont run in background to save
> > battery of phone hence we end up having lots of registrations in
> > usrloc which were not removed because app was killed in background by OS
> > without letting it send unregister request.
> Are you sure that removing such registrations is the best thing to do?
> You don't know what the user is going to do; maybe they will be using it
> continuously, or maybe it'll be backgrounded. It's impossible to
> determine, so you can't assume any given registration is stale, and it
> is reasonable to attempt to contact the registrant for any given inbound
> call, even if the attempt is futile because it has gone unreachable.
I am using the Keepalive to identify if any registration is stale. If KA
OPTION does not get a reply then that registration is considered as stale.
There is no point of keeping unreachable registration in usrloc
irrespective of whether the app is in background or foreground because it
will only add overhead to generate an invite which will ultimately timeout
without any response.

> Meanwhile, the moment the endpoint is "woken up"[1] via a push
> notification, it will re-register and overwrite the stale contact
> binding instead of adding an additional one, provided that the match
> mode[2] is set correctly.
This is true for hard phones or any endpoint which has a stable internet.
Here I am dealing with cellular networks so we cannot be sure if the app
will be provided the same public IP and port(IP is same most of the time
but not port) each time  it will register with the server. So the same APP
can register with the same call ID but different contact address which will
create duplicate registration entries for the same APP.

> -- Alex
> [1]
> https://www.kamailio.org/events/2015-KamailioWorld/Day2/20-Federico.Cabiddu-Kamailio-In-A-Mobile-World.pdf
> [2]
> https://kamailio.org/docs/modules/5.4.x/modules/usrloc.html#usrloc.o.contact-matching-algs
> --
> Alex Balashov | Principal | Evariste Systems LLC
> Tel: +1-706-510-6800 / +1-800-250-5920 (toll-free)
> Web: http://www.evaristesys.com/, http://www.csrpswitch.com/
> _______________________________________________
> Kamailio (SER) - Users Mailing List
> sr-users at lists.kamailio.org
> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20200914/fad6eb64/attachment.htm>

More information about the sr-users mailing list