Hello everyone,

I've been struggling for a few days with OpenSIPS and OpenXCAP and I've reached 
a certain point where I think I could really use some help on the matter. I've 
configured a dedicated OpenSIPS instance with pretty much the configuration 
mentioned in the openxcap website (http://www.openxcap.org/wiki/Installation) 
although I had to change it quite a bit for it to work with OpenSIPS 1.6.

I've also managed with quite a bit of tweaking to force openxcap and 
opensips-mi-proxy to work from non-standard directories. I've used the 
following versions:

python 2.6.4
python-application 1.2.3
python-gnutls 1.1.8-1
python-lxml 2.1.5-1
python-sqlobject 0.10.6
python-twisted-core 8.2.0-3
python-twisted-web 8.2.0-2
python-twisted-web2 8.1.0-2
python-zope.interface 3.5.2-1

On a ubuntu-server 9.10

I've also installed the python-xcaplib that came with OpenXCAP.

However when I run the test.py suite I get 6 failures which I don't know what 
to make of them:

test_pidf_manipulation (test_presrules.PresenceRulesTest) ... FAIL
Testing different ways of inserting an element as described in examples from 
Section 8.2.3 ... FAIL
Testing PUT requests of form '*...@att="some"]' which require looking into body 
of PUT ... FAIL
test_operations (test_resourcelists.DocumentTest) ... FAIL
test_operations (test_rlsservices.DocumentTest) ... FAIL
test_pidf_manipulation (test_pidf.PIDFTest) ... FAIL

OpenXCAP while in -no-fork shows lots of trace backs such as:

File "/opt/xcap/share/pyshared/xcap/appusage/__init__.py", line 91, in 
_check_schema_validation
            raise 
errors.SchemaValidationError(comment=self.xml_schema.error_log)
        xcap.errors.SchemaValidationError: <schema-validation-error><!--
        <string>:3:0:ERROR:SCHEMASV:SCHEMAV_CVC_COMPLEX_TYPE_3_2_2: Element 
'{urn:ietf:params:xml:ns:resource-lists}list', attribute 'some-attribute': The 
attribute 'some-attribute' is not allowed.
        --></schema-validation-error>

xcap.uri.NodeParsingError: Failed to parse node: 
'/resource-lists/li...@name="friends"]/external[]/@anchor'

File "/usr/lib/python2.6/dist-packages/twisted/internet/defer.py", line 328, in 
_runCallbacks
            self.result = callback(self.result, *args, **kw)
File "/opt/xcap/share/pyshared/xcap/appusage/__init__.py", line 247, in 
_cb_get_attribute
            raise errors.ResourceNotFound

File "/opt/xcap/share/pyshared/xcap/resource.py", line 23, in checkEtag
            http.checkPreconditions(request, etag=ETag(etag))
File "/usr/lib/python2.6/dist-packages/twisted/web2/http.py", line 256, in 
checkPreconditions
            raise HTTPError(StatusResponse(responsecode.PRECONDITION_FAILED, 
"Requested resource does not have a matching ETag."))
        twisted.web2.http.HTTPError:

File "/opt/xcap/share/pyshared/xcap/appusage/__init__.py", line 486, in 
get_document_local
            self._not_implemented('users')
File "/opt/xcap/share/pyshared/xcap/appusage/__init__.py", line 126, in 
_not_implemented
            raise errors.ResourceNotFound("Application %s does not implement %s 
context" % (self.id, context))
        xcap.errors.ResourceNotFound: Application xcap-caps does not implement 
users context

Could it be there is something wrong with my python-twisted version? Also 
please note that in order to make openxcap run in fork mode and log the errors 
I had to disable the Syslog error writing as mentioned also in the ticket 
http://openxcap.org/ticket/136 which I've opened.

Is maybe the test suite of openxcap obsolete?

As for the OpenSIPS,  I've modified my main OpenSIPS server to forward 
PUBLISH|SUBSCRIBE|NOTIFY requests to the Presence-OpenSIPS as follows:

if (has_totag()) {
if (loose_route()) {
                ...
} else {
if (is_method("SUBSCRIBE") && $rd == "VOIP_IP") {
                                                
rewritehostport("PRESENCE_SERVER:PRESENCE_PORT");
                                t_relay();
                                                exit;
}
...
}
}

...

if( is_method("PUBLISH|SUBSCRIBE|NOTIFY") ) {
                rewritehostport("PRESENCE_SERVER:PRESENCE_PORT");
                t_relay();
                exit;
}

Requests seem to be properly forwarded to the Presence-OpenSIPS however I could 
use some confirmation that what I am doing is correct. I see that adding on 
eyebeam a contact appears on the list, however it appears grayed-out, I cannot 
subscribe to presence information of it.

>From time to time I also see messages on OpenSIPS-Presence like:

Account <null>@<null> tried to publish presence event for 
sip:[email protected]:5060 resulting in a SIP/2.0 403 Publishing presence 
events for others is forbidden

If anyone could give out a hand, it would be greatly appreciated!

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

Reply via email to