SipPayloadsApi

Version 31 (Adrian Georgescu, 12/12/2012 10:01 pm)

1 31 Adrian Georgescu
h1. Payloads API
2 1 Adrian Georgescu
3 30 Adrian Georgescu
These applications provide functionality that are required for implementing a feature-rich SIP SIMPLE client.
4 24 Adrian Georgescu
5 30 Adrian Georgescu
These applications are used for parsing and generating bodies carried using PUBLISH, SUBSCRIBE and NOTIFY methods designed for asynchronous event notifications, to convey in near real-time, information between SIP end-points.
6 24 Adrian Georgescu
7 30 Adrian Georgescu
An example of such information is presence, which in its basic form it provides user availability information based on end-user choice.  In its advanced form, presence can provide rich state information including but not limited to user mood, geo-location, environment, noise level and the type of communication desired.  The information can be disseminated based on a granular policy which allows end-users to decide who has access to which part of the published information.
8 24 Adrian Georgescu
9 1 Adrian Georgescu
10 1 Adrian Georgescu
h2. Watcher Info 
11 1 Adrian Georgescu
12 21 Adrian Georgescu
Described in RFC3857 and RFC3858.
13 21 Adrian Georgescu
14 18 Adrian Georgescu
source:sipsimple/payloads/watcherinfo.py 
15 18 Adrian Georgescu
16 30 Adrian Georgescu
Parses NOTIFY body for presence.winfo event. Used for keeping track of watchers that subscribed to our presentity.  Based on this information the the user can manage its presence policy.  To retrieve this information the SIP client must subscribe to its own address for event presence.winfo.
17 18 Adrian Georgescu
18 1 Adrian Georgescu
h2. Resource Lists
19 1 Adrian Georgescu
20 21 Adrian Georgescu
Described in RFC4826.
21 18 Adrian Georgescu
22 18 Adrian Georgescu
source:sipsimple/payloads/resourcelists.py
23 18 Adrian Georgescu
24 30 Adrian Georgescu
Parses and generates XML documents for constructing resource lists documents.  Used for server side storage of presence related buddy lists using XCAP protocol.  The SIP clients maintain the resource-lists on the XCAP server which provides persisten storage and aggregation point for multiple devices.
25 18 Adrian Georgescu
26 1 Adrian Georgescu
27 1 Adrian Georgescu
h2. RLS Services
28 18 Adrian Georgescu
29 18 Adrian Georgescu
Described in RFC4826.
30 18 Adrian Georgescu
31 1 Adrian Georgescu
source:sipsimple/payloads/rlsservices.py
32 1 Adrian Georgescu
33 30 Adrian Georgescu
Parses and generates XML documents for constructing rls-services documents.  Used for delegating presence related works to the server.  The client build rls-services lists with buddies and instructs the server to subscribe to the sip uris indicated in the lists.  This way the client can save bandwidth as the server performs the signalling for subscription and collection of notifications and provides consolidated answer to the sip user agent.
34 1 Adrian Georgescu
35 1 Adrian Georgescu
36 1 Adrian Georgescu
h2. RLS Notifications
37 21 Adrian Georgescu
38 1 Adrian Georgescu
 * source:sipsimple/payloads/rlmi.py
39 1 Adrian Georgescu
 * source:sipsimple/payloads/rlsnotify.py 
