3 //Conference Call Control for ES 203 915-4-5 V1.1.1, DES/TISPAN-01005-04-5-OSA, Parlay 5.0
11 #include
"mpcc_data.idl"
13 #include
"common_cc_data.idl"
23 interface IpAppConfCallControlManager
;
24 interface IpConfCall
;
25 interface IpSubConfCall
;
28 enum TpConfPolicyType
{
30 P_CONFERENCE_POLICY_UNDEFINED
,
31 P_CONFERENCE_POLICY_MONOMEDIA
,
32 P_CONFERENCE_POLICY_MULTIMEDIA
36 struct TpMonoMediaConfPolicy
{
37 TpBoolean JoinAllowed
;
41 struct TpJoinEventInfo
{
42 TpAddress DestinationAddress
;
43 TpAddress OriginatingAddress
;
44 TpCallAppInfoSet CallAppInfo
;
48 struct TpConfSearchCriteria
{
49 TpDateAndTime StartSearch
;
50 TpDateAndTime StopSearch
;
51 TpInt32 RequestedResources
;
52 TpDuration RequestedDuration
;
56 struct TpConfSearchResult
{
58 TpDateAndTime ActualStartTime
;
59 TpInt32 ActualResources
;
60 TpDuration ActualDuration
;
64 enum TpVideoHandlingType
{
67 P_SWITCHED_VIDEO_CHAIR_CONTROLLED
,
68 P_SWITCHED_VIDEO_VOICE_CONTROLLED
72 struct TpMultiMediaConfPolicy
{
73 TpBoolean JoinAllowed
;
74 TpMediaType MediaAllowed
;
76 TpVideoHandlingType VideoHandling
;
80 union TpConfPolicy
switch(TpConfPolicyType
) {
81 case P_CONFERENCE_POLICY_MONOMEDIA
: TpMonoMediaConfPolicy MonoMedia
;
82 case P_CONFERENCE_POLICY_MULTIMEDIA
: TpMultiMediaConfPolicy MultiMedia
;
87 struct TpResourceReservation
{
89 TpInt32 ReservationID
;
93 struct TpConfCallIdentifier
{
94 IpConfCall ConfCallReference
;
95 TpSessionID ConfCallSessionID
;
99 struct TpSubConfCallIdentifier
{
100 IpSubConfCall SubConfCallReference
;
101 TpSessionID SubConfCallSessionID
;
105 typedef sequence
<TpSubConfCallIdentifier
> TpSubConfCallIdentifierSet
;
109 interface IpAppSubConfCall
: mmccs
::IpAppMultiMediaCall
{
110 void chairSelection
(
111 in TpSessionID subConferenceSessionID
,
112 in TpSessionID callLegSessionID
116 in TpSessionID subConferenceSessionID
,
117 in TpSessionID callLegSessionID
123 interface IpAppConfCall
: mmccs
::IpAppMultiMediaCall
{
124 mpccs
::IpAppCallLeg partyJoined
(
125 in TpSessionID conferenceSessionID
,
126 in mpccs
::TpCallLegIdentifier callLeg
,
127 in TpJoinEventInfo eventInfo
130 void leaveMonitorRes
(
131 in TpSessionID conferenceSessionID
,
132 in TpSessionID callLeg
138 interface IpConfCallControlManager
: mmccs
::IpMultiMediaCallControlManager
{
139 TpConfCallIdentifier createConference
(
140 in IpAppConfCall appConferenceCall
,
141 in TpInt32 numberOfSubConferences
,
142 in TpConfPolicy conferencePolicy
,
143 in TpInt32 numberOfParticipants
,
144 in TpDuration duration
146 raises
(TpCommonExceptions
);
148 TpConfSearchResult checkResources
(
149 in TpConfSearchCriteria searchCriteria
151 raises
(TpCommonExceptions
);
153 TpResourceReservation reserveResources
(
154 in IpAppConfCallControlManager appInterface
,
155 in TpDateAndTime startTime
,
156 in TpInt32 numberOfParticipants
,
157 in TpDuration duration
,
158 in TpConfPolicy conferencePolicy
160 raises
(TpCommonExceptions
);
163 in TpResourceReservation resourceReservation
165 raises
(TpCommonExceptions
);
170 interface IpAppConfCallControlManager
: mmccs
::IpAppMultiMediaCallControlManager
{
171 IpAppConfCall conferenceCreated
(
172 in TpConfCallIdentifier conferenceCall
178 interface IpSubConfCall
: mmccs
::IpMultiMediaCall
{
179 TpSubConfCallIdentifier splitSubConference
(
180 in TpSessionID subConferenceSessionID
,
181 in TpSessionIDSet callLegList
,
182 in IpAppSubConfCall appSubConferenceCall
184 raises
(TpCommonExceptions
,P_INVALID_SESSION_ID
);
186 void mergeSubConference
(
187 in TpSessionID subConferenceCallSessionID
,
188 in TpSessionID targetSubConferenceCall
190 raises
(TpCommonExceptions
,P_INVALID_SESSION_ID
);
193 in TpSessionID subConferenceCallSessionID
,
194 in TpSessionID targetSubConferenceCall
,
195 in TpSessionID callLeg
197 raises
(TpCommonExceptions
,P_INVALID_SESSION_ID
);
200 in TpSessionID subConferenceSessionID
,
201 in TpSessionID inspectedCallLeg
203 raises
(TpCommonExceptions
,P_INVALID_SESSION_ID
);
205 void inspectVideoCancel
(
206 in TpSessionID subConferenceSessionID
208 raises
(TpCommonExceptions
,P_INVALID_SESSION_ID
);
210 void appointSpeaker
(
211 in TpSessionID subConferenceSessionID
,
212 in TpSessionID speakerCallLeg
214 raises
(TpCommonExceptions
,P_INVALID_SESSION_ID
);
216 void chairSelection
(
217 in TpSessionID subConferenceSessionID
,
218 in TpSessionID chairCallLeg
220 raises
(TpCommonExceptions
,P_INVALID_SESSION_ID
);
222 void changeConferencePolicy
(
223 in TpSessionID subConferenceSessionID
,
224 in TpConfPolicy conferencePolicy
226 raises
(TpCommonExceptions
,P_INVALID_SESSION_ID
);
231 interface IpConfCall
: mmccs
::IpMultiMediaCall
{
232 TpSubConfCallIdentifierSet getSubConferences
(
233 in TpSessionID conferenceSessionID
235 raises
(TpCommonExceptions
,P_INVALID_SESSION_ID
);
237 TpSubConfCallIdentifier createSubConference
(
238 in TpSessionID conferenceSessionID
,
239 in IpAppSubConfCall appSubConference
,
240 in TpConfPolicy conferencePolicy
242 raises
(TpCommonExceptions
,P_INVALID_SESSION_ID
);
244 void leaveMonitorReq
(
245 in TpSessionID conferenceSessionID
247 raises
(TpCommonExceptions
,P_INVALID_SESSION_ID
);
249 TpAddress getConferenceAddress
(
250 in TpSessionID conferenceSessionID
252 raises
(TpCommonExceptions
,P_INVALID_SESSION_ID
);