initial commit
[BroadWorks-OCI.git] / share / OCISchemaAS / Services / OCISchemaServiceCallMeNow.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   M E   N O W  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   M E   N O W    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     SystemCallMeNowGetRequest    \r
35     SystemCallMeNowModifyRequest    \r
36     UserCallMeNowAddCriteriaRequest    \r
37     UserCallMeNowDeleteCriteriaRequest    \r
38     UserCallMeNowGetCriteriaRequest    \r
39     UserCallMeNowGetRequest    \r
40     UserCallMeNowModifyCriteriaRequest    \r
41     UserCallMeNowModifyRequest    \r
42     \r
43   --> \r
44   \r
45   <xs:complexType name="SystemCallMeNowGetRequest">\r
46     <xs:annotation>\r
47       <xs:appinfo>\r
48         <asDataModeSupported>true</asDataModeSupported>\r
49         <hssDataModeSupported>false</hssDataModeSupported>\r
50       </xs:appinfo>\r
51       <xs:documentation>\r
52         Request the system level data associated with Call Me Now service.\r
53         The response is either a SystemCallMeNowGetResponse or an ErrorResponse.\r
54       </xs:documentation>\r
55     </xs:annotation>\r
56     <xs:complexContent>\r
57       <xs:extension base="core:OCIRequest">\r
58         <xs:sequence/>\r
59       </xs:extension>\r
60     </xs:complexContent>\r
61   </xs:complexType>    \r
62     \r
63   <xs:complexType name="SystemCallMeNowGetResponse">\r
64     <xs:annotation>\r
65       <xs:appinfo>\r
66         <asDataModeSupported>true</asDataModeSupported>\r
67         <hssDataModeSupported>false</hssDataModeSupported>\r
68       </xs:appinfo>\r
69       <xs:documentation>\r
70         Response to SystemCallMeNowGetRequest.\r
71       </xs:documentation>\r
72     </xs:annotation>\r
73     <xs:complexContent>\r
74       <xs:extension base="core:OCIDataResponse">\r
75         <xs:sequence>\r
76           <xs:element name="passcodeLength" type="CallMeNowPasscodeLength"/>\r
77           <xs:element name="passcodeTimeoutSeconds" type="CallMeNowPasscodeTimeoutSeconds"/>\r
78         </xs:sequence>\r
79       </xs:extension>\r
80     </xs:complexContent>\r
81   </xs:complexType>    \r
82     \r
83   <xs:complexType name="SystemCallMeNowModifyRequest">\r
84     <xs:annotation>\r
85       <xs:appinfo>\r
86         <asDataModeSupported>true</asDataModeSupported>\r
87         <hssDataModeSupported>false</hssDataModeSupported>\r
88       </xs:appinfo>\r
89       <xs:documentation>\r
90         Modify the system level data associated with Call me now service.\r
91         The response is either a SuccessResponse or an ErrorResponse.\r
92       </xs:documentation>\r
93     </xs:annotation>\r
94     <xs:complexContent>\r
95       <xs:extension base="core:OCIRequest">\r
96         <xs:sequence>\r
97           <xs:element name="passcodeLength" type="CallMeNowPasscodeLength" minOccurs="0"/>\r
98           <xs:element name="passcodeTimeoutSeconds" type="CallMeNowPasscodeTimeoutSeconds" minOccurs="0"/>\r
99         </xs:sequence>\r
100       </xs:extension>\r
101     </xs:complexContent>\r
102   </xs:complexType>    \r
103     \r
104   <xs:complexType name="UserCallMeNowAddCriteriaRequest">\r
105     <xs:annotation>\r
106       <xs:documentation>\r
107         Add a criterion to the user's call me now service.  The criterion added is automatically active.\r
108         The response is either a SuccessResponse or an ErrorResponse.\r
109       </xs:documentation>\r
110     </xs:annotation>\r
111     <xs:complexContent>\r
112       <xs:extension base="core:OCIRequest">\r
113         <xs:sequence>\r
114           <xs:element name="userId" type="UserId"/>\r
115           <xs:element name="criteriaName" type="CriteriaName"/>\r
116           <xs:element name="timeSchedule" type="TimeSchedule" minOccurs="0"/>\r
117           <xs:element name="holidaySchedule" type="HolidaySchedule" minOccurs="0"/>\r
118           <xs:element name="rejectCall" type="xs:boolean"/>\r
119           <xs:element name="toDnCriteria" type="CallMeNowToDnCriteria"/>\r
120         </xs:sequence>\r
121       </xs:extension>\r
122     </xs:complexContent>\r
123   </xs:complexType>    \r
124     \r
125   <xs:complexType name="UserCallMeNowDeleteCriteriaRequest">\r
126     <xs:annotation>\r
127       <xs:documentation>\r
128         Delete a criteria from the user's call me now service.\r
129         The response is either a SuccessResponse or an ErrorResponse.\r
130       </xs:documentation>\r
131     </xs:annotation>\r
132     <xs:complexContent>\r
133       <xs:extension base="core:OCIRequest">\r
134         <xs:sequence>\r
135           <xs:element name="userId" type="UserId"/>\r
136           <xs:element name="criteriaName" type="CriteriaName"/>\r
137         </xs:sequence>\r
138       </xs:extension>\r
139     </xs:complexContent>\r
140   </xs:complexType>    \r
141     \r
142   <xs:complexType name="UserCallMeNowGetCriteriaRequest">\r
143     <xs:annotation>\r
144       <xs:documentation>\r
145         Get a criteria for the user's call me now service.\r
146         The response is either a UserCallMeNowGetCriteriaResponse or an ErrorResponse.\r
147       </xs:documentation>\r
148     </xs:annotation>\r
149     <xs:complexContent>\r
150       <xs:extension base="core:OCIRequest">\r
151         <xs:sequence>\r
152           <xs:element name="userId" type="UserId"/>\r
153           <xs:element name="criteriaName" type="CriteriaName"/>\r
154         </xs:sequence>\r
155       </xs:extension>\r
156     </xs:complexContent>\r
157   </xs:complexType>    \r
158     \r
159   <xs:complexType name="UserCallMeNowGetCriteriaResponse">\r
160     <xs:annotation>\r
161       <xs:documentation>\r
162         Response to the UserCallMeNowGetCriteriaRequest.\r
163       </xs:documentation>\r
164     </xs:annotation>\r
165     <xs:complexContent>\r
166       <xs:extension base="core:OCIDataResponse">\r
167         <xs:sequence>\r
168           <xs:element name="timeSchedule" type="TimeSchedule" minOccurs="0"/>\r
169           <xs:element name="holidaySchedule" type="HolidaySchedule" minOccurs="0"/>\r
170           <xs:element name="rejectCall" type="xs:boolean"/>\r
171           <xs:element name="toDnCriteria" type="CallMeNowToDnCriteria"/>\r
172         </xs:sequence>\r
173       </xs:extension>\r
174     </xs:complexContent>\r
175   </xs:complexType>    \r
176     \r
177   <xs:complexType name="UserCallMeNowGetRequest">\r
178     <xs:annotation>\r
179       <xs:documentation>\r
180         Get the user's call me now service setting.\r
181         The response is either a UserCallMeNowGetResponse or an ErrorResponse.\r
182       </xs:documentation>\r
183     </xs:annotation>\r
184     <xs:complexContent>\r
185       <xs:extension base="core:OCIRequest">\r
186         <xs:sequence>\r
187           <xs:element name="userId" type="UserId"/>\r
188         </xs:sequence>\r
189       </xs:extension>\r
190     </xs:complexContent>\r
191   </xs:complexType>    \r
192     \r
193   <xs:complexType name="UserCallMeNowGetResponse">\r
194     <xs:annotation>\r
195       <xs:documentation>\r
196         Response to the UserCallMeNowGetRequest. The criteria table's column headings are:\r
197         "Is Active", "Criteria Name", "Time Schedule", "Call To", "Reject Call" and "Holiday Schedule".\r
198       </xs:documentation>\r
199     </xs:annotation>\r
200     <xs:complexContent>\r
201       <xs:extension base="core:OCIDataResponse">\r
202         <xs:sequence>\r
203           <xs:element name="isActive" type="xs:boolean"/>\r
204           <xs:element name="answerConfirmation" type="CallMeNowAnswerConfirmation"/>\r
205           <xs:element name="criteriaTable" type="core:OCITable"/>\r
206         </xs:sequence>\r
207       </xs:extension>\r
208     </xs:complexContent>\r
209   </xs:complexType>    \r
210     \r
211   <xs:complexType name="UserCallMeNowModifyCriteriaRequest">\r
212     <xs:annotation>\r
213       <xs:documentation>\r
214         Modify a criteria for the user's call me now service.\r
215         The response is either a SuccessResponse or an ErrorResponse.\r
216       </xs:documentation>\r
217     </xs:annotation>\r
218     <xs:complexContent>\r
219       <xs:extension base="core:OCIRequest">\r
220         <xs:sequence>\r
221           <xs:element name="userId" type="UserId"/>\r
222           <xs:element name="criteriaName" type="CriteriaName"/>\r
223           <xs:element name="newCriteriaName" type="CriteriaName" minOccurs="0"/>\r
224           <xs:element name="timeSchedule" type="TimeSchedule" nillable="true" minOccurs="0"/>\r
225           <xs:element name="holidaySchedule" type="HolidaySchedule" nillable="true" minOccurs="0"/>\r
226           <xs:element name="rejectCall" type="xs:boolean" minOccurs="0"/>\r
227           <xs:element name="toDnCriteria" type="CallMeNowToDnCriteriaModify" minOccurs="0"/>\r
228         </xs:sequence>\r
229       </xs:extension>\r
230     </xs:complexContent>\r
231   </xs:complexType>    \r
232     \r
233   <xs:complexType name="UserCallMeNowModifyRequest">\r
234     <xs:annotation>\r
235       <xs:documentation>\r
236         Modify the user's call me now service setting.\r
237         The response is either a SuccessResponse or an ErrorResponse.\r
238       </xs:documentation>\r
239     </xs:annotation>\r
240     <xs:complexContent>\r
241       <xs:extension base="core:OCIRequest">\r
242         <xs:sequence>\r
243           <xs:element name="userId" type="UserId"/>\r
244           <xs:element name="isActive" type="xs:boolean" minOccurs="0"/>\r
245           <xs:element name="answerConfirmation" type="CallMeNowAnswerConfirmation" minOccurs="0"/>\r
246           <xs:element name="criteriaActivation" type="CriteriaActivation" minOccurs="0" maxOccurs="unbounded"/>\r
247         </xs:sequence>\r
248       </xs:extension>\r
249     </xs:complexContent>\r
250   </xs:complexType>    \r
251     \r
252   <xs:simpleType name="CallMeNowAnswerConfirmation">\r
253     <xs:annotation>\r
254       <xs:documentation>\r
255         Possible type of answer confirmation for Call Me Now.\r
256       </xs:documentation>\r
257     </xs:annotation>\r
258     <xs:restriction base="xs:token">\r
259       <xs:enumeration value="None"/>\r
260       <xs:enumeration value="Any Key"/>\r
261       <xs:enumeration value="Passcode"/>\r
262     </xs:restriction>\r
263   </xs:simpleType>    \r
264     \r
265   <xs:simpleType name="CallMeNowPasscodeLength">\r
266     <xs:annotation>\r
267       <xs:documentation>\r
268         Maximum number of characters for Call Me Now passcode.\r
269       </xs:documentation>\r
270     </xs:annotation>\r
271     <xs:restriction base="xs:int">\r
272       <xs:minInclusive value="2"/>\r
273       <xs:maxInclusive value="30"/>\r
274     </xs:restriction>\r
275   </xs:simpleType>    \r
276     \r
277   <xs:simpleType name="CallMeNowPasscodeTimeoutSeconds">\r
278     <xs:annotation>\r
279       <xs:documentation>\r
280         Timeout in seconds for call me now passcode validation.\r
281       </xs:documentation>\r
282     </xs:annotation>\r
283     <xs:restriction base="xs:int">\r
284       <xs:minInclusive value="30"/>\r
285       <xs:maxInclusive value="180"/>\r
286     </xs:restriction>\r
287   </xs:simpleType>    \r
288     \r
289   <xs:complexType name="CallMeNowToDnCriteria">\r
290     <xs:annotation>\r
291       <xs:documentation>\r
292         The To dn criteria used on the call me now external number.\r
293       </xs:documentation>\r
294     </xs:annotation>\r
295     <xs:sequence>\r
296       <xs:element name="toDnCriteriaSelection" type="CriteriaDnSelection"/>\r
297       <xs:element name="phoneNumber" type="DN" minOccurs="0" maxOccurs="12"/>\r
298     </xs:sequence>\r
299   </xs:complexType>    \r
300     \r
301   <xs:complexType name="CallMeNowToDnCriteriaModify">\r
302     <xs:annotation>\r
303       <xs:documentation>\r
304         The To dn criteria used on the call me now external number to be modified.\r
305       </xs:documentation>\r
306     </xs:annotation>\r
307     <xs:sequence>\r
308       <xs:element name="toDnCriteriaSelection" type="CriteriaDnSelection" minOccurs="0"/>\r
309       <xs:element name="phoneNumberList" type="CriteriaReplacementDNList" nillable="true" minOccurs="0"/>\r
310     </xs:sequence>\r
311   </xs:complexType>    \r
312     \r
313 </xs:schema>\r