[SR-Users] Deleting extra location attribute(location_attrs table) when contact is expired

Pintu Lohar pintulohargcetts at gmail.com
Wed Jul 31 05:34:30 CEST 2019


I tested it works well.
Thanks Daniel .

Regards
Pintu..

On Wed, Jul 31, 2019, 12:09 AM Daniel-Constantin Mierla <miconda at gmail.com>
wrote:

> Just in case you pulled git master branch before this message, do it
> again, because the push of the commit to github failed before and I noticed
> a bit later than sending the previous email.
>
> Cheers,
> Daniel
> On 30.07.19 17:00, Daniel-Constantin Mierla wrote:
>
> Can you give another try with latest master? I pushed a patch to use a
> static record, getting the one for all contacts in db seemed redundant
> there.
>
> Cheers,
> Daniel
> On 30.07.19 04:54, Pintu Lohar wrote:
>
>
> On Mon, Jul 29, 2019 at 7:16 PM Pintu Lohar <pintulohargcetts at gmail.com>
> wrote:
> [Removed Attachment here due to size limit and resent]
>
> Took the master branch , Have noticed same problem , but noticed "failed
>> to get a record" and
>> not executing uldb_delete_attrs_ruid() , however location recored is
>> removed not the location_attr record.
>>
>> Tried to check the log:
>>
>> 5(54869) INFO: usrloc [udomain.c:996]: udomain_contact_expired_cb():
>> calling contact expired records - cycle [1]
>>
>> 5(54869) ERROR: usrloc [udomain.c:1017]: udomain_contact_expired_cb():
>> failed to get a record
>>
>> 5(54869) INFO: usrloc [udomain.c:989]: udomain_contact_expired_cb(): no
>> rows to be contact expired
>>
>> 5(54869) INFO: usrloc [udomain.c:989]: udomain_contact_expired_cb(): no
>> rows to be contact expired
>>
>> 5(54869) INFO: usrloc [udomain.c:989]: udomain_contact_expired_cb(): no
>> rows to be contact expired
>>
>> 5(54869) INFO: usrloc [udomain.c:989]: udomain_contact_expired_cb(): no
>> rows to be contact expired
>>
>> 5(54869) INFO: usrloc [udomain.c:989]: udomain_contact_expired_cb(): no
>> rows to be contact expired
>>
>> 5(54869) INFO: usrloc [udomain.c:989]: udomain_contact_expired_cb(): no
>> rows to be contact expired
>>
>> 5(54869) INFO: usrloc [udomain.c:989]: udomain_contact_expired_cb(): no
>> rows to be contact expired
>>
>> 5(54869) INFO: usrloc [udomain.c:996]: udomain_contact_expired_cb():
>> calling contact expired records - cycle [1] .
>>
>> 5(54869) ERROR: usrloc [udomain.c:1017]: udomain_contact_expired_cb():
>> failed to get a record
>>
>>
>>
>> Am I missing something?
>>
>
>
>> Thanks.
>> Pintu
>>
>> On Mon, Jul 29, 2019 at 6:08 PM Pintu Lohar <pintulohargcetts at gmail.com>
>> wrote:
>>
>>> Wow so fast. I will try the master branch and share it with you the
>>> result soon.
>>>
>>> Thanks indeed.
>>>
>>> Thanks & Regards
>>> Pintu
>>>
>>> On Mon, Jul 29, 2019, 5:59 PM Daniel-Constantin Mierla <
>>> miconda at gmail.com> wrote:
>>>
>>>> Hello,
>>>>
>>>> I pushed some changes to the master branch trying to get to a solution
>>>> without introducing a new column to store expires value for attrs records,
>>>> but for the next version might be better to just add that column and delete
>>>> using it.
>>>>
>>>> Try the master branch and see if it works.
>>>>
>>>> You can also run a rtimer with a delete on condition for last modified
>>>> value, as you already said previously.
>>>>
>>>> Cheers,
>>>> Daniel
>>>> On 29.07.19 10:16, Pintu Lohar wrote:
>>>>
>>>> Hi Daniel,
>>>>
>>>> It's about the contract expired and deleted from "location" but not
>>>> deleted from location_attr table when expired contact is found. My settings
>>>> are below
>>>>
>>>> 1. modparam("usrloc", "timer_interval", 120)
>>>> 2. modparam("tm|usrloc", "xavp_contact", "ulattrs")
>>>> 3. Usrloc is set to DB_ONLY Mode.
>>>> 4. //// route block when the extra location attr before saving .
>>>> # Handle SIP registrations
>>>> route[REGISTRAR] {
>>>> if (!is_method("REGISTER")) return;
>>>>
>>>> if(isflagset(FLT_NATS)) {
>>>> setbflag(FLB_NATB);
>>>> #!ifdef WITH_NATSIPPING
>>>> # do SIP NAT pinging
>>>> setbflag(FLB_NATSIPPING);
>>>> #!endif
>>>> }
>>>> *$xavp(ulattrs=>did)=$hdr(P-Asserted-Identity); # this adds to
>>>> location_attr table.. *
>>>> if (!save("location")) {
>>>> sl_reply_error();
>>>> }
>>>>
>>>>
>>>>
>>>> Like if Client Registered , and went offline/crashed,(expiry i.e 3600,
>>>> proto=TLS) then contact is expired after 1 hour then it's removed from
>>>> location table but the attribute set which is added for location_attr(for
>>>> same ruid) is not deleted from db.
>>>> Thanks & Regards
>>>> Pintu
>>>>
>>>>
>>>> -----------
>>>>
>>>> On Mon, Jul 29, 2019 at 4:32 PM Daniel-Constantin Mierla <
>>>> miconda at gmail.com> wrote:
>>>>
>>>>> Hello,
>>>>>
>>>>> is the contact expired and not updated, or is about attributes set for
>>>>> a REGISTER request that should be deleted with the next REGISTER updating
>>>>> the expires for same contact?
>>>>>
>>>>> Cheers,
>>>>> Daniel
>>>>> On 29.07.19 08:44, Pintu Lohar wrote:
>>>>>
>>>>> Hi All,
>>>>>
>>>>>
>>>>> Regarding modparam("tm|usrloc", "xavp_contact", "ulattrs")
>>>>>
>>>>>
>>>>> #ref :
>>>>> https://www.kamailio.org/docs/modules/devel/modules/usrloc.html#usrloc.p.xavp_contact
>>>>> .
>>>>>
>>>>> There is some requirement where we need to save some extra location
>>>>> attributes to location_attrs
>>>>> <https://kamailio.org/docs/db-tables/kamailio-db-4.3.x.html#gen-db-location-attrs>
>>>>>  tables
>>>>> $xavp(ulattrs=>deviceIdentify)= "Some str values"  and calling
>>>>> save(“location”) , It works well and saved  location attribute table
>>>>> but  But when contact expired callback is received,
>>>>> udomain_contact_expired_db() does not it delete the extra location
>>>>> attribute from database but deleting the record from location table only ?
>>>>>
>>>>>
>>>>> If not, is there any recommended approach to delete the extra location
>>>>> attributes from the database? or am I missing something to set?
>>>>>
>>>>>
>>>>> Alternate I was thinking could be running timer from Kamailio config
>>>>> and check last_modified time and delete those(based on our UAC expiry
>>>>> setting), is it the right approach.
>>>>>
>>>>> Kamailio Version: 5.2.0.
>>>>>
>>>>> Thanks for your valuable suggestion in advance.
>>>>>
>>>>> Regards
>>>>>
>>>>> Pintu Lohar
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Kamailio (SER) - Users Mailing Listsr-users at lists.kamailio.orghttps://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>>
>>>>> --
>>>>> Daniel-Constantin Mierla -- www.asipto.comwww.twitter.com/miconda -- www.linkedin.com/in/miconda
>>>>>
>>>>> --
>>>> Daniel-Constantin Mierla -- www.asipto.comwww.twitter.com/miconda -- www.linkedin.com/in/miconda
>>>>
>>>> --
> Daniel-Constantin Mierla -- www.asipto.comwww.twitter.com/miconda -- www.linkedin.com/in/miconda
>
> --
> Daniel-Constantin Mierla -- www.asipto.comwww.twitter.com/miconda -- www.linkedin.com/in/miconda
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20190731/2a7360da/attachment.html>


More information about the sr-users mailing list