epan/dissectors/pidl/ C99 drsuapi
[wireshark-sm.git] / epan / dissectors / corba-idl / parlay / mpcc_interfaces.idl
blob8bda97be4559b5e06f0de6d6e0b8cbe099039cac
1 //Source file: mpcc_interfaces.idl
2 //Date: 7 October 2004
3 //Multi Party Call Control Interfaces for ETSI ES 203 915-04-3 V1.1.1, DES/TISPAN-01005-04-3-OSA, Parlay 5.0
5 #ifndef __MPCC_INTERFACES_DEFINED
6 #define __MPCC_INTERFACES_DEFINED
9 #include "osa.idl"
10 #include "common_cc_data.idl"
11 #include "mpcc_data.idl"
13 module org {
15 module csapi {
17 module cc {
19 module mpccs {
20 interface IpAppMultiPartyCallControlManager ;
21 interface IpMultiPartyCall ;
22 interface IpAppMultiPartyCall ;
23 interface IpCallLeg;
24 interface IpAppCallLeg;
27 enum TpAppMultiPartyCallBackRefType {
28 P_APP_CALLBACK_UNDEFINED,
29 P_APP_MULTIPARTY_CALL_CALLBACK,
30 P_APP_CALL_LEG_CALLBACK,
31 P_APP_CALL_AND_CALL_LEG_CALLBACK
35 typedef sequence <IpAppCallLeg> TpAppCallLegRefSet;
38 struct TpMultiPartyCallIdentifier {
39 IpMultiPartyCall CallReference;
40 TpSessionID CallSessionID;
44 struct TpCallLegIdentifier {
45 IpCallLeg CallLegReference;
46 TpSessionID CallLegSessionID;
51 typedef sequence <TpCallLegIdentifier> TpCallLegIdentifierSet;
54 typedef sequence <TpMultiPartyCallIdentifier> TpMultiPartyCallIdentifierSet;
57 struct TpAppCallLegCallBack {
58 IpAppMultiPartyCall AppMultiPartyCall;
59 TpAppCallLegRefSet AppCallLegSet;
63 union TpAppMultiPartyCallBack switch(TpAppMultiPartyCallBackRefType) {
64 case P_APP_MULTIPARTY_CALL_CALLBACK: IpAppMultiPartyCall AppMultiPartyCall;
65 case P_APP_CALL_LEG_CALLBACK: IpAppCallLeg AppCallLeg;
66 case P_APP_CALL_AND_CALL_LEG_CALLBACK: TpAppCallLegCallBack AppMultiPartyCallAndCallLeg;
67 default: short Dummy;
72 interface IpAppCallLeg : IpInterface {
73 void eventReportRes (
74 in TpSessionID callLegSessionID,
75 in TpCallEventInfo eventInfo
78 void eventReportErr (
79 in TpSessionID callLegSessionID,
80 in TpCallError errorIndication
83 void attachMediaRes (
84 in TpSessionID callLegSessionID
87 void attachMediaErr (
88 in TpSessionID callLegSessionID,
89 in TpCallError errorIndication
92 void detachMediaRes (
93 in TpSessionID callLegSessionID
96 void detachMediaErr (
97 in TpSessionID callLegSessionID,
98 in TpCallError errorIndication
101 void getInfoRes (
102 in TpSessionID callLegSessionID,
103 in TpCallLegInfoReport callLegInfoReport
106 void getInfoErr (
107 in TpSessionID callLegSessionID,
108 in TpCallError errorIndication
111 void routeErr (
112 in TpSessionID callLegSessionID,
113 in TpCallError errorIndication
116 void superviseRes (
117 in TpSessionID callLegSessionID,
118 in TpCallSuperviseReport report,
119 in TpDuration usedTime
122 void superviseErr (
123 in TpSessionID callLegSessionID,
124 in TpCallError errorIndication
127 void callLegEnded (
128 in TpSessionID callLegSessionID,
129 in TpReleaseCause cause
135 interface IpMultiPartyCallControlManager : IpService {
136 TpMultiPartyCallIdentifier createCall (
137 in IpAppMultiPartyCall appCall
139 raises (TpCommonExceptions,P_INVALID_INTERFACE_TYPE);
141 TpAssignmentID createNotification (
142 in IpAppMultiPartyCallControlManager appCallControlManager,
143 in TpCallNotificationRequest notificationRequest
145 raises (TpCommonExceptions,P_INVALID_CRITERIA,P_INVALID_INTERFACE_TYPE,P_INVALID_EVENT_TYPE);
147 void destroyNotification (
148 in TpAssignmentID assignmentID
150 raises (TpCommonExceptions,P_INVALID_ASSIGNMENT_ID);
152 void changeNotification (
153 in TpAssignmentID assignmentID,
154 in TpCallNotificationRequest notificationRequest
156 raises (TpCommonExceptions,P_INVALID_ASSIGNMENT_ID,P_INVALID_CRITERIA,P_INVALID_EVENT_TYPE);
158 TpNotificationRequestedSet getNotification ()
159 raises (TpCommonExceptions);
161 TpAssignmentID setCallLoadControl (
162 in TpDuration duration,
163 in TpCallLoadControlMechanism mechanism,
164 in TpCallTreatment treatment,
165 in TpAddressRange addressRange
167 raises (TpCommonExceptions,P_INVALID_ADDRESS,P_UNSUPPORTED_ADDRESS_PLAN);
169 TpAssignmentID enableNotifications (
170 in IpAppMultiPartyCallControlManager appCallControlManager
172 raises (TpCommonExceptions);
174 void disableNotifications ()
175 raises (TpCommonExceptions);
177 TpNotificationRequestedSetEntry getNextNotification (
178 in TpBoolean reset
180 raises (TpCommonExceptions);
185 interface IpCallLeg : IpService {
186 void routeReq (
187 in TpSessionID callLegSessionID,
188 in TpAddress targetAddress,
189 in TpAddress originatingAddress,
190 in TpCallAppInfoSet appInfo,
191 in TpCallLegConnectionProperties connectionProperties
193 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_INVALID_NETWORK_STATE,P_INVALID_ADDRESS,P_UNSUPPORTED_ADDRESS_PLAN);
195 void eventReportReq (
196 in TpSessionID callLegSessionID,
197 in TpCallEventRequestSet eventsRequested
199 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_INVALID_EVENT_TYPE,P_INVALID_CRITERIA);
201 void release (
202 in TpSessionID callLegSessionID,
203 in TpReleaseCause cause
205 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_INVALID_NETWORK_STATE);
207 void getInfoReq (
208 in TpSessionID callLegSessionID,
209 in TpCallLegInfoType callLegInfoRequested
211 raises (TpCommonExceptions,P_INVALID_SESSION_ID);
213 TpMultiPartyCallIdentifier getCall (
214 in TpSessionID callLegSessionID
216 raises (TpCommonExceptions,P_INVALID_SESSION_ID);
218 void attachMediaReq (
219 in TpSessionID callLegSessionID
221 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_INVALID_NETWORK_STATE);
223 void detachMediaReq (
224 in TpSessionID callLegSessionID
226 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_INVALID_NETWORK_STATE);
228 TpAddress getCurrentDestinationAddress (
229 in TpSessionID callLegSessionID
231 raises (TpCommonExceptions,P_INVALID_SESSION_ID);
233 void continueProcessing (
234 in TpSessionID callLegSessionID
236 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_INVALID_NETWORK_STATE);
238 void setChargePlan (
239 in TpSessionID callLegSessionID,
240 in TpCallChargePlan callChargePlan
242 raises (TpCommonExceptions,P_INVALID_SESSION_ID);
244 void setAdviceOfCharge (
245 in TpSessionID callLegSessionID,
246 in TpAoCInfo aOCInfo,
247 in TpDuration tariffSwitch
249 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_INVALID_CURRENCY,P_INVALID_AMOUNT);
251 void superviseReq (
252 in TpSessionID callLegSessionID,
253 in TpDuration time,
254 in TpCallLegSuperviseTreatment treatment
256 raises (TpCommonExceptions,P_INVALID_SESSION_ID);
258 void deassign (
259 in TpSessionID callLegSessionID
261 raises (TpCommonExceptions,P_INVALID_SESSION_ID);
263 TpCallLegPropertyList getProperties (
264 in TpSessionID callLegSessionID,
265 in TpCallLegPropertyNameList propertyNames
267 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_INVALID_NETWORK_STATE,P_INFORMATION_NOT_AVAILABLE,P_UNAUTHORISED_PARAMETER_VALUE);
269 void setProperties (
270 in TpSessionID callLegSessionID,
271 in TpCallLegPropertyList properties
273 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_INVALID_NETWORK_STATE,P_INFORMATION_NOT_AVAILABLE,P_UNAUTHORISED_PARAMETER_VALUE);
278 interface IpAppMultiPartyCall : IpInterface {
279 void getInfoRes (
280 in TpSessionID callSessionID,
281 in TpCallInfoReport callInfoReport
284 void getInfoErr (
285 in TpSessionID callSessionID,
286 in TpCallError errorIndication
289 void superviseRes (
290 in TpSessionID callSessionID,
291 in TpCallSuperviseReport report,
292 in TpDuration usedTime
295 void superviseErr (
296 in TpSessionID callSessionID,
297 in TpCallError errorIndication
300 void callEnded (
301 in TpSessionID callSessionID,
302 in TpCallEndedReport report
305 void createAndRouteCallLegErr (
306 in TpSessionID callSessionID,
307 in TpCallLegIdentifier callLegReference,
308 in TpCallError errorIndication
314 interface IpMultiPartyCall : IpService {
315 TpCallLegIdentifierSet getCallLegs (
316 in TpSessionID callSessionID
318 raises (TpCommonExceptions,P_INVALID_SESSION_ID);
320 TpCallLegIdentifier createCallLeg (
321 in TpSessionID callSessionID,
322 in IpAppCallLeg appCallLeg
324 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_INVALID_INTERFACE_TYPE);
326 TpCallLegIdentifier createAndRouteCallLegReq (
327 in TpSessionID callSessionID,
328 in TpCallEventRequestSet eventsRequested,
329 in TpAddress targetAddress,
330 in TpAddress originatingAddress,
331 in TpCallAppInfoSet appInfo,
332 in IpAppCallLeg appLegInterface
334 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_INVALID_INTERFACE_TYPE,P_INVALID_ADDRESS,P_UNSUPPORTED_ADDRESS_PLAN,P_INVALID_NETWORK_STATE,P_INVALID_EVENT_TYPE,P_INVALID_CRITERIA);
336 void release (
337 in TpSessionID callSessionID,
338 in TpReleaseCause cause
340 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_INVALID_NETWORK_STATE);
342 void deassignCall (
343 in TpSessionID callSessionID
345 raises (TpCommonExceptions,P_INVALID_SESSION_ID);
347 void getInfoReq (
348 in TpSessionID callSessionID,
349 in TpCallInfoType callInfoRequested
351 raises (TpCommonExceptions,P_INVALID_SESSION_ID);
353 void setChargePlan (
354 in TpSessionID callSessionID,
355 in TpCallChargePlan callChargePlan
357 raises (TpCommonExceptions,P_INVALID_SESSION_ID);
359 void setAdviceOfCharge (
360 in TpSessionID callSessionID,
361 in TpAoCInfo aOCInfo,
362 in TpDuration tariffSwitch
364 raises (TpCommonExceptions,P_INVALID_SESSION_ID,P_INVALID_CURRENCY,P_INVALID_AMOUNT);
366 void superviseReq (
367 in TpSessionID callSessionID,
368 in TpDuration time,
369 in TpCallSuperviseTreatment treatment
371 raises (TpCommonExceptions,P_INVALID_SESSION_ID);
376 interface IpAppMultiPartyCallControlManager : IpInterface {
377 TpAppMultiPartyCallBack reportNotification (
378 in TpMultiPartyCallIdentifier callReference,
379 in TpCallLegIdentifierSet callLegReferenceSet,
380 in TpCallNotificationInfo notificationInfo,
381 in TpAssignmentID assignmentID
384 void callAborted (
385 in TpSessionID callReference
388 void managerInterrupted ();
390 void managerResumed ();
392 void callOverloadEncountered (
393 in TpAssignmentID assignmentID
396 void callOverloadCeased (
397 in TpAssignmentID assignmentID
400 void abortMultipleCalls (
401 in TpSessionIDSet callReferenceSet
414 #endif