« Previous - Version 16/22 (diff) - Next » - Current version
Adrian Georgescu, 03/14/2009 09:54 am


sip_subscribe_rls
<acronym title="SipTesting*, sip_*,xcap*, depth=2">TOC</acronym>

To use this script you must to have a valid [wiki:SipSettingsAPI configuration]. The SIP Presence agent and XCAP server must have support for RLS services.

=== Description ===

[[Image(http://www.openxcap.org/chrome/site/SIMPLE-RLS-services.png, align=right)]]

A Resource List Server (RLS) services application is a Session Initiation Protocol (SIP) application whereby a server receives SUBSCRIBE requests for a resource, and generates subscriptions towards a resource list. The received NOTIFY messages are the aggregated downstream to the original subscriber generating less traffic to the subscriber end-user device.

This script implements sending SUBSCRIBE to a RLS server and receiving NOTIFY messages from it.

Source code: [source:scripts/sip_subscribe_rls.py scripts/sip_subscribe_rls.py]

{{{
adigeo@ag-imac3:~$sip_subscribe_rls -h
Usage: sip_subscribe_rls [options] []

This script will SUBSCRIBE to the presence event published by the specified
SIP target assuming it is a resource list handled by a RLS server. The RLS
server will then SUBSCRIBE in behalf of the account, collect NOTIFYs with the
presence information of the recipients and provide periodically aggregated
NOTIFYs back to the subscriber. If a target address is not specified, it will
subscribe to the account's own address. It will then interprete PIDF bodies
contained in NOTIFYs and display their meaning. The program will un-SUBSCRIBE
and quit when CTRL+D is pressed.

Options:
-h, --help show this help message and exit
-a NAME, --account-name=NAME
The account name from which to read account settings.
Corresponds to section Account_NAME in the
configuration file. If not supplied, the section
Account will be read.
--sip-address=SIP_ADDRESS
SIP address of the user in the form user@domain
-p PASSWORD, --password=PASSWORD
Password to use to authenticate the local account.
This overrides the setting from the config file.
-n DISPLAY_NAME, --display-name=DISPLAY_NAME
Display name to use for the local account. This
overrides the setting from the config file.
-e EXPIRES, --expires=EXPIRES
"Expires" value to set in SUBSCRIBE. Default is 300
seconds.
-o IP[:PORT], --outbound-proxy=IP[:PORT]
Outbound SIP proxy to use. By default a lookup of the
domain is performed based on SRV and A records. This
overrides the setting from the config file.
-c CONTENT_TYPE, --content-type=CONTENT_TYPE
"Content-Type" the UA expects to receving in a NOTIFY
for this subscription. For the known events this does
not need to be specified, but may be overridden".
-s, --trace-sip Dump the raw contents of incoming and outgoing SIP
messages (disabled by default).
-l, --log-pjsip Print PJSIP logging output (disabled by default).
}}}

SIMPLE-RLS-services.png (40.3 kB) Tijmen de Mes, 04/19/2012 09:24 pm