1 //Source file: mpcc_data.idl
3 //Multi Party Call Control Data Types for ETSI ES 203 915-04-3 V1.1.1, DES/TISPAN-01005-04-3-OSA, Parlay 5.0
5 #ifndef __MPCC_DATA_DEFINED
6 #define __MPCC_DATA_DEFINED
10 #include
"common_cc_data.idl"
18 enum TpCallAppInfoType
{
21 P_CALL_APP_ALERTING_MECHANISM
,
22 P_CALL_APP_NETWORK_ACCESS_TYPE
,
23 P_CALL_APP_TELE_SERVICE
,
24 P_CALL_APP_BEARER_SERVICE
,
25 P_CALL_APP_PARTY_CATEGORY
,
26 P_CALL_APP_PRESENTATION_ADDRESS
,
27 P_CALL_APP_GENERIC_INFO
,
28 P_CALL_APP_ADDITIONAL_ADDRESS
,
29 P_CALL_APP_ORIGINAL_DESTINATION_ADDRESS
,
30 P_CALL_APP_REDIRECTING_ADDRESS
,
31 P_CALL_APP_HIGH_PROBABILITY_COMPLETION
,
36 enum TpCallEventType
{
38 P_CALL_EVENT_UNDEFINED
,
39 P_CALL_EVENT_ORIGINATING_CALL_ATTEMPT
,
40 P_CALL_EVENT_ORIGINATING_CALL_ATTEMPT_AUTHORISED
,
41 P_CALL_EVENT_ADDRESS_COLLECTED
,
42 P_CALL_EVENT_ADDRESS_ANALYSED
,
43 P_CALL_EVENT_ORIGINATING_SERVICE_CODE
,
44 P_CALL_EVENT_ORIGINATING_RELEASE
,
45 P_CALL_EVENT_TERMINATING_CALL_ATTEMPT
,
46 P_CALL_EVENT_TERMINATING_CALL_ATTEMPT_AUTHORISED
,
47 P_CALL_EVENT_ALERTING
,
49 P_CALL_EVENT_TERMINATING_RELEASE
,
50 P_CALL_EVENT_REDIRECTED
,
51 P_CALL_EVENT_TERMINATING_SERVICE_CODE
,
56 union TpCallAdditionalEventInfo
switch(TpCallEventType
) {
57 case P_CALL_EVENT_ADDRESS_COLLECTED
: TpAddress CollectedAddress
;
58 case P_CALL_EVENT_ADDRESS_ANALYSED
: TpAddress CalledAddress
;
59 case P_CALL_EVENT_ORIGINATING_SERVICE_CODE
: TpCallServiceCode OriginatingServiceCode
;
60 case P_CALL_EVENT_ORIGINATING_RELEASE
: TpReleaseCause OriginatingReleaseCause
;
61 case P_CALL_EVENT_TERMINATING_RELEASE
: TpReleaseCause TerminatingReleaseCause
;
62 case P_CALL_EVENT_REDIRECTED
: TpAddress ForwardAddress
;
63 case P_CALL_EVENT_TERMINATING_SERVICE_CODE
: TpCallServiceCode TerminatingServiceCode
;
68 struct TpCallNotificationScope
{
69 TpAddressRange DestinationAddress
;
70 TpAddressRange OriginatingAddress
;
74 struct TpCallNotificationReportScope
{
75 TpAddress DestinationAddress
;
76 TpAddress OriginatingAddress
;
80 typedef sequence
<TpReleaseCause
> TpReleaseCauseSet
;
83 union TpAdditionalCallEventCriteria
switch(TpCallEventType
) {
84 case P_CALL_EVENT_ADDRESS_COLLECTED
: TpInt32 MinAddressLength
;
85 case P_CALL_EVENT_ORIGINATING_SERVICE_CODE
: TpCallServiceCodeSet OriginatingServiceCode
;
86 case P_CALL_EVENT_ORIGINATING_RELEASE
: TpReleaseCauseSet OriginatingReleaseCauseSet
;
87 case P_CALL_EVENT_TERMINATING_RELEASE
: TpReleaseCauseSet TerminatingReleaseCauseSet
;
88 case P_CALL_EVENT_TERMINATING_SERVICE_CODE
: TpCallServiceCodeSet TerminatingServiceCode
;
93 struct TpCallEventRequest
{
94 TpCallEventType CallEventType
;
95 TpAdditionalCallEventCriteria AdditionalCallEventCriteria
;
96 TpCallMonitorMode CallMonitorMode
;
100 typedef sequence
<TpCallEventRequest
> TpCallEventRequestSet
;
103 struct TpCallNotificationRequest
{
104 TpCallNotificationScope CallNotificationScope
;
105 TpCallEventRequestSet CallEventsRequested
;
109 struct TpNotificationRequested
{
110 TpCallNotificationRequest AppCallNotificationRequest
;
111 TpInt32 AssignmentID
;
115 typedef sequence
<TpNotificationRequested
> TpNotificationRequestedSet
;
118 enum TpCallLegAttachMechanism
{
120 P_CALLLEG_ATTACH_IMPLICITLY
,
121 P_CALLLEG_ATTACH_EXPLICITLY
125 struct TpCallLegConnectionProperties
{
126 TpCallLegAttachMechanism AttachMechanism
;
130 const TpInt32 P_CALL_LEG_INFO_UNDEFINED
= 0;
132 const TpInt32 P_CALL_LEG_INFO_TIMES
= 1;
134 const TpInt32 P_CALL_LEG_INFO_RELEASE_CAUSE
= 2;
136 const TpInt32 P_CALL_LEG_INFO_ADDRESS
= 4;
138 const TpInt32 P_CALL_LEG_INFO_APPINFO
= 8;
140 typedef TpInt32 TpCallLegInfoType
;
143 struct TpCallEventInfo
{
144 TpCallEventType CallEventType
;
145 TpCallAdditionalEventInfo AdditionalCallEventInfo
;
146 TpCallMonitorMode CallMonitorMode
;
147 TpDateAndTime CallEventTime
;
151 typedef TpInt32 TpCallLegSuperviseTreatment
;
154 const TpInt32 P_CALL_LEG_SUPERVISE_RELEASE
= 1;
156 const TpInt32 P_CALL_LEG_SUPERVISE_RESPOND
= 2;
158 const TpInt32 P_CALL_LEG_SUPERVISE_APPLY_TONE
= 4;
160 typedef TpInt32 TpCallHighProbabilityCompletion
;
163 struct TpNotificationRequestedSetEntry
{
164 TpNotificationRequestedSet NotificationRequestSet
;
169 typedef TpOctetSet TpCarrierID
;
172 enum TpCarrierSelectionField
{
183 TpCarrierID CarrierID
;
184 TpCarrierSelectionField CarrierSelectionField
;
188 typedef sequence
<TpCarrier
> TpCarrierSet
;
191 union TpCallAppInfo
switch(TpCallAppInfoType
) {
192 case P_CALL_APP_ALERTING_MECHANISM
: TpCallAlertingMechanism CallAppAlertingMechanism
;
193 case P_CALL_APP_NETWORK_ACCESS_TYPE
: TpCallNetworkAccessType CallAppNetworkAccessType
;
194 case P_CALL_APP_TELE_SERVICE
: TpCallTeleService CallAppTeleService
;
195 case P_CALL_APP_BEARER_SERVICE
: TpCallBearerService CallAppBearerService
;
196 case P_CALL_APP_PARTY_CATEGORY
: TpCallPartyCategory CallAppPartyCategory
;
197 case P_CALL_APP_PRESENTATION_ADDRESS
: TpAddress CallAppPresentationAddress
;
198 case P_CALL_APP_GENERIC_INFO
: TpString CallAppGenericInfo
;
199 case P_CALL_APP_ADDITIONAL_ADDRESS
: TpAddress CallAppAdditionalAddress
;
200 case P_CALL_APP_ORIGINAL_DESTINATION_ADDRESS
: TpAddress CallAppOriginalDestinationAddress
;
201 case P_CALL_APP_REDIRECTING_ADDRESS
: TpAddress CallAppRedirectingAddress
;
202 case P_CALL_APP_HIGH_PROBABILITY_COMPLETION
: TpCallHighProbabilityCompletion CallHighProbabilityCompletion
;
203 case P_CALL_APP_CARRIER
: TpCarrierSet CallAppCarrier
;
204 default: short Dummy
;
208 typedef sequence
<TpCallAppInfo
> TpCallAppInfoSet
;
211 struct TpCallNotificationInfo
{
212 TpCallNotificationReportScope CallNotificationReportScope
;
213 TpCallAppInfoSet CallAppInfo
;
214 TpCallEventInfo CallEventInfo
;
218 struct TpCallLegInfoReport
{
219 TpCallLegInfoType CallLegInfoType
;
220 TpDateAndTime CallLegStartTime
;
221 TpDateAndTime CallLegConnectedToResourceTime
;
222 TpDateAndTime CallLegConnectedToAddressTime
;
223 TpDateAndTime CallLegEndTime
;
224 TpAddress ConnectedAddress
;
225 TpReleaseCause CallLegReleaseCause
;
226 TpCallAppInfoSet CallAppInfo
;
230 typedef TpString TpCallLegPropertyName
;
233 const TpCallLegPropertyName P_CALL_LEG_PROPERTY_INFO
= "P_CALL_LEG_PROPERTY_INFO";
235 const TpCallLegPropertyName P_CALL_LEG_PROPERTY_ICON
= "P_CALL_LEG_PROPERTY_ICON";
237 const TpCallLegPropertyName P_CALL_LEG_PROPERTY_CARD
= "P_CALL_LEG_PROPERTY_CARD";
239 typedef sequence
<TpCallLegPropertyName
> TpCallLegPropertyNameList
;
242 typedef TpString TpCallLegPropertyValue
;
245 struct TpCallLegProperty
{
246 TpCallLegPropertyName CallLegPropertyName
;
247 TpCallLegPropertyValue CallLegPropertyValue
;
251 typedef sequence
<TpCallLegProperty
> TpCallLegPropertyList
;