On Tue, Nov 20, 2012 at 4:22 PM, Andrew Mortensen
<admor...@isc.upenn.edu> wrote:
>
> On Nov 20, 2012, at 3:16 PM, Daniel-Constantin Mierla <mico...@gmail.com> 
> wrote:
>
>>
>> On 11/20/12 8:43 PM, Andrew Mortensen wrote:
>>> On Nov 20, 2012, at 4:08 AM, Daniel-Constantin Mierla <mico...@gmail.com> 
>>> wrote:
>>>
>>>> Hello,
>>>>
>>>> thank for contribution!
>>>>
>>>> On 11/20/12 12:16 AM, Andrew Mortensen wrote:
>>>>> On Nov 19, 2012, at 5:53 PM, David | StyleFlare <da...@styleflare.com> 
>>>>> wrote:
>>>>>
>>>>>> Also quick read at the readme, it looks like it does not support 
>>>>>> multi-domain setups?
>>>>> Not yet, no. I don't think it would take much work, though.
>>>> I see it binds to usrloc, what information needs from there? We have two 
>>>> such modules right now, it would be good to make it work with both, 
>>>> kamailio's one has more features in regard to GRUU and partial outbound 
>>>> extensions.
>>> It's registering for contact expiration and deletion events. The callback 
>>> terminates subscriptions for the expired/deleted contact. This should 
>>> probably be configurable.
>>
>> Ok, so it is about when a contact record in removed from location.
>>
>> Just to avoid misunderstandings, do you consider to make configurable this 
>> termination of subscriptions based on location?
>
> Yes. I can imagine a setup where the location data wouldn't be saved on the 
> host handling SCA.
>
>> Also, you need only the AoR and contact address in a callback for location 
>> record removal event (un-registration or registration expiration), right?
>
> Correct, although Ovidiu makes a good point about (well-behaved) clients 
> unsubscribing at the time of unregistration. In registering for usrloc 
> callbacks, I'm trying to handle a couple problems. First, I'd like to avoid 
> unnecessarily sending and retransmitting NOTIFYs to offline clients. More 
> importantly, I want to be able to hear about expired registrations so I can 
> clear appearance state on the rest of the subscribers.

For clearing appearance state, you should rely on the dialog module
and register a callback on the dialog module. When a dialog expires,
you can clear up the stale appearances.
Also, by enabling the sst module, you can have a tight control over
the duration of the dialog.
This will make the implementation cleaner and more robust.


>>>> Would you consider adding it to main git repository and maintaining it 
>>>> there?
>>> Yes, that would be great.
>>
>> We will prepare write access for you.
>
> Thanks!
>
>>>  Would you prefer to have it in modules? I started work on it in modules_s, 
>>> but there's no particular reason it has to stay there.
>> To make it work with both variants of usrloc modules, I think it requires 
>> some split of the code. IIRC, both modules still use same names for 
>> structures, so including files from both of them will fail.
>>
>> One solutions I am thinking of is to add two small modules, one that binds 
>> to usloc(k) and the other to usrloc(s). Each of these two modules will 
>> export a function that allow registering callbacks for execution when a 
>> location record expires, giving the aor, contact and event type. The 
>> existing module will use the intermediate module instead of directly binding 
>> to usrloc structures.
>>
>> Usrloc module from kamailio has more enhancements in regards to standard 
>> extensions for location services, still it lacks the feature of being able 
>> to store variables per contact record. It is the reason that kept back the 
>> removal (upon merging) of usrloc module from ser. The solution with 
>> intermediary modules should work until we have a merged usrloc module.
>>
>> What do you think about this proposal?
>
> I think that would work, especially if it helps bring us closer to a merged 
> usrloc module. I'm not sure it's necessary purely for the sake of the sca 
> module.
>
> Best,
> andrew

_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users@lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users

Reply via email to