60f461b10a7cfabe410b399bb7db64433f625076
[obnox/wireshark/wip.git] / idl / parlay / ui_data.idl
1 //Source file: ui_data.idl\r
2 //Date:  8 October 2004\r
3 //User Interaction Data Types for ETSI ES 203 915-05 V1.1.1, DES/TISPAN-01005-05-OSA, Parlay 5.0\r
4 \r
5 #ifndef __UI_DATA_DEFINED\r
6 #define __UI_DATA_DEFINED\r
7 \r
8 \r
9 #include "osa.idl"\r
10 \r
11 module org {\r
12         \r
13         module csapi {\r
14                 \r
15                 \r
16                 module ui {\r
17                         \r
18                         \r
19                         enum TpUIVariablePartType {\r
20 \r
21                                 P_UI_VARIABLE_PART_INT,\r
22                                 P_UI_VARIABLE_PART_ADDRESS,\r
23                                 P_UI_VARIABLE_PART_TIME,\r
24                                 P_UI_VARIABLE_PART_DATE,\r
25                                 P_UI_VARIABLE_PART_PRICE                                \r
26                         };\r
27                         \r
28                         \r
29                         union TpUIVariableInfo switch(TpUIVariablePartType) {\r
30                                 case P_UI_VARIABLE_PART_INT: TpInt32 VariablePartInteger;\r
31                                 case P_UI_VARIABLE_PART_ADDRESS: TpString VariablePartAddress;\r
32                                 case P_UI_VARIABLE_PART_TIME: TpTime VariablePartTime;\r
33                                 case P_UI_VARIABLE_PART_DATE: TpDate VariablePartDate;\r
34                                 case P_UI_VARIABLE_PART_PRICE: TpPrice VariablePartPrice;\r
35                         };\r
36                         \r
37                         \r
38                         typedef sequence <TpUIVariableInfo> TpUIVariableInfoSet;\r
39                         \r
40                         \r
41                         typedef TpInt32 TpUIResponseRequest;\r
42                         \r
43                         \r
44                         enum TpUIReport {\r
45 \r
46                                 P_UI_REPORT_UNDEFINED,\r
47                                 P_UI_REPORT_INFO_SENT,\r
48                                 P_UI_REPORT_INFO_COLLECTED,\r
49                                 P_UI_REPORT_NO_INPUT,\r
50                                 P_UI_REPORT_TIMEOUT,\r
51                                 P_UI_REPORT_MESSAGE_STORED,\r
52                                 P_UI_REPORT_MESSAGE_NOT_STORED,\r
53                                 P_UI_REPORT_MESSAGE_DELETED,\r
54                                 P_UI_REPORT_MESSAGE_NOT_DELETED                         \r
55                         };\r
56                         \r
57                         \r
58                         struct TpUIMessageCriteria {\r
59                                 TpString EndSequence;\r
60                                 TpDuration MaxMessageTime;\r
61                                 TpInt32 MaxMessageSize;\r
62                         };\r
63                         \r
64                         \r
65                         enum TpUIInfoType {\r
66 \r
67                                 P_UI_INFO_ID,\r
68                                 P_UI_INFO_DATA,\r
69                                 P_UI_INFO_ADDRESS,\r
70                                 P_UI_INFO_BIN_DATA,\r
71                                 P_UI_INFO_UUENCODED,\r
72                                 P_UI_INFO_MIME,\r
73                                 P_UI_INFO_WAVE,\r
74                                 P_UI_INFO_AU,\r
75                                 P_UI_INFO_VXML,\r
76                                 P_UI_INFO_SYNTHESIS                             \r
77                         };\r
78                         \r
79                         \r
80                         enum TpUIFault {\r
81 \r
82                                 P_UI_FAULT_UNDEFINED,\r
83                                 P_UI_CALL_ENDED                         \r
84                         };\r
85                         \r
86                         \r
87                         enum TpUIEventInfoDataType {\r
88 \r
89                                 P_UI_EVENT_DATA_TYPE_UNDEFINED,\r
90                                 P_UI_EVENT_DATA_TYPE_UNSPECIFIED,\r
91                                 P_UI_EVENT_DATA_TYPE_TEXT,\r
92                                 P_UI_EVENT_DATA_TYPE_USSD_DATA                          \r
93                         };\r
94                         \r
95                         \r
96                         struct TpUIEventInfo {\r
97                                 TpAddress OriginatingAddress;\r
98                                 TpAddress DestinationAddress;\r
99                                 TpString ServiceCode;\r
100                                 TpUIEventInfoDataType DataTypeIndication;\r
101                                 TpString DataString;\r
102                         };\r
103                         \r
104                         \r
105                         struct TpUIEventCriteria {\r
106                                 TpAddressRange OriginatingAddress;\r
107                                 TpAddressRange DestinationAddress;\r
108                                 TpString ServiceCode;\r
109                         };\r
110                         \r
111                         \r
112                         enum TpUIError {\r
113 \r
114                                 P_UI_ERROR_UNDEFINED,\r
115                                 P_UI_ERROR_ILLEGAL_INFO,\r
116                                 P_UI_ERROR_ID_NOT_FOUND,\r
117                                 P_UI_ERROR_RESOURCE_UNAVAILABLE,\r
118                                 P_UI_ERROR_ILLEGAL_RANGE,\r
119                                 P_UI_ERROR_IMPROPER_USER_RESPONSE,\r
120                                 P_UI_ERROR_ABANDON,\r
121                                 P_UI_ERROR_NO_OPERATION_ACTIVE,\r
122                                 P_UI_ERROR_NO_SPACE_AVAILABLE,\r
123                                 P_UI_ERROR_RESOURCE_TIMEOUT                             \r
124                         };\r
125                         \r
126                         \r
127                         const TpInt32 P_UI_RESPONSE_REQUIRED = 1;\r
128                         \r
129                         const TpInt32 P_UI_LAST_ANNOUNCEMENT_IN_A_ROW = 2;\r
130                         \r
131                         const TpInt32 P_UI_FINAL_REQUEST = 4;\r
132                         \r
133                         struct TpUIEventCriteriaResult {\r
134                                 TpUIEventCriteria EventCriteria;\r
135                                 TpInt32 AssignmentID;\r
136                         };\r
137                         \r
138                         \r
139                         typedef sequence <TpUIEventCriteriaResult> TpUIEventCriteriaResultSet;\r
140                         \r
141                         \r
142                         exception P_ID_NOT_FOUND {\r
143                                 TpString ExtraInformation;\r
144                         };\r
145                         \r
146                         \r
147                         exception P_ILLEGAL_ID {\r
148                                 TpString ExtraInformation;\r
149                         };\r
150                         \r
151                         \r
152                         exception P_ILLEGAL_RANGE {\r
153                                 TpString ExtraInformation;\r
154                         };\r
155                         \r
156                         \r
157                         exception P_INVALID_COLLECTION_CRITERIA {\r
158                                 TpString ExtraInformation;\r
159                         };\r
160                         \r
161                         \r
162                         struct TpUIEventNotificationInfo {\r
163                                 TpAddress OriginatingAddress;\r
164                                 TpAddress DestinationAddress;\r
165                                 TpString ServiceCode;\r
166                                 TpUIEventInfoDataType DataTypeIndication;\r
167                                 TpOctetSet UIEventData;\r
168                         };\r
169                         \r
170                         \r
171                         typedef TpString TpUIRecognitionGrammar;\r
172                         \r
173                         \r
174                         struct TpUIRecognitionProperty {\r
175                                 TpString PropertyName;\r
176                                 TpString PropertyValue;\r
177                         };\r
178                         \r
179                         \r
180                         typedef sequence <TpUIRecognitionProperty> TpUIRecognitionPropertySet;\r
181                         \r
182                         \r
183                         typedef TpString TpUIRecognitionSpeakerID;\r
184                         \r
185                         \r
186                         struct TpUIRecognitionCriteria {\r
187                                 TpUIRecognitionSpeakerID SpeakerID;\r
188                                 TpUIRecognitionPropertySet Properties;\r
189                                 TpUIRecognitionGrammar Grammar;\r
190                         };\r
191                         \r
192                         \r
193                         enum TpUICollectMode {\r
194 \r
195                                 P_UI_COLLECT_MODE_DTMF,\r
196                                 P_UI_COLLECT_MODE_VOICE,\r
197                                 P_UI_COLLECT_MODE_DTMFANDVOICE                          \r
198                         };\r
199                         \r
200                         \r
201                         struct TpUICollectCriteria {\r
202                                 TpInt32 MinLength;\r
203                                 TpInt32 MaxLength;\r
204                                 TpString EndSequence;\r
205                                 TpDuration StartTimeout;\r
206                                 TpDuration InterCharTimeout;\r
207                                 TpUICollectMode CollectMode;\r
208                                 TpUIRecognitionCriteria RecognitionCriteria;\r
209                         };\r
210                         \r
211                         \r
212                         enum TpUIPronounceType {\r
213 \r
214                                 P_UI_PRONOUNCE_IPA,\r
215                                 P_UI_PRONOUNCE_SOUNDSLIKE                               \r
216                         };\r
217                         \r
218                         \r
219                         struct TpUIWordOverride {\r
220                                 TpString Spelling;\r
221                                 TpUIPronounceType PronounceType;\r
222                                 TpString PronounceAs;\r
223                         };\r
224                         \r
225                         \r
226                         typedef sequence <TpUIWordOverride> TpUIWordOverrideSet;\r
227                         \r
228                         \r
229                         enum TpUISynthesisRange {\r
230 \r
231                                 P_UI_RANGE_CALMER,\r
232                                 P_UI_RANGE_CALM,\r
233                                 P_UI_RANGE_AVERAGE,\r
234                                 P_UI_RANGE_EXCITED,\r
235                                 P_UI_RANGE_MORE_EXCITED                         \r
236                         };\r
237                         \r
238                         \r
239                         enum TpUISynthesisRate {\r
240 \r
241                                 P_UI_RATE_SLOW,\r
242                                 P_UI_RATE_AVERAGE,\r
243                                 P_UI_RATE_FAST                          \r
244                         };\r
245                         \r
246                         \r
247                         enum TpUISynthesisAge {\r
248 \r
249                                 P_UI_AGE_CHILD,\r
250                                 P_UI_AGE_YOUNG_ADULT,\r
251                                 P_UI_AGE_ADULT,\r
252                                 P_UI_AGE_OLDER_ADULT                            \r
253                         };\r
254                         \r
255                         \r
256                         enum TpUISynthesisGender {\r
257 \r
258                                 P_UI_GENDER_MALE,\r
259                                 P_UI_GENDER_FEMALE                              \r
260                         };\r
261                         \r
262                         \r
263                         struct TpUISynthesisInfoData {\r
264                                 TpUISynthesisGender SpeakerGender;\r
265                                 TpUISynthesisAge SpeakerAge;\r
266                                 TpUISynthesisRate SpeakerRate;\r
267                                 TpUISynthesisRange SpeakerRange;\r
268                                 TpString TextData;\r
269                                 TpUIWordOverrideSet WordOverrideSet;\r
270                         };\r
271                         \r
272                         \r
273                         union TpUIInfo switch(TpUIInfoType) {\r
274                                 case P_UI_INFO_ID: TpInt32 InfoID;      \r
275                                 case P_UI_INFO_DATA: TpString InfoData; \r
276                                 case P_UI_INFO_ADDRESS: TpURL InfoAddress;      \r
277                                 case P_UI_INFO_BIN_DATA: TpOctetSet InfoBinData;        \r
278                                 case P_UI_INFO_UUENCODED: TpString InfoUUEncData;       \r
279                                 case P_UI_INFO_MIME: TpOctetSet InfoMimeData;   \r
280                                 case P_UI_INFO_WAVE: TpOctetSet InfoWaveData;   \r
281                                 case P_UI_INFO_AU: TpOctetSet InfoAuData;       \r
282                                 case P_UI_INFO_VXML: TpString InfoVXMLData;     \r
283                                 case P_UI_INFO_SYNTHESIS: TpUISynthesisInfoData InfoSynthData;  \r
284                         };\r
285                         \r
286                         \r
287                         typedef sequence <TpInt32> TpMessageIDList;\r
288                         \r
289                 };\r
290                 \r
291         };\r
292         \r
293 };\r
294 \r
295 #endif\r