NAME
XCAP::Client - XCAP client protocol (RFC 4825).
SYNOPSIS
use XCAP::Client;
my $xcap_client = new XCAP::Client(
xcap_root => "https://my.xcapserver.org/xcap-root",
user => "sip:foo@domain.org",
auth_username => "foo",
auth_password => "bar",
);
# Set the document.
$xcap_client->application('pres-rules');
$xcap_client->filename('index');
$xcap_client->tree('user');
# Delete
$xcap_client->document->delete;
# Fetch pres-rules document.
$xcap_client->document->fetch();
# If you want to create or replace.
$xcap_client->document->content($xml_content);
# Create a new document.
$xcap_client->document->create;
# Replace.
$xcap_client->document->replace;
DESCRIPTION
XCAP (RFC 4825) is a protocol on top of HTTP which allows a client to manipulate the contents of Presence Information Data Format (PIDF) based presence documents. These documents are stored in a server in XML format and are fetched, modified, replaced or deleted by the client. The protocol allows multiple clients to manipulate the data, provided that they are authorized to do so. XCAP is already used in SIMPLE-based presence systems for manipulation of presence lists and presence authorization policies.
XCAPClient library implements the XCAP protocol in client side, allowing the applications to get, store, modify and delete XML documents in the server.
The module implements the following features:
* Fetch, create/replace and delete a document.
* Parameters allowing customized fields for each XCAP application.
* Manage of multiple documents per XCAP application.
* SSL support.
* Exception for each HTTP error response.
* Digest and Basic HTTP authentication.
Todo:
* Fetch, create/replace and delete a document element (XML node)
* Fetch, create/replace and delete an element attribute.
* Fetch the XCAP server auids, extensions and namespaces.
ATTRIBUTES
xcap_root
It's a context that contains all the documents across all application usages and users that are managed by the server.
The root of the XCAP hierarchy is called the XCAP root. It defines the context in which all other resources exist. The XCAP root is represented with an HTTP URI, called the XCAP Root URI. This URI is a valid HTTP URI; however, it doesn't point to any resource that actually exists on the server. Its purpose is to identify the root of the tree within the domain where all XCAP documents are stored.
user
user - User that represents the parent for all documents for a particular user for a particular application usage within a particular XCAP root.
auth_realm
auth_realm - The HTTP authentication realm or name.
auth_username
auth_username - The HTTP authentication username.
auth_password
auth_password - The HTTP authentcation password.
application
Application can be resource-lists, rls-services, pres-rules, pdif-manipulations or xcap-caps. (Default: pres-rules)
tree
Tree can be users or global. (Default: users)
filename
Filename. (Default: index)
METHODS
document->[create,fetch,replace,delete]
You can create, fetch, replace or delete a document with this methods. To use create or delete you need to say the content of the "document->content".
element->[add,fetch]
AUTHOR
Thiago Rondon <thiago@aware.com.br>
http://www.aware.com.br/
COPYRIGHT AND LICENSE
This software is copyright (c) 2009 by Aware.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.