@webex/plugin-meetings 3.0.0-beta.24 → 3.0.0-beta.241
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/README.md +46 -8
- package/dist/annotation/annotation.types.js +7 -0
- package/dist/annotation/annotation.types.js.map +1 -0
- package/dist/annotation/constants.js +49 -0
- package/dist/annotation/constants.js.map +1 -0
- package/dist/annotation/index.js +342 -0
- package/dist/annotation/index.js.map +1 -0
- package/dist/breakouts/breakout.js +114 -14
- package/dist/breakouts/breakout.js.map +1 -1
- package/dist/breakouts/edit-lock-error.js +52 -0
- package/dist/breakouts/edit-lock-error.js.map +1 -0
- package/dist/breakouts/events.js +45 -0
- package/dist/breakouts/events.js.map +1 -0
- package/dist/breakouts/index.js +841 -19
- package/dist/breakouts/index.js.map +1 -1
- package/dist/breakouts/request.js +78 -0
- package/dist/breakouts/request.js.map +1 -0
- package/dist/breakouts/utils.js +67 -0
- package/dist/breakouts/utils.js.map +1 -0
- package/dist/common/errors/webex-errors.js +28 -7
- package/dist/common/errors/webex-errors.js.map +1 -1
- package/dist/common/logs/logger-proxy.js +1 -1
- package/dist/common/logs/logger-proxy.js.map +1 -1
- package/dist/common/queue.js +24 -9
- package/dist/common/queue.js.map +1 -1
- package/dist/config.js +5 -10
- package/dist/config.js.map +1 -1
- package/dist/constants.js +190 -27
- package/dist/constants.js.map +1 -1
- package/dist/controls-options-manager/constants.js +14 -0
- package/dist/controls-options-manager/constants.js.map +1 -0
- package/dist/controls-options-manager/enums.js +27 -0
- package/dist/controls-options-manager/enums.js.map +1 -0
- package/dist/controls-options-manager/index.js +297 -0
- package/dist/controls-options-manager/index.js.map +1 -0
- package/dist/controls-options-manager/types.js +7 -0
- package/dist/controls-options-manager/types.js.map +1 -0
- package/dist/controls-options-manager/util.js +319 -0
- package/dist/controls-options-manager/util.js.map +1 -0
- package/dist/index.js +106 -1
- package/dist/index.js.map +1 -1
- package/dist/interpretation/collection.js +23 -0
- package/dist/interpretation/collection.js.map +1 -0
- package/dist/interpretation/index.js +366 -0
- package/dist/interpretation/index.js.map +1 -0
- package/dist/interpretation/siLanguage.js +25 -0
- package/dist/interpretation/siLanguage.js.map +1 -0
- package/dist/locus-info/controlsUtils.js +91 -2
- package/dist/locus-info/controlsUtils.js.map +1 -1
- package/dist/locus-info/index.js +357 -62
- package/dist/locus-info/index.js.map +1 -1
- package/dist/locus-info/infoUtils.js +7 -1
- package/dist/locus-info/infoUtils.js.map +1 -1
- package/dist/locus-info/mediaSharesUtils.js +43 -1
- package/dist/locus-info/mediaSharesUtils.js.map +1 -1
- package/dist/locus-info/parser.js +219 -63
- package/dist/locus-info/parser.js.map +1 -1
- package/dist/locus-info/selfUtils.js +89 -14
- package/dist/locus-info/selfUtils.js.map +1 -1
- package/dist/media/index.js +49 -106
- package/dist/media/index.js.map +1 -1
- package/dist/media/properties.js +29 -90
- package/dist/media/properties.js.map +1 -1
- package/dist/meeting/in-meeting-actions.js +90 -2
- package/dist/meeting/in-meeting-actions.js.map +1 -1
- package/dist/meeting/index.js +2593 -2558
- package/dist/meeting/index.js.map +1 -1
- package/dist/meeting/locusMediaRequest.js +292 -0
- package/dist/meeting/locusMediaRequest.js.map +1 -0
- package/dist/meeting/muteState.js +228 -123
- package/dist/meeting/muteState.js.map +1 -1
- package/dist/meeting/request.js +255 -195
- package/dist/meeting/request.js.map +1 -1
- package/dist/meeting/util.js +601 -417
- package/dist/meeting/util.js.map +1 -1
- package/dist/meeting-info/index.js +48 -7
- package/dist/meeting-info/index.js.map +1 -1
- package/dist/meeting-info/meeting-info-v2.js +171 -51
- package/dist/meeting-info/meeting-info-v2.js.map +1 -1
- package/dist/meeting-info/util.js +1 -1
- package/dist/meeting-info/util.js.map +1 -1
- package/dist/meeting-info/utilv2.js +36 -36
- package/dist/meeting-info/utilv2.js.map +1 -1
- package/dist/meetings/collection.js +22 -0
- package/dist/meetings/collection.js.map +1 -1
- package/dist/meetings/index.js +370 -90
- package/dist/meetings/index.js.map +1 -1
- package/dist/meetings/meetings.types.js +7 -0
- package/dist/meetings/meetings.types.js.map +1 -0
- package/dist/meetings/request.js +2 -0
- package/dist/meetings/request.js.map +1 -1
- package/dist/meetings/util.js +88 -1
- package/dist/meetings/util.js.map +1 -1
- package/dist/member/index.js +49 -0
- package/dist/member/index.js.map +1 -1
- package/dist/member/types.js +25 -0
- package/dist/member/types.js.map +1 -0
- package/dist/member/util.js +121 -25
- package/dist/member/util.js.map +1 -1
- package/dist/members/collection.js +10 -0
- package/dist/members/collection.js.map +1 -1
- package/dist/members/index.js +86 -5
- package/dist/members/index.js.map +1 -1
- package/dist/members/request.js +106 -38
- package/dist/members/request.js.map +1 -1
- package/dist/members/types.js +15 -0
- package/dist/members/types.js.map +1 -0
- package/dist/members/util.js +316 -233
- package/dist/members/util.js.map +1 -1
- package/dist/metrics/constants.js +4 -5
- package/dist/metrics/constants.js.map +1 -1
- package/dist/metrics/index.js +1 -468
- package/dist/metrics/index.js.map +1 -1
- package/dist/multistream/mediaRequestManager.js +238 -49
- package/dist/multistream/mediaRequestManager.js.map +1 -1
- package/dist/multistream/receiveSlot.js +49 -16
- package/dist/multistream/receiveSlot.js.map +1 -1
- package/dist/multistream/receiveSlotManager.js +52 -34
- package/dist/multistream/receiveSlotManager.js.map +1 -1
- package/dist/multistream/remoteMedia.js +44 -18
- package/dist/multistream/remoteMedia.js.map +1 -1
- package/dist/multistream/remoteMediaGroup.js +60 -3
- package/dist/multistream/remoteMediaGroup.js.map +1 -1
- package/dist/multistream/remoteMediaManager.js +213 -62
- package/dist/multistream/remoteMediaManager.js.map +1 -1
- package/dist/reachability/index.js +81 -30
- package/dist/reachability/index.js.map +1 -1
- package/dist/reachability/request.js +16 -7
- package/dist/reachability/request.js.map +1 -1
- package/dist/reconnection-manager/index.js +199 -154
- package/dist/reconnection-manager/index.js.map +1 -1
- package/dist/recording-controller/index.js +21 -2
- package/dist/recording-controller/index.js.map +1 -1
- package/dist/recording-controller/util.js +9 -8
- package/dist/recording-controller/util.js.map +1 -1
- package/dist/roap/index.js +23 -29
- package/dist/roap/index.js.map +1 -1
- package/dist/roap/request.js +112 -89
- package/dist/roap/request.js.map +1 -1
- package/dist/roap/turnDiscovery.js +96 -36
- package/dist/roap/turnDiscovery.js.map +1 -1
- package/dist/rtcMetrics/constants.js +12 -0
- package/dist/rtcMetrics/constants.js.map +1 -0
- package/dist/rtcMetrics/index.js +117 -0
- package/dist/rtcMetrics/index.js.map +1 -0
- package/dist/statsAnalyzer/index.js +51 -34
- package/dist/statsAnalyzer/index.js.map +1 -1
- package/dist/statsAnalyzer/mqaUtil.js +6 -6
- package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
- package/dist/types/annotation/annotation.types.d.ts +42 -0
- package/dist/types/annotation/constants.d.ts +31 -0
- package/dist/types/annotation/index.d.ts +117 -0
- package/dist/types/breakouts/edit-lock-error.d.ts +15 -0
- package/dist/types/breakouts/events.d.ts +8 -0
- package/dist/types/breakouts/request.d.ts +22 -0
- package/dist/types/breakouts/utils.d.ts +15 -0
- package/dist/types/common/errors/webex-errors.d.ts +13 -1
- package/dist/types/common/queue.d.ts +9 -7
- package/dist/types/config.d.ts +1 -6
- package/dist/types/constants.d.ts +154 -21
- package/dist/types/controls-options-manager/constants.d.ts +4 -0
- package/dist/types/controls-options-manager/enums.d.ts +15 -0
- package/dist/types/controls-options-manager/index.d.ts +136 -0
- package/dist/types/controls-options-manager/types.d.ts +43 -0
- package/dist/types/controls-options-manager/util.d.ts +1 -0
- package/dist/types/index.d.ts +6 -4
- package/dist/types/interpretation/collection.d.ts +5 -0
- package/dist/types/interpretation/index.d.ts +5 -0
- package/dist/types/interpretation/siLanguage.d.ts +5 -0
- package/dist/types/locus-info/index.d.ts +57 -4
- package/dist/types/locus-info/parser.d.ts +65 -6
- package/dist/types/media/index.d.ts +2 -0
- package/dist/types/media/properties.d.ts +22 -36
- package/dist/types/meeting/in-meeting-actions.d.ts +90 -2
- package/dist/types/meeting/index.d.ts +297 -491
- package/dist/types/meeting/locusMediaRequest.d.ts +74 -0
- package/dist/types/meeting/muteState.d.ts +98 -22
- package/dist/types/meeting/request.d.ts +72 -43
- package/dist/types/meeting/util.d.ts +101 -1
- package/dist/types/meeting-info/index.d.ts +6 -1
- package/dist/types/meeting-info/meeting-info-v2.d.ts +30 -1
- package/dist/types/meetings/collection.d.ts +8 -0
- package/dist/types/meetings/index.d.ts +76 -12
- package/dist/types/meetings/meetings.types.d.ts +4 -0
- package/dist/types/member/index.d.ts +13 -0
- package/dist/types/member/types.d.ts +32 -0
- package/dist/types/members/collection.d.ts +5 -0
- package/dist/types/members/index.d.ts +35 -2
- package/dist/types/members/request.d.ts +73 -9
- package/dist/types/members/types.d.ts +24 -0
- package/dist/types/members/util.d.ts +209 -1
- package/dist/types/metrics/constants.d.ts +3 -4
- package/dist/types/metrics/index.d.ts +4 -119
- package/dist/types/multistream/mediaRequestManager.d.ts +73 -5
- package/dist/types/multistream/receiveSlot.d.ts +16 -12
- package/dist/types/multistream/receiveSlotManager.d.ts +19 -4
- package/dist/types/multistream/remoteMedia.d.ts +8 -29
- package/dist/types/multistream/remoteMediaGroup.d.ts +0 -9
- package/dist/types/multistream/remoteMediaManager.d.ts +46 -2
- package/dist/types/reachability/index.d.ts +15 -3
- package/dist/types/reachability/request.d.ts +7 -3
- package/dist/types/reconnection-manager/index.d.ts +9 -0
- package/dist/types/recording-controller/index.d.ts +15 -1
- package/dist/types/recording-controller/util.d.ts +5 -4
- package/dist/types/roap/request.d.ts +15 -11
- package/dist/types/roap/turnDiscovery.d.ts +18 -1
- package/dist/types/rtcMetrics/constants.d.ts +4 -0
- package/dist/types/rtcMetrics/index.d.ts +47 -0
- package/dist/types/statsAnalyzer/index.d.ts +6 -1
- package/package.json +23 -20
- package/src/annotation/annotation.types.ts +50 -0
- package/src/annotation/constants.ts +36 -0
- package/src/annotation/index.ts +328 -0
- package/src/breakouts/README.md +44 -14
- package/src/breakouts/breakout.ts +87 -9
- package/src/breakouts/edit-lock-error.ts +25 -0
- package/src/breakouts/events.ts +56 -0
- package/src/breakouts/index.ts +710 -10
- package/src/breakouts/request.ts +55 -0
- package/src/breakouts/utils.ts +57 -0
- package/src/common/errors/webex-errors.ts +27 -2
- package/src/common/logs/logger-proxy.ts +1 -1
- package/src/common/queue.ts +22 -8
- package/src/config.ts +4 -9
- package/src/constants.ts +175 -18
- package/src/controls-options-manager/constants.ts +5 -0
- package/src/controls-options-manager/enums.ts +18 -0
- package/src/controls-options-manager/index.ts +278 -0
- package/src/controls-options-manager/types.ts +59 -0
- package/src/controls-options-manager/util.ts +300 -0
- package/src/index.ts +39 -0
- package/src/interpretation/README.md +60 -0
- package/src/interpretation/collection.ts +19 -0
- package/src/interpretation/index.ts +332 -0
- package/src/interpretation/siLanguage.ts +18 -0
- package/src/locus-info/controlsUtils.ts +108 -0
- package/src/locus-info/index.ts +381 -59
- package/src/locus-info/infoUtils.ts +10 -2
- package/src/locus-info/mediaSharesUtils.ts +48 -0
- package/src/locus-info/parser.ts +224 -39
- package/src/locus-info/selfUtils.ts +81 -5
- package/src/media/index.ts +89 -109
- package/src/media/properties.ts +48 -87
- package/src/meeting/in-meeting-actions.ts +179 -3
- package/src/meeting/index.ts +2086 -2151
- package/src/meeting/locusMediaRequest.ts +313 -0
- package/src/meeting/muteState.ts +227 -130
- package/src/meeting/request.ts +171 -120
- package/src/meeting/util.ts +588 -395
- package/src/meeting-info/index.ts +54 -8
- package/src/meeting-info/meeting-info-v2.ts +148 -14
- package/src/meeting-info/util.ts +1 -1
- package/src/meeting-info/utilv2.ts +23 -23
- package/src/meetings/collection.ts +20 -0
- package/src/meetings/index.ts +407 -108
- package/src/meetings/meetings.types.ts +12 -0
- package/src/meetings/request.ts +2 -0
- package/src/meetings/util.ts +103 -4
- package/src/member/index.ts +49 -0
- package/src/member/types.ts +38 -0
- package/src/member/util.ts +127 -25
- package/src/members/collection.ts +8 -0
- package/src/members/index.ts +107 -6
- package/src/members/request.ts +97 -17
- package/src/members/types.ts +28 -0
- package/src/members/util.ts +319 -240
- package/src/metrics/constants.ts +3 -4
- package/src/metrics/index.ts +1 -490
- package/src/multistream/mediaRequestManager.ts +289 -79
- package/src/multistream/receiveSlot.ts +55 -18
- package/src/multistream/receiveSlotManager.ts +46 -24
- package/src/multistream/remoteMedia.ts +27 -2
- package/src/multistream/remoteMediaGroup.ts +59 -0
- package/src/multistream/remoteMediaManager.ts +150 -32
- package/src/reachability/index.ts +69 -17
- package/src/reachability/request.ts +16 -7
- package/src/reconnection-manager/index.ts +81 -54
- package/src/recording-controller/index.ts +20 -3
- package/src/recording-controller/util.ts +26 -9
- package/src/roap/index.ts +23 -30
- package/src/roap/request.ts +104 -95
- package/src/roap/turnDiscovery.ts +50 -25
- package/src/rtcMetrics/constants.ts +3 -0
- package/src/rtcMetrics/index.ts +100 -0
- package/src/statsAnalyzer/index.ts +73 -35
- package/src/statsAnalyzer/mqaUtil.ts +8 -10
- package/test/integration/spec/converged-space-meetings.js +233 -0
- package/test/integration/spec/journey.js +336 -259
- package/test/integration/spec/space-meeting.js +76 -3
- package/test/unit/spec/annotation/index.ts +418 -0
- package/test/unit/spec/breakouts/breakout.ts +142 -24
- package/test/unit/spec/breakouts/edit-lock-error.ts +30 -0
- package/test/unit/spec/breakouts/events.ts +89 -0
- package/test/unit/spec/breakouts/index.ts +1545 -48
- package/test/unit/spec/breakouts/request.ts +104 -0
- package/test/unit/spec/breakouts/utils.js +72 -0
- package/test/unit/spec/common/queue.js +31 -2
- package/test/unit/spec/controls-options-manager/index.js +287 -0
- package/test/unit/spec/controls-options-manager/util.js +582 -0
- package/test/unit/spec/fixture/locus.js +1 -0
- package/test/unit/spec/interpretation/collection.ts +15 -0
- package/test/unit/spec/interpretation/index.ts +589 -0
- package/test/unit/spec/interpretation/siLanguage.ts +28 -0
- package/test/unit/spec/locus-info/controlsUtils.js +316 -43
- package/test/unit/spec/locus-info/index.js +1169 -36
- package/test/unit/spec/locus-info/infoUtils.js +37 -15
- package/test/unit/spec/locus-info/mediaSharesUtils.ts +22 -0
- package/test/unit/spec/locus-info/parser.js +62 -22
- package/test/unit/spec/locus-info/selfConstant.js +27 -4
- package/test/unit/spec/locus-info/selfUtils.js +208 -17
- package/test/unit/spec/media/index.ts +138 -28
- package/test/unit/spec/meeting/in-meeting-actions.ts +89 -3
- package/test/unit/spec/meeting/index.js +3514 -1746
- package/test/unit/spec/meeting/locusMediaRequest.ts +442 -0
- package/test/unit/spec/meeting/muteState.js +370 -208
- package/test/unit/spec/meeting/request.js +440 -45
- package/test/unit/spec/meeting/utils.js +671 -54
- package/test/unit/spec/meeting-info/index.js +181 -0
- package/test/unit/spec/meeting-info/meetinginfov2.js +383 -5
- package/test/unit/spec/meeting-info/utilv2.js +21 -0
- package/test/unit/spec/meetings/collection.js +14 -0
- package/test/unit/spec/meetings/index.js +939 -150
- package/test/unit/spec/meetings/utils.js +206 -2
- package/test/unit/spec/member/index.js +58 -4
- package/test/unit/spec/member/util.js +479 -35
- package/test/unit/spec/members/index.js +319 -1
- package/test/unit/spec/members/request.js +206 -27
- package/test/unit/spec/members/utils.js +184 -0
- package/test/unit/spec/metrics/index.js +1 -50
- package/test/unit/spec/multistream/mediaRequestManager.ts +803 -162
- package/test/unit/spec/multistream/receiveSlot.ts +72 -13
- package/test/unit/spec/multistream/receiveSlotManager.ts +58 -28
- package/test/unit/spec/multistream/remoteMedia.ts +30 -0
- package/test/unit/spec/multistream/remoteMediaGroup.ts +266 -0
- package/test/unit/spec/multistream/remoteMediaManager.ts +326 -0
- package/test/unit/spec/reachability/index.ts +185 -7
- package/test/unit/spec/reachability/request.js +68 -0
- package/test/unit/spec/reconnection-manager/index.js +80 -6
- package/test/unit/spec/recording-controller/index.js +294 -218
- package/test/unit/spec/recording-controller/util.js +223 -96
- package/test/unit/spec/roap/index.ts +31 -51
- package/test/unit/spec/roap/request.ts +202 -85
- package/test/unit/spec/roap/turnDiscovery.ts +45 -10
- package/test/unit/spec/rtcMetrics/index.ts +68 -0
- package/test/unit/spec/stats-analyzer/index.js +29 -2
- package/test/utils/constants.js +9 -0
- package/test/utils/integrationTestUtils.js +46 -0
- package/test/utils/testUtils.js +0 -45
- package/test/utils/webex-config.js +4 -0
- package/test/utils/webex-test-users.js +6 -3
- package/dist/meeting/effectsState.js +0 -262
- package/dist/meeting/effectsState.js.map +0 -1
- package/dist/metrics/config.js +0 -299
- package/dist/metrics/config.js.map +0 -1
- package/dist/types/meeting/effectsState.d.ts +0 -42
- package/dist/types/metrics/config.d.ts +0 -178
- package/src/index.js +0 -16
- package/src/meeting/effectsState.ts +0 -211
- package/src/metrics/config.ts +0 -495
- package/test/unit/spec/meeting/effectsState.js +0 -285
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import {StatelessWebexPlugin} from '@webex/webex-core';
|
|
2
|
+
import LoggerProxy from '../common/logs/logger-proxy';
|
|
3
|
+
import {getBroadcastRoles} from './utils';
|
|
4
|
+
import {HTTP_VERBS} from '../constants';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* @class BreakoutRequest
|
|
8
|
+
*/
|
|
9
|
+
export default class BreakoutRequest extends StatelessWebexPlugin {
|
|
10
|
+
/**
|
|
11
|
+
* Broadcast message to all breakout session's participants
|
|
12
|
+
* @param {String} url
|
|
13
|
+
* @param {String} message
|
|
14
|
+
* @param {Object} options
|
|
15
|
+
* @param {string} groupId
|
|
16
|
+
* @param {string} sessionId
|
|
17
|
+
* @returns {Promise}
|
|
18
|
+
*/
|
|
19
|
+
broadcast({
|
|
20
|
+
url,
|
|
21
|
+
message,
|
|
22
|
+
options,
|
|
23
|
+
groupId,
|
|
24
|
+
sessionId,
|
|
25
|
+
}: {
|
|
26
|
+
url: string;
|
|
27
|
+
message: string;
|
|
28
|
+
options?: object;
|
|
29
|
+
groupId: string;
|
|
30
|
+
sessionId?: string;
|
|
31
|
+
}) {
|
|
32
|
+
const roles = getBroadcastRoles(options);
|
|
33
|
+
const params = {
|
|
34
|
+
id: groupId,
|
|
35
|
+
recipientRoles: roles.length ? roles : undefined,
|
|
36
|
+
sessions: sessionId ? [{id: sessionId}] : undefined,
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
// @ts-ignore
|
|
40
|
+
return this.request({
|
|
41
|
+
method: HTTP_VERBS.POST,
|
|
42
|
+
uri: `${url}/message`,
|
|
43
|
+
body: {
|
|
44
|
+
message,
|
|
45
|
+
groups: [params],
|
|
46
|
+
},
|
|
47
|
+
}).catch((error) => {
|
|
48
|
+
if (error.body && error.body.errorCode === 201409036 && error.statusCode === 409) {
|
|
49
|
+
LoggerProxy.logger.info(`Breakouts#broadcast --> no joined participants`);
|
|
50
|
+
} else {
|
|
51
|
+
throw error;
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
// eslint-disable-next-line import/prefer-default-export
|
|
2
|
+
import LoggerProxy from '../common/logs/logger-proxy';
|
|
3
|
+
import BreakoutEditLockedError from './edit-lock-error';
|
|
4
|
+
import {BREAKOUTS} from '../constants';
|
|
5
|
+
|
|
6
|
+
export const getBroadcastRoles = (options): string[] => {
|
|
7
|
+
const recipientRoles = [];
|
|
8
|
+
if (!options || (!options.cohosts && !options.presenters)) {
|
|
9
|
+
return recipientRoles;
|
|
10
|
+
}
|
|
11
|
+
if (options.cohosts) {
|
|
12
|
+
recipientRoles.push('COHOST');
|
|
13
|
+
}
|
|
14
|
+
if (options.presenters) {
|
|
15
|
+
recipientRoles.push('PRESENTER');
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
return recipientRoles;
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Deals with all kinds of errors of breakout service
|
|
23
|
+
* @param {object} error // one of the breakout service error
|
|
24
|
+
* @param {string} position // position of the error occur
|
|
25
|
+
* @returns {object}
|
|
26
|
+
*/
|
|
27
|
+
export const boServiceErrorHandler = (error: any, position: string): any => {
|
|
28
|
+
const errorCode = error?.body?.errorCode;
|
|
29
|
+
const {EDIT_LOCK_TOKEN_MISMATCH, EDIT_NOT_AUTHORIZED} = BREAKOUTS.ERROR_CODE;
|
|
30
|
+
let throwError;
|
|
31
|
+
switch (errorCode) {
|
|
32
|
+
case EDIT_LOCK_TOKEN_MISMATCH:
|
|
33
|
+
throwError = new BreakoutEditLockedError('Edit lock token mismatch', error);
|
|
34
|
+
break;
|
|
35
|
+
case EDIT_NOT_AUTHORIZED:
|
|
36
|
+
throwError = new BreakoutEditLockedError('Not authorized to interact with edit lock', error);
|
|
37
|
+
break;
|
|
38
|
+
default:
|
|
39
|
+
throwError = error;
|
|
40
|
+
}
|
|
41
|
+
LoggerProxy.logger.info(`${position} --> ${throwError?.message}`);
|
|
42
|
+
|
|
43
|
+
return throwError;
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
*
|
|
48
|
+
* @param {object} breakout
|
|
49
|
+
* @param {string} newSessionType
|
|
50
|
+
* @returns {boolean}
|
|
51
|
+
*/
|
|
52
|
+
export const isSessionTypeChangedFromSessionToMain = (breakout, newSessionType) => {
|
|
53
|
+
return (
|
|
54
|
+
breakout.previous('sessionType') === BREAKOUTS.SESSION_TYPES.BREAKOUT &&
|
|
55
|
+
newSessionType === BREAKOUTS.SESSION_TYPES.MAIN
|
|
56
|
+
);
|
|
57
|
+
};
|
|
@@ -72,13 +72,17 @@ WebExMeetingsErrors[UserNotJoinedError.CODE] = UserNotJoinedError;
|
|
|
72
72
|
* @classdesc Raised whenever the user has not established media yet.
|
|
73
73
|
* @extends WebexMeetingsError
|
|
74
74
|
* @property {number} code - 30103
|
|
75
|
-
* @property {string} message -
|
|
75
|
+
* @property {string} message - error message
|
|
76
76
|
*/
|
|
77
77
|
class NoMediaEstablishedYetError extends WebexMeetingsError {
|
|
78
78
|
static CODE = 30103;
|
|
79
79
|
|
|
80
|
+
// eslint-disable-next-line require-jsdoc
|
|
80
81
|
constructor() {
|
|
81
|
-
super(
|
|
82
|
+
super(
|
|
83
|
+
NoMediaEstablishedYetError.CODE,
|
|
84
|
+
'Webrtc media connection is missing, call addMedia() first'
|
|
85
|
+
);
|
|
82
86
|
}
|
|
83
87
|
}
|
|
84
88
|
|
|
@@ -103,6 +107,27 @@ class UserInLobbyError extends WebexMeetingsError {
|
|
|
103
107
|
export {UserInLobbyError};
|
|
104
108
|
WebExMeetingsErrors[UserInLobbyError.CODE] = UserInLobbyError;
|
|
105
109
|
|
|
110
|
+
/**
|
|
111
|
+
* @class SpaceIDDeprecatedError
|
|
112
|
+
* @classdesc Raised whenever the user passes Space ID as destination for create meeting.
|
|
113
|
+
* @extends WebexMeetingsError
|
|
114
|
+
* @property {number} code - 30105
|
|
115
|
+
* @property {string} message - Using the space ID as a destination is no longer supported. Please refer to the [migration guide](https://github.com/webex/webex-js-sdk/wiki/Migration-guide-for-USM-meeting) to migrate to use the meeting ID or SIP address.'
|
|
116
|
+
*/
|
|
117
|
+
class SpaceIDDeprecatedError extends WebexMeetingsError {
|
|
118
|
+
static CODE = 30105;
|
|
119
|
+
|
|
120
|
+
constructor() {
|
|
121
|
+
super(
|
|
122
|
+
SpaceIDDeprecatedError.CODE,
|
|
123
|
+
'Using the space ID as a destination is no longer supported. Please refer to the [migration guide](https://github.com/webex/webex-js-sdk/wiki/Migration-guide-for-USM-meeting) to migrate to use the meeting ID or SIP address.'
|
|
124
|
+
);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
export {SpaceIDDeprecatedError};
|
|
129
|
+
WebExMeetingsErrors[SpaceIDDeprecatedError.CODE] = SpaceIDDeprecatedError;
|
|
130
|
+
|
|
106
131
|
/**
|
|
107
132
|
* @class IceGatheringFailed
|
|
108
133
|
* @classdesc Raised whenever ice gathering fails.
|
package/src/common/queue.ts
CHANGED
|
@@ -1,13 +1,18 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Simple queue
|
|
2
|
+
* Simple queue in which the elements are always sorted
|
|
3
3
|
*/
|
|
4
|
-
export default class
|
|
5
|
-
queue:
|
|
4
|
+
export default class SortedQueue<ItemType> {
|
|
5
|
+
queue: ItemType[];
|
|
6
|
+
// returns -1 if left < right, 0 if left === right, +1 if left > right
|
|
7
|
+
compareFunc: (left: ItemType, right: ItemType) => number;
|
|
8
|
+
|
|
6
9
|
/**
|
|
7
|
-
* @constructs
|
|
10
|
+
* @constructs SortedQueue
|
|
11
|
+
* @param {Function} compareFunc comparison function used for sorting the elements of the queue
|
|
8
12
|
*/
|
|
9
|
-
constructor() {
|
|
13
|
+
constructor(compareFunc: (left: ItemType, right: ItemType) => number) {
|
|
10
14
|
this.queue = [];
|
|
15
|
+
this.compareFunc = compareFunc;
|
|
11
16
|
}
|
|
12
17
|
|
|
13
18
|
/**
|
|
@@ -23,8 +28,17 @@ export default class SimpleQueue {
|
|
|
23
28
|
* @param {object} item
|
|
24
29
|
* @returns {undefined}
|
|
25
30
|
*/
|
|
26
|
-
enqueue(item:
|
|
27
|
-
|
|
31
|
+
enqueue(item: ItemType) {
|
|
32
|
+
// Find the index of the first item in the queue that's greater or equal to the new item.
|
|
33
|
+
// That's where we want to insert the new item.
|
|
34
|
+
const idx = this.queue.findIndex((existingItem) => {
|
|
35
|
+
return this.compareFunc(existingItem, item) >= 0;
|
|
36
|
+
});
|
|
37
|
+
if (idx >= 0) {
|
|
38
|
+
this.queue.splice(idx, 0, item);
|
|
39
|
+
} else {
|
|
40
|
+
this.queue.push(item);
|
|
41
|
+
}
|
|
28
42
|
}
|
|
29
43
|
|
|
30
44
|
/**
|
|
@@ -32,7 +46,7 @@ export default class SimpleQueue {
|
|
|
32
46
|
* Returns null if the queue is empty.
|
|
33
47
|
* @returns {(object|null)} Queue item or null.
|
|
34
48
|
*/
|
|
35
|
-
dequeue() {
|
|
49
|
+
dequeue(): ItemType {
|
|
36
50
|
if (this.queue.length === 0) {
|
|
37
51
|
return null;
|
|
38
52
|
}
|
package/src/config.ts
CHANGED
|
@@ -10,13 +10,7 @@ export default {
|
|
|
10
10
|
meetings: {
|
|
11
11
|
deviceType: deviceType.WEB,
|
|
12
12
|
mediaSettings: {
|
|
13
|
-
sendAudio: true,
|
|
14
|
-
sendVideo: true,
|
|
15
|
-
receiveAudio: true,
|
|
16
|
-
receiveVideo: true,
|
|
17
13
|
pstn: false,
|
|
18
|
-
sendShare: false,
|
|
19
|
-
receiveShare: false,
|
|
20
14
|
},
|
|
21
15
|
reconnection: {
|
|
22
16
|
enabled: false,
|
|
@@ -89,14 +83,15 @@ export default {
|
|
|
89
83
|
receiveTranscription: false,
|
|
90
84
|
enableExtmap: false,
|
|
91
85
|
enableAutomaticLLM: false,
|
|
86
|
+
installedOrgID: undefined,
|
|
92
87
|
experimental: {
|
|
93
88
|
enableMediaNegotiatedEvent: false,
|
|
94
|
-
enableUnifiedMeetings:
|
|
95
|
-
enableAdhocMeetings:
|
|
89
|
+
enableUnifiedMeetings: true,
|
|
90
|
+
enableAdhocMeetings: true,
|
|
96
91
|
enableTurnDiscovery: true,
|
|
97
92
|
},
|
|
98
93
|
degradationPreferences: {
|
|
99
|
-
maxMacroblocksLimit:
|
|
94
|
+
maxMacroblocksLimit: 8192,
|
|
100
95
|
},
|
|
101
96
|
},
|
|
102
97
|
};
|
package/src/constants.ts
CHANGED
|
@@ -4,13 +4,14 @@ import {hydraTypes} from '@webex/common';
|
|
|
4
4
|
// *********** LOWERCASE / CAMELCASE STRINGS ************
|
|
5
5
|
|
|
6
6
|
export const AUDIO = 'audio';
|
|
7
|
-
export const AUDIO_INPUT = 'audioinput';
|
|
8
7
|
export const AUDIO_STATUS = 'audioStatus';
|
|
9
8
|
export const ALERT = 'alert';
|
|
9
|
+
export const ALIAS = 'alias';
|
|
10
10
|
export const ANSWER = 'answer';
|
|
11
11
|
|
|
12
12
|
export const CALL = 'call';
|
|
13
13
|
export const CORRELATION_ID = 'correlationId';
|
|
14
|
+
export const MEETINGNUMBER = 'meetingNumber';
|
|
14
15
|
export const CONVERSATION_URL = 'conversationUrl';
|
|
15
16
|
export const CALENDAR = 'calendar';
|
|
16
17
|
export const CALENDAR_EVENTS_API = 'calendarEvents';
|
|
@@ -65,7 +66,6 @@ export const SHARE = 'share';
|
|
|
65
66
|
export const TYPE = 'type';
|
|
66
67
|
|
|
67
68
|
export const VIDEO = 'video';
|
|
68
|
-
export const VIDEO_INPUT = 'videoinput';
|
|
69
69
|
export const VIDEO_STATUS = 'videoStatus';
|
|
70
70
|
|
|
71
71
|
// *********** UPPERCASE ONLY STRINGS ************
|
|
@@ -93,6 +93,7 @@ export const _JOINED_ = 'JOINED';
|
|
|
93
93
|
|
|
94
94
|
export const _LOCUS_ID_ = 'LOCUS_ID';
|
|
95
95
|
export const _LEFT_ = 'LEFT';
|
|
96
|
+
export const _MOVED_ = 'MOVED';
|
|
96
97
|
|
|
97
98
|
export const _MEETING_LINK_ = 'MEETING_LINK';
|
|
98
99
|
export const _MEETING_UUID_ = 'MEETING_UUID';
|
|
@@ -189,7 +190,7 @@ export const ICE_FAIL_TIMEOUT = 3000;
|
|
|
189
190
|
|
|
190
191
|
export const RETRY_TIMEOUT = 3000;
|
|
191
192
|
|
|
192
|
-
export const PC_BAIL_TIMEOUT =
|
|
193
|
+
export const PC_BAIL_TIMEOUT = 15000;
|
|
193
194
|
|
|
194
195
|
// ******************** REGEX **********************
|
|
195
196
|
// Please alphabetize
|
|
@@ -280,6 +281,7 @@ export const EVENT_TRIGGERS = {
|
|
|
280
281
|
MEETING_STOPPED_SHARING_LOCAL: 'meeting:stoppedSharingLocal',
|
|
281
282
|
MEETING_STARTED_SHARING_REMOTE: 'meeting:startedSharingRemote',
|
|
282
283
|
MEETING_STOPPED_SHARING_REMOTE: 'meeting:stoppedSharingRemote',
|
|
284
|
+
MEETING_UPDATE_ANNOTATION_INFO: 'meeting:updateAnnotationInfo',
|
|
283
285
|
MEETING_STARTED_SHARING_WHITEBOARD: 'meeting:startedSharingWhiteboard',
|
|
284
286
|
MEETING_STOPPED_SHARING_WHITEBOARD: 'meeting:stoppedSharingWhiteboard',
|
|
285
287
|
MEETING_MEDIA_LOCAL_STARTED: 'meeting:media:local:start',
|
|
@@ -297,18 +299,29 @@ export const EVENT_TRIGGERS = {
|
|
|
297
299
|
MEETING_RINGING_STOP: 'meeting:ringingStop',
|
|
298
300
|
MEETING_SELF_LOBBY_WAITING: 'meeting:self:lobbyWaiting',
|
|
299
301
|
MEETING_SELF_GUEST_ADMITTED: 'meeting:self:guestAdmitted',
|
|
302
|
+
MEETING_SELF_VIDEO_MUTED_BY_OTHERS: 'meeting:self:videoMutedByOthers',
|
|
303
|
+
MEETING_SELF_VIDEO_UNMUTED_BY_OTHERS: 'meeting:self:videoUnmutedByOthers',
|
|
300
304
|
MEETING_SELF_MUTED_BY_OTHERS: 'meeting:self:mutedByOthers',
|
|
301
305
|
MEETING_SELF_UNMUTED_BY_OTHERS: 'meeting:self:unmutedByOthers',
|
|
302
306
|
MEETING_SELF_REQUESTED_TO_UNMUTE: 'meeting:self:requestedToUnmute',
|
|
303
307
|
MEETING_SELF_PHONE_AUDIO_UPDATE: 'meeting:self:phoneAudioUpdate',
|
|
304
308
|
MEETING_SELF_CANNOT_VIEW_PARTICIPANT_LIST: 'meeting:self:cannotViewParticipantList',
|
|
305
309
|
MEETING_SELF_IS_SHARING_BLOCKED: 'meeting:self:isSharingBlocked',
|
|
310
|
+
MEETING_SELF_ROLES_CHANGED: 'meeting:self:rolesChanged',
|
|
306
311
|
MEETING_CONTROLS_LAYOUT_UPDATE: 'meeting:layout:update',
|
|
307
312
|
MEETING_ENTRY_EXIT_TONE_UPDATE: 'meeting:entryExitTone:update',
|
|
308
313
|
MEETING_BREAKOUTS_UPDATE: 'meeting:breakouts:update',
|
|
309
314
|
MEETING_BREAKOUTS_CLOSING: 'meeting:breakouts:closing',
|
|
310
315
|
MEETING_BREAKOUTS_MESSAGE: 'meeting:breakouts:message',
|
|
316
|
+
MEETING_BREAKOUTS_ASK_RETURN_TO_MAIN: 'meeting:breakouts:askReturnToMain',
|
|
317
|
+
MEETING_BREAKOUTS_LEAVE: 'meeting:breakouts:leave',
|
|
318
|
+
MEETING_BREAKOUTS_ASK_FOR_HELP: 'meeting:breakouts:askForHelp',
|
|
319
|
+
MEETING_BREAKOUTS_PRE_ASSIGNMENTS_UPDATE: 'meeting:breakouts:preAssignmentsUpdate',
|
|
320
|
+
MEETING_INTERPRETATION_UPDATE: 'meeting:interpretation:update',
|
|
321
|
+
MEETING_INTERPRETATION_SUPPORT_LANGUAGES_UPDATE: 'meeting:interpretation:supportLanguagesUpdate',
|
|
322
|
+
MEETING_INTERPRETATION_HANDOFF_REQUESTS_ARRIVED: 'meeting:interpretation:handoffRequestsArrived',
|
|
311
323
|
MEMBERS_UPDATE: 'members:update',
|
|
324
|
+
MEMBERS_CLEAR: 'members:clear',
|
|
312
325
|
MEMBERS_CONTENT_UPDATE: 'members:content:update',
|
|
313
326
|
MEMBERS_HOST_UPDATE: 'members:host:update',
|
|
314
327
|
MEMBERS_SELF_UPDATE: 'members:self:update',
|
|
@@ -337,17 +350,26 @@ export const EVENT_TRIGGERS = {
|
|
|
337
350
|
REMOTE_MEDIA_AUDIO_CREATED: 'media:remoteAudio:created',
|
|
338
351
|
REMOTE_MEDIA_SCREEN_SHARE_AUDIO_CREATED: 'media:remoteScreenShareAudio:created',
|
|
339
352
|
REMOTE_MEDIA_VIDEO_LAYOUT_CHANGED: 'media:remoteVideo:layoutChanged',
|
|
353
|
+
// Controls
|
|
354
|
+
MEETING_CONTROLS_MUTE_ON_ENTRY_UPDATED: 'meeting:controls:mute-on-entry:updated',
|
|
355
|
+
MEETING_CONTROLS_SHARE_CONTROL_UPDATED: 'meeting:controls:share-control:updated',
|
|
356
|
+
MEETING_CONTROLS_DISALLOW_UNMUTE_UPDATED: 'meeting:controls:disallow-unmute:updated',
|
|
357
|
+
MEETING_CONTROLS_REACTIONS_UPDATED: 'meeting:controls:reactions:updated',
|
|
358
|
+
MEETING_CONTROLS_VIEW_THE_PARTICIPANTS_LIST_UPDATED:
|
|
359
|
+
'meeting:controls:view-the-participants-list:updated',
|
|
360
|
+
MEETING_CONTROLS_RAISE_HAND_UPDATED: 'meeting:controls:raise-hand:updated',
|
|
361
|
+
MEETING_CONTROLS_VIDEO_UPDATED: 'meeting:controls:video:updated',
|
|
362
|
+
// Locus URL changed
|
|
363
|
+
MEETING_LOCUS_URL_UPDATE: 'meeting:locus:locusUrl:update',
|
|
340
364
|
};
|
|
341
365
|
|
|
342
366
|
export const EVENT_TYPES = {
|
|
343
367
|
SELF: 'self',
|
|
344
368
|
OTHER: 'other',
|
|
345
|
-
LOCAL: 'local',
|
|
346
369
|
REMOTE: 'remote',
|
|
347
370
|
REMOTE_AUDIO: 'remoteAudio',
|
|
348
371
|
REMOTE_VIDEO: 'remoteVideo',
|
|
349
372
|
REMOTE_SHARE: 'remoteShare',
|
|
350
|
-
LOCAL_SHARE: 'localShare',
|
|
351
373
|
ERROR: 'error',
|
|
352
374
|
};
|
|
353
375
|
|
|
@@ -360,6 +382,7 @@ export const MEETING_REMOVED_REASON = {
|
|
|
360
382
|
FULLSTATE_REMOVED: 'FULLSTATE_REMOVED', // meeting got dropped ? not sure
|
|
361
383
|
MEETING_INACTIVE_TERMINATING: 'MEETING_INACTIVE_TERMINATING', // Meeting got ended or everyone left the meeting
|
|
362
384
|
CLIENT_LEAVE_REQUEST: 'CLIENT_LEAVE_REQUEST', // You triggered leave meeting
|
|
385
|
+
CLIENT_LEAVE_REQUEST_TAB_CLOSED: 'CLIENT_LEAVE_REQUEST_TAB_CLOSED', // You triggered leave meeting, such as closing the browser tab directly
|
|
363
386
|
USER_ENDED_SHARE_STREAMS: 'USER_ENDED_SHARE_STREAMS', // user triggered stop share
|
|
364
387
|
NO_MEETINGS_TO_SYNC: 'NO_MEETINGS_TO_SYNC', // After the syncMeeting no meeting exists
|
|
365
388
|
MEETING_CONNECTION_FAILED: 'MEETING_CONNECTION_FAILED', // meeting failed to connect due to ice failures or firewall issue
|
|
@@ -377,6 +400,8 @@ export const CALL_REMOVED_REASON = {
|
|
|
377
400
|
export const SHARE_STOPPED_REASON = {
|
|
378
401
|
SELF_STOPPED: 'SELF_STOPPED',
|
|
379
402
|
MEETING_REJOIN: 'MEETING_REJOIN',
|
|
403
|
+
MEDIA_RECONNECTION: 'MEDIA_RECONNECTION',
|
|
404
|
+
TRACK_ENDED: 'TRACK_ENDED',
|
|
380
405
|
};
|
|
381
406
|
|
|
382
407
|
export const EVENTS = {
|
|
@@ -452,6 +477,11 @@ export const ERROR_DICTIONARY = {
|
|
|
452
477
|
MESSAGE: 'Captcha is required.',
|
|
453
478
|
CODE: 8,
|
|
454
479
|
},
|
|
480
|
+
BREAKOUT_EDIT: {
|
|
481
|
+
NAME: 'BreakoutEditLockedError',
|
|
482
|
+
MESSAGE: 'Edit lock token mismatch',
|
|
483
|
+
CODE: 9,
|
|
484
|
+
},
|
|
455
485
|
};
|
|
456
486
|
|
|
457
487
|
export const FLOOR_ACTION = {
|
|
@@ -473,6 +503,7 @@ export const HTTP_VERBS = {
|
|
|
473
503
|
POST: 'POST',
|
|
474
504
|
GET: 'GET',
|
|
475
505
|
PATCH: 'PATCH',
|
|
506
|
+
DELETE: 'DELETE',
|
|
476
507
|
};
|
|
477
508
|
|
|
478
509
|
// https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/iceGatheringState
|
|
@@ -518,17 +549,28 @@ export const LOCUS = {
|
|
|
518
549
|
SYNCDEBUG: 'sync_debug',
|
|
519
550
|
};
|
|
520
551
|
|
|
552
|
+
export const ANNOTATION = {
|
|
553
|
+
ANNOTATION_ON_SHARE_SUPPORTED: 'ANNOTATION_ON_SHARE_SUPPORTED',
|
|
554
|
+
};
|
|
521
555
|
export const BREAKOUTS = {
|
|
522
556
|
STATUS: {
|
|
523
557
|
CLOSING: 'CLOSING',
|
|
558
|
+
CLOSED: 'CLOSED',
|
|
559
|
+
PENDING: 'PENDING',
|
|
560
|
+
OPEN: 'OPEN',
|
|
524
561
|
},
|
|
525
562
|
EVENTS: {
|
|
526
563
|
BREAKOUTS_CLOSING: 'BREAKOUTS_CLOSING',
|
|
527
564
|
MESSAGE: 'MESSAGE',
|
|
528
565
|
MEMBERS_UPDATE: 'MEMBERS_UPDATE',
|
|
566
|
+
ASK_RETURN_TO_MAIN: 'ASK_RETURN_TO_MAIN',
|
|
567
|
+
LEAVE_BREAKOUT: 'LEAVE_BREAKOUT',
|
|
568
|
+
ASK_FOR_HELP: 'ASK_FOR_HELP',
|
|
569
|
+
PRE_ASSIGNMENTS_UPDATE: 'PRE_ASSIGNMENTS_UPDATE',
|
|
529
570
|
},
|
|
530
571
|
SESSION_TYPES: {
|
|
531
572
|
MAIN: 'MAIN',
|
|
573
|
+
BREAKOUT: 'BREAKOUT',
|
|
532
574
|
},
|
|
533
575
|
SESSION_STATES: {
|
|
534
576
|
ACTIVE: 'active',
|
|
@@ -538,6 +580,35 @@ export const BREAKOUTS = {
|
|
|
538
580
|
REQUESTED: 'requested',
|
|
539
581
|
},
|
|
540
582
|
BREAKOUTS_SUPPORTED: 'BREAKOUTS_SUPPORTED',
|
|
583
|
+
ACTION: {
|
|
584
|
+
START: 'START',
|
|
585
|
+
CLOSE: 'CLOSE',
|
|
586
|
+
DELETE: 'DELETE',
|
|
587
|
+
},
|
|
588
|
+
ERROR_CODE: {
|
|
589
|
+
EDIT_LOCK_TOKEN_MISMATCH: 201409024,
|
|
590
|
+
EDIT_NOT_AUTHORIZED: 201403007,
|
|
591
|
+
},
|
|
592
|
+
EDIT_LOCK_STATUS: {
|
|
593
|
+
LOCKED: 'LOCKED',
|
|
594
|
+
NOT_LOCKED: 'NOT_LOCKED',
|
|
595
|
+
UNKNOWN: 'UNKNOWN',
|
|
596
|
+
},
|
|
597
|
+
DEFAULT_TTL: 30,
|
|
598
|
+
};
|
|
599
|
+
|
|
600
|
+
export const INTERPRETATION = {
|
|
601
|
+
EVENTS: {
|
|
602
|
+
SUPPORT_LANGUAGES_UPDATE: 'SUPPORT_LANGUAGES_UPDATE',
|
|
603
|
+
HANDOFF_REQUESTS_ARRIVED: 'HANDOFF_REQUESTS_ARRIVED',
|
|
604
|
+
},
|
|
605
|
+
ACTION_TYPE: {
|
|
606
|
+
OFFERED: 'OFFERED',
|
|
607
|
+
ACCEPTED: 'ACCEPTED',
|
|
608
|
+
REQUESTED: 'REQUESTED',
|
|
609
|
+
DECLINED: 'DECLINED',
|
|
610
|
+
},
|
|
611
|
+
RESOURCE_TYPE: 'SiHandover',
|
|
541
612
|
};
|
|
542
613
|
|
|
543
614
|
export const LOCUSINFO = {
|
|
@@ -547,13 +618,24 @@ export const LOCUSINFO = {
|
|
|
547
618
|
CONTROLS_MEETING_TRANSCRIBE_UPDATED: 'CONTROLS_MEETING_TRANSCRIBE_UPDATED',
|
|
548
619
|
CONTROLS_MEETING_BREAKOUT_UPDATED: 'CONTROLS_MEETING_BREAKOUT_UPDATED',
|
|
549
620
|
CONTROLS_MEETING_CONTAINER_UPDATED: 'CONTROLS_MEETING_CONTAINER_UPDATED',
|
|
621
|
+
CONTROLS_MEETING_INTERPRETATION_UPDATED: 'CONTROLS_MEETING_INTERPRETATION_UPDATED',
|
|
550
622
|
CONTROLS_ENTRY_EXIT_TONE_UPDATED: 'CONTROLS_ENTRY_EXIT_TONE_UPDATED',
|
|
623
|
+
CONTROLS_JOIN_BREAKOUT_FROM_MAIN: 'CONTROLS_JOIN_BREAKOUT_FROM_MAIN',
|
|
624
|
+
CONTROLS_MUTE_ON_ENTRY_CHANGED: 'CONTROLS_MUTE_ON_ENTRY_CHANGED',
|
|
625
|
+
CONTROLS_SHARE_CONTROL_CHANGED: 'CONTROLS_SHARE_CONTROL_CHANGED',
|
|
626
|
+
CONTROLS_DISALLOW_UNMUTE_CHANGED: 'CONTROLS_DISALLOW_UNMUTE_CHANGED',
|
|
627
|
+
CONTROLS_REACTIONS_CHANGED: 'CONTROLS_REACTIONS_CHANGED',
|
|
628
|
+
CONTROLS_VIEW_THE_PARTICIPANTS_LIST_CHANGED: 'CONTROLS_VIEW_THE_PARTICIPANTS_LIST_CHANGED',
|
|
629
|
+
CONTROLS_RAISE_HAND_CHANGED: 'CONTROLS_RAISE_HAND_CHANGED',
|
|
630
|
+
CONTROLS_VIDEO_CHANGED: 'CONTROLS_VIDEO_CHANGED',
|
|
551
631
|
SELF_UNADMITTED_GUEST: 'SELF_UNADMITTED_GUEST',
|
|
552
632
|
SELF_ADMITTED_GUEST: 'SELF_ADMITTED_GUEST',
|
|
633
|
+
SELF_REMOTE_VIDEO_MUTE_STATUS_UPDATED: 'SELF_REMOTE_VIDEO_MUTE_STATUS_UPDATED',
|
|
553
634
|
SELF_REMOTE_MUTE_STATUS_UPDATED: 'SELF_REMOTE_MUTE_STATUS_UPDATED',
|
|
554
635
|
LOCAL_UNMUTE_REQUESTED: 'LOCAL_UNMUTE_REQUESTED',
|
|
555
636
|
LOCAL_UNMUTE_REQUIRED: 'LOCAL_UNMUTE_REQUIRED',
|
|
556
637
|
SELF_MODERATOR_CHANGED: 'SELF_MODERATOR_CHANGED',
|
|
638
|
+
SELF_ROLES_CHANGED: 'SELF_ROLES_CHANGED',
|
|
557
639
|
MEETING_UPDATE: 'MEETING_UPDATE',
|
|
558
640
|
MEDIA_STATUS_CHANGE: 'MEDIA_STATUS_CHANGE',
|
|
559
641
|
FULL_STATE_TYPE_UPDATE: 'FULL_STATE_TYPE_UPDATE',
|
|
@@ -568,6 +650,7 @@ export const LOCUSINFO = {
|
|
|
568
650
|
SELF_CANNOT_VIEW_PARTICIPANT_LIST_CHANGE: 'SELF_CANNOT_VIEW_PARTICIPANT_LIST_CHANGE',
|
|
569
651
|
SELF_IS_SHARING_BLOCKED_CHANGE: 'SELF_IS_SHARING_BLOCKED_CHANGE',
|
|
570
652
|
SELF_MEETING_BREAKOUTS_CHANGED: 'SELF_MEETING_BREAKOUTS_CHANGED',
|
|
653
|
+
SELF_MEETING_INTERPRETATION_CHANGED: 'SELF_MEETING_INTERPRETATION_CHANGED',
|
|
571
654
|
MEDIA_INACTIVITY: 'MEDIA_INACTIVITY',
|
|
572
655
|
LINKS_SERVICES: 'LINKS_SERVICES',
|
|
573
656
|
},
|
|
@@ -732,6 +815,28 @@ export const MEETING_END_REASON = {
|
|
|
732
815
|
MEDIA_RELEASED: 'MEDIA_RELEASED',
|
|
733
816
|
};
|
|
734
817
|
|
|
818
|
+
export enum SELF_POLICY {
|
|
819
|
+
ENFORCE_VIRTUAL_BACKGROUND = 'enforceVirtualBackground',
|
|
820
|
+
SUPPORT_LOCAL_RECORD = 'supportLocalRecord',
|
|
821
|
+
SUPPORT_NETWORK_BASED_RECORD = 'supportNetworkBasedRecord',
|
|
822
|
+
SUPPORT_REALTIME_CLOSE_CAPTION = 'supportRealtimeCloseCaption',
|
|
823
|
+
SUPPORT_CHAT = 'supportChat',
|
|
824
|
+
SUPPORT_DESKTOP_SHARE_REMOTE = 'supportDesktopShareRemote',
|
|
825
|
+
SUPPORT_DESKTOP_SHARE = 'supportDesktopShare',
|
|
826
|
+
SUPPORT_WHITEBOARD = 'supportWhiteboard',
|
|
827
|
+
SUPPORT_FILE_TRANSFER = 'supportFileTransfer',
|
|
828
|
+
SUPPORT_APP_SHARE = 'supportAppShare',
|
|
829
|
+
SUPPORT_CAMERA_SHARE = 'supportCameraShare',
|
|
830
|
+
SUPPORT_FILE_SHARE = 'supportFileShare',
|
|
831
|
+
SUPPORT_ANNOTATION = 'supportAnnotation',
|
|
832
|
+
SUPPORT_BROADCAST_MESSAGE = 'supportBroadcastMessage',
|
|
833
|
+
SUPPORT_VIDEO = 'supportVideo',
|
|
834
|
+
SUPPORT_HQV = 'supportHQV',
|
|
835
|
+
SUPPORT_HDV = 'supportHDV',
|
|
836
|
+
SUPPORT_PARTICIPANT_LIST = 'supportParticipantList',
|
|
837
|
+
SUPPORT_VOIP = 'supportVoIP',
|
|
838
|
+
}
|
|
839
|
+
|
|
735
840
|
export const DISPLAY_HINTS = {
|
|
736
841
|
ADD_GUEST: 'ADD_GUEST',
|
|
737
842
|
ROSTER_WAITING_TO_JOIN: 'ROSTER_WAITING_TO_JOIN',
|
|
@@ -755,17 +860,64 @@ export const DISPLAY_HINTS = {
|
|
|
755
860
|
DISPLAY_NON_ENGLISH_ASR: 'DISPLAY_NON_ENGLISH_ASR',
|
|
756
861
|
TRANSCRIPTION_CONTROL_START: 'TRANSCRIPTION_CONTROL_START',
|
|
757
862
|
TRANSCRIPTION_CONTROL_STOP: 'TRANSCRIPTION_CONTROL_STOP',
|
|
863
|
+
SAVE_TRANSCRIPTS_ENABLED: 'SAVE_TRANSCRIPTS_ENABLED',
|
|
758
864
|
WEBEX_ASSISTANT_STATUS_ACTIVE: 'WEBEX_ASSISTANT_STATUS_ACTIVE',
|
|
759
865
|
WAITING_FOR_OTHERS: 'WAITING_FOR_OTHERS',
|
|
760
866
|
ENABLE_REACTIONS: 'ENABLE_REACTIONS',
|
|
761
867
|
DISABLE_REACTIONS: 'DISABLE_REACTIONS',
|
|
762
868
|
REACTIONS_ACTIVE: 'REACTIONS_ACTIVE',
|
|
763
869
|
REACTIONS_INACTIVE: 'REACTIONS_INACTIVE',
|
|
870
|
+
SHARE_CONTROL: 'SHARE_CONTROL',
|
|
871
|
+
ENABLE_MUTE_ON_ENTRY: 'ENABLE_MUTE_ON_ENTRY',
|
|
872
|
+
ENABLE_SHOW_DISPLAY_NAME: 'ENABLE_SHOW_DISPLAY_NAME',
|
|
873
|
+
DISABLE_SHOW_DISPLAY_NAME: 'DISABLE_SHOW_DISPLAY_NAME',
|
|
874
|
+
DISABLE_MUTE_ON_ENTRY: 'DISABLE_MUTE_ON_ENTRY',
|
|
875
|
+
ENABLE_HARD_MUTE: 'ENABLE_HARD_MUTE',
|
|
876
|
+
DISABLE_HARD_MUTE: 'DISABLE_HARD_MUTE',
|
|
877
|
+
MUTE_ALL: 'MUTE_ALL',
|
|
878
|
+
UNMUTE_ALL: 'UNMUTE_ALL',
|
|
879
|
+
PRESENTER_CONTROL: 'PRESENTER_CONTROL',
|
|
880
|
+
CAN_RENAME_SELF_AND_OBSERVED: 'CAN_RENAME_SELF_AND_OBSERVED',
|
|
881
|
+
CAN_RENAME_OTHERS: 'CAN_RENAME_OTHERS',
|
|
882
|
+
|
|
883
|
+
// breakout session
|
|
884
|
+
BREAKOUT_MANAGEMENT: 'BREAKOUT_MANAGEMENT',
|
|
885
|
+
BROADCAST_MESSAGE_TO_BREAKOUT: 'BROADCAST_MESSAGE_TO_BREAKOUT',
|
|
886
|
+
UCF_SUPPRESS_BREAKOUTS_SUPPORT: 'UCF_SUPPRESS_BREAKOUTS_SUPPORT',
|
|
887
|
+
DISABLE_ASK_FOR_HELP: 'DISABLE_ASK_FOR_HELP',
|
|
888
|
+
DISABLE_BREAKOUT_PREASSIGNMENTS: 'DISABLE_BREAKOUT_PREASSIGNMENTS',
|
|
889
|
+
DISABLE_LOBBY_TO_BREAKOUT: 'DISABLE_LOBBY_TO_BREAKOUT',
|
|
890
|
+
|
|
891
|
+
// participants list
|
|
892
|
+
DISABLE_VIEW_THE_PARTICIPANT_LIST: 'DISABLE_VIEW_THE_PARTICIPANT_LIST',
|
|
893
|
+
ENABLE_VIEW_THE_PARTICIPANT_LIST: 'ENABLE_VIEW_THE_PARTICIPANT_LIST',
|
|
894
|
+
|
|
895
|
+
// raise hand
|
|
896
|
+
DISABLE_RAISE_HAND: 'DISABLE_RAISE_HAND',
|
|
897
|
+
ENABLE_RAISE_HAND: 'ENABLE_RAISE_HAND',
|
|
898
|
+
|
|
899
|
+
// video
|
|
900
|
+
DISABLE_VIDEO: 'DISABLE_VIDEO',
|
|
901
|
+
ENABLE_VIDEO: 'ENABLE_VIDEO',
|
|
902
|
+
|
|
903
|
+
// Sharing
|
|
904
|
+
SHARE_FILE: 'SHARE_FILE',
|
|
905
|
+
SHARE_APPLICATION: 'SHARE_APPLICATION',
|
|
906
|
+
SHARE_CAMERA: 'SHARE_CAMERA',
|
|
907
|
+
SHARE_DESKTOP: 'SHARE_DESKTOP',
|
|
908
|
+
SHARE_CONTENT: 'SHARE_CONTENT',
|
|
909
|
+
SHARE_WHITEBOARD: 'SHARE_WHITEBOARD',
|
|
910
|
+
|
|
911
|
+
// Voip (audio/video)
|
|
912
|
+
VOIP_IS_ENABLED: 'VOIP_IS_ENABLED',
|
|
764
913
|
};
|
|
765
914
|
|
|
915
|
+
export const INTERSTITIAL_DISPLAY_HINTS = [DISPLAY_HINTS.VOIP_IS_ENABLED];
|
|
916
|
+
|
|
766
917
|
export const SELF_ROLES = {
|
|
767
918
|
COHOST: 'COHOST',
|
|
768
919
|
MODERATOR: 'MODERATOR',
|
|
920
|
+
ATTENDEE: 'ATTENDEE',
|
|
769
921
|
};
|
|
770
922
|
|
|
771
923
|
export const MEETING_STATE = {
|
|
@@ -850,7 +1002,8 @@ export const RESOURCE = {
|
|
|
850
1002
|
};
|
|
851
1003
|
|
|
852
1004
|
export const REACHABILITY = {
|
|
853
|
-
|
|
1005
|
+
localStorageResult: 'reachability.result',
|
|
1006
|
+
localStorageJoinCookie: 'reachability.joinCookie',
|
|
854
1007
|
namespace: 'Reachability',
|
|
855
1008
|
};
|
|
856
1009
|
|
|
@@ -1031,16 +1184,6 @@ export const AVAILABLE_RESOLUTIONS = {
|
|
|
1031
1184
|
},
|
|
1032
1185
|
};
|
|
1033
1186
|
|
|
1034
|
-
export const VIDEO_RESOLUTIONS = {
|
|
1035
|
-
[QUALITY_LEVELS.LOW]: AVAILABLE_RESOLUTIONS['480p'],
|
|
1036
|
-
[QUALITY_LEVELS.MEDIUM]: AVAILABLE_RESOLUTIONS['720p'],
|
|
1037
|
-
[QUALITY_LEVELS.HIGH]: AVAILABLE_RESOLUTIONS['1080p'],
|
|
1038
|
-
[QUALITY_LEVELS['360p']]: AVAILABLE_RESOLUTIONS['360p'],
|
|
1039
|
-
[QUALITY_LEVELS['480p']]: AVAILABLE_RESOLUTIONS['480p'],
|
|
1040
|
-
[QUALITY_LEVELS['720p']]: AVAILABLE_RESOLUTIONS['720p'],
|
|
1041
|
-
[QUALITY_LEVELS['1080p']]: AVAILABLE_RESOLUTIONS['1080p'],
|
|
1042
|
-
};
|
|
1043
|
-
|
|
1044
1187
|
/*
|
|
1045
1188
|
* mqa Interval for sending stats metrics
|
|
1046
1189
|
*/
|
|
@@ -1053,8 +1196,6 @@ export const MEDIA_DEVICES = {
|
|
|
1053
1196
|
CAMERA: 'camera',
|
|
1054
1197
|
};
|
|
1055
1198
|
|
|
1056
|
-
export const METRICS_JOIN_TIMES_MAX_DURATION = 1200000;
|
|
1057
|
-
|
|
1058
1199
|
export const PSTN_STATUS = {
|
|
1059
1200
|
JOINED: 'JOINED', // we have provisioned a pstn device, which can be used to connect
|
|
1060
1201
|
CONNECTED: 'CONNECTED', // user is connected to audio with pstn device
|
|
@@ -1075,6 +1216,7 @@ export const MEETING_INFO_FAILURE_REASON = {
|
|
|
1075
1216
|
NONE: 'NONE', // meeting info was retrieved succesfully
|
|
1076
1217
|
WRONG_PASSWORD: 'WRONG_PASSWORD', // meeting requires password and no password or wrong one was provided
|
|
1077
1218
|
WRONG_CAPTCHA: 'WRONG_CAPTCHA', // wbxappapi requires a captcha code or a wrong captcha code was provided
|
|
1219
|
+
POLICY: 'POLICY', // meeting info request violates some meeting policy
|
|
1078
1220
|
OTHER: 'OTHER', // any other error (network, etc)
|
|
1079
1221
|
};
|
|
1080
1222
|
|
|
@@ -1089,3 +1231,18 @@ export const EMBEDDED_APP_TYPES = {
|
|
|
1089
1231
|
SLIDO: 'SLIDO',
|
|
1090
1232
|
OTHER: 'OTHER',
|
|
1091
1233
|
};
|
|
1234
|
+
|
|
1235
|
+
export const DEFAULT_MEETING_INFO_REQUEST_BODY = {
|
|
1236
|
+
supportHostKey: true,
|
|
1237
|
+
supportCountryList: true,
|
|
1238
|
+
};
|
|
1239
|
+
|
|
1240
|
+
/** the values for IP_VERSION are fixed and defined in Orpheus API */
|
|
1241
|
+
export const IP_VERSION = {
|
|
1242
|
+
unknown: 0,
|
|
1243
|
+
only_ipv4: 4, // we know we have ipv4, we don't know or we don't have ipv6
|
|
1244
|
+
only_ipv6: 6, // we know we have ipv6, we don't know or we don't have ipv4
|
|
1245
|
+
ipv4_and_ipv6: 1,
|
|
1246
|
+
} as const;
|
|
1247
|
+
|
|
1248
|
+
export type IP_VERSION = (typeof IP_VERSION)[keyof typeof IP_VERSION];
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
enum Setting {
|
|
2
|
+
disallowUnmute = 'DisallowUnmute',
|
|
3
|
+
muteOnEntry = 'MuteOnEntry',
|
|
4
|
+
muted = 'Muted',
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
enum Control {
|
|
8
|
+
audio = 'audio',
|
|
9
|
+
raiseHand = 'raiseHand',
|
|
10
|
+
reactions = 'reactions',
|
|
11
|
+
shareControl = 'shareControl',
|
|
12
|
+
video = 'video',
|
|
13
|
+
viewTheParticipantList = 'viewTheParticipantList',
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export {Control, Setting};
|
|
17
|
+
|
|
18
|
+
export default Setting;
|