Hi all,

I've been working for quite a while now in adding external references to RLS 
and pres-rules documents following IETF and OMA specifications respectively. 
And it works! \o/ In the process I noticed there is common behavior that can be 
factored out of rls and presence_xml modules. So, my plan is to create a new 
module called "xcap" (surprise surprise!) which encapsulates XCAP related stuff 
and then both rls and presence_xml would use it in conjunction with xcap_client.

These are the main things that would go into the new xcap module:

        - xcap_table: table where documents are stored
        - integrated_xcap_server: boolean flag indicating if a integrated 
server (as OpenXCAP) is in use or xcap_client should be used instead
        - xcap_server: list of local XCAP servers
        - functions to load arbitrary XCAP documents from DB
        - functions to load an arbitrary node from a document using XPath
        - XCAP URI parsing

Note that this change implies that the same table is used for XCAP documents 
for both Presence and RLS. I see no reason to keep separated parameters in RLS 
and Presence modules, so if anyone has a good reason for it, please speak up so 
I can convince you otherwise :-)


OMA pres-rules related changes:

Currently the pres_rules_auid and pres_rules_filename options are only used in 
non-integrated XCAP mode, and pres_rules_auid may take any value. The value for 
pres_rules_auid will be constrained to "pres-rules" or 
"org.openmobilealliance.pres-rules" and will also be used in integrated mode. 
The chosen AUID defines how the policy is applied, either following IETF rules 
or OMA rules. After this implementation is complete, a way for choosing the 
policy type per subscriber will be researched.

Right now both IETF and OMA pres-rules documents are stored with the same 
"doc_type" thus overriding each other. This will no longer be the case. Users 
will be able to store both types of documents and the proxy will apply the 
rules according to the configured AUID. OpenXCAP will also be modified 
accordingly.


About xcap_server configuration option:

Currently it's only used in non-integrated mode, but it's also needed in 
integrated mode on order to know if a reference is local or not and thus if it 
should be followed or not.


You made it this far! Great, what is your take on this?

Regards,

--
Saúl Ibarra Corretgé
AG Projects




_______________________________________________
Users mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users

Reply via email to