40 1 Adrian Georgescu
41 21 Adrian Georgescu
Described in RFC4482
42 21 Adrian Georgescu
43 22 Adrian Georgescu
Document handling for NOTIFY body for Resource Lists Contact Information.
44 1 Adrian Georgescu
45 1 Adrian Georgescu
h2. Policy
46 21 Adrian Georgescu
47 22 Adrian Georgescu
Described in RFC4745
48 1 Adrian Georgescu
49 22 Adrian Georgescu
source:sipsimple/payloads/policy.py
50 22 Adrian Georgescu
51 23 Adrian Georgescu
Generic data types to be used in policy applications.
52 1 Adrian Georgescu
53 15 Adrian Georgescu
h2. Presence Rules
54 23 Adrian Georgescu
55 22 Adrian Georgescu
Described in RFC5025.
56 1 Adrian Georgescu
57 1 Adrian Georgescu
source:sipsimple/payloads/presrules.py
58 1 Adrian Georgescu
59 30 Adrian Georgescu
Parses and generates authorization rules in XML format for presence or other applications.  Authorization rules are stored on the XCAP server.  The presence rules are generated either based on user initiative or as a response to a new subscription signaled by a change in the watcherinfo application.
60 18 Adrian Georgescu
61 22 Adrian Georgescu
62 1 Adrian Georgescu
h2. OMA Policy
63 23 Adrian Georgescu
64 22 Adrian Georgescu
source:sipsimple/payloads/omapolicy.py
65 22 Adrian Georgescu
66 22 Adrian Georgescu
Described in OMA-TS-Presence_SIMPLE_XDM-V1_1
67 18 Adrian Georgescu
68 30 Adrian Georgescu
Conditions extension handling according to OMA-TS-Presence_SIMPLE_XDM-V1_1.  This module provides an extension to common policy defined in RFC4745 to support condition extensions defined by OMA.
69 18 Adrian Georgescu
70 18 Adrian Georgescu
h2. Presence Content
71 1 Adrian Georgescu
72 22 Adrian Georgescu
source:sipsimple/payloads/prescontent.py
73 15 Adrian Georgescu
74 22 Adrian Georgescu
Described in OMA-TS-Presence_SIMPLE_XDM-V1_1
75 18 Adrian Georgescu
76 22 Adrian Georgescu
Generates presence content application documents according to OMA TS
77 22 Adrian Georgescu
Presence SIMPLE Content.
78 15 Adrian Georgescu
79 18 Adrian Georgescu
h2. XCAP Directory
80 1 Adrian Georgescu
81 22 Adrian Georgescu
source:sipsimple/payloads/directory.py (OMA Core Specifications)
82 8 Adrian Georgescu
83 22 Adrian Georgescu
Parses xcap-directory messages according to OMA TS XDM Core.
84 1 Adrian Georgescu
85 18 Adrian Georgescu
source:sipsimple/payloads/dialoginfo.py
86 8 Adrian Georgescu
87 22 Adrian Georgescu
Described in RFC4235.
88 18 Adrian Georgescu
89 1 Adrian Georgescu
Parses and produces dialog-info messages according to RFC4235.
90 1 Adrian Georgescu
91 22 Adrian Georgescu
92 18 Adrian Georgescu
h2. Dialog Rules
93 22 Adrian Georgescu
94 22 Adrian Georgescu
source:sipsimple/payloads/dialogrules.py
95 18 Adrian Georgescu
96 30 Adrian Georgescu
Parses and produces Dialog Authorization Rules documents. As there is no RFC for this, common-policy format from RFC 4745 is used.  Subscription Handling has been taken from RFC 5025.
97 22 Adrian Georgescu
98 18 Adrian Georgescu
h2. PIDF
99 18 Adrian Georgescu
100 1 Adrian Georgescu
source:sipsimple/payloads/pidf.py
101 1 Adrian Georgescu
102 18 Adrian Georgescu
Described in RFC3863 and RFC3379.
103 1 Adrian Georgescu
104 30 Adrian Georgescu
This module provides classes to parse and generate PIDF documents, and also uses the XML Application extensibility API to allow extensions to PIDF. It is used to parse NOTIFY body for presence event and generates rich presence state information for use with PUBLISH. Used to generate own presence information and to parse the state of buddy lists entries we have subscribed to. A SIP client typically instantiates a new pidf object for itself and for each buddy it SUBSCRIBEs to and update each object when a NOTIFY is received. The list of buddys is maintained using resourcelists application.
105 1 Adrian Georgescu
106 1 Adrian Georgescu
h2. RPIDF
107 1 Adrian Georgescu
108 22 Adrian Georgescu
source:sipsimple/payloads/rpid.py
109 1 Adrian Georgescu
110 22 Adrian Georgescu
Described in RFC4480.
111 18 Adrian Georgescu
112 22 Adrian Georgescu
This module provides an extension to PIDF to support rich presence.
113 22 Adrian Georgescu
114 1 Adrian Georgescu
h2. Presence Data Model
115 1 Adrian Georgescu
116 1 Adrian Georgescu
source:sipsimple/payloads/presdm.py.
117 22 Adrian Georgescu
118 1 Adrian Georgescu
Described in RFC4479.
119 22 Adrian Georgescu
120 11 Adrian Georgescu
This module provides an extension to the PIDF to support the data module defined in RFC4479.
121 22 Adrian Georgescu
122 11 Adrian Georgescu
h2. CIPID
123 1 Adrian Georgescu
124 22 Adrian Georgescu
source:sipsimple/payloads/cipid.py
125 1 Adrian Georgescu
126 22 Adrian Georgescu
Described in RFC4482.
127 22 Adrian Georgescu
 
