Hi Bogdan,
I guess your right. In my test-case i actually did only insert new contacts, i did not update any existing contacts; and that is why it worked as i thought it should. I will set both parameters in my config, then everything should be happy. Tomorrow i will look into the usrloc-source, to see if i can create a patch to move the functionality completely into the usrloc-module.
Thanks in advance, Carsten
Bogdan-Andrei Iancu schrieb:
Hi Carsten,
well...things are not quite so simple.
the "desc_time_order" in usrloc controls how the contacts are ordered at insert time - when a new contact is received, it maybe inserted in the contacts list (for the AOR record) based on q or time criteria.
the "desc_time_order" in register controls the update process - when a contact is updated, it will be moved first if the option is enabled. Initial insert is not affected at all.
So, it looks like these parameters (from different modules) controls different things: usrloc - insert order registrar - update order
which IMHO doesn't look so consistent....What people what to achieve is to have the contacts ordered either by q, either by modification time (insert or update)...which means you have to set the param in both modules....
I think will make sense to remove the param from registrar module, but to move it's functionality in usrloc module.
regards, bogdan
Carsten Bock wrote:
Hi,
I've made a patch for the registrar module (and it's documentation) in order to remove this parameter (attached). I suggest we should remove this parameter in the next version...
Carsten
Carsten Bock schrieb:
Hi,
After testing this, it works if you set the desc_time_order Parameter in the usrloc module instead of in the registrar module. Now it even works properly after restarting the proxy. I think, the desc_time_order Parameter should be removed from the registrar module, since it does not work as described in the manual.
Carsten
Carsten Bock schrieb:
Hi,
Actually i thought, this might be a good solution, but unfortunately it did not work out properly. What i found out was, that:
a) The Contacts however are not sorted at startup => Upon reload not the newest one is used but the first one loaded. b) The desc_time_order seems only to work with maximum two contacts per user (if the third contact gets updated, it seems like it is only pushed to the second entry and not to the first)
Am i correct, that really the registrar module was meant? The usrloc module also has a parameter (desc_time_order, http://openser.org/docs/modules/1.1.x/usrloc.html#AEN219) and from my point of view it make more sense to have this functionality in usrloc more than in the registrar. I'll test this.
Carsten
Bogdan-Andrei Iancu schrieb:
of course there is contact timeout as each contact is registered for a limited time period.
a more elegant solution is to use the "desc_time_order" and "append_branches" module parameter in order to retrieve from usrloc only the latest contact. See: http://openser.org/docs/modules/1.1.x/registrar.html
regards, bogdan