[OpenSIPS-Users] Re : [RLS] Cannot found service uri in rls-services

Adrian Georgescu ag at ag-projects.com
Thu Dec 18 17:45:37 CET 2008


Do you know by any chance what the value '<id>' is support to point to?

pres-list=<id>

Adrian


On Dec 16, 2008, at 10:01 AM, Eric PTAK wrote:

> Hi Adrian,
>
> I'm thinking about OMA-WP-PRS_1_1_Implementation_Guidelines-20080627- 
> C, Implementation Guidelines for OMA Presence SIMPLE v1.1 :
> 5.5.1 Service-URI-Template for Presence Lists
>
> As described in [PRS_RLS_XDM] "
>
> Validation Constraints", the Service URI for Presence Lists (i.e.  
> the value of the "uri"
> attribute of a <service> element in a Presence List document)  
> proposed by an XDMC when creating a Presence List in the
>
> RLS XDMS must conform to the syntax of the Service-URI-Template  
> parameter described in [PRS_AC] and [PRS_MO].
>
> It is RECOMMENDED that:
>
> ·
>
> the Service-URI-Template for Presence Lists have the following  
> structure:
> <xui>;pres-list=<id>
>
> where the <xui> and <id> substitution tags are described in  
> [XDM_Core] "
>
> Provisioned XDMC Parameters".
> The reasons for the recommendation include:
>
> ·
>
> effective use of resources (e.g. access network bandwidth), since  
> the recommended Service-URI-Template makes it
> easier for the XDMC to generate a globally unique Service URI that  
> is accepted by the RLS XDMS; and
>
> ·
>
> simplification for the SIP/IP Core network to recognize the Service  
> URI as a Presence List (e.g. to optimize routing
> of Presence List subscriptions).
>
> An example of a Service URI conforming to the recommended Service- 
> URI-Template is as follows:
>
> sip:joe at example.com;pres-list=list-a
>
> where the XUI used to generate the Service URI is a SIP URI, as  
> required by [PRS_RLS_XDM] "
>
> Validation constraints".
>
>
> Regards,
> Eric.
>
> 2008/12/15 Adrian Georgescu <ag at ag-projects.com>
>
> On Dec 15, 2008, at 9:59 PM, Eric PTAK wrote:
>
>> Well well, thanks for that great wiki page I didn't see.
>> What do you think to keep in integrated but use the xcap root module
>> parameter or other dedicated one to define allowed roots in the
>> resource-list node ?
>>
>> Another thing, what about compliance with OMA specifications ?
>>
>
> Which ones more precisely?
>
>
>> Eric
>>
>> 2008/12/15, Adrian Georgescu <ag at ag-projects.com>:
>>> I would discourage you do both, but this is my opinion. For some  
>>> good
>>> practices on using XCAP see this page:
>>>
>>> http://openxcap.org/wiki/Running
>>>
>>> Adrian
>>>
>>> On Dec 15, 2008, at 6:02 PM, Eric PTAK wrote:
>>>
>>>> And what about if we ensure that the RL is on the same host than  
>>>> the
>>>> rls-services, for example an RLS which is configured like this :
>>>>
>>>> integrated_xcap_server = 0
>>>> xcap_root = http://10.26.52.122/xcap-root:8080
>>>>
>>>> In that circumstance, RLS may handle resource-list tag, check if  
>>>> the
>>>> host is equal to xcap_root, and then download the RL.
>>>> Do you agree ?
>>>>
>>>> Regards,
>>>> Eric.
>>>>
>>>> 2008/12/15 Adrian Georgescu <ag at ag-projects.com>
>>>>
>>>>>  <service uri="sip:alice at domain;pres-list=Default">
>>>>
>>>> The above should read sip:alice at domain.com
>>>>
>>>>>
>>>>> <resource-list>http://10.26.52.122:8080/xcap-root/resource-lists/users/sip%3aalice%40domain/index/
>>>>>
>>>>> ~~/resource-lists/list%5b at name=%22Default%22%5d</resource-list>
>>>>
>>>> I will not allow this document to be stored in the server as this
>>>> would open Pandera's box of foreign URLs that can be injected in  
>>>> the
>>>> system. The fact that RFC mentioned that is possible does not mean
>>>> is sane to do it as  Presence server operator.
>>>>
>>>> Only <one> entries containing individual and valid SIP URIs will be
>>>> allowed in rls-services document.
>>>>
>>>> Adrian
>>>>
>>>>
>>>> On Dec 15, 2008, at 4:53 PM, Eric PTAK wrote:
>>>>
>>>>> Thanks you Anca and Adrian for your answer.
>>>>> Regading the issue with the parameter in the R-URI, I was asking  
>>>>> if
>>>>> the PS shouldn't use the To header, but I don't find references on
>>>>> that any more...
>>>>>
>>>>> I'll feed back to Mercuro developers in order to remove parameters
>>>>> from services URI.
>>>>>
>>>>> Adrian, when you're talking about external XCAP documents, do you
>>>>> mean the use of resource-list tag in rls-services document ?
>>>>>
>>>>> Eric.
>>>>>
>>>>>
>>>>>
>>>>> 2008/12/15 Adrian Georgescu <ag at ag-projects.com>
>>>>> Hello Eric,
>>>>>
>>>>> To avoid backdoors and possibility of exploiting the Presence
>>>>> server code by end-user provisioning we will actually add checks  
>>>>> in
>>>>> OpenXCAP server for the actual content of RLS services document so
>>>>> that it contins only routable sip uris, without any parameters.
>>>>> Also pointers to external XCAP documents even if they are  
>>>>> mentioned
>>>>> in the RFC will no be allowed in our server as it could generate
>>>>> endless loops.
>>>>>
>>>>> So I encourage you not to use any SIP Uris different than
>>>>> user at domain as you will not be able to manipulate them in the next
>>>>> version.
>>>>>
>>>>> Regards,
>>>>> Adrian
>>>>>
>>>>> On Dec 12, 2008, at 6:13 PM, Eric PTAK wrote:
>>>>>
>>>>>> Hi all,
>>>>>>
>>>>>> I'm currently integrating OpenSIPS with OpenXCAP.
>>>>>> After a lot a problem with ubuntu libraries in order to setup
>>>>>> openxcap, I'm now facing to another issue with RLS module.
>>>>>> I'm using Mercuro and it subsribes to sip:alice at domain;pres-list=Default
>>>>>>
>>>>>> , but the RLS looks for a service at sip:alice at domain so it
>>>>>> response by a 404 Not Found error.
>>>>>>
>>>>>> This is the xml files from xcap :
>>>>>>
>>>>>> eptak at rd-srv-devlnx2:~$ xcapclient --app rls-services get
>>>>>> get
>>>>>> http://10.26.52.122:8080/xcap-root/rls-services/users/sip:alice@domain/index
>>>>>> etag: "d113935c4c7324c99077a925492251b2"
>>>>>> content-type: application/rls-services+xml
>>>>>> content-length: 467
>>>>>> <?xml version="1.0" encoding="utf-8"?>
>>>>>> <rls-services xmlns:rl="urn:ietf:params:xml:ns:resource-lists"
>>>>>> xmlns="urn:ietf:params:xml:ns:rls-services">
>>>>>>  <service uri="sip:alice at domain;pres-list=Default">
>>>>>>
>>>>>> <resource-list>http://10.26.52.122:8080/xcap-root/resource-lists/users/sip%3aalice%40domain/index/
>>>>>>
>>>>>> ~~/resource-lists/list%5b at name=%22Default%22%5d</resource-list>
>>>>>>    <packages>
>>>>>>      <package>presence</package>
>>>>>>    </packages>
>>>>>>  </service>
>>>>>> </rls-services>
>>>>>>
>>>>>> eptak at rd-srv-devlnx2:~$ xcapclient --app resource-lists get
>>>>>> get
>>>>>> http://10.26.52.122:8080/xcap-root/resource-lists/users/sip:alice@domain/index
>>>>>> etag: "e153e7e4688122a04434b77cd1ecb5e1"
>>>>>> content-type: application/resource-lists+xml
>>>>>> content-length: 324
>>>>>> <?xml version="1.0" encoding="utf-8"?>
>>>>>> <resource-lists xmlns="urn:ietf:params:xml:ns:resource-lists">
>>>>>>  <list name="Default">
>>>>>>    <display-name>All Contacts</display-name>
>>>>>>  <entry uri="sip:bob at domain"
>>>>>> xmlns="urn:ietf:params:xml:ns:resource-lists
>>>>>> ">
>>>>>>  <display-name>bob</display-name>
>>>>>> </entry></list>
>>>>>> </resource-lists>
>>>>>> and this is the stack trace :
>>>>>>
>>>>>> Dec 12 15:17:15 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:
>>>>>> SUBSCRIBE presence from sip:alice at domain to
>>>>>> sip:alice at domain;pres-list=Default
>>>>>> (Mercuro IMS Client Beta (4.0.1011.0))
>>>>>> Dec 12 15:17:15 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:
>>>>>> DBG:core:parse_headers: flags=ffffffffffffffff
>>>>>> Dec 12 15:17:15 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:
>>>>>> DBG:core:parse_headers: flags=ffffffffffffffff
>>>>>> Dec 12 15:17:15 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:
>>>>>> DBG:presence:search_event: start event= [presence]
>>>>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:
>>>>>> DBG:rls:rls_handle_subscribe: 'To' header ALREADY PARSED:
>>>>>> <sip:alice at domain;pres-list=Default
>>>>>>>
>>>>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:
>>>>>> DBG:rls:get_resource_list: Searched RL document for user
>>>>>> sip:alice at domain
>>>>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:
>>>>>> DBG:core:db_new_result: allocate 28 bytes for result set at
>>>>>> 0x81b52b0
>>>>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:
>>>>>> DBG:db_mysql:db_mysql_get_columns: 2 columns returned from the  
>>>>>> query
>>>>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:
>>>>>> DBG:core:db_allocate_columns: allocate 8 bytes for result names  
>>>>>> at
>>>>>> 0x81b5af8
>>>>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:
>>>>>> DBG:core:db_allocate_columns: allocate 8 bytes for result types  
>>>>>> at
>>>>>> 0x81b5360
>>>>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:
>>>>>> DBG:db_mysql:db_mysql_get_columns: allocate 8 bytes for
>>>>>> RES_NAMES[0] at 0x81b5820
>>>>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:
>>>>>> DBG:db_mysql:db_mysql_get_columns: RES_NAMES(0x81b5820)[0]=[doc]
>>>>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:
>>>>>> DBG:db_mysql:db_mysql_get_columns: use DB_BLOB result type
>>>>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:
>>>>>> DBG:db_mysql:db_mysql_get_columns: allocate 8 bytes for
>>>>>> RES_NAMES[1] at 0x81b5838
>>>>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:
>>>>>> DBG:db_mysql:db_mysql_get_columns: RES_NAMES(0x81b5838)[1]=[etag]
>>>>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:
>>>>>> DBG:db_mysql:db_mysql_get_columns: use DB_STRING result type
>>>>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:
>>>>>> DBG:db_mysql:db_mysql_convert_rows: allocate 8 bytes for rows at
>>>>>> 0x81b5948
>>>>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:
>>>>>> DBG:db_mysql:db_mysql_convert_row: allocate 40 bytes for row
>>>>>> values at 0x81b5860
>>>>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:
>>>>>> DBG:db_mysql:db_mysql_str2val: converting BLOB [<?xml
>>>>>> version="1.0" encoding="utf-8"?>^M <rls-services
>>>>>> xmlns:rl="urn:ietf:params:xml:ns:resource-lists
>>>>>> " xmlns="urn:ietf:params:xml:ns:rls-services">^M   <service
>>>>>> uri="sip:alice at domain;pres-list=Default
>>>>>> ">^M
>>>>>> <resource-list>http://10.26.52.122:8080/xcap-root/resource-lists/users/sip%3aalice%40domain/index/
>>>>>>
>>>>>> ~~/resource-lists/list%5b at name=%22Default%22%5d</resource-
>>>>>> list>^M     <packages>^M       <package>presence</ 
>>>>>> package>^M     </
>>>>>> packages>^M   </service>^M </rls-services>]
>>>>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:
>>>>>> DBG:db_mysql:db_mysql_str2val: converting STRING
>>>>>> [d113935c4c7324c99077a925492251b2]
>>>>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:
>>>>>> DBG:rls:get_resource_list: rls_services document: <?xml
>>>>>> version="1.0" encoding="utf-8"?>^M <rls-services
>>>>>> xmlns:rl="urn:ietf:params:xml:ns:resource-lists
>>>>>> " xmlns="urn:ietf:params:xml:ns:rls-services">^M   <service
>>>>>> uri="sip:alice at domain;pres-list=Default
>>>>>> ">^M
>>>>>> <resource-list>http://10.26.52.122:8080/xcap-root/resource-lists/users/sip%3aalice%40domain/index/
>>>>>>
>>>>>> ~~/resource-lists/list%5b at name=%22Default%22%5d</resource-
>>>>>> list>^M     <packages>^M       <package>presence</ 
>>>>>> package>^M     </
>>>>>> packages>^M   </service>^M </rls-services>
>>>>>> Dec 12 15:17:16 rd-srv-devlnx2 /usr/local/sbin/opensips[25465]:
>>>>>> DBG:rls:get_resource_list: service uri sip:alice at domain not found
>>>>>> in rl document for user sip:alice at domain
>>>>>> _______________________________________________
>>>>>> Users mailing list
>>>>>> Users at lists.opensips.org
>>>>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>
>




More information about the Users mailing list