[OpenSIPS-Users] uac_registrant : Is there any way to de register particular registrant ?

Donat Zenichev donat.zenichev at gmail.com
Fri Dec 11 08:22:05 EST 2020


Good day Sagar,

Apparently I misread you wrote "registrant", and treated this as
"registrar". Sorry for the confusion.
Even though this doesn't devaluate what I said in regards to the process of
de-registration, as this remains true :)

Unfortunately, I don't have the first idea of how to send a de-registration
from behalf of OpenSIPS using uac_registrant.so
This has never happened to me before. Taking a brief look into exported
module functions / MI functions of uac_registrant, I don't see anything
that could help us reach this goal.
https://opensips.org/html/docs/modules/3.0.x/uac_registrant.html#exported_mi_functions
https://opensips.org/html/docs/modules/3.0.x/uac_registrant.html#exported_functions

I wonder if there is another way to fix that.
Of course, there is also a way to prepare a workaround, using some external
functionality (written in whatever language) that would send a
de-registration for OpenSIPS,
and would take care of in-dialog messages processing then, to finish the
de-registration process properly.

But this appears to be tricky, as the OpenSIPS (uac_registrant) would know
nothing about that.
So I would wait until someone else proposes a way out of this.
Have a nice day!





On Fri, Dec 11, 2020 at 9:31 AM sagar malam <sagarmalam at gmail.com> wrote:

> Hello Donat,
>
> Thanks for your reply. However my case is different from what you have
> mentioned. In my case OpenSIPS is acting as a UAC and not as Registrar. I
> am using the uac_registrant[1] module to make opensips register ( just like
> any SIP phone) with Remote SIP Server( Freeswitch).
>
> 1 : https://opensips.org/html/docs/modules/1.10.x/uac_registrant.html
>
> On Thu, Dec 10, 2020 at 7:27 PM Donat Zenichev <donat.zenichev at gmail.com>
> wrote:
>
>> Good day Sagar!
>> Following the RFC 3261 requirements, which is the mostly used version of
>> the RFC for the SIP protocol, we have the following ways to do that:
>> - send a registration from behalf of a currently registered subscriber,
>> with the "Expires:" header set to "0" value ;
>> - send a registration from behalf of a currently registered subscriber,
>> with the ";expires=" parameter of the "Contact:" header set to "0" value ;
>> - send a registration from behalf of a currently registered subscriber,
>> with the "Contact:" header set to "*" value ;
>>
>> I should mention that the last definition, with a "Contact:" header set
>> to "*" might be a non-working solution.
>> I haven't ever tested this with OpenSIPS. So better to stick to the first
>> two options.
>>
>> Other than that, I'm not sure if the location record can be deleted
>> manually without an impact on the subscriber's experience.
>> What I mean to say by that, is that even though you delete a location
>> record from mysql, the subscriber still expects that the location is modern
>> and inbound calls are available.
>> So this method looks a bit harsh.
>>
>> On the other hand, the way how the OpenSIPS treats your location records,
>> in terms of using the backend, depends on which "db_mode" you have picked
>> out for "usrloc.so":
>> https://opensips.org/html/docs/modules/3.0.x/usrloc.html#param_db_mode
>>
>> So in case, if you just want to strictly delete certain location record
>> of certain subscriber, and by doing that, you expect the user to drift away,
>> this will not work out if your "db_mode" of the "usrloc.so" is set to
>> "single-instance-sql-write-back". As the general source here would be the
>> cache and not sql backend.
>>
>> Still I might be mistaken at some point, and I would first of all advise
>> you to read this articles:
>> - Section "Registrations" in the RFC 3261 -
>> https://tools.ietf.org/html/rfc3261#section-10
>> - Documentation for the "usrloc.so" module of OpenSIPS -
>> https://opensips.org/html/docs/modules/3.0.x/usrloc.html
>> - Documentation for the "registrar.so" module of OpenSIPS -
>> https://opensips.org/docs/modules/3.0.x/registrar.html
>>
>> And also there might be a sense to read about MI functionality (as this
>> can have somehow help to achieve your goal):
>> https://www.opensips.org/Documentation/Interface-MI-3-0
>>
>> I hope my answer was useful for you.
>>
>> On Thu, Dec 10, 2020 at 2:56 PM sagar malam <sagarmalam at gmail.com> wrote:
>>
>>> Hello,
>>>
>>> I am using uac registrant module to register with Remote SIP server(RSS)
>>> . I would like to have a way to tell opensips to de
>>> register  particular registrant from RSS. Is there a way to do it ?
>>>
>>> I tried to remove the registrant entry  from the database and reload
>>> list via MI command but that does not work.
>>> --
>>> Thanks,
>>>
>>> Sagar
>>> _______________________________________________
>>> Users mailing list
>>> Users at lists.opensips.org
>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>>
>>
>>
>> --
>>
>> Best regards,
>> Donat Zenichev
>>
>> _______________________________________________
>> Users mailing list
>> Users at lists.opensips.org
>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>
>
>
> --
> Thanks,
>
> Sagar
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>


-- 

Best regards,
Donat Zenichev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20201211/2a7245ca/attachment-0001.html>


More information about the Users mailing list