initial commit
[BroadWorks-OCI.git] / share / OCISchemaAS / Services / OCISchemaServiceCallRecording.xsd
1 <?xml version="1.0" encoding="UTF-8"?>\r
2 \r
3 <!-- ********************************************************************** -->\r
4 <!-- Copyright (c) 2000-2012 BroadSoft, Inc.  All rights reserved.          -->\r
5 <!-- ********************************************************************** -->\r
6 <!-- O C I   X M L   S C H E M A  :  S E R V I C E  P A R T                 -->\r
7 <!--                                                                        -->\r
8 <!-- C A L L   R E C O R D I N G  S E R V I C E                             -->\r
9 <!--                                                                        -->\r
10 <!-- This file defines the XML Schema for the BroadSoft Application Server  -->\r
11 <!-- Open Client Interface (OCI).                                           -->\r
12 <!-- ********************************************************************** -->\r
13 \r
14 <xs:schema xmlns:xs             = "http://www.w3.org/2001/XMLSchema"\r
15            xmlns:core           = "C"\r
16            xmlns                = ""\r
17            attributeFormDefault = "qualified"\r
18            elementFormDefault   = "qualified">\r
19   \r
20   <xs:import namespace      = "C"\r
21              schemaLocation = "../OCISchemaBASE.xsd"/>\r
22   \r
23   <xs:include schemaLocation="../OCISchemaDataTypes.xsd"/>\r
24   \r
25   <!-- ********************************************************************************** -->\r
26   <!-- C A L L   R E C O R D I N G    R E Q U E S T S  A N D  R E S P O N S E S           -->\r
27   <!-- ********************************************************************************** -->\r
28   <!--\r
29   Requests and responses are listed here in alphabetical order.\r
30   The non-primitive attributes inside the commands are defined in another\r
31   section of the schema.\r
32 \r
33   Requests in this schema file:\r
34     GroupCallRecordingGetRequest    \r
35     GroupCallRecordingModifyRequest    \r
36     SystemCallRecordingAddPlatformRequest20    \r
37     SystemCallRecordingDeletePlatformRequest    \r
38     SystemCallRecordingGetPlatformListRequest    \r
39     SystemCallRecordingGetPlatformUsageRequest    \r
40     SystemCallRecordingModifyPlatformRequest    \r
41     SystemCallRecordingGetRequest    \r
42     SystemCallRecordingModifyRequest    \r
43     UserCallRecordingGetRequest20    \r
44     UserCallRecordingModifyRequest    \r
45     \r
46   --> \r
47   \r
48   <xs:complexType name="GroupCallRecordingGetRequest">\r
49     <xs:annotation>\r
50       <xs:documentation>\r
51         Get the Call Recording platform for a group.\r
52         The response is either a GroupCallRecordingGetResponse or an ErrorResponse.\r
53       </xs:documentation>\r
54     </xs:annotation>\r
55     <xs:complexContent>\r
56       <xs:extension base="core:OCIRequest">\r
57         <xs:sequence>\r
58           <xs:element name="serviceProviderId" type="ServiceProviderId"/>\r
59           <xs:element name="groupId" type="GroupId"/>\r
60         </xs:sequence>\r
61       </xs:extension>\r
62     </xs:complexContent>\r
63   </xs:complexType>    \r
64     \r
65   <xs:complexType name="GroupCallRecordingGetResponse">\r
66     <xs:annotation>\r
67       <xs:documentation>\r
68          Response to the GroupCallRecordingGetRequest.\r
69          The response contains the group's Call Recording platform information.\r
70        </xs:documentation>\r
71     </xs:annotation>\r
72     <xs:complexContent>\r
73       <xs:extension base="core:OCIDataResponse">\r
74         <xs:sequence>\r
75           <xs:element name="name" type="CallRecordingPlatformName" minOccurs="0"/>\r
76         </xs:sequence>\r
77       </xs:extension>\r
78     </xs:complexContent>\r
79   </xs:complexType>    \r
80     \r
81   <xs:complexType name="GroupCallRecordingModifyRequest">\r
82     <xs:annotation>\r
83       <xs:documentation>\r
84         Modify the Call Recording platform assignment for a group.\r
85         The response is either a SuccessResponse or an ErrorResponse.\r
86       </xs:documentation>\r
87     </xs:annotation>\r
88     <xs:complexContent>\r
89       <xs:extension base="core:OCIRequest">\r
90         <xs:sequence>\r
91           <xs:element name="serviceProviderId" type="ServiceProviderId"/>\r
92           <xs:element name="groupId" type="GroupId"/>\r
93           <xs:element name="name" type="CallRecordingPlatformName" minOccurs="0"/>\r
94         </xs:sequence>\r
95       </xs:extension>\r
96     </xs:complexContent>\r
97   </xs:complexType>    \r
98     \r
99   <xs:complexType name="SystemCallRecordingAddPlatformRequest20">\r
100     <xs:annotation>\r
101       <xs:appinfo>\r
102         <asDataModeSupported>true</asDataModeSupported>\r
103         <hssDataModeSupported>false</hssDataModeSupported>\r
104       </xs:appinfo>\r
105       <xs:documentation>\r
106         Add a Call Recording platform.\r
107         The response is either a SuccessResponse or an ErrorResponse.\r
108       </xs:documentation>\r
109     </xs:annotation>\r
110     <xs:complexContent>\r
111       <xs:extension base="core:OCIRequest">\r
112         <xs:sequence>\r
113           <xs:element name="name" type="CallRecordingPlatformName"/>\r
114           <xs:element name="netAddress" type="NetAddress"/>\r
115           <xs:element name="port" type="Port"/>\r
116           <xs:element name="mediaStream" type="MediaStream"/>\r
117           <xs:element name="transportType" type="TransportProtocol"/>\r
118           <xs:element name="description" type="CallRecordingPlatformDescription" minOccurs="0"/>\r
119           <xs:element name="schemaVersion" type="CallRecordingPlatformSchemaVersion"/>\r
120           <xs:element name="supportVideoRecording" type="xs:boolean"/>\r
121         </xs:sequence>\r
122       </xs:extension>\r
123     </xs:complexContent>\r
124   </xs:complexType>    \r
125     \r
126   <xs:complexType name="SystemCallRecordingDeletePlatformRequest">\r
127     <xs:annotation>\r
128       <xs:appinfo>\r
129         <asDataModeSupported>true</asDataModeSupported>\r
130         <hssDataModeSupported>false</hssDataModeSupported>\r
131       </xs:appinfo>\r
132       <xs:documentation>\r
133         Delete a Call Recording platform.\r
134         The response is either SuccessResponse or ErrorResponse.\r
135       </xs:documentation>\r
136     </xs:annotation>\r
137     <xs:complexContent>\r
138       <xs:extension base="core:OCIRequest">\r
139         <xs:sequence>\r
140           <xs:element name="name" type="CallRecordingPlatformName"/>\r
141         </xs:sequence>\r
142       </xs:extension>\r
143     </xs:complexContent>\r
144   </xs:complexType>    \r
145     \r
146   <xs:complexType name="SystemCallRecordingGetPlatformListRequest">\r
147     <xs:annotation>\r
148       <xs:appinfo>\r
149         <asDataModeSupported>true</asDataModeSupported>\r
150         <hssDataModeSupported>false</hssDataModeSupported>\r
151       </xs:appinfo>\r
152       <xs:documentation>\r
153         Get list of Call Recording platforms.\r
154         The response is either SystemCallRecordingGetPlatformListResponse or ErrorResponse.\r
155         \r
156         The possible values for "Support Video Rec" can be either true or false.  \r
157         Schema version values include: 1.0, 2.0, 3.0\r
158       </xs:documentation>\r
159     </xs:annotation>\r
160     <xs:complexContent>\r
161       <xs:extension base="core:OCIRequest"/>\r
162     </xs:complexContent>\r
163   </xs:complexType>    \r
164     \r
165   <xs:complexType name="SystemCallRecordingGetPlatformListResponse">\r
166     <xs:annotation>\r
167       <xs:appinfo>\r
168         <asDataModeSupported>true</asDataModeSupported>\r
169         <hssDataModeSupported>false</hssDataModeSupported>\r
170       </xs:appinfo>\r
171       <xs:documentation>\r
172          Response to SystemCallRecordingGetPlatformListRequest.\r
173          Contains the default system Call Recording platform and a table with columns headings "Name", "Net Address", "Port", "Transport Type", "Media Stream", "Description", "Schema Version", "Support Video Rec".  \r
174          The system default recording platform also appears in the table with the other platforms.\r
175          \r
176          The possible values for "Support Video Rec" can be either true or false.\r
177          Schema version values include: 1.0, 2.0, 3.0\r
178       </xs:documentation>\r
179     </xs:annotation>\r
180     <xs:complexContent>\r
181       <xs:extension base="core:OCIDataResponse">\r
182         <xs:sequence>\r
183           <xs:element name="systemDefault" type="CallRecordingPlatformName" minOccurs="0"/>\r
184           <xs:element name="callRecordingPlatformTable" type="core:OCITable"/>\r
185         </xs:sequence>\r
186       </xs:extension>\r
187     </xs:complexContent>\r
188   </xs:complexType>    \r
189     \r
190   <xs:complexType name="SystemCallRecordingGetPlatformUsageRequest">\r
191     <xs:annotation>\r
192       <xs:appinfo>\r
193         <asDataModeSupported>true</asDataModeSupported>\r
194         <hssDataModeSupported>false</hssDataModeSupported>\r
195       </xs:appinfo>\r
196       <xs:documentation>\r
197         Get the list of groups currently associated to the specified Call Recording platform.\r
198         The response is either SystemCallRecordingGetPlatformUsageResponse or ErrorResponse.\r
199       </xs:documentation>\r
200     </xs:annotation>\r
201     <xs:complexContent>\r
202       <xs:extension base="core:OCIRequest">\r
203         <xs:sequence>\r
204           <xs:element name="name" type="CallRecordingPlatformName"/>\r
205         </xs:sequence>\r
206       </xs:extension>\r
207     </xs:complexContent>\r
208   </xs:complexType>    \r
209     \r
210   <xs:complexType name="SystemCallRecordingGetPlatformUsageResponse">\r
211     <xs:annotation>\r
212       <xs:appinfo>\r
213         <asDataModeSupported>true</asDataModeSupported>\r
214         <hssDataModeSupported>false</hssDataModeSupported>\r
215       </xs:appinfo>\r
216       <xs:documentation>\r
217         Response to SystemCallRecordingGetPlatformUsageRequest.\r
218         The response contains a table with columns headings "Service Provider Id", "Group Id".\r
219       </xs:documentation>\r
220     </xs:annotation>\r
221     <xs:complexContent>\r
222       <xs:extension base="core:OCIDataResponse">\r
223         <xs:sequence>\r
224           <xs:element name="groupTable" type="core:OCITable"/>\r
225         </xs:sequence>\r
226       </xs:extension>\r
227     </xs:complexContent>\r
228   </xs:complexType>    \r
229     \r
230   <xs:complexType name="SystemCallRecordingModifyPlatformRequest">\r
231     <xs:annotation>\r
232       <xs:appinfo>\r
233         <asDataModeSupported>true</asDataModeSupported>\r
234         <hssDataModeSupported>false</hssDataModeSupported>\r
235       </xs:appinfo>\r
236       <xs:documentation>\r
237         Modify the specified Call Recording platform.\r
238         The response is either a SuccessResponse or an ErrorResponse.\r
239       </xs:documentation>\r
240     </xs:annotation>\r
241     <xs:complexContent>\r
242       <xs:extension base="core:OCIRequest">\r
243         <xs:sequence>\r
244           <xs:element name="name" type="CallRecordingPlatformName"/>\r
245           <xs:element name="netAddress" type="NetAddress" minOccurs="0"/>\r
246           <xs:element name="port" type="Port" minOccurs="0"/>\r
247           <xs:element name="mediaStream" type="MediaStream" minOccurs="0"/>\r
248           <xs:element name="becomeSystemDefault" type="xs:boolean" fixed="true" minOccurs="0"/>\r
249           <xs:element name="transportType" type="TransportProtocol" minOccurs="0"/>\r
250           <xs:element name="description" type="CallRecordingPlatformDescription" minOccurs="0" nillable="true"/>\r
251           <xs:element name="schemaVersion" type="CallRecordingPlatformSchemaVersion" minOccurs="0"/>\r
252           <xs:element name="supportVideoRecording" type="xs:boolean" minOccurs="0"/>\r
253         </xs:sequence>\r
254       </xs:extension>\r
255     </xs:complexContent>\r
256   </xs:complexType>    \r
257     \r
258   <xs:complexType name="SystemCallRecordingGetRequest">\r
259     <xs:annotation>\r
260       <xs:appinfo>\r
261         <asDataModeSupported>true</asDataModeSupported>\r
262         <hssDataModeSupported>false</hssDataModeSupported>\r
263       </xs:appinfo>\r
264       <xs:documentation>\r
265         Request the system level data associated with Call Recording.\r
266         The response is either a SystemCallRecordingGetResponse or an\r
267         ErrorResponse.\r
268       </xs:documentation>\r
269     </xs:annotation>\r
270     <xs:complexContent>\r
271       <xs:extension base="core:OCIRequest">\r
272         <xs:sequence/>\r
273       </xs:extension>\r
274     </xs:complexContent>\r
275   </xs:complexType>    \r
276     \r
277   <xs:complexType name="SystemCallRecordingGetResponse">\r
278     <xs:annotation>\r
279       <xs:appinfo>\r
280         <asDataModeSupported>true</asDataModeSupported>\r
281         <hssDataModeSupported>false</hssDataModeSupported>\r
282       </xs:appinfo>\r
283       <xs:documentation>\r
284         Response to SystemCallRecordingGetRequest.\r
285       </xs:documentation>\r
286     </xs:annotation>\r
287     <xs:complexContent>\r
288       <xs:extension base="core:OCIDataResponse">\r
289         <xs:sequence>\r
290           <xs:element name="continueCallAfterRecordingFailure" type="xs:boolean"/>\r
291           <xs:element name="refreshPeriodSeconds" type="RecordingRefreshPeriodSeconds"/>\r
292           <xs:element name="maxConsecutiveFailures" type="RecordingMaxConsecutiveFailures"/>\r
293           <xs:element name="maxResponseWaitTimeMilliseconds" type="RecordingMaxResponseWaitTimeMilliseconds"/>\r
294           <xs:element name="continueCallAfterVideoRecordingFailure" type="xs:boolean"/>\r
295         </xs:sequence>\r
296       </xs:extension>\r
297     </xs:complexContent>\r
298   </xs:complexType>    \r
299     \r
300   <xs:complexType name="SystemCallRecordingModifyRequest">\r
301     <xs:annotation>\r
302       <xs:appinfo>\r
303         <asDataModeSupported>true</asDataModeSupported>\r
304         <hssDataModeSupported>false</hssDataModeSupported>\r
305       </xs:appinfo>\r
306       <xs:documentation>\r
307         Modify the system level data associated with Call Recording.\r
308         The response is either a SuccessResponse or an ErrorResponse.\r
309       </xs:documentation>\r
310     </xs:annotation>\r
311     <xs:complexContent>\r
312       <xs:extension base="core:OCIRequest">\r
313         <xs:sequence>\r
314           <xs:element name="continueCallAfterRecordingFailure" type="xs:boolean" minOccurs="0"/>\r
315           <xs:element name="refreshPeriodSeconds" type="RecordingRefreshPeriodSeconds" minOccurs="0"/>\r
316           <xs:element name="maxConsecutiveFailures" type="RecordingMaxConsecutiveFailures" minOccurs="0"/>\r
317           <xs:element name="maxResponseWaitTimeMilliseconds" type="RecordingMaxResponseWaitTimeMilliseconds" minOccurs="0"/>\r
318           <xs:element name="continueCallAfterVideoRecordingFailure" type="xs:boolean" minOccurs="0"/>\r
319         </xs:sequence>\r
320       </xs:extension>\r
321     </xs:complexContent>\r
322   </xs:complexType>    \r
323     \r
324   <xs:complexType name="UserCallRecordingGetRequest20">\r
325     <xs:annotation>\r
326       <xs:appinfo>\r
327         <asDataModeSupported>true</asDataModeSupported>\r
328         <hssDataModeSupported>false</hssDataModeSupported>\r
329       </xs:appinfo>\r
330       <xs:documentation>\r
331         Get the Call Recording attributes for a user.\r
332         The response is either a UserCallRecordingGetResponse20 or an ErrorResponse.\r
333         \r
334         The following parameters are not returned for service instance:\r
335           - pauseResumeNotification\r
336           - enableCallRecordingAnnouncement\r
337           - enableRecordCallRepeatWarningTone\r
338           - recordCallRepeatWarningToneTimerSeconds \r
339       </xs:documentation>\r
340     </xs:annotation>\r
341     <xs:complexContent>\r
342       <xs:extension base="core:OCIRequest">\r
343         <xs:sequence>\r
344           <xs:element name="userId" type="UserId"/>\r
345         </xs:sequence>\r
346       </xs:extension>\r
347     </xs:complexContent>\r
348   </xs:complexType>    \r
349     \r
350   <xs:complexType name="UserCallRecordingGetResponse20">\r
351     <xs:annotation>\r
352       <xs:appinfo>\r
353         <asDataModeSupported>true</asDataModeSupported>\r
354         <hssDataModeSupported>false</hssDataModeSupported>\r
355       </xs:appinfo>\r
356       <xs:documentation>\r
357         Response to the UserCallRecordingGetRequest20.\r
358         The response contains the user's Call Recording option information.\r
359         \r
360         The following parameters are not returned for service instance:\r
361           - pauseResumeNotification\r
362           - enableCallRecordingAnnouncement\r
363           - enableRecordCallRepeatWarningTone\r
364           - recordCallRepeatWarningToneTimerSeconds\r
365           \r
366         The enableVoiceMailRecording parameter is only returned if the Voice\r
367         Messaging User service is assigned to the user.  This applies to both\r
368         users and service instances.  \r
369       </xs:documentation>\r
370     </xs:annotation>\r
371     <xs:complexContent>\r
372       <xs:extension base="core:OCIDataResponse">\r
373         <xs:sequence>\r
374           <xs:element name="recordingOption" type="RecordingOption20"/>\r
375           <xs:element name="pauseResumeNotification" type="RecordingPauseResumeNotificationType" minOccurs="0"/>\r
376           <xs:element name="enableCallRecordingAnnouncement" type="xs:boolean" minOccurs="0"/>\r
377           <xs:element name="enableRecordCallRepeatWarningTone" type="xs:boolean" minOccurs="0"/>\r
378           <xs:element name="recordCallRepeatWarningToneTimerSeconds" type="CallRecordingRecordCallRepeatWarningToneTimerSeconds" minOccurs="0"/>\r
379           <xs:element name="enableVoiceMailRecording" type="xs:boolean" minOccurs="0"/>\r
380         </xs:sequence>\r
381       </xs:extension>\r
382     </xs:complexContent>\r
383   </xs:complexType>    \r
384     \r
385   <xs:complexType name="UserCallRecordingModifyRequest">\r
386     <xs:annotation>\r
387       <xs:appinfo>\r
388         <asDataModeSupported>true</asDataModeSupported>\r
389         <hssDataModeSupported>false</hssDataModeSupported>\r
390       </xs:appinfo>\r
391       <xs:documentation>\r
392         Modify the Call Recording attributes for a user. The recording options \r
393         "Always with Pause/Resume", "On Demand", and "On Demand with User \r
394         Initiated Start" are not accepted for service instances.\r
395 \r
396         The response is either a SuccessResponse or an ErrorResponse.\r
397         \r
398         The following parameters are not accepted for service\r
399         instance:\r
400           - pauseResumeNotification\r
401           - enableCallRecordingAnnouncement\r
402           - enableRecordCallRepeatWarningTone\r
403           - recordCallRepeatWarningToneTimerSeconds\r
404           \r
405         The enableVoiceMailRecording parameter is only applicable \r
406         if the Voice Messaging User service is assigned to the user.\r
407         This applies to both users and service instances.  \r
408       </xs:documentation>\r
409     </xs:annotation>\r
410     <xs:complexContent>\r
411       <xs:extension base="core:OCIRequest">\r
412         <xs:sequence>\r
413           <xs:element name="userId" type="UserId"/>\r
414           <xs:element name="recordingOption" type="RecordingOption20" minOccurs="0"/>\r
415           <xs:element name="pauseResumeNotification" type="RecordingPauseResumeNotificationType" minOccurs="0"/>\r
416           <xs:element name="enableCallRecordingAnnouncement" type="xs:boolean" minOccurs="0"/>\r
417           <xs:element name="enableRecordCallRepeatWarningTone" type="xs:boolean" minOccurs="0"/>\r
418           <xs:element name="recordCallRepeatWarningToneTimerSeconds" type="CallRecordingRecordCallRepeatWarningToneTimerSeconds" minOccurs="0"/>\r
419           <xs:element name="enableVoiceMailRecording" type="xs:boolean" minOccurs="0"/>\r
420         </xs:sequence>\r
421       </xs:extension>\r
422     </xs:complexContent>\r
423   </xs:complexType>    \r
424     \r
425   <xs:simpleType name="CallRecordingRecordCallRepeatWarningToneTimerSeconds">\r
426     <xs:annotation>\r
427       <xs:documentation>\r
428         The value in seconds specifying how often the end user\r
429         receives the warning tone that call is being recorded.\r
430       </xs:documentation>\r
431     </xs:annotation>\r
432     <xs:restriction base="xs:int">\r
433       <xs:minInclusive value="10"/>\r
434       <xs:maxInclusive value="1800"/>\r
435     </xs:restriction>\r
436   </xs:simpleType>    \r
437     \r
438   <xs:simpleType name="RecordingOption20">\r
439     <xs:annotation>\r
440       <xs:documentation>\r
441         Recording Service Configuration option.  The Always with Pause/Resume,\r
442         On Demand, and On Demand with User Initiated Start option are not\r
443         applicable for Service Users.\r
444       </xs:documentation>\r
445     </xs:annotation>\r
446     <xs:restriction base="xs:token">\r
447       <xs:enumeration value="Always"/>\r
448       <xs:enumeration value="Never"/>\r
449       <xs:enumeration value="On Demand"/>\r
450       <xs:enumeration value="Always with Pause/Resume"/>\r
451       <xs:enumeration value="On Demand with User Initiated Start"/>\r
452     </xs:restriction>\r
453   </xs:simpleType>    \r
454     \r
455   <xs:simpleType name="RecordingPauseResumeNotificationType">\r
456     <xs:annotation>\r
457       <xs:documentation>\r
458         Recording Service Play Resume Notidication Type.\r
459       </xs:documentation>\r
460     </xs:annotation>\r
461     <xs:restriction base="xs:token">\r
462       <xs:enumeration value="None"/>\r
463       <xs:enumeration value="Beep"/>\r
464       <xs:enumeration value="Play Announcement"/>\r
465     </xs:restriction>\r
466   </xs:simpleType>    \r
467     \r
468   <xs:simpleType name="RecordingMaxConsecutiveFailures">\r
469     <xs:annotation>\r
470       <xs:documentation>\r
471         The number of failure detections it takes to mark a server out of service.\r
472       </xs:documentation>\r
473     </xs:annotation>\r
474     <xs:restriction base="xs:int">\r
475       <xs:minInclusive value="1"/>\r
476       <xs:maxInclusive value="10"/>\r
477     </xs:restriction>\r
478   </xs:simpleType>    \r
479     \r
480   <xs:simpleType name="RecordingMaxResponseWaitTimeMilliseconds">\r
481     <xs:annotation>\r
482       <xs:documentation>\r
483         The value in milliseconds specifying how long to wait for a response from a server.\r
484       </xs:documentation>\r
485     </xs:annotation>\r
486     <xs:restriction base="xs:int">\r
487       <xs:minInclusive value="1000"/>\r
488       <xs:maxInclusive value="10000"/>\r
489     </xs:restriction>\r
490   </xs:simpleType>    \r
491     \r
492   <xs:simpleType name="RecordingRefreshPeriodSeconds">\r
493     <xs:annotation>\r
494       <xs:documentation>\r
495         The value in seconds specifying how long to wait before retrying a failed server.\r
496       </xs:documentation>\r
497     </xs:annotation>\r
498     <xs:restriction base="xs:int">\r
499       <xs:minInclusive value="10"/>\r
500       <xs:maxInclusive value="300"/>\r
501     </xs:restriction>\r
502   </xs:simpleType>    \r
503     \r
504 </xs:schema>\r