Project

General

Profile

SipPayloadsApi » History » Version 29

Adrian Georgescu, 11/09/2012 01:41 PM

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