initial commit
[BroadWorks-OCI.git] / share / OCISchemaAS / Services / OCISchemaServiceHuntGroup.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 <!-- H U N T   G R O U P  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   <!-- H U N T   G R O U P    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     GroupHuntGroupAddInstanceRequest20    \r
36     GroupHuntGroupDeleteInstanceRequest    \r
37     GroupHuntGroupGetAvailableUserListRequest    \r
38     GroupHuntGroupGetInstanceListRequest    \r
39     GroupHuntGroupGetInstanceRequest20    \r
40     GroupHuntGroupModifyActiveInstanceListRequest    \r
41     GroupHuntGroupModifyInstanceRequest    \r
42     GroupHuntGroupModifyInstanceWeightedCallDistributionRequest    \r
43     SystemHuntGroupGetRequest21    \r
44     SystemHuntGroupModifyRequest21    \r
45     \r
46   --> \r
47   \r
48   <xs:complexType name="GroupHuntGroupAddInstanceRequest20">\r
49     <xs:annotation>\r
50       <xs:appinfo>\r
51         <asDataModeSupported>true</asDataModeSupported>\r
52         <hssDataModeSupported>true</hssDataModeSupported>\r
53       </xs:appinfo>\r
54       <xs:documentation>\r
55         Add a Hunt Group instance to a group.\r
56         The domain is required in the serviceUserId.\r
57         The response is either SuccessResponse or ErrorResponse.\r
58         The following elements are only used in AS data mode:\r
59            useSystemHuntGroupCLIDSetting, use value "true" in HSS data mode\r
60            includeHuntGroupNameInCLID, use value "true" in HSS data mode\r
61       </xs:documentation>\r
62     </xs:annotation>\r
63     <xs:complexContent>\r
64       <xs:extension base="core:OCIRequest">\r
65         <xs:sequence>\r
66           <xs:element name="serviceProviderId" type="ServiceProviderId"/>\r
67           <xs:element name="groupId" type="GroupId"/>\r
68           <xs:element name="serviceUserId" type="UserId"/>\r
69           <xs:element name="serviceInstanceProfile" type="ServiceInstanceAddProfile"/>\r
70           <xs:element name="policy" type="HuntPolicy"/>\r
71           <xs:element name="huntAfterNoAnswer" type="xs:boolean"/>\r
72           <xs:element name="noAnswerNumberOfRings" type="HuntNoAnswerRings"/>\r
73           <xs:element name="forwardAfterTimeout" type="xs:boolean"/>\r
74           <xs:element name="forwardTimeoutSeconds" type="HuntForwardTimeoutSeconds"/>\r
75           <xs:element name="forwardToPhoneNumber" type="OutgoingDN" minOccurs="0"/>\r
76           <xs:element name="agentUserId" type="UserId" minOccurs="0" maxOccurs="unbounded"/>\r
77           <xs:element name="allowCallWaitingForAgents" type="xs:boolean"/>\r
78           <xs:element name="useSystemHuntGroupCLIDSetting" type="xs:boolean"/>\r
79           <xs:element name="includeHuntGroupNameInCLID" type="xs:boolean"/>\r
80           <xs:element name="enableNotReachableForwarding" type="xs:boolean"/>\r
81           <xs:element name="notReachableForwardToPhoneNumber" type="OutgoingDNorSIPURI" minOccurs="0"/>\r
82           <xs:element name="makeBusyWhenNotReachable" type="xs:boolean"/>\r
83           <xs:element name="allowMembersToControlGroupBusy" type="xs:boolean"/>\r
84           <xs:element name="enableGroupBusy" type="xs:boolean"/>\r
85           <xs:element name="applyGroupBusyWhenTerminatingToAgent" type="xs:boolean"/>\r
86           <xs:element name="networkClassOfService" type="NetworkClassOfServiceName" minOccurs="0"/>\r
87         </xs:sequence>\r
88       </xs:extension>\r
89     </xs:complexContent>\r
90   </xs:complexType>    \r
91     \r
92   <xs:complexType name="GroupHuntGroupDeleteInstanceRequest">\r
93     <xs:annotation>\r
94       <xs:documentation>\r
95         Delete a Hunt Group instance from a group.\r
96         The response is either SuccessResponse or ErrorResponse.\r
97       </xs:documentation>\r
98     </xs:annotation>\r
99     <xs:complexContent>\r
100       <xs:extension base="core:OCIRequest">\r
101         <xs:sequence>\r
102           <xs:element name="serviceUserId" type="UserId"/>\r
103         </xs:sequence>\r
104       </xs:extension>\r
105     </xs:complexContent>\r
106   </xs:complexType>    \r
107     \r
108   <xs:complexType name="GroupHuntGroupGetAvailableUserListRequest">\r
109     <xs:annotation>\r
110       <xs:documentation>\r
111         Get a list of users that can be assigned to a Hunt Group group.\r
112         Searching for users by group only makes sense when the hunt group is part of an Enterprise.\r
113         The response is either GroupHuntGroupGetAvailableUserListResponse or ErrorResponse.\r
114       </xs:documentation>\r
115     </xs:annotation>\r
116     <xs:complexContent>\r
117       <xs:extension base="core:OCIRequest">\r
118         <xs:sequence>\r
119           <xs:element name="serviceProviderId" type="ServiceProviderId"/>\r
120           <xs:element name="groupId" type="GroupId"/>\r
121           <xs:element name="responseSizeLimit" type="ResponseSizeLimit" minOccurs="0"/>\r
122           <xs:element name="searchCriteriaUserLastName" type="SearchCriteriaUserLastName" minOccurs="0" maxOccurs="unbounded"/>\r
123           <xs:element name="searchCriteriaUserFirstName" type="SearchCriteriaUserFirstName" minOccurs="0" maxOccurs="unbounded"/>\r
124           <xs:element name="searchCriteriaExactUserDepartment" type="SearchCriteriaExactUserDepartment" minOccurs="0"/>\r
125           <xs:element name="searchCriteriaExactUserGroup" type="SearchCriteriaExactUserGroup" minOccurs="0"/>\r
126           <xs:element name="searchCriteriaUserId" type="SearchCriteriaUserId" minOccurs="0" maxOccurs="unbounded"/>\r
127           <xs:element name="searchCriteriaDn" type="SearchCriteriaDn" minOccurs="0" maxOccurs="unbounded"/>\r
128           <xs:element name="searchCriteriaExtension" type="SearchCriteriaExtension" minOccurs="0" maxOccurs="unbounded"/>\r
129         </xs:sequence>\r
130       </xs:extension>\r
131     </xs:complexContent>\r
132   </xs:complexType>    \r
133     \r
134   <xs:complexType name="GroupHuntGroupGetAvailableUserListResponse">\r
135     <xs:annotation>\r
136       <xs:documentation>\r
137         Response to the GroupHuntGroupGetAvailableUserListRequest.\r
138         Contains a table with column headings: "User Id", "Last Name", "First Name", "Hiragana Last Name", "Hiragana First Name",\r
139         "Phone Number", "Extension", "Department", "Email Address".\r
140       </xs:documentation>\r
141     </xs:annotation>\r
142     <xs:complexContent>\r
143       <xs:extension base="core:OCIDataResponse">\r
144         <xs:sequence>\r
145           <xs:element name="userTable" type="core:OCITable"/>\r
146         </xs:sequence>\r
147       </xs:extension>\r
148     </xs:complexContent>\r
149   </xs:complexType>    \r
150     \r
151   <xs:complexType name="GroupHuntGroupGetInstanceListRequest">\r
152     <xs:annotation>\r
153       <xs:documentation>\r
154         Get a list of Hunt Group instances within a group.\r
155         The response is either GroupHuntGroupGetInstanceListResponse or ErrorResponse.\r
156         It is possible to get the instances within a specified department.\r
157       </xs:documentation>\r
158     </xs:annotation>\r
159     <xs:complexContent>\r
160       <xs:extension base="core:OCIRequest">\r
161         <xs:sequence>\r
162           <xs:element name="serviceProviderId" type="ServiceProviderId"/>\r
163           <xs:element name="groupId" type="GroupId"/>\r
164           <xs:element name="groupDepartmentName" type="DepartmentName" minOccurs="0"/>\r
165         </xs:sequence>\r
166       </xs:extension>\r
167     </xs:complexContent>\r
168   </xs:complexType>    \r
169     \r
170   <xs:complexType name="GroupHuntGroupGetInstanceListResponse">\r
171     <xs:annotation>\r
172       <xs:documentation>\r
173         Response to the GroupHuntGroupGetInstanceListRequest.\r
174         Contains a table with column headings:\r
175         "Service User Id", "Name", "Phone Number", "Extension", "Department", "Is Active", "Policy".\r
176         The column values for "Is Active" can either be true, or false.\r
177         NOTE: prior to release 14, the policy column did not match the HuntPolicy enumerated type.\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="huntGroupTable" type="core:OCITable"/>\r
184         </xs:sequence>\r
185       </xs:extension>\r
186     </xs:complexContent>\r
187   </xs:complexType>    \r
188     \r
189   <xs:complexType name="GroupHuntGroupGetInstanceRequest20">\r
190     <xs:annotation>\r
191       <xs:appinfo>\r
192         <asDataModeSupported>true</asDataModeSupported>\r
193         <hssDataModeSupported>true</hssDataModeSupported>\r
194       </xs:appinfo>\r
195       <xs:documentation>\r
196         Request to get all the information of a Hunt Group instance.\r
197         The response is either GroupHuntGroupGetInstanceResponse20 or ErrorResponse.\r
198       </xs:documentation>\r
199     </xs:annotation>\r
200     <xs:complexContent>\r
201       <xs:extension base="core:OCIRequest">\r
202         <xs:sequence>\r
203           <xs:element name="serviceUserId" type="UserId"/>\r
204         </xs:sequence>\r
205       </xs:extension>\r
206     </xs:complexContent>\r
207   </xs:complexType>    \r
208     \r
209   <xs:complexType name="GroupHuntGroupGetInstanceResponse20">\r
210     <xs:annotation>\r
211       <xs:appinfo>\r
212         <asDataModeSupported>true</asDataModeSupported>\r
213         <hssDataModeSupported>true</hssDataModeSupported>\r
214       </xs:appinfo>\r
215       <xs:documentation>\r
216         Response to GroupHuntGroupGetInstanceRequest20.\r
217         Contains the service profile information and a table of assigned users.\r
218         The table has column headings: "User Id", "Last Name", "First Name",\r
219         "Hiragana Last Name", "Hiragana First Name", "Weight", "Phone Number", \r
220         "Extension", "Department", "Email Address".\r
221         The following elements are only used in AS data mode:\r
222            useSystemHuntGroupCLIDSetting\r
223                includeHuntGroupNameInCLID\r
224       </xs:documentation>\r
225     </xs:annotation>\r
226     <xs:complexContent>\r
227       <xs:extension base="core:OCIDataResponse">\r
228         <xs:sequence>\r
229           <xs:element name="serviceInstanceProfile" type="ServiceInstanceReadProfile19sp1"/>\r
230           <xs:element name="policy" type="HuntPolicy"/>\r
231           <xs:element name="huntAfterNoAnswer" type="xs:boolean"/>\r
232           <xs:element name="noAnswerNumberOfRings" type="HuntNoAnswerRings"/>\r
233           <xs:element name="forwardAfterTimeout" type="xs:boolean"/>\r
234           <xs:element name="forwardTimeoutSeconds" type="HuntForwardTimeoutSeconds"/>\r
235           <xs:element name="forwardToPhoneNumber" type="OutgoingDN" minOccurs="0"/>\r
236           <xs:element name="agentUserTable" type="core:OCITable"/>\r
237           <xs:element name="allowCallWaitingForAgents" type="xs:boolean"/>\r
238           <xs:element name="useSystemHuntGroupCLIDSetting" type="xs:boolean"/>\r
239           <xs:element name="includeHuntGroupNameInCLID" type="xs:boolean"/>\r
240           <xs:element name="enableNotReachableForwarding" type="xs:boolean"/>\r
241           <xs:element name="notReachableForwardToPhoneNumber" type="OutgoingDNorSIPURI" minOccurs="0"/>\r
242           <xs:element name="makeBusyWhenNotReachable" type="xs:boolean"/>\r
243           <xs:element name="allowMembersToControlGroupBusy" type="xs:boolean"/>\r
244           <xs:element name="enableGroupBusy" type="xs:boolean"/>\r
245           <xs:element name="applyGroupBusyWhenTerminatingToAgent" type="xs:boolean"/>\r
246           <xs:element name="networkClassOfService" type="NetworkClassOfServiceName" minOccurs="0"/>\r
247         </xs:sequence>\r
248       </xs:extension>\r
249     </xs:complexContent>\r
250   </xs:complexType>    \r
251     \r
252   <xs:complexType name="GroupHuntGroupModifyActiveInstanceListRequest">\r
253     <xs:annotation>\r
254       <xs:documentation>\r
255         Request to set the active status of Hunt Group instances.\r
256         The response is either SuccessResponse or ErrorResponse.\r
257       </xs:documentation>\r
258     </xs:annotation>\r
259     <xs:complexContent>\r
260       <xs:extension base="core:OCIRequest">\r
261         <xs:sequence>\r
262           <xs:element name="serviceActivation" type="ServiceActivation" minOccurs="0" maxOccurs="unbounded"/>\r
263         </xs:sequence>\r
264       </xs:extension>\r
265     </xs:complexContent>\r
266   </xs:complexType>    \r
267     \r
268   <xs:complexType name="GroupHuntGroupModifyInstanceRequest">\r
269     <xs:annotation>\r
270       <xs:appinfo>\r
271         <asDataModeSupported>true</asDataModeSupported>\r
272         <hssDataModeSupported>true</hssDataModeSupported>\r
273       </xs:appinfo>\r
274       <xs:documentation>\r
275         Request to modify a Hunt Group instance.\r
276         The response is either SuccessResponse or ErrorResponse.\r
277         The following elements are only used in AS data mode:\r
278            useSystemHuntGroupCLIDSetting\r
279            includeHuntGroupNameInCLID\r
280       </xs:documentation>\r
281     </xs:annotation>\r
282     <xs:complexContent>\r
283       <xs:extension base="core:OCIRequest">\r
284         <xs:sequence>\r
285           <xs:element name="serviceUserId" type="UserId"/>\r
286           <xs:element name="serviceInstanceProfile" type="ServiceInstanceModifyProfile" minOccurs="0"/>\r
287           <xs:element name="policy" type="HuntPolicy" minOccurs="0"/>\r
288           <xs:element name="huntAfterNoAnswer" type="xs:boolean" minOccurs="0"/>\r
289           <xs:element name="noAnswerNumberOfRings" type="HuntNoAnswerRings" minOccurs="0"/>\r
290           <xs:element name="forwardAfterTimeout" type="xs:boolean" minOccurs="0"/>\r
291           <xs:element name="forwardTimeoutSeconds" type="HuntForwardTimeoutSeconds" minOccurs="0"/>\r
292           <xs:element name="forwardToPhoneNumber" type="OutgoingDN" nillable="true" minOccurs="0"/>\r
293           <xs:element name="agentUserIdList" type="ReplacementUserIdList" nillable="true" minOccurs="0"/>\r
294           <xs:element name="allowCallWaitingForAgents" type="xs:boolean" minOccurs="0"/>\r
295           <xs:element name="useSystemHuntGroupCLIDSetting" type="xs:boolean" minOccurs="0"/>\r
296           <xs:element name="includeHuntGroupNameInCLID" type="xs:boolean" minOccurs="0"/>\r
297           <xs:element name="enableNotReachableForwarding" type="xs:boolean" minOccurs="0"/>\r
298           <xs:element name="notReachableForwardToPhoneNumber" type="OutgoingDNorSIPURI" nillable="true" minOccurs="0"/>\r
299           <xs:element name="makeBusyWhenNotReachable" type="xs:boolean" minOccurs="0"/>\r
300           <xs:element name="allowMembersToControlGroupBusy" type="xs:boolean" minOccurs="0"/>\r
301           <xs:element name="enableGroupBusy" type="xs:boolean" minOccurs="0"/>\r
302           <xs:element name="applyGroupBusyWhenTerminatingToAgent" type="xs:boolean" minOccurs="0"/>\r
303           <xs:element name="networkClassOfService" type="NetworkClassOfServiceName" minOccurs="0"/>\r
304         </xs:sequence>\r
305       </xs:extension>\r
306     </xs:complexContent>\r
307   </xs:complexType>    \r
308     \r
309   <xs:complexType name="GroupHuntGroupModifyInstanceWeightedCallDistributionRequest">\r
310     <xs:annotation>\r
311       <xs:documentation>\r
312         Request to modify the weighted call distribution of a Hunt Group instance.\r
313         The response is either SuccessResponse or ErrorResponse.\r
314         NOTE: Prior to release 14, any agents who were not in the list kept their\r
315         existing weight setting. In release 14, any agents who are not in the list\r
316         will have their weight set to 0.\r
317       </xs:documentation>\r
318     </xs:annotation>\r
319     <xs:complexContent>\r
320       <xs:extension base="core:OCIRequest">\r
321         <xs:sequence>\r
322           <xs:element name="serviceUserId" type="UserId"/>\r
323           <xs:element name="agentWeight" type="HuntAgentWeight" minOccurs="0" maxOccurs="unbounded"/>\r
324         </xs:sequence>\r
325       </xs:extension>\r
326     </xs:complexContent>\r
327   </xs:complexType>    \r
328     \r
329   <xs:complexType name="SystemHuntGroupGetRequest21">\r
330     <xs:annotation>\r
331       <xs:documentation>\r
332         Request the system level data associated with Hunt Group.\r
333         The response is either a SystemHuntGroupGetResponse21 or an\r
334         ErrorResponse.\r
335       </xs:documentation>\r
336     </xs:annotation>\r
337     <xs:complexContent>\r
338       <xs:extension base="core:OCIRequest">\r
339         <xs:sequence/>\r
340       </xs:extension>\r
341     </xs:complexContent>\r
342   </xs:complexType>    \r
343     \r
344   <xs:complexType name="SystemHuntGroupGetResponse21">\r
345     <xs:annotation>\r
346       <xs:documentation>\r
347         Response to SystemHuntGroupGetRequest21.\r
348       </xs:documentation>\r
349     </xs:annotation>\r
350     <xs:complexContent>\r
351       <xs:extension base="core:OCIDataResponse">\r
352         <xs:sequence>\r
353           <xs:element name="removeHuntGroupNameFromCLID" type="xs:boolean"/>\r
354           <xs:element name="uniformCallDistributionPolicyScope" type="HuntGroupUniformCallDistributionPolicyScope"/>\r
355           <xs:element name="allowAgentDeviceInitiatedForward" type="xs:boolean"/>\r
356         </xs:sequence>\r
357       </xs:extension>\r
358     </xs:complexContent>\r
359   </xs:complexType>    \r
360     \r
361   <xs:complexType name="SystemHuntGroupModifyRequest21">\r
362     <xs:annotation>\r
363       <xs:documentation>\r
364         Modify the system level data associated with Hunt Group.\r
365         The response is either a SuccessResponse or an ErrorResponse.\r
366       </xs:documentation>\r
367     </xs:annotation>\r
368     <xs:complexContent>\r
369       <xs:extension base="core:OCIRequest">\r
370         <xs:sequence>\r
371           <xs:element name="removeHuntGroupNameFromCLID" type="xs:boolean" minOccurs="0"/>\r
372           <xs:element name="uniformCallDistributionPolicyScope" type="HuntGroupUniformCallDistributionPolicyScope" minOccurs="0"/>\r
373           <xs:element name="allowAgentDeviceInitiatedForward" type="xs:boolean" minOccurs="0"/>\r
374         </xs:sequence>\r
375       </xs:extension>\r
376     </xs:complexContent>\r
377   </xs:complexType>    \r
378     \r
379   <xs:simpleType name="HuntGroupUniformCallDistributionPolicyScope">\r
380     <xs:annotation>\r
381       <xs:documentation>\r
382         Hunt group Uniform Call Distribution Policy Scope.\r
383       </xs:documentation>\r
384     </xs:annotation>\r
385     <xs:restriction base="xs:token">\r
386       <xs:enumeration value="Agent"/>\r
387       <xs:enumeration value="Hunt Group"/>\r
388     </xs:restriction>\r
389   </xs:simpleType>    \r
390     \r
391 </xs:schema>\r