Project

General

Profile

Sip subscribe winfo » History » Revision 18

Revision 17 (Adrian Georgescu, 03/31/2009 03:10 PM) → Revision 18/21 (Adrian Georgescu, 04/13/2009 10:54 AM)

== sip_subscribe_winfo == 
 [[TOC(SipTesting*, sip_*,xcap*, depth=2)]] 

 To use this script you must to have a valid [wiki:SipSettingsAPI configuration]. 

 === Description === 

 [[Image(http://www.openxcap.org/chrome/site/SIMPLE-Winfo.png)]] 

 Watchers are defined as entities that request (i.e., subscribe to) 
 information about a resource, using the SIP event framework, RFC 3265. There 
 is fairly complex state associated with these subscriptions.    This state 
 includes the identity of the subscriber, the state of the subscription, and  
 so on. The union of the state for all subscriptions to a particular resource 
 is called the watcher information for that resource.    This state is dynamic, 
 changing as subscribers come and go.    As a result, it is possible, and 
 indeed useful, to subscribe to the watcher information for a particular 
 resource. An important application of this is the ability for a user to find 
 out the set of subscribers to their presentity. This would allow the user to 
 provide an authorization decision for the subscription. 

 This script implements SUBSCRIBE for the watcher info event package and 
 manipulation of the pres-rules document that holds the presence policy of 
 the subscribing user. 

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

 {{{ 
 adigeo@ag-imac3:~$sip_subscribe_winfo -h 
 Usage: sip_subscribe_winfo [options] [target-user@target-domain.com] 

 This script displays the current presence rules, SUBSCRIBEs to the 
 presence.winfo event of itself and prompts the user to update the presence 
 rules document when a new watcher is in 'pending'/'waiting' state. The program 
 will un-SUBSCRIBE and quit when CTRL+D is pressed. 

 Options: 
   -h, --help              show this help message and exit 
   -a ACCOUNT_NAME, --account-name=ACCOUNT_NAME 
                         The name of the account to use. 
   -s, --trace-sip         Dump the raw contents of incoming and outgoing SIP 
                         messages (disabled by default). 
   -j, --trace-pjsip       Print PJSIP logging output (disabled by default). 
 }}} 

 === Example === 

 {{{ 
 adigeo@ag-imac3:~/work/pypjua$sip_subscribe_winfo 
 Accounts available: 'alice', 'bob', 'ew', 'mrg', 'pbx', 'tf', 'umts', 'unet', default 
 Using default account: 31208005169@ag-projects.com 
 Resolved DNS SRV record "_sip._udp.ag-projects.com" --> proxy.sipthor.net:5060 
 Resolved DNS A record "proxy.sipthor.net" --> 85.17.186.7, 81.23.228.150, 81.23.228.129 
 Retrieving current presence rules from https://xcap.sipthor.net/xcap-root/ 
 Allowed list: 
	 sip:2233350608@sip2sip.info 
	 sip:31208005163@ag-projects.com 
	 sip:31208005166@ag-projects.com 
	 sip:31208005167@ag-projects.com 
	 sip:adi@umts.ro 
	 sip:alice@example.com 
	 sip:ruud@umts.ro 
	 sip:317105169@eurovoice.ro 
 Blocked list: 
 Polite-blocked list: 
 Subscribing to "31208005169@ag-projects.com" for the presence.winfo event, at 81.23.228.129:5060 
 Received NOTIFY: 
 ---- 
 Active watchers: 
 Terminated watchers: 
 Pending watchers: 
   sip:bob@example.com 
 Waiting watchers: 
 ---- 
 pending watcher sip:bob@example.com wants to subscribe to your presence information. Press (a) to allow, (d) to deny, (p) to polite block: 
 Watcher sip:bob@example.com is now allowed 

 }}}