« Previous - Version 175/264 (diff) - Next » - Current version
Redmine Admin, 10/27/2008 11:36 pm


Description

OpenXCAP is an open source, easy extensible, fully featured XCAP server with TLS security and support for multiple realms. XCAP server is used by SIP SIMPLE clients and servers to access buddy lists and policy for subscriptions to presence information. OpenXCAP server works out of the box with [http://opensips.org OpenSIPS Presence Agent].

[[Image(htdocs:SIMPLE-Server.png, align=right, nolink)]]
The server is written in the Python programming language and is based on the following RFCs:

The software is provided under the [source:LICENSE GPL LICENSE]

Background

XCAP protocol allows a client to read, write, and modify application configuration data stored in XML format on a server. XCAP maps XML document sub-trees and element attributes to HTTP URIs, so that these components can be directly accessed by HTTP. An XCAP server is used by the XCAP clients to store data like Presence policy in combination with a SIP server that supports PUBLISH/SUBSCRIBE/NOTIFY methods to provide a complete [http://www.tech-invite.com/Ti-sip-WGs.html#wg-simple SIP SIMPLE] server solution.

An XCAP server allows end-users to synchronize presence configuration data like buddy lists and access lists between multiple devices. The XCAP server can also be used to publish to SIP devices information retrieved from external sources and using different APIs acting like a bridge between real-time communications based on SIP protocol and other web technologies like SOAP/XML.

Download

The software can be downloaded from:

[http://download.ag-projects.com/OpenXCAP http://download.ag-projects.com/OpenXCAP]

For people running Debian testing or unstable on an i386 architecture there is an official public repository provided by AG Projects. Install the AG Projects debian software signing key:

{{{
wget http://download.ag-projects.com/agp-debian-gpg.key
apt-key add agp-debian-gpg.key
}}}

Add the following lines to /etc/apt/sources.list

{{{
  1. AG Projects software
    deb http://ag-projects.com/debian unstable main
    deb-src http://ag-projects.com/debian unstable main
    }}}

Update the list of available software:

{{{
apt-get update
}}}

After that, run on the XCAP server machine:

{{{
apt-get install openxcap soap-simple-proxy python-xcaplib
}}}

And on the SIP Proxy machine:

{{{
apt-get install openser-mi-proxy
}}}

Running the server

[wiki:Running Running the server page]

Features

The server implements full and partial XML document manipulation with XML schema validation.

=== XCAP applications ===

  • XCAP capabilities (auid = xcap-caps). Lists the capabilities of the OpenXCAP server.
  • Resource lists (auid = resource-lists). A resource lists application is any application that needs access to a list of resources, identified by a URI, to which operations, such as subscriptions, can be applied.
  • Presence rules (auid = presence-rules). A Presence Rules application is an application which uses authorization policies, also known as authorization rules, to specify what presence information can be given to which watchers, and when.
  • RLS services (auid = rls-services). A Resource List Server (RLS) services application is Session Initiation Protocol (SIP) application whereby a server receives SIP SUBSCRIBE requests for resource, and generates subscriptions towards the resource list. See the README file for more details about of the implementation.
  • PIDF manipulation (auid = pidf-manipulation). Pidf-manipulation application usage defines how XCAP is used to manipulate the contents of PIDF based presence documents.
  • Watchers (auid = watchers, proprietary application). This application returns the list of watchers from OpenSIPS presence agent.

=== Security ===

The server has the following security features:

  • TLS encryption and digital certificates using GnuTLS library
  • Digest or basic HTTP authentication with support for multiple realms
  • Database passwords can be stored in an encrypted format

=== XCAP clients ===

Below is a list with XCAP clients known to be working with OpenXCAP:

'''Product''' '''Open source''' '''Download link''' '''Status''' '''Notes'''
OpenSIPS Yes [http://opensips.org http://opensips.org] production
Kamailio Yes [http://kamailio.org http://kamailio.org] production
XCAP client Yes [http://openxcap.org http://openxcap.org] production
SIP SIMPLE client Yes [http://pypjua.org http://pypjua.org] under development Uses XCAP client
Mercuro IMS client No [http://www.mercuro.net http://www.mercuro.net] beta
Nokia N85 and N79 No [http://www.forum.nokia.com/main/resources/technologies/voice_over_IP/voip_support_in_nokia_devices.html Nokia VoIP Release 3.0 phones] to be released
Eyebeam No [http://www.counterpath.com/eyebeam-overview.html http://www.counterpath.com] production
Ekiga Yes [http://www.ekiga.org http://www.ekiga.org] roadmap
Twinklephone Yes [http://www.twinklephone.com http://twinklephone.com] roadmap

If you have an XCAP client and wish to be listed please email

Credits

Authors: Mircea Amarascu, Ruud Klaver, Lucian Stanescu, Denis Bilenko, Adrian Georgescu, Dan Pascu

Free support

You may obtain support free of charge from the following sources:

  • The project is supported via this wiki collaboration system by [http://ag-projects.com AG Projects]. To open ticket please Register first. The ticketing support system is available only for registered users. The support is provided on a best-effort basis.
  • For interaction between OpenXCAP and OpenSIPS you may consult the [http://opensips.org/pipermail/users/ OpenSIPS users mailing list]
  • [wiki:Installation OpenXCAP installation guide]
Commercial support

The software is supported commercially by [http://ag-projects.com AG Projects].

SIMPLE-Server.png (67.8 kB) Adrian Georgescu, 04/22/2010 04:37 pm