Sip subscribe winfo

Version 17 (Adrian Georgescu, 03/31/2009 03:10 pm)

1 8 Adrian Georgescu
== sip_subscribe_winfo ==
2 15 Adrian Georgescu
[[TOC(SipTesting*, sip_*,xcap*, depth=2)]]
3 15 Adrian Georgescu
4 13 Adrian Georgescu
To use this script you must to have a valid [wiki:SipSettingsAPI configuration].
5 1 Adrian Georgescu
6 8 Adrian Georgescu
=== Description ===
7 1 Adrian Georgescu
8 16 Adrian Georgescu
[[Image(http://www.openxcap.org/chrome/site/SIMPLE-Winfo.png)]]
9 11 Adrian Georgescu
10 6 Adrian Georgescu
Watchers are defined as entities that request (i.e., subscribe to)
11 6 Adrian Georgescu
information about a resource, using the SIP event framework, RFC 3265. There
12 6 Adrian Georgescu
is fairly complex state associated with these subscriptions.  This state
13 6 Adrian Georgescu
includes the identity of the subscriber, the state of the subscription, and 
14 6 Adrian Georgescu
so on. The union of the state for all subscriptions to a particular resource
15 6 Adrian Georgescu
is called the watcher information for that resource.  This state is dynamic,
16 6 Adrian Georgescu
changing as subscribers come and go.  As a result, it is possible, and
17 6 Adrian Georgescu
indeed useful, to subscribe to the watcher information for a particular
18 6 Adrian Georgescu
resource. An important application of this is the ability for a user to find
19 6 Adrian Georgescu
out the set of subscribers to their presentity. This would allow the user to
20 6 Adrian Georgescu
provide an authorization decision for the subscription.
21 6 Adrian Georgescu
22 6 Adrian Georgescu
This script implements SUBSCRIBE for the watcher info event package and
23 6 Adrian Georgescu
manipulation of the pres-rules document that holds the presence policy of
24 6 Adrian Georgescu
the subscribing user.
25 3 Adrian Georgescu
26 2 Adrian Georgescu
Source code: [source:scripts/sip_subscribe_winfo.py scripts/sip_subscribe_winfo.py]
27 2 Adrian Georgescu
28 1 Adrian Georgescu
{{{
29 1 Adrian Georgescu
adigeo@ag-imac3:~$sip_subscribe_winfo -h
30 17 Adrian Georgescu
Usage: sip_subscribe_winfo [options] [target-user@target-domain.com]
31 1 Adrian Georgescu
32 17 Adrian Georgescu
This script displays the current presence rules, SUBSCRIBEs to the
33 17 Adrian Georgescu
presence.winfo event of itself and prompts the user to update the presence
34 17 Adrian Georgescu
rules document when a new watcher is in 'pending'/'waiting' state. The program
35 17 Adrian Georgescu
will un-SUBSCRIBE and quit when CTRL+D is pressed.
36 1 Adrian Georgescu
37 1 Adrian Georgescu
Options:
38 1 Adrian Georgescu
  -h, --help            show this help message and exit
39 17 Adrian Georgescu
  -a ACCOUNT_NAME, --account-name=ACCOUNT_NAME
40 17 Adrian Georgescu
                        The name of the account to use.
41 1 Adrian Georgescu
  -s, --trace-sip       Dump the raw contents of incoming and outgoing SIP
42 1 Adrian Georgescu
                        messages (disabled by default).
43 17 Adrian Georgescu
  -j, --trace-pjsip     Print PJSIP logging output (disabled by default).
44 1 Adrian Georgescu
}}}
45 1 Adrian Georgescu
46 1 Adrian Georgescu
=== Example ===
47 1 Adrian Georgescu
48 1 Adrian Georgescu
{{{
49 1 Adrian Georgescu
adigeo@ag-imac3:~/work/pypjua$sip_subscribe_winfo
50 1 Adrian Georgescu
Accounts available: 'alice', 'bob', 'ew', 'mrg', 'pbx', 'tf', 'umts', 'unet', default
51 1 Adrian Georgescu
Using default account: 31208005169@ag-projects.com
52 1 Adrian Georgescu
Resolved DNS SRV record "_sip._udp.ag-projects.com" --> proxy.sipthor.net:5060
53 1 Adrian Georgescu
Resolved DNS A record "proxy.sipthor.net" --> 85.17.186.7, 81.23.228.150, 81.23.228.129
54 1 Adrian Georgescu
Retrieving current presence rules from https://xcap.sipthor.net/xcap-root/
55 1 Adrian Georgescu
Allowed list:
56 1 Adrian Georgescu
	sip:2233350608@sip2sip.info
57 1 Adrian Georgescu
	sip:31208005163@ag-projects.com
58 1 Adrian Georgescu
	sip:31208005166@ag-projects.com
59 1 Adrian Georgescu
	sip:31208005167@ag-projects.com
60 1 Adrian Georgescu
	sip:adi@umts.ro
61 1 Adrian Georgescu
	sip:alice@example.com
62 1 Adrian Georgescu
	sip:ruud@umts.ro
63 1 Adrian Georgescu
	sip:317105169@eurovoice.ro
64 1 Adrian Georgescu
Blocked list:
65 1 Adrian Georgescu
Polite-blocked list:
66 1 Adrian Georgescu
Subscribing to "31208005169@ag-projects.com" for the presence.winfo event, at 81.23.228.129:5060
67 1 Adrian Georgescu
Received NOTIFY:
68 1 Adrian Georgescu
----
69 1 Adrian Georgescu
Active watchers:
70 1 Adrian Georgescu
Terminated watchers:
71 1 Adrian Georgescu
Pending watchers:
72 1 Adrian Georgescu
  sip:bob@example.com
73 1 Adrian Georgescu
Waiting watchers:
74 1 Adrian Georgescu
----
75 1 Adrian Georgescu
pending watcher sip:bob@example.com wants to subscribe to your presence information. Press (a) to allow, (d) to deny, (p) to polite block:
76 1 Adrian Georgescu
Watcher sip:bob@example.com is now allowed
77 1 Adrian Georgescu
78 1 Adrian Georgescu
}}}