//Source file: ui_data.idl //Date: 8 October 2004 //User Interaction Data Types for ETSI ES 203 915-05 V1.1.1, DES/TISPAN-01005-05-OSA, Parlay 5.0 #ifndef __UI_DATA_DEFINED #define __UI_DATA_DEFINED #include "osa.idl" module org { module csapi { module ui { enum TpUIVariablePartType { P_UI_VARIABLE_PART_INT, P_UI_VARIABLE_PART_ADDRESS, P_UI_VARIABLE_PART_TIME, P_UI_VARIABLE_PART_DATE, P_UI_VARIABLE_PART_PRICE }; union TpUIVariableInfo switch(TpUIVariablePartType) { case P_UI_VARIABLE_PART_INT: TpInt32 VariablePartInteger; case P_UI_VARIABLE_PART_ADDRESS: TpString VariablePartAddress; case P_UI_VARIABLE_PART_TIME: TpTime VariablePartTime; case P_UI_VARIABLE_PART_DATE: TpDate VariablePartDate; case P_UI_VARIABLE_PART_PRICE: TpPrice VariablePartPrice; }; typedef sequence TpUIVariableInfoSet; typedef TpInt32 TpUIResponseRequest; enum TpUIReport { P_UI_REPORT_UNDEFINED, P_UI_REPORT_INFO_SENT, P_UI_REPORT_INFO_COLLECTED, P_UI_REPORT_NO_INPUT, P_UI_REPORT_TIMEOUT, P_UI_REPORT_MESSAGE_STORED, P_UI_REPORT_MESSAGE_NOT_STORED, P_UI_REPORT_MESSAGE_DELETED, P_UI_REPORT_MESSAGE_NOT_DELETED }; struct TpUIMessageCriteria { TpString EndSequence; TpDuration MaxMessageTime; TpInt32 MaxMessageSize; }; enum TpUIInfoType { P_UI_INFO_ID, P_UI_INFO_DATA, P_UI_INFO_ADDRESS, P_UI_INFO_BIN_DATA, P_UI_INFO_UUENCODED, P_UI_INFO_MIME, P_UI_INFO_WAVE, P_UI_INFO_AU, P_UI_INFO_VXML, P_UI_INFO_SYNTHESIS }; enum TpUIFault { P_UI_FAULT_UNDEFINED, P_UI_CALL_ENDED }; enum TpUIEventInfoDataType { P_UI_EVENT_DATA_TYPE_UNDEFINED, P_UI_EVENT_DATA_TYPE_UNSPECIFIED, P_UI_EVENT_DATA_TYPE_TEXT, P_UI_EVENT_DATA_TYPE_USSD_DATA }; struct TpUIEventInfo { TpAddress OriginatingAddress; TpAddress DestinationAddress; TpString ServiceCode; TpUIEventInfoDataType DataTypeIndication; TpString DataString; }; struct TpUIEventCriteria { TpAddressRange OriginatingAddress; TpAddressRange DestinationAddress; TpString ServiceCode; }; enum TpUIError { P_UI_ERROR_UNDEFINED, P_UI_ERROR_ILLEGAL_INFO, P_UI_ERROR_ID_NOT_FOUND, P_UI_ERROR_RESOURCE_UNAVAILABLE, P_UI_ERROR_ILLEGAL_RANGE, P_UI_ERROR_IMPROPER_USER_RESPONSE, P_UI_ERROR_ABANDON, P_UI_ERROR_NO_OPERATION_ACTIVE, P_UI_ERROR_NO_SPACE_AVAILABLE, P_UI_ERROR_RESOURCE_TIMEOUT }; const TpInt32 P_UI_RESPONSE_REQUIRED = 1; const TpInt32 P_UI_LAST_ANNOUNCEMENT_IN_A_ROW = 2; const TpInt32 P_UI_FINAL_REQUEST = 4; struct TpUIEventCriteriaResult { TpUIEventCriteria EventCriteria; TpInt32 AssignmentID; }; typedef sequence TpUIEventCriteriaResultSet; exception P_ID_NOT_FOUND { TpString ExtraInformation; }; exception P_ILLEGAL_ID { TpString ExtraInformation; }; exception P_ILLEGAL_RANGE { TpString ExtraInformation; }; exception P_INVALID_COLLECTION_CRITERIA { TpString ExtraInformation; }; struct TpUIEventNotificationInfo { TpAddress OriginatingAddress; TpAddress DestinationAddress; TpString ServiceCode; TpUIEventInfoDataType DataTypeIndication; TpOctetSet UIEventData; }; typedef TpString TpUIRecognitionGrammar; struct TpUIRecognitionProperty { TpString PropertyName; TpString PropertyValue; }; typedef sequence TpUIRecognitionPropertySet; typedef TpString TpUIRecognitionSpeakerID; struct TpUIRecognitionCriteria { TpUIRecognitionSpeakerID SpeakerID; TpUIRecognitionPropertySet Properties; TpUIRecognitionGrammar Grammar; }; enum TpUICollectMode { P_UI_COLLECT_MODE_DTMF, P_UI_COLLECT_MODE_VOICE, P_UI_COLLECT_MODE_DTMFANDVOICE }; struct TpUICollectCriteria { TpInt32 MinLength; TpInt32 MaxLength; TpString EndSequence; TpDuration StartTimeout; TpDuration InterCharTimeout; TpUICollectMode CollectMode; TpUIRecognitionCriteria RecognitionCriteria; }; enum TpUIPronounceType { P_UI_PRONOUNCE_IPA, P_UI_PRONOUNCE_SOUNDSLIKE }; struct TpUIWordOverride { TpString Spelling; TpUIPronounceType PronounceType; TpString PronounceAs; }; typedef sequence TpUIWordOverrideSet; enum TpUISynthesisRange { P_UI_RANGE_CALMER, P_UI_RANGE_CALM, P_UI_RANGE_AVERAGE, P_UI_RANGE_EXCITED, P_UI_RANGE_MORE_EXCITED }; enum TpUISynthesisRate { P_UI_RATE_SLOW, P_UI_RATE_AVERAGE, P_UI_RATE_FAST }; enum TpUISynthesisAge { P_UI_AGE_CHILD, P_UI_AGE_YOUNG_ADULT, P_UI_AGE_ADULT, P_UI_AGE_OLDER_ADULT }; enum TpUISynthesisGender { P_UI_GENDER_MALE, P_UI_GENDER_FEMALE }; struct TpUISynthesisInfoData { TpUISynthesisGender SpeakerGender; TpUISynthesisAge SpeakerAge; TpUISynthesisRate SpeakerRate; TpUISynthesisRange SpeakerRange; TpString TextData; TpUIWordOverrideSet WordOverrideSet; }; union TpUIInfo switch(TpUIInfoType) { case P_UI_INFO_ID: TpInt32 InfoID; case P_UI_INFO_DATA: TpString InfoData; case P_UI_INFO_ADDRESS: TpURL InfoAddress; case P_UI_INFO_BIN_DATA: TpOctetSet InfoBinData; case P_UI_INFO_UUENCODED: TpString InfoUUEncData; case P_UI_INFO_MIME: TpOctetSet InfoMimeData; case P_UI_INFO_WAVE: TpOctetSet InfoWaveData; case P_UI_INFO_AU: TpOctetSet InfoAuData; case P_UI_INFO_VXML: TpString InfoVXMLData; case P_UI_INFO_SYNTHESIS: TpUISynthesisInfoData InfoSynthData; }; typedef sequence TpMessageIDList; }; }; }; #endif