128 22 Adrian Georgescu
This module provides an extension to PIDF to provide person related information.
129 1 Adrian Georgescu
130 1 Adrian Georgescu
h2. Endpoint Capabilities
131 1 Adrian Georgescu
132 1 Adrian Georgescu
source:sipsimple/payloads/caps.py
133 22 Adrian Georgescu
134 18 Adrian Georgescu
Described in RFC5196.
135 22 Adrian Georgescu
136 30 Adrian Georgescu
This module provides capabilities application: displays OPTIONS request-like information as an extension to the PIDF.
137 22 Adrian Georgescu
138 22 Adrian Georgescu
h2. XCAP capabilities
139 18 Adrian Georgescu
140 11 Adrian Georgescu
source:sipsimple/payloads/xcapcaps.py
141 11 Adrian Georgescu
142 22 Adrian Georgescu
Described in RFC4825.
143 18 Adrian Georgescu
144 22 Adrian Georgescu
Support for parsing and building xcap-caps documents, as defined by RFC4825.
145 22 Adrian Georgescu
146 18 Adrian Georgescu
h2. XCAP Differences
147 1 Adrian Georgescu
148 26 Adrian Georgescu
source:sipsimple/payloads/xcapdiff.py
149 22 Adrian Georgescu
150 18 Adrian Georgescu
Described in RFC5874.
151 18 Adrian Georgescu
152 30 Adrian Georgescu
Parses NOTIFY body for xcap-diff event. Used to detect changes in XCAP documents changed by other device configured for the same presentity.
153 1 Adrian Georgescu
154 1 Adrian Georgescu
155 23 Adrian Georgescu
h2. Is-composing
156 1 Adrian Georgescu
157 23 Adrian Georgescu
source:sipsimple/payloads/iscomposing.py
158 23 Adrian Georgescu
159 1 Adrian Georgescu
Described in RFC3994.
160 18 Adrian Georgescu
161 30 Adrian Georgescu
This module parses and generates isComposing messages according to RFC3994. It's used mainly in chat environments to indicate the other party that the user is actually typing a message.
162 1 Adrian Georgescu
163 1 Adrian Georgescu
164 23 Adrian Georgescu
h2. Conference Information
165 23 Adrian Georgescu
166 23 Adrian Georgescu
source:sipsimple/payloads/conference.py
167 23 Adrian Georgescu
168 1 Adrian Georgescu
Described in RFC4575.
169 1 Adrian Georgescu
170 30 Adrian Georgescu
This module implements conference-info payload parsing and generating for describing information about conference participants and related resources.
171 18 Adrian Georgescu
172 23 Adrian Georgescu
173 23 Adrian Georgescu
h2. Message Summary
174 23 Adrian Georgescu
175 23 Adrian Georgescu
source:sipsimple/payloads/messagesummary.py
176 23 Adrian Georgescu
177 18 Adrian Georgescu
Described in RFC3842.
178 18 Adrian Georgescu
179 30 Adrian Georgescu
This module implements a parser and generator for message-summary payload, which is used to indicate missed calls or voice mail recordings.