initial commit
[BroadWorks-OCI.git] / share / OCISchemaAS / Services / OCISchemaServiceCallPark.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   P A R K  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   <xs:include schemaLocation="../OCISchemaSearchCriteria.xsd"/>\r
25   \r
26   <!-- ********************************************************************************** -->\r
27   <!-- C A L L   P A R K    R E Q U E S T S  A N D  R E S P O N S E S                     -->\r
28   <!-- ********************************************************************************** -->\r
29   <!--\r
30   Requests and responses are listed here in alphabetical order.\r
31   The non-primitive attributes inside the commands are defined in another\r
32   section of the schema.\r
33 \r
34   Requests in this schema file:\r
35     GroupCallParkAddInstanceRequest16sp2    \r
36     GroupCallParkDeleteInstanceRequest    \r
37     GroupCallParkGetAvailableAlternateRecallUserListRequest    \r
38     GroupCallParkGetAvailableUserListRequest    \r
39     GroupCallParkGetInstanceListRequest    \r
40     GroupCallParkGetInstanceRequest16sp2    \r
41     GroupCallParkGetRequest16sp2    \r
42     GroupCallParkModifyInstanceRequest    \r
43     GroupCallParkModifyRequest    \r
44     UserCallParkGetRequest    \r
45     \r
46   --> \r
47   \r
48   <xs:complexType name="GroupCallParkAddInstanceRequest16sp2">\r
49     <xs:annotation>\r
50       <xs:documentation>\r
51         Adds a Call Park group.\r
52         The response is either SuccessResponse or ErrorResponse.\r
53         \r
54         The following elements are only used in AS data mode:\r
55          recallAlternateUserId\r
56          recallTo, use value "Parking User Only" in HSS data mode\r
57       </xs:documentation>\r
58     </xs:annotation>\r
59     <xs:complexContent>\r
60       <xs:extension base="core:OCIRequest">\r
61         <xs:sequence>\r
62           <xs:element name="serviceProviderId" type="ServiceProviderId"/>\r
63           <xs:element name="groupId" type="GroupId"/>\r
64           <xs:element name="name" type="ServiceInstanceName"/>\r
65           <xs:element name="userId" type="UserId" minOccurs="0" maxOccurs="unbounded"/>\r
66           <xs:element name="recallAlternateUserId" type="UserId" minOccurs="0"/>\r
67           <xs:element name="recallTo" type="CallParkRecallTo"/>\r
68         </xs:sequence>\r
69       </xs:extension>\r
70     </xs:complexContent>\r
71   </xs:complexType>    \r
72     \r
73   <xs:complexType name="GroupCallParkDeleteInstanceRequest">\r
74     <xs:annotation>\r
75       <xs:documentation>\r
76         Deletes a Call Park group.\r
77         The response is either SuccessResponse or ErrorResponse.\r
78       </xs:documentation>\r
79     </xs:annotation>\r
80     <xs:complexContent>\r
81       <xs:extension base="core:OCIRequest">\r
82         <xs:sequence>\r
83           <xs:element name="serviceProviderId" type="ServiceProviderId"/>\r
84           <xs:element name="groupId" type="GroupId"/>\r
85           <xs:element name="name" type="ServiceInstanceName"/>\r
86         </xs:sequence>\r
87       </xs:extension>\r
88     </xs:complexContent>\r
89   </xs:complexType>    \r
90     \r
91   <xs:complexType name="GroupCallParkGetAvailableAlternateRecallUserListRequest">\r
92     <xs:annotation>\r
93       <xs:appinfo>\r
94         <asDataModeSupported>true</asDataModeSupported>\r
95         <hssDataModeSupported>false</hssDataModeSupported>\r
96       </xs:appinfo>\r
97       <xs:documentation>\r
98         Get a list of hunt groups that are available to select as an alternate recall user.\r
99         The response is either GroupCallParkGetAvailableAlternateRecallUserListResponse or ErrorResponse.\r
100       </xs:documentation>\r
101     </xs:annotation>\r
102     <xs:complexContent>\r
103       <xs:extension base="core:OCIRequest">\r
104         <xs:sequence>\r
105           <xs:element name="serviceProviderId" type="ServiceProviderId"/>\r
106           <xs:element name="groupId" type="GroupId"/>\r
107           <xs:element name="responseSizeLimit" type="ResponseSizeLimit" minOccurs="0"/>\r
108           <xs:element name="searchCriteriaUserLastName" type="SearchCriteriaUserLastName" minOccurs="0" maxOccurs="unbounded"/>\r
109           <xs:element name="searchCriteriaUserFirstName" type="SearchCriteriaUserFirstName" minOccurs="0" maxOccurs="unbounded"/>\r
110           <xs:element name="searchCriteriaExactUserDepartment" type="SearchCriteriaExactUserDepartment" minOccurs="0"/>\r
111         </xs:sequence>\r
112       </xs:extension>\r
113     </xs:complexContent>\r
114   </xs:complexType>    \r
115     \r
116   <xs:complexType name="GroupCallParkGetAvailableAlternateRecallUserListResponse">\r
117     <xs:annotation>\r
118       <xs:appinfo>\r
119         <asDataModeSupported>true</asDataModeSupported>\r
120         <hssDataModeSupported>false</hssDataModeSupported>\r
121       </xs:appinfo>\r
122       <xs:documentation>\r
123         Response to the GroupCallParkGetAvailableAlternateRecallUserListResponse.\r
124         Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name", "Hiragana First Name".\r
125       </xs:documentation>\r
126     </xs:annotation>\r
127     <xs:complexContent>\r
128       <xs:extension base="core:OCIDataResponse">\r
129         <xs:sequence>\r
130           <xs:element name="availableHuntGroupTable" type="core:OCITable"/>\r
131         </xs:sequence>\r
132       </xs:extension>\r
133     </xs:complexContent>\r
134   </xs:complexType>    \r
135     \r
136   <xs:complexType name="GroupCallParkGetAvailableUserListRequest">\r
137     <xs:annotation>\r
138       <xs:documentation>\r
139         Get a list of users that can be assigned to a Call Park group.\r
140         The available user list for a new Call Park group can be obtained\r
141         by not setting the name.\r
142         The response is either GroupCallParkGetAvailableUserListResponse or ErrorResponse.\r
143       </xs:documentation>\r
144     </xs:annotation>\r
145     <xs:complexContent>\r
146       <xs:extension base="core:OCIRequest">\r
147         <xs:sequence>\r
148           <xs:element name="serviceProviderId" type="ServiceProviderId"/>\r
149           <xs:element name="groupId" type="GroupId"/>\r
150           <xs:element name="name" type="ServiceInstanceName" minOccurs="0"/>\r
151           <xs:element name="responseSizeLimit" type="ResponseSizeLimit" minOccurs="0"/>\r
152           <xs:element name="searchCriteriaUserLastName" type="SearchCriteriaUserLastName" minOccurs="0" maxOccurs="unbounded"/>\r
153           <xs:element name="searchCriteriaUserFirstName" type="SearchCriteriaUserFirstName" minOccurs="0" maxOccurs="unbounded"/>\r
154           <xs:element name="searchCriteriaExactUserDepartment" type="SearchCriteriaExactUserDepartment" minOccurs="0"/>\r
155           <xs:element name="searchCriteriaUserId" type="SearchCriteriaUserId" minOccurs="0" maxOccurs="unbounded"/>\r
156           <xs:element name="searchCriteriaDn" type="SearchCriteriaDn" minOccurs="0" maxOccurs="unbounded"/>\r
157           <xs:element name="searchCriteriaExtension" type="SearchCriteriaExtension" minOccurs="0" maxOccurs="unbounded"/>\r
158         </xs:sequence>\r
159       </xs:extension>\r
160     </xs:complexContent>\r
161   </xs:complexType>    \r
162     \r
163   <xs:complexType name="GroupCallParkGetAvailableUserListResponse">\r
164     <xs:annotation>\r
165       <xs:documentation>\r
166         Response to the GroupCallParkGetAvailableUserListRequest.\r
167         Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name", \r
168         "Hiragana First Name", "Phone Number", "Extension", "Department", "Email Address".\r
169       </xs:documentation>\r
170     </xs:annotation>\r
171     <xs:complexContent>\r
172       <xs:extension base="core:OCIDataResponse">\r
173         <xs:sequence>\r
174           <xs:element name="userTable" type="core:OCITable"/>\r
175         </xs:sequence>\r
176       </xs:extension>\r
177     </xs:complexContent>\r
178   </xs:complexType>    \r
179     \r
180   <xs:complexType name="GroupCallParkGetInstanceListRequest">\r
181     <xs:annotation>\r
182       <xs:documentation>\r
183         Request to get a list of Call Park group instances within a group.\r
184         The response is either GroupCallParkGetInstanceListResponse or ErrorResponse.\r
185       </xs:documentation>\r
186     </xs:annotation>\r
187     <xs:complexContent>\r
188       <xs:extension base="core:OCIRequest">\r
189         <xs:sequence>\r
190           <xs:element name="serviceProviderId" type="ServiceProviderId"/>\r
191           <xs:element name="groupId" type="GroupId"/>\r
192         </xs:sequence>\r
193       </xs:extension>\r
194     </xs:complexContent>\r
195   </xs:complexType>    \r
196     \r
197   <xs:complexType name="GroupCallParkGetInstanceListResponse">\r
198     <xs:annotation>\r
199       <xs:documentation>\r
200         Response to the GroupCallParkGetInstanceListRequest.\r
201       </xs:documentation>\r
202     </xs:annotation>\r
203     <xs:complexContent>\r
204       <xs:extension base="core:OCIDataResponse">\r
205         <xs:sequence>\r
206           <xs:element name="name" type="ServiceInstanceName" minOccurs="0" maxOccurs="unbounded"/>\r
207         </xs:sequence>\r
208       </xs:extension>\r
209     </xs:complexContent>\r
210   </xs:complexType>    \r
211     \r
212   <xs:complexType name="GroupCallParkGetInstanceRequest16sp2">\r
213     <xs:annotation>\r
214       <xs:documentation>\r
215         Gets a Call Park group.\r
216         The response is either GroupCallParkGetInstanceResponse16sp2 or ErrorResponse.\r
217       </xs:documentation>\r
218     </xs:annotation>\r
219     <xs:complexContent>\r
220       <xs:extension base="core:OCIRequest">\r
221         <xs:sequence>\r
222           <xs:element name="serviceProviderId" type="ServiceProviderId"/>\r
223           <xs:element name="groupId" type="GroupId"/>\r
224           <xs:element name="name" type="ServiceInstanceName"/>\r
225         </xs:sequence>\r
226       </xs:extension>\r
227     </xs:complexContent>\r
228   </xs:complexType>    \r
229     \r
230   <xs:complexType name="GroupCallParkGetInstanceResponse16sp2">\r
231     <xs:annotation>\r
232       <xs:documentation>\r
233         Response to the GroupCallParkGetInstanceRequest16sp2.\r
234         Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name", \r
235         "Hiragana First Name", "Phone Number", "Extension", "Department", "Email Address".  \r
236         The users are in the table are in the order they will try to be parked on.\r
237         \r
238         The following elements are only used in AS data mode:\r
239          recallAlternateUserId\r
240          recallTo\r
241       </xs:documentation>\r
242     </xs:annotation>\r
243     <xs:complexContent>\r
244       <xs:extension base="core:OCIDataResponse">\r
245         <xs:sequence>\r
246           <xs:element name="recallAlternateUserId" type="UserId" minOccurs="0"/>\r
247           <xs:element name="recallTo" type="CallParkRecallTo"/>\r
248           <xs:element name="userTable" type="core:OCITable"/>\r
249         </xs:sequence>\r
250       </xs:extension>\r
251     </xs:complexContent>\r
252   </xs:complexType>    \r
253     \r
254   <xs:complexType name="GroupCallParkGetRequest16sp2">\r
255     <xs:annotation>\r
256       <xs:documentation>\r
257         Gets the Call Park Group settings.\r
258         The response is either GroupCallParkGetResponse16sp2 or ErrorResponse.\r
259       </xs:documentation>\r
260     </xs:annotation>\r
261     <xs:complexContent>\r
262       <xs:extension base="core:OCIRequest">\r
263         <xs:sequence>\r
264           <xs:element name="serviceProviderId" type="ServiceProviderId"/>\r
265           <xs:element name="groupId" type="GroupId"/>\r
266         </xs:sequence>\r
267       </xs:extension>\r
268     </xs:complexContent>\r
269   </xs:complexType>    \r
270     \r
271   <xs:complexType name="GroupCallParkGetResponse16sp2">\r
272     <xs:annotation>\r
273       <xs:documentation>\r
274         Response to the GroupCallParkGetRequest16sp2.\r
275         Contains the settings that apply to the whole group for Call Park.\r
276         \r
277         The following elements are only used in AS data mode:\r
278          recallAlternateUserId       \r
279          recallRingPattern\r
280          recallTo\r
281          alternateUserRecallTimerSeconds\r
282       </xs:documentation>\r
283     </xs:annotation>\r
284     <xs:complexContent>\r
285       <xs:extension base="core:OCIDataResponse">\r
286         <xs:sequence>\r
287           <xs:element name="recallTimerSeconds" type="CallParkRecallTimerSeconds"/>\r
288           <xs:element name="displayTimerSeconds" type="CallParkDisplayTimerSeconds"/>\r
289           <xs:element name="enableDestinationAnnouncement" type="xs:boolean"/>\r
290           <xs:element name="recallAlternateUserId" type="UserId" minOccurs="0"/>\r
291           <xs:element name="recallRingPattern" type="RingPattern"/>\r
292           <xs:element name="recallTo" type="CallParkRecallTo"/>\r
293           <xs:element name="alternateUserRecallTimerSeconds" type="CallParkRecallTimerSeconds"/>\r
294         </xs:sequence>\r
295       </xs:extension>\r
296     </xs:complexContent>\r
297   </xs:complexType>    \r
298     \r
299   <xs:complexType name="GroupCallParkModifyInstanceRequest">\r
300     <xs:annotation>\r
301       <xs:documentation>\r
302         Modifies a Call Park group. Replaces the entire list of users in the group.  \r
303         The users are in the list are in the order they will try to be parked on.\r
304         The response is either SuccessResponse or ErrorResponse.\r
305         \r
306         The following elements are only used in AS data mode:\r
307          recallAlternateUserId\r
308          recallTo\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="serviceProviderId" type="ServiceProviderId"/>\r
315           <xs:element name="groupId" type="GroupId"/>\r
316           <xs:element name="name" type="ServiceInstanceName"/>\r
317           <xs:element name="newName" type="ServiceInstanceName" minOccurs="0"/>\r
318           <xs:element name="userIdList" type="ReplacementUserIdList" nillable="true" minOccurs="0"/>\r
319           <xs:element name="recallAlternateUserId" type="UserId" nillable="true" minOccurs="0"/>\r
320           <xs:element name="recallTo" type="CallParkRecallTo" minOccurs="0"/>\r
321         </xs:sequence>\r
322       </xs:extension>\r
323     </xs:complexContent>\r
324   </xs:complexType>    \r
325     \r
326   <xs:complexType name="GroupCallParkModifyRequest">\r
327     <xs:annotation>\r
328       <xs:documentation>\r
329         Modifies the Group's Call Park settings.\r
330         The response is either SuccessResponse or ErrorResponse.\r
331         \r
332         The following elements are only used in AS data mode:\r
333          recallAlternateUserId\r
334          recallRingPattern\r
335          recallTo\r
336          alternateUserRecallTimerSeconds\r
337       </xs:documentation>\r
338     </xs:annotation>\r
339     <xs:complexContent>\r
340       <xs:extension base="core:OCIRequest">\r
341         <xs:sequence>\r
342           <xs:element name="serviceProviderId" type="ServiceProviderId"/>\r
343           <xs:element name="groupId" type="GroupId"/>\r
344           <xs:element name="recallTimerSeconds" type="CallParkRecallTimerSeconds" minOccurs="0"/>\r
345           <xs:element name="displayTimerSeconds" type="CallParkDisplayTimerSeconds" minOccurs="0"/>\r
346           <xs:element name="enableDestinationAnnouncement" type="xs:boolean" minOccurs="0"/>\r
347           <xs:element name="recallAlternateUserId" type="UserId" nillable="true" minOccurs="0"/>\r
348           <xs:element name="recallRingPattern" type="RingPattern" minOccurs="0"/>\r
349           <xs:element name="recallTo" type="CallParkRecallTo" minOccurs="0"/>\r
350           <xs:element name="alternateUserRecallTimerSeconds" type="CallParkRecallTimerSeconds" minOccurs="0"/>\r
351         </xs:sequence>\r
352       </xs:extension>\r
353     </xs:complexContent>\r
354   </xs:complexType>    \r
355     \r
356   <xs:complexType name="UserCallParkGetRequest">\r
357     <xs:annotation>\r
358       <xs:documentation>\r
359          Identifies which Call Park group the user belongs to if any and the list of users in the group.\r
360         The response is either UserCallParkGetResponse or ErrorResponse.\r
361       </xs:documentation>\r
362     </xs:annotation>\r
363     <xs:complexContent>\r
364       <xs:extension base="core:OCIRequest">\r
365         <xs:sequence>\r
366           <xs:element name="userId" type="UserId"/>\r
367         </xs:sequence>\r
368       </xs:extension>\r
369     </xs:complexContent>\r
370   </xs:complexType>    \r
371     \r
372   <xs:complexType name="UserCallParkGetResponse">\r
373     <xs:annotation>\r
374       <xs:documentation>\r
375         Response to the UserCallParkGetRequest.\r
376         Identifies which Call Park group the user belongs to and the list of users in the group.\r
377         Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name", \r
378         "Hiragana First Name".  The users are in the table in the order they will try to be parked on.\r
379       </xs:documentation>\r
380     </xs:annotation>\r
381     <xs:complexContent>\r
382       <xs:extension base="core:OCIDataResponse">\r
383         <xs:sequence>\r
384           <xs:element name="name" type="ServiceInstanceName" minOccurs="0"/>\r
385           <xs:element name="userTable" type="core:OCITable"/>\r
386         </xs:sequence>\r
387       </xs:extension>\r
388     </xs:complexContent>\r
389   </xs:complexType>    \r
390     \r
391   <xs:simpleType name="CallParkDisplayTimerSeconds">\r
392     <xs:annotation>\r
393       <xs:documentation>\r
394          The timer determines how long the extension/DN of the parked against user is displayed.\r
395       </xs:documentation>\r
396     </xs:annotation>\r
397     <xs:restriction base="xs:int">\r
398       <xs:minInclusive value="2"/>\r
399       <xs:maxInclusive value="15"/>\r
400     </xs:restriction>\r
401   </xs:simpleType>    \r
402     \r
403   <xs:simpleType name="CallParkRecallTimerSeconds">\r
404     <xs:annotation>\r
405       <xs:documentation>\r
406          The timer determines how long a call can be parked before the parker is recalled.\r
407       </xs:documentation>\r
408     </xs:annotation>\r
409     <xs:restriction base="xs:int">\r
410       <xs:minInclusive value="30"/>\r
411       <xs:maxInclusive value="600"/>\r
412     </xs:restriction>\r
413   </xs:simpleType>    \r
414     \r
415   <xs:simpleType name="CallParkRecallTo">\r
416     <xs:annotation>\r
417       <xs:documentation>\r
418              Call Park recall user options\r
419       </xs:documentation>\r
420     </xs:annotation>\r
421     <xs:restriction base="xs:token">\r
422       <xs:enumeration value="Parking User Only"/>\r
423       <xs:enumeration value="Parking User Then Alternate User"/>\r
424       <xs:enumeration value="Alternate User Only"/>\r
425     </xs:restriction>\r
426   </xs:simpleType>    \r
427     \r
428 </xs:schema>\r