@webex/plugin-meetings 3.7.0-next.9 → 3.7.0-wxcc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/annotation/index.js +17 -0
- package/dist/annotation/index.js.map +1 -1
- package/dist/breakouts/breakout.js +1 -1
- package/dist/breakouts/index.js +1 -1
- package/dist/common/errors/join-forbidden-error.js +52 -0
- package/dist/common/errors/join-forbidden-error.js.map +1 -0
- package/dist/common/errors/{webinar-registration-error.js → join-webinar-error.js} +12 -12
- package/dist/common/errors/join-webinar-error.js.map +1 -0
- package/dist/common/errors/multistream-not-supported-error.js +53 -0
- package/dist/common/errors/multistream-not-supported-error.js.map +1 -0
- package/dist/config.js +1 -1
- package/dist/config.js.map +1 -1
- package/dist/constants.js +46 -5
- package/dist/constants.js.map +1 -1
- package/dist/index.js +16 -11
- package/dist/index.js.map +1 -1
- package/dist/interpretation/index.js +1 -1
- package/dist/interpretation/siLanguage.js +1 -1
- package/dist/locus-info/index.js +14 -3
- package/dist/locus-info/index.js.map +1 -1
- package/dist/locus-info/selfUtils.js +30 -17
- package/dist/locus-info/selfUtils.js.map +1 -1
- package/dist/meeting/in-meeting-actions.js +2 -0
- package/dist/meeting/in-meeting-actions.js.map +1 -1
- package/dist/meeting/index.js +960 -832
- package/dist/meeting/index.js.map +1 -1
- package/dist/meeting/locusMediaRequest.js +9 -0
- package/dist/meeting/locusMediaRequest.js.map +1 -1
- package/dist/meeting/request.js +30 -0
- package/dist/meeting/request.js.map +1 -1
- package/dist/meeting/request.type.js.map +1 -1
- package/dist/meeting/util.js +16 -16
- package/dist/meeting/util.js.map +1 -1
- package/dist/meeting-info/meeting-info-v2.js +96 -33
- package/dist/meeting-info/meeting-info-v2.js.map +1 -1
- package/dist/meeting-info/utilv2.js +1 -1
- package/dist/meeting-info/utilv2.js.map +1 -1
- package/dist/meetings/index.js +103 -54
- package/dist/meetings/index.js.map +1 -1
- package/dist/meetings/meetings.types.js +2 -0
- package/dist/meetings/meetings.types.js.map +1 -1
- package/dist/meetings/util.js +1 -1
- package/dist/meetings/util.js.map +1 -1
- package/dist/member/index.js +9 -0
- package/dist/member/index.js.map +1 -1
- package/dist/member/types.js.map +1 -1
- package/dist/member/util.js +39 -28
- package/dist/member/util.js.map +1 -1
- package/dist/metrics/constants.js +3 -2
- package/dist/metrics/constants.js.map +1 -1
- package/dist/multistream/remoteMedia.js +30 -15
- package/dist/multistream/remoteMedia.js.map +1 -1
- package/dist/multistream/sendSlotManager.js +24 -0
- package/dist/multistream/sendSlotManager.js.map +1 -1
- package/dist/roap/index.js +10 -8
- package/dist/roap/index.js.map +1 -1
- package/dist/types/annotation/index.d.ts +5 -0
- package/dist/types/common/errors/join-forbidden-error.d.ts +15 -0
- package/dist/types/common/errors/{webinar-registration-error.d.ts → join-webinar-error.d.ts} +2 -2
- package/dist/types/common/errors/multistream-not-supported-error.d.ts +17 -0
- package/dist/types/constants.d.ts +38 -1
- package/dist/types/index.d.ts +3 -3
- package/dist/types/locus-info/index.d.ts +2 -1
- package/dist/types/meeting/in-meeting-actions.d.ts +2 -0
- package/dist/types/meeting/index.d.ts +19 -12
- package/dist/types/meeting/locusMediaRequest.d.ts +4 -0
- package/dist/types/meeting/request.d.ts +12 -1
- package/dist/types/meeting/request.type.d.ts +6 -0
- package/dist/types/meeting/util.d.ts +1 -1
- package/dist/types/meeting-info/meeting-info-v2.d.ts +27 -4
- package/dist/types/meetings/index.d.ts +16 -1
- package/dist/types/meetings/meetings.types.d.ts +8 -0
- package/dist/types/member/index.d.ts +1 -0
- package/dist/types/member/types.d.ts +7 -0
- package/dist/types/metrics/constants.d.ts +2 -1
- package/dist/types/multistream/sendSlotManager.d.ts +8 -1
- package/dist/webinar/index.js +354 -3
- package/dist/webinar/index.js.map +1 -1
- package/package.json +23 -22
- package/src/annotation/index.ts +16 -0
- package/src/common/errors/join-forbidden-error.ts +26 -0
- package/src/common/errors/join-webinar-error.ts +24 -0
- package/src/common/errors/multistream-not-supported-error.ts +30 -0
- package/src/config.ts +1 -1
- package/src/constants.ts +43 -3
- package/src/index.ts +5 -3
- package/src/locus-info/index.ts +20 -3
- package/src/locus-info/selfUtils.ts +19 -6
- package/src/meeting/in-meeting-actions.ts +4 -0
- package/src/meeting/index.ts +259 -80
- package/src/meeting/locusMediaRequest.ts +7 -0
- package/src/meeting/request.ts +26 -1
- package/src/meeting/request.type.ts +7 -0
- package/src/meeting/util.ts +8 -10
- package/src/meeting-info/meeting-info-v2.ts +74 -11
- package/src/meeting-info/utilv2.ts +3 -1
- package/src/meetings/index.ts +73 -20
- package/src/meetings/meetings.types.ts +10 -0
- package/src/meetings/util.ts +2 -1
- package/src/member/index.ts +9 -0
- package/src/member/types.ts +8 -0
- package/src/member/util.ts +34 -24
- package/src/metrics/constants.ts +2 -1
- package/src/multistream/remoteMedia.ts +28 -15
- package/src/multistream/sendSlotManager.ts +31 -0
- package/src/roap/index.ts +10 -8
- package/src/webinar/index.ts +197 -3
- package/test/unit/spec/annotation/index.ts +46 -1
- package/test/unit/spec/locus-info/index.js +292 -60
- package/test/unit/spec/locus-info/selfConstant.js +7 -0
- package/test/unit/spec/locus-info/selfUtils.js +91 -1
- package/test/unit/spec/meeting/in-meeting-actions.ts +2 -0
- package/test/unit/spec/meeting/index.js +722 -105
- package/test/unit/spec/meeting/utils.js +22 -19
- package/test/unit/spec/meeting-info/meetinginfov2.js +46 -4
- package/test/unit/spec/meeting-info/utilv2.js +17 -0
- package/test/unit/spec/meetings/index.js +150 -13
- package/test/unit/spec/meetings/utils.js +10 -0
- package/test/unit/spec/member/util.js +52 -11
- package/test/unit/spec/multistream/remoteMedia.ts +11 -7
- package/test/unit/spec/roap/index.ts +47 -0
- package/test/unit/spec/webinar/index.ts +457 -0
- package/dist/common/errors/webinar-registration-error.js.map +0 -1
- package/src/common/errors/webinar-registration-error.ts +0 -27
|
@@ -229,11 +229,12 @@ export default class LocusInfo extends EventsScope {
|
|
|
229
229
|
/**
|
|
230
230
|
* handles when the locus.mediaShares is updated
|
|
231
231
|
* @param {Object} mediaShares the locus.mediaShares property
|
|
232
|
+
* @param {boolean} forceUpdate force to update the mediaShares
|
|
232
233
|
* @returns {undefined}
|
|
233
234
|
* @memberof LocusInfo
|
|
234
235
|
* emits internal event locus_info_update_media_shares
|
|
235
236
|
*/
|
|
236
|
-
updateMediaShares(mediaShares: object): void;
|
|
237
|
+
updateMediaShares(mediaShares: object, forceUpdate?: boolean): void;
|
|
237
238
|
/**
|
|
238
239
|
* @param {String} participantsUrl
|
|
239
240
|
* @returns {undefined}
|
|
@@ -43,6 +43,7 @@ interface IInMeetingActions {
|
|
|
43
43
|
waitingForOthersToJoin?: boolean;
|
|
44
44
|
canSendReactions?: boolean;
|
|
45
45
|
canManageBreakout?: boolean;
|
|
46
|
+
canStartBreakout?: boolean;
|
|
46
47
|
canBroadcastMessageToBreakout?: boolean;
|
|
47
48
|
canAdmitLobbyToBreakout?: boolean;
|
|
48
49
|
isBreakoutPreassignmentsEnabled?: boolean;
|
|
@@ -137,6 +138,7 @@ export default class InMeetingActions implements IInMeetingActions {
|
|
|
137
138
|
waitingForOthersToJoin: any;
|
|
138
139
|
canSendReactions: any;
|
|
139
140
|
canManageBreakout: any;
|
|
141
|
+
canStartBreakout: any;
|
|
140
142
|
canBroadcastMessageToBreakout: any;
|
|
141
143
|
canAdmitLobbyToBreakout: any;
|
|
142
144
|
isBreakoutPreassignmentsEnabled: any;
|
|
@@ -837,6 +837,14 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
837
837
|
authorizingLocusUrl: string;
|
|
838
838
|
mainLocusUrl: string;
|
|
839
839
|
}): any;
|
|
840
|
+
/**
|
|
841
|
+
* Manages be right back status updates for the current participant.
|
|
842
|
+
*
|
|
843
|
+
* @param {boolean} enabled - Indicates whether the user enabled brb or not.
|
|
844
|
+
* @returns {Promise<void>} resolves when the brb status is updated or does nothing if not in a multistream meeting.
|
|
845
|
+
* @throws {Error} - Throws an error if the request fails.
|
|
846
|
+
*/
|
|
847
|
+
beRightBack(enabled: boolean): Promise<void>;
|
|
840
848
|
/**
|
|
841
849
|
* Remove the member from the meeting, boot them
|
|
842
850
|
* @param {String} memberId
|
|
@@ -1046,11 +1054,12 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1046
1054
|
* Close the peer connections and remove them from the class.
|
|
1047
1055
|
* Cleanup any media connection related things.
|
|
1048
1056
|
*
|
|
1057
|
+
* @param {boolean} resetMuteStates whether to also reset the audio/video mute state information
|
|
1049
1058
|
* @returns {Promise}
|
|
1050
1059
|
* @public
|
|
1051
1060
|
* @memberof Meeting
|
|
1052
1061
|
*/
|
|
1053
|
-
closePeerConnections(): Promise<void>;
|
|
1062
|
+
closePeerConnections(resetMuteStates?: boolean): Promise<void>;
|
|
1054
1063
|
/**
|
|
1055
1064
|
* Unsets the peer connections on the class
|
|
1056
1065
|
* warning DO NOT CALL WITHOUT CLOSING PEER CONNECTIONS FIRST
|
|
@@ -1115,7 +1124,7 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1115
1124
|
* @param {Object} options - options to join with media
|
|
1116
1125
|
* @param {JoinOptions} [options.joinOptions] - see #join()
|
|
1117
1126
|
* @param {AddMediaOptions} [options.mediaOptions] - see #addMedia()
|
|
1118
|
-
* @returns {Promise} -- {join: see join(), media: see addMedia()}
|
|
1127
|
+
* @returns {Promise} -- {join: see join(), media: see addMedia(), multistreamEnabled: flag to indicate if we managed to join in multistream mode}
|
|
1119
1128
|
* @public
|
|
1120
1129
|
* @memberof Meeting
|
|
1121
1130
|
* @example
|
|
@@ -1337,16 +1346,6 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1337
1346
|
* @returns {void}
|
|
1338
1347
|
*/
|
|
1339
1348
|
private createStatsAnalyzer;
|
|
1340
|
-
/**
|
|
1341
|
-
* Handles device logging
|
|
1342
|
-
*
|
|
1343
|
-
* @private
|
|
1344
|
-
* @static
|
|
1345
|
-
* @param {boolean} isAudioEnabled
|
|
1346
|
-
* @param {boolean} isVideoEnabled
|
|
1347
|
-
* @returns {Promise<void>}
|
|
1348
|
-
*/
|
|
1349
|
-
private static handleDeviceLogging;
|
|
1350
1349
|
/**
|
|
1351
1350
|
* Returns a promise. This promise is created once the local sdp offer has been successfully created and is resolved
|
|
1352
1351
|
* once the remote sdp answer has been received.
|
|
@@ -1412,6 +1411,14 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1412
1411
|
* @returns {Promise<void>}
|
|
1413
1412
|
*/
|
|
1414
1413
|
private cleanUpOnAddMediaFailure;
|
|
1414
|
+
/**
|
|
1415
|
+
* Cleans up stats analyzer, peer connection and other things before
|
|
1416
|
+
* we can create a new transcoded media connection
|
|
1417
|
+
*
|
|
1418
|
+
* @private
|
|
1419
|
+
* @returns {Promise<void>}
|
|
1420
|
+
*/
|
|
1421
|
+
private downgradeFromMultistreamToTranscoded;
|
|
1415
1422
|
/**
|
|
1416
1423
|
* Sends stats report, closes peer connection and cleans up any media connection
|
|
1417
1424
|
* related things before trying to establish media connection again with turn server
|
|
@@ -73,4 +73,8 @@ export declare class LocusMediaRequest extends WebexPlugin {
|
|
|
73
73
|
send(request: Request): Promise<RequestResult>;
|
|
74
74
|
/** Returns true if a confluence on the server is already created */
|
|
75
75
|
isConfluenceCreated(): boolean;
|
|
76
|
+
/**
|
|
77
|
+
* This method needs to be called when we downgrade from multistream to transcoded connection.
|
|
78
|
+
*/
|
|
79
|
+
downgradeFromMultistreamToTranscoded(): void;
|
|
76
80
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { StatelessWebexPlugin } from '@webex/webex-core';
|
|
2
|
-
import { SendReactionOptions, ToggleReactionsOptions } from './request.type';
|
|
2
|
+
import { SendReactionOptions, BrbOptions, ToggleReactionsOptions } from './request.type';
|
|
3
3
|
import { AnnotationInfo } from '../annotation/annotation.types';
|
|
4
4
|
import { ClientMediaPreferences } from '../reachability/reachability.types';
|
|
5
5
|
/**
|
|
@@ -292,4 +292,15 @@ export default class MeetingRequest extends StatelessWebexPlugin {
|
|
|
292
292
|
*/
|
|
293
293
|
toggleReactions({ enable, locusUrl, requestingParticipantId }: ToggleReactionsOptions): Promise<any>;
|
|
294
294
|
getLocusStatusByUrl(locusUrl: string): any;
|
|
295
|
+
/**
|
|
296
|
+
* Sends a request to set be right back status.
|
|
297
|
+
*
|
|
298
|
+
* @param {Object} options - The options for brb request.
|
|
299
|
+
* @param {boolean} options.enabled - Whether brb status is enabled.
|
|
300
|
+
* @param {string} options.locusUrl - The URL of the locus.
|
|
301
|
+
* @param {string} options.deviceUrl - The URL of the device.
|
|
302
|
+
* @param {string} options.selfId - The ID of the participant.
|
|
303
|
+
* @returns {Promise}
|
|
304
|
+
*/
|
|
305
|
+
setBrb({ enabled, locusUrl, deviceUrl, selfId }: BrbOptions): Promise<any>;
|
|
295
306
|
}
|
|
@@ -54,6 +54,7 @@ declare const MeetingUtil: {
|
|
|
54
54
|
canUserLowerSomeoneElsesHand: (displayHints: any) => any;
|
|
55
55
|
bothLeaveAndEndMeetingAvailable: (displayHints: any) => any;
|
|
56
56
|
canManageBreakout: (displayHints: any) => any;
|
|
57
|
+
canStartBreakout: (displayHints: any) => boolean;
|
|
57
58
|
canBroadcastMessageToBreakout: (displayHints: any, policies?: {}) => boolean;
|
|
58
59
|
isSuppressBreakoutSupport: (displayHints: any) => any;
|
|
59
60
|
canAdmitLobbyToBreakout: (displayHints: any) => boolean;
|
|
@@ -63,7 +64,6 @@ declare const MeetingUtil: {
|
|
|
63
64
|
unlockMeeting: (actions: any, request: any, locusUrl: any) => any;
|
|
64
65
|
handleAudioLogging: (audioStream?: LocalMicrophoneStream) => void;
|
|
65
66
|
handleVideoLogging: (videoStream?: LocalCameraStream) => void;
|
|
66
|
-
handleDeviceLogging: (devices?: any[]) => void;
|
|
67
67
|
endMeetingForAll: (meeting: any) => any;
|
|
68
68
|
canEnableClosedCaption: (displayHints: any) => any;
|
|
69
69
|
isSaveTranscriptsEnabled: (displayHints: any) => any;
|
|
@@ -65,9 +65,26 @@ export declare class MeetingInfoV2CaptchaError extends Error {
|
|
|
65
65
|
constructor(wbxAppApiErrorCode?: number, captchaInfo?: object, message?: string);
|
|
66
66
|
}
|
|
67
67
|
/**
|
|
68
|
-
* Error preventing join because of a webinar
|
|
68
|
+
* Error preventing join because of a webinar have some error
|
|
69
69
|
*/
|
|
70
|
-
export declare class
|
|
70
|
+
export declare class MeetingInfoV2JoinWebinarError extends Error {
|
|
71
|
+
meetingInfo: any;
|
|
72
|
+
sdkMessage: any;
|
|
73
|
+
wbxAppApiCode: any;
|
|
74
|
+
body: any;
|
|
75
|
+
/**
|
|
76
|
+
*
|
|
77
|
+
* @constructor
|
|
78
|
+
* @param {Number} [wbxAppApiErrorCode]
|
|
79
|
+
* @param {Object} [meetingInfo]
|
|
80
|
+
* @param {String} [message]
|
|
81
|
+
*/
|
|
82
|
+
constructor(wbxAppApiErrorCode?: number, meetingInfo?: object, message?: string);
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Error preventing join because of a forbidden error
|
|
86
|
+
*/
|
|
87
|
+
export declare class MeetingInfoV2JoinForbiddenError extends Error {
|
|
71
88
|
meetingInfo: any;
|
|
72
89
|
sdkMessage: any;
|
|
73
90
|
wbxAppApiCode: any;
|
|
@@ -107,11 +124,17 @@ export default class MeetingInfoV2 {
|
|
|
107
124
|
*/
|
|
108
125
|
handlePolicyError: (err: any) => void;
|
|
109
126
|
/**
|
|
110
|
-
* Raises a
|
|
127
|
+
* Raises a handleJoinWebinarError for join webinar error codes
|
|
128
|
+
* @param {any} err the error from the request
|
|
129
|
+
* @returns {void}
|
|
130
|
+
*/
|
|
131
|
+
handleJoinWebinarError: (err: any) => void;
|
|
132
|
+
/**
|
|
133
|
+
* Raises a handleForbiddenError for join meeting forbidden error
|
|
111
134
|
* @param {any} err the error from the request
|
|
112
135
|
* @returns {void}
|
|
113
136
|
*/
|
|
114
|
-
|
|
137
|
+
handleForbiddenError: (err: any) => void;
|
|
115
138
|
/**
|
|
116
139
|
* Creates adhoc space meetings for a space by fetching the conversation infomation
|
|
117
140
|
* @param {String} conversationUrl conversationUrl to start adhoc meeting on
|
|
@@ -8,7 +8,7 @@ import 'webrtc-adapter';
|
|
|
8
8
|
import { DESTINATION_TYPE } from '../constants';
|
|
9
9
|
import { CallStateForMetrics } from '../meeting';
|
|
10
10
|
import Reachability from '../reachability';
|
|
11
|
-
import { INoiseReductionEffect, IVirtualBackgroundEffect } from './meetings.types';
|
|
11
|
+
import { INoiseReductionEffect, IVirtualBackgroundEffect, MeetingRegistrationStatus } from './meetings.types';
|
|
12
12
|
/**
|
|
13
13
|
* Meetings Ready Event
|
|
14
14
|
* Emitted when the meetings instance on webex is ready
|
|
@@ -94,6 +94,7 @@ export default class Meetings extends WebexPlugin {
|
|
|
94
94
|
mediaHelpers: any;
|
|
95
95
|
breakoutLocusForHandleLater: any;
|
|
96
96
|
namespace: string;
|
|
97
|
+
registrationStatus: MeetingRegistrationStatus;
|
|
97
98
|
/**
|
|
98
99
|
* Initializes the Meetings Plugin
|
|
99
100
|
* @constructor
|
|
@@ -178,6 +179,13 @@ export default class Meetings extends WebexPlugin {
|
|
|
178
179
|
* @memberof Meetings
|
|
179
180
|
*/
|
|
180
181
|
private onReady;
|
|
182
|
+
/**
|
|
183
|
+
* API to change log upload interval. Setting the factor to 0 will disable periodic log uploads.
|
|
184
|
+
*
|
|
185
|
+
* @param {number} factor new factor value
|
|
186
|
+
* @returns {void}
|
|
187
|
+
*/
|
|
188
|
+
private _setLogUploadIntervalMultiplicationFactor;
|
|
181
189
|
/**
|
|
182
190
|
* API to toggle unified meetings
|
|
183
191
|
* @param {Boolean} changeState
|
|
@@ -219,6 +227,13 @@ export default class Meetings extends WebexPlugin {
|
|
|
219
227
|
* @returns {undefined}
|
|
220
228
|
*/
|
|
221
229
|
private _toggleIpv6BackendNativeSupport;
|
|
230
|
+
/**
|
|
231
|
+
* Executes a registration step and updates the registration status.
|
|
232
|
+
* @param {Function} step - The registration step to execute.
|
|
233
|
+
* @param {string} stepName - The name of the registration step.
|
|
234
|
+
* @returns {Promise} A promise that resolves when the step is completed.
|
|
235
|
+
*/
|
|
236
|
+
executeRegistrationStep(step: () => Promise<any>, stepName: string): Promise<void>;
|
|
222
237
|
/**
|
|
223
238
|
* Explicitly sets up the meetings plugin by registering
|
|
224
239
|
* the device, connecting to mercury, and listening for locus events.
|
|
@@ -11,3 +11,11 @@ export declare const MEETING_KEY: {
|
|
|
11
11
|
readonly CORRELATION_ID: "correlationId";
|
|
12
12
|
};
|
|
13
13
|
export type MEETING_KEY = Enum<typeof MEETING_KEY>;
|
|
14
|
+
export type MeetingRegistrationStatus = {
|
|
15
|
+
fetchWebexSite: boolean;
|
|
16
|
+
getGeoHint: boolean;
|
|
17
|
+
startReachability: boolean;
|
|
18
|
+
deviceRegister: boolean;
|
|
19
|
+
mercuryConnect: boolean;
|
|
20
|
+
checkH264Support: boolean;
|
|
21
|
+
};
|
|
@@ -67,8 +67,9 @@ declare const BEHAVIORAL_METRICS: {
|
|
|
67
67
|
ROAP_HTTP_RESPONSE_MISSING: string;
|
|
68
68
|
TURN_DISCOVERY_REQUIRES_OK: string;
|
|
69
69
|
REACHABILITY_COMPLETED: string;
|
|
70
|
-
|
|
70
|
+
JOIN_WEBINAR_ERROR: string;
|
|
71
71
|
GUEST_ENTERED_LOBBY: string;
|
|
72
72
|
GUEST_EXITED_LOBBY: string;
|
|
73
|
+
JOIN_FORBIDDEN_ERROR: string;
|
|
73
74
|
};
|
|
74
75
|
export { BEHAVIORAL_METRICS as default };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { SendSlot, MediaType, LocalStream, MultistreamRoapMediaConnection, NamedMediaGroup } from '@webex/internal-media-core';
|
|
1
|
+
import { SendSlot, MediaType, LocalStream, MultistreamRoapMediaConnection, NamedMediaGroup, StreamState } from '@webex/internal-media-core';
|
|
2
2
|
export default class SendSlotManager {
|
|
3
3
|
private readonly slots;
|
|
4
4
|
private readonly LoggerProxy;
|
|
@@ -25,6 +25,13 @@ export default class SendSlotManager {
|
|
|
25
25
|
* @returns {void}
|
|
26
26
|
*/
|
|
27
27
|
setNamedMediaGroups(mediaType: MediaType, namedMediaGroups: NamedMediaGroup[]): void;
|
|
28
|
+
/**
|
|
29
|
+
* Sets the source state override for the given media type.
|
|
30
|
+
* @param {MediaType} mediaType - The type of media (must be MediaType.VideoMain to apply source state changes).
|
|
31
|
+
* @param {StreamState | null} state - The state to set or null to clear the override value.
|
|
32
|
+
* @returns {void}
|
|
33
|
+
*/
|
|
34
|
+
setSourceStateOverride(mediaType: MediaType, state: StreamState | null): void;
|
|
28
35
|
/**
|
|
29
36
|
* This method publishes the given stream to the sendSlot for the given mediaType
|
|
30
37
|
* @param {MediaType} mediaType MediaType of the sendSlot to which a stream needs to be published (AUDIO_MAIN/VIDEO_MAIN/AUDIO_SLIDES/VIDEO_SLIDES)
|