[OpenSIPS-Users] mid_register and its possible bad actions with De-REGISTER
Dmitry Ponomaryov
iamhalje at gmail.com
Wed Dec 27 09:38:42 UTC 2023
Hello, opensips community, let's imagine default situations where we
have dynamic users who can move and change FREQUENTLY! ip-address on
phone, and re-send the registration, and at the same time we have in the
configs:
mid_registrar_save("location","c1f");
in this case, we receive with any new registration from the user, the
old registration will be deleted:
PQsendQuery(delete from location where contact_id=...)
mid_registrar:reg_tm_cback: >> [REPLY] UNREGISTER !
this is in Contact throttling, reflected by contact_id.
and each deletion of a contact from the location table leads to a
De-REGISTER, and a new register, is such a De-REGISTER needed?? which if
this all happens in throttling mode, and OpenSIPS knows about all
contacts, and let the final server be Asterisk , the main thing is to
send INVITE to OpenSIPS for further work.
All this to say, it might make sense to add the ability to disable this
De-REGISTER, because with a new registration, we will still send it a
registration with an updated contact before the main registrar times
out, and there will be no problems, that is, for example, the following
settings:
modparam("mid_registrar", "outgoing_expires", 600)
modparam("mid_registrar", "default_expires", 300)
From doc mid_registrar:
A common occurrence is for some SIP User Agents to lose their network
connection (especially when dealing with mobile devices), hence they do
not properly de-register from the mid-registrar. In this case, in order
to avoid stale registrations on the main registrar (which contains SIP
contacts with greatly extended lifetimes!), the mid-registrar will
appropriately generate De-REGISTER requests and remove these contacts
from the main registrar's location service as soon as it considers them
to have expired.
Thank you in advance!
More information about the Users
mailing list