@webex/plugin-meetings 3.0.0-beta.37 → 3.0.0-beta.370
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 +58 -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 +94 -15
- package/dist/breakouts/breakout.js.map +1 -1
- package/dist/breakouts/events.js +45 -0
- package/dist/breakouts/events.js.map +1 -0
- package/dist/breakouts/index.js +671 -81
- package/dist/breakouts/index.js.map +1 -1
- package/dist/breakouts/utils.js +45 -1
- package/dist/breakouts/utils.js.map +1 -1
- package/dist/common/errors/no-meeting-info.js +51 -0
- package/dist/common/errors/no-meeting-info.js.map +1 -0
- package/dist/common/errors/reclaim-host-role-errors.js +158 -0
- package/dist/common/errors/reclaim-host-role-errors.js.map +1 -0
- package/dist/common/errors/webex-errors.js +48 -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/logs/request.js +5 -1
- package/dist/common/logs/request.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 +236 -33
- package/dist/constants.js.map +1 -1
- package/dist/controls-options-manager/enums.js +14 -2
- package/dist/controls-options-manager/enums.js.map +1 -1
- package/dist/controls-options-manager/index.js +109 -15
- package/dist/controls-options-manager/index.js.map +1 -1
- 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 +309 -18
- package/dist/controls-options-manager/util.js.map +1 -1
- package/dist/index.js +117 -2
- package/dist/index.js.map +1 -1
- package/dist/interceptors/index.js +15 -0
- package/dist/interceptors/index.js.map +1 -0
- package/dist/interceptors/locusRetry.js +93 -0
- package/dist/interceptors/locusRetry.js.map +1 -0
- 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 +383 -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 +57 -1
- package/dist/locus-info/mediaSharesUtils.js.map +1 -1
- package/dist/locus-info/parser.js +249 -72
- 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 +61 -101
- package/dist/media/index.js.map +1 -1
- package/dist/media/properties.js +73 -124
- package/dist/media/properties.js.map +1 -1
- package/dist/mediaQualityMetrics/config.js +1 -204
- package/dist/mediaQualityMetrics/config.js.map +1 -1
- package/dist/meeting/in-meeting-actions.js +86 -2
- package/dist/meeting/in-meeting-actions.js.map +1 -1
- package/dist/meeting/index.js +4021 -2828
- 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 +224 -136
- package/dist/meeting/muteState.js.map +1 -1
- package/dist/meeting/request.js +173 -152
- package/dist/meeting/request.js.map +1 -1
- package/dist/meeting/util.js +672 -417
- package/dist/meeting/util.js.map +1 -1
- package/dist/meeting-info/index.js +73 -7
- package/dist/meeting-info/index.js.map +1 -1
- package/dist/meeting-info/meeting-info-v2.js +192 -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 +39 -0
- package/dist/meetings/collection.js.map +1 -1
- package/dist/meetings/index.js +478 -118
- 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 +73 -7
- package/dist/meetings/util.js.map +1 -1
- package/dist/member/index.js +58 -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 +132 -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 +102 -6
- 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 +326 -232
- package/dist/members/util.js.map +1 -1
- package/dist/metrics/constants.js +17 -1
- package/dist/metrics/constants.js.map +1 -1
- package/dist/metrics/index.js +1 -446
- package/dist/metrics/index.js.map +1 -1
- package/dist/multistream/mediaRequestManager.js +228 -58
- package/dist/multistream/mediaRequestManager.js.map +1 -1
- package/dist/multistream/receiveSlot.js +29 -16
- package/dist/multistream/receiveSlot.js.map +1 -1
- package/dist/multistream/receiveSlotManager.js +39 -36
- 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 +209 -59
- package/dist/multistream/remoteMediaManager.js.map +1 -1
- package/dist/multistream/sendSlotManager.js +233 -0
- package/dist/multistream/sendSlotManager.js.map +1 -0
- package/dist/reachability/clusterReachability.js +356 -0
- package/dist/reachability/clusterReachability.js.map +1 -0
- package/dist/reachability/index.js +263 -390
- package/dist/reachability/index.js.map +1 -1
- package/dist/reachability/request.js +6 -4
- package/dist/reachability/request.js.map +1 -1
- package/dist/reachability/util.js +29 -0
- package/dist/reachability/util.js.map +1 -0
- package/dist/reconnection-manager/index.js +267 -200
- 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 +51 -28
- package/dist/roap/index.js.map +1 -1
- package/dist/roap/request.js +48 -64
- package/dist/roap/request.js.map +1 -1
- package/dist/roap/turnDiscovery.js +220 -70
- 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 +179 -0
- package/dist/rtcMetrics/index.js.map +1 -0
- package/dist/statsAnalyzer/index.js +179 -215
- package/dist/statsAnalyzer/index.js.map +1 -1
- package/dist/statsAnalyzer/mqaUtil.js +35 -28
- 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/events.d.ts +8 -0
- package/dist/types/breakouts/utils.d.ts +14 -0
- package/dist/types/common/errors/no-meeting-info.d.ts +14 -0
- package/dist/types/common/errors/reclaim-host-role-errors.d.ts +60 -0
- package/dist/types/common/errors/webex-errors.d.ts +25 -1
- package/dist/types/common/logs/request.d.ts +2 -0
- package/dist/types/common/queue.d.ts +9 -7
- package/dist/types/config.d.ts +2 -7
- package/dist/types/constants.d.ts +200 -31
- package/dist/types/controls-options-manager/enums.d.ts +11 -1
- package/dist/types/controls-options-manager/index.d.ts +17 -1
- package/dist/types/controls-options-manager/types.d.ts +43 -0
- package/dist/types/controls-options-manager/util.d.ts +1 -7
- package/dist/types/index.d.ts +6 -4
- package/dist/types/interceptors/index.d.ts +2 -0
- package/dist/types/interceptors/locusRetry.d.ts +27 -0
- 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 +66 -6
- package/dist/types/media/index.d.ts +2 -0
- package/dist/types/media/properties.d.ts +34 -49
- package/dist/types/mediaQualityMetrics/config.d.ts +0 -128
- package/dist/types/meeting/in-meeting-actions.d.ts +86 -2
- package/dist/types/meeting/index.d.ts +559 -496
- package/dist/types/meeting/locusMediaRequest.d.ts +74 -0
- package/dist/types/meeting/muteState.d.ts +93 -25
- package/dist/types/meeting/request.d.ts +62 -43
- package/dist/types/meeting/util.d.ts +117 -1
- package/dist/types/meeting-info/index.d.ts +13 -1
- package/dist/types/meeting-info/meeting-info-v2.d.ts +31 -1
- package/dist/types/meetings/collection.d.ts +17 -0
- package/dist/types/meetings/index.d.ts +112 -20
- package/dist/types/meetings/meetings.types.d.ts +4 -0
- package/dist/types/member/index.d.ts +14 -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 +25 -0
- package/dist/types/members/util.d.ts +214 -1
- package/dist/types/metrics/constants.d.ts +16 -0
- package/dist/types/metrics/index.d.ts +4 -111
- package/dist/types/multistream/mediaRequestManager.d.ts +72 -5
- package/dist/types/multistream/receiveSlot.d.ts +13 -11
- package/dist/types/multistream/receiveSlotManager.d.ts +14 -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/multistream/sendSlotManager.d.ts +61 -0
- package/dist/types/reachability/clusterReachability.d.ts +109 -0
- package/dist/types/reachability/index.d.ts +60 -95
- package/dist/types/reachability/request.d.ts +3 -1
- package/dist/types/reachability/util.d.ts +8 -0
- package/dist/types/reconnection-manager/index.d.ts +19 -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/index.d.ts +2 -1
- package/dist/types/roap/request.d.ts +9 -8
- package/dist/types/roap/turnDiscovery.d.ts +39 -5
- package/dist/types/rtcMetrics/constants.d.ts +4 -0
- package/dist/types/rtcMetrics/index.d.ts +61 -0
- package/dist/types/statsAnalyzer/index.d.ts +29 -11
- package/dist/types/webinar/collection.d.ts +16 -0
- package/dist/types/webinar/index.d.ts +5 -0
- package/dist/webinar/collection.js +44 -0
- package/dist/webinar/collection.js.map +1 -0
- package/dist/webinar/index.js +69 -0
- package/dist/webinar/index.js.map +1 -0
- package/package.json +22 -19
- 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 +35 -11
- package/src/breakouts/breakout.ts +67 -9
- package/src/breakouts/events.ts +56 -0
- package/src/breakouts/index.ts +558 -59
- package/src/breakouts/utils.ts +42 -0
- package/src/common/errors/no-meeting-info.ts +24 -0
- package/src/common/errors/reclaim-host-role-errors.ts +134 -0
- package/src/common/errors/webex-errors.ts +44 -2
- package/src/common/logs/logger-proxy.ts +1 -1
- package/src/common/logs/request.ts +5 -1
- package/src/common/queue.ts +22 -8
- package/src/config.ts +4 -9
- package/src/constants.ts +224 -21
- package/src/controls-options-manager/enums.ts +12 -0
- package/src/controls-options-manager/index.ts +116 -21
- package/src/controls-options-manager/types.ts +59 -0
- package/src/controls-options-manager/util.ts +294 -14
- package/src/index.ts +44 -0
- package/src/interceptors/index.ts +3 -0
- package/src/interceptors/locusRetry.ts +67 -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 +414 -59
- package/src/locus-info/infoUtils.ts +10 -2
- package/src/locus-info/mediaSharesUtils.ts +64 -0
- package/src/locus-info/parser.ts +258 -47
- package/src/locus-info/selfUtils.ts +81 -5
- package/src/media/index.ts +97 -107
- package/src/media/properties.ts +88 -117
- package/src/mediaQualityMetrics/config.ts +0 -135
- package/src/meeting/in-meeting-actions.ts +171 -3
- package/src/meeting/index.ts +3363 -2453
- package/src/meeting/locusMediaRequest.ts +313 -0
- package/src/meeting/muteState.ts +223 -136
- package/src/meeting/request.ts +149 -120
- package/src/meeting/util.ts +685 -395
- package/src/meeting-info/index.ts +81 -8
- package/src/meeting-info/meeting-info-v2.ts +170 -14
- package/src/meeting-info/util.ts +1 -1
- package/src/meeting-info/utilv2.ts +23 -23
- package/src/meetings/collection.ts +33 -0
- package/src/meetings/index.ts +497 -126
- package/src/meetings/meetings.types.ts +12 -0
- package/src/meetings/request.ts +2 -0
- package/src/meetings/util.ts +81 -12
- package/src/member/index.ts +58 -0
- package/src/member/types.ts +38 -0
- package/src/member/util.ts +141 -25
- package/src/members/collection.ts +8 -0
- package/src/members/index.ts +134 -8
- package/src/members/request.ts +97 -17
- package/src/members/types.ts +29 -0
- package/src/members/util.ts +333 -240
- package/src/metrics/constants.ts +16 -0
- package/src/metrics/index.ts +1 -469
- package/src/multistream/mediaRequestManager.ts +277 -82
- package/src/multistream/receiveSlot.ts +31 -17
- package/src/multistream/receiveSlotManager.ts +34 -24
- package/src/multistream/remoteMedia.ts +27 -2
- package/src/multistream/remoteMediaGroup.ts +59 -0
- package/src/multistream/remoteMediaManager.ts +148 -30
- package/src/multistream/sendSlotManager.ts +170 -0
- package/src/reachability/clusterReachability.ts +320 -0
- package/src/reachability/index.ts +229 -346
- package/src/reachability/request.ts +8 -4
- package/src/reachability/util.ts +24 -0
- package/src/reconnection-manager/index.ts +139 -106
- package/src/recording-controller/index.ts +20 -3
- package/src/recording-controller/util.ts +26 -9
- package/src/roap/index.ts +52 -23
- package/src/roap/request.ts +48 -67
- package/src/roap/turnDiscovery.ts +147 -49
- package/src/rtcMetrics/constants.ts +3 -0
- package/src/rtcMetrics/index.ts +166 -0
- package/src/statsAnalyzer/index.ts +219 -289
- package/src/statsAnalyzer/mqaUtil.ts +43 -44
- package/src/webinar/collection.ts +31 -0
- package/src/webinar/index.ts +62 -0
- package/test/integration/spec/converged-space-meetings.js +60 -3
- package/test/integration/spec/journey.js +320 -261
- 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 +118 -28
- package/test/unit/spec/breakouts/events.ts +89 -0
- package/test/unit/spec/breakouts/index.ts +1349 -114
- package/test/unit/spec/breakouts/utils.js +52 -1
- package/test/unit/spec/common/queue.js +31 -2
- package/test/unit/spec/controls-options-manager/index.js +163 -0
- package/test/unit/spec/controls-options-manager/util.js +576 -60
- package/test/unit/spec/fixture/locus.js +1 -0
- package/test/unit/spec/interceptors/locusRetry.ts +131 -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 +1352 -33
- package/test/unit/spec/locus-info/infoUtils.js +37 -15
- package/test/unit/spec/locus-info/lib/SeqCmp.json +16 -0
- package/test/unit/spec/locus-info/mediaSharesUtils.ts +32 -0
- package/test/unit/spec/locus-info/parser.js +116 -35
- 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 +118 -37
- package/test/unit/spec/media/properties.ts +2 -2
- package/test/unit/spec/meeting/in-meeting-actions.ts +85 -3
- package/test/unit/spec/meeting/index.js +6722 -2200
- package/test/unit/spec/meeting/locusMediaRequest.ts +442 -0
- package/test/unit/spec/meeting/muteState.js +402 -212
- package/test/unit/spec/meeting/request.js +471 -54
- package/test/unit/spec/meeting/utils.js +773 -67
- package/test/unit/spec/meeting-info/index.js +300 -0
- package/test/unit/spec/meeting-info/meetinginfov2.js +526 -5
- package/test/unit/spec/meeting-info/utilv2.js +21 -0
- package/test/unit/spec/meetings/collection.js +26 -0
- package/test/unit/spec/meetings/index.js +1393 -212
- package/test/unit/spec/meetings/utils.js +229 -2
- package/test/unit/spec/member/index.js +61 -6
- package/test/unit/spec/member/util.js +510 -34
- package/test/unit/spec/members/index.js +432 -1
- package/test/unit/spec/members/request.js +206 -27
- package/test/unit/spec/members/utils.js +210 -0
- package/test/unit/spec/metrics/index.js +1 -50
- package/test/unit/spec/multistream/mediaRequestManager.ts +776 -162
- package/test/unit/spec/multistream/receiveSlot.ts +28 -20
- package/test/unit/spec/multistream/receiveSlotManager.ts +32 -30
- 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/multistream/sendSlotManager.ts +242 -0
- package/test/unit/spec/reachability/clusterReachability.ts +279 -0
- package/test/unit/spec/reachability/index.ts +551 -14
- package/test/unit/spec/reachability/request.js +3 -1
- package/test/unit/spec/reachability/util.ts +40 -0
- package/test/unit/spec/reconnection-manager/index.js +153 -11
- 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 +180 -83
- package/test/unit/spec/roap/request.ts +100 -62
- package/test/unit/spec/roap/turnDiscovery.ts +388 -96
- package/test/unit/spec/rtcMetrics/index.ts +122 -0
- package/test/unit/spec/stats-analyzer/index.js +664 -12
- package/test/unit/spec/webinar/collection.ts +13 -0
- package/test/unit/spec/webinar/index.ts +60 -0
- package/test/utils/integrationTestUtils.js +46 -0
- package/test/utils/testUtils.js +0 -57
- package/dist/metrics/config.js +0 -289
- package/dist/metrics/config.js.map +0 -1
- package/dist/types/metrics/config.d.ts +0 -169
- package/src/index.js +0 -16
- package/src/metrics/config.ts +0 -485
package/src/constants.ts
CHANGED
|
@@ -1,16 +1,19 @@
|
|
|
1
1
|
// @ts-ignore
|
|
2
2
|
import {hydraTypes} from '@webex/common';
|
|
3
3
|
|
|
4
|
+
type Enum<T extends Record<string, unknown>> = T[keyof T];
|
|
5
|
+
|
|
4
6
|
// *********** LOWERCASE / CAMELCASE STRINGS ************
|
|
5
7
|
|
|
6
8
|
export const AUDIO = 'audio';
|
|
7
|
-
export const AUDIO_INPUT = 'audioinput';
|
|
8
9
|
export const AUDIO_STATUS = 'audioStatus';
|
|
9
10
|
export const ALERT = 'alert';
|
|
11
|
+
export const ALIAS = 'alias';
|
|
10
12
|
export const ANSWER = 'answer';
|
|
11
13
|
|
|
12
14
|
export const CALL = 'call';
|
|
13
15
|
export const CORRELATION_ID = 'correlationId';
|
|
16
|
+
export const MEETINGNUMBER = 'meetingNumber';
|
|
14
17
|
export const CONVERSATION_URL = 'conversationUrl';
|
|
15
18
|
export const CALENDAR = 'calendar';
|
|
16
19
|
export const CALENDAR_EVENTS_API = 'calendarEvents';
|
|
@@ -65,7 +68,6 @@ export const SHARE = 'share';
|
|
|
65
68
|
export const TYPE = 'type';
|
|
66
69
|
|
|
67
70
|
export const VIDEO = 'video';
|
|
68
|
-
export const VIDEO_INPUT = 'videoinput';
|
|
69
71
|
export const VIDEO_STATUS = 'videoStatus';
|
|
70
72
|
|
|
71
73
|
// *********** UPPERCASE ONLY STRINGS ************
|
|
@@ -93,6 +95,7 @@ export const _JOINED_ = 'JOINED';
|
|
|
93
95
|
|
|
94
96
|
export const _LOCUS_ID_ = 'LOCUS_ID';
|
|
95
97
|
export const _LEFT_ = 'LEFT';
|
|
98
|
+
export const _MOVED_ = 'MOVED';
|
|
96
99
|
|
|
97
100
|
export const _MEETING_LINK_ = 'MEETING_LINK';
|
|
98
101
|
export const _MEETING_UUID_ = 'MEETING_UUID';
|
|
@@ -189,7 +192,8 @@ export const ICE_FAIL_TIMEOUT = 3000;
|
|
|
189
192
|
|
|
190
193
|
export const RETRY_TIMEOUT = 3000;
|
|
191
194
|
|
|
192
|
-
export const
|
|
195
|
+
export const ICE_AND_DTLS_CONNECTION_TIMEOUT = 10000;
|
|
196
|
+
export const ROAP_OFFER_ANSWER_EXCHANGE_TIMEOUT = 35000;
|
|
193
197
|
|
|
194
198
|
// ******************** REGEX **********************
|
|
195
199
|
// Please alphabetize
|
|
@@ -235,6 +239,13 @@ export const CALENDAR_EVENTS = {
|
|
|
235
239
|
DELETE: 'event:calendar.meeting.delete',
|
|
236
240
|
};
|
|
237
241
|
|
|
242
|
+
export const ASSIGN_ROLES_ERROR_CODES = {
|
|
243
|
+
ReclaimHostNotSupportedErrorCode: 2400127,
|
|
244
|
+
ReclaimHostNotAllowedErrorCode: 2403135,
|
|
245
|
+
ReclaimHostEmptyWrongKeyErrorCode: 2403136,
|
|
246
|
+
ReclaimHostIsHostAlreadyErrorCode: 2409150,
|
|
247
|
+
};
|
|
248
|
+
|
|
238
249
|
export const DEFAULT_GET_STATS_FILTER = {
|
|
239
250
|
types: [
|
|
240
251
|
'track',
|
|
@@ -280,6 +291,7 @@ export const EVENT_TRIGGERS = {
|
|
|
280
291
|
MEETING_STOPPED_SHARING_LOCAL: 'meeting:stoppedSharingLocal',
|
|
281
292
|
MEETING_STARTED_SHARING_REMOTE: 'meeting:startedSharingRemote',
|
|
282
293
|
MEETING_STOPPED_SHARING_REMOTE: 'meeting:stoppedSharingRemote',
|
|
294
|
+
MEETING_UPDATE_ANNOTATION_INFO: 'meeting:updateAnnotationInfo',
|
|
283
295
|
MEETING_STARTED_SHARING_WHITEBOARD: 'meeting:startedSharingWhiteboard',
|
|
284
296
|
MEETING_STOPPED_SHARING_WHITEBOARD: 'meeting:stoppedSharingWhiteboard',
|
|
285
297
|
MEETING_MEDIA_LOCAL_STARTED: 'meeting:media:local:start',
|
|
@@ -297,18 +309,29 @@ export const EVENT_TRIGGERS = {
|
|
|
297
309
|
MEETING_RINGING_STOP: 'meeting:ringingStop',
|
|
298
310
|
MEETING_SELF_LOBBY_WAITING: 'meeting:self:lobbyWaiting',
|
|
299
311
|
MEETING_SELF_GUEST_ADMITTED: 'meeting:self:guestAdmitted',
|
|
312
|
+
MEETING_SELF_VIDEO_MUTED_BY_OTHERS: 'meeting:self:videoMutedByOthers',
|
|
313
|
+
MEETING_SELF_VIDEO_UNMUTED_BY_OTHERS: 'meeting:self:videoUnmutedByOthers',
|
|
300
314
|
MEETING_SELF_MUTED_BY_OTHERS: 'meeting:self:mutedByOthers',
|
|
301
315
|
MEETING_SELF_UNMUTED_BY_OTHERS: 'meeting:self:unmutedByOthers',
|
|
302
316
|
MEETING_SELF_REQUESTED_TO_UNMUTE: 'meeting:self:requestedToUnmute',
|
|
303
317
|
MEETING_SELF_PHONE_AUDIO_UPDATE: 'meeting:self:phoneAudioUpdate',
|
|
304
318
|
MEETING_SELF_CANNOT_VIEW_PARTICIPANT_LIST: 'meeting:self:cannotViewParticipantList',
|
|
305
319
|
MEETING_SELF_IS_SHARING_BLOCKED: 'meeting:self:isSharingBlocked',
|
|
320
|
+
MEETING_SELF_ROLES_CHANGED: 'meeting:self:rolesChanged',
|
|
306
321
|
MEETING_CONTROLS_LAYOUT_UPDATE: 'meeting:layout:update',
|
|
307
322
|
MEETING_ENTRY_EXIT_TONE_UPDATE: 'meeting:entryExitTone:update',
|
|
308
323
|
MEETING_BREAKOUTS_UPDATE: 'meeting:breakouts:update',
|
|
309
324
|
MEETING_BREAKOUTS_CLOSING: 'meeting:breakouts:closing',
|
|
310
325
|
MEETING_BREAKOUTS_MESSAGE: 'meeting:breakouts:message',
|
|
326
|
+
MEETING_BREAKOUTS_ASK_RETURN_TO_MAIN: 'meeting:breakouts:askReturnToMain',
|
|
327
|
+
MEETING_BREAKOUTS_LEAVE: 'meeting:breakouts:leave',
|
|
328
|
+
MEETING_BREAKOUTS_ASK_FOR_HELP: 'meeting:breakouts:askForHelp',
|
|
329
|
+
MEETING_BREAKOUTS_PRE_ASSIGNMENTS_UPDATE: 'meeting:breakouts:preAssignmentsUpdate',
|
|
330
|
+
MEETING_INTERPRETATION_UPDATE: 'meeting:interpretation:update',
|
|
331
|
+
MEETING_INTERPRETATION_SUPPORT_LANGUAGES_UPDATE: 'meeting:interpretation:supportLanguagesUpdate',
|
|
332
|
+
MEETING_INTERPRETATION_HANDOFF_REQUESTS_ARRIVED: 'meeting:interpretation:handoffRequestsArrived',
|
|
311
333
|
MEMBERS_UPDATE: 'members:update',
|
|
334
|
+
MEMBERS_CLEAR: 'members:clear',
|
|
312
335
|
MEMBERS_CONTENT_UPDATE: 'members:content:update',
|
|
313
336
|
MEMBERS_HOST_UPDATE: 'members:host:update',
|
|
314
337
|
MEMBERS_SELF_UPDATE: 'members:self:update',
|
|
@@ -337,17 +360,28 @@ export const EVENT_TRIGGERS = {
|
|
|
337
360
|
REMOTE_MEDIA_AUDIO_CREATED: 'media:remoteAudio:created',
|
|
338
361
|
REMOTE_MEDIA_SCREEN_SHARE_AUDIO_CREATED: 'media:remoteScreenShareAudio:created',
|
|
339
362
|
REMOTE_MEDIA_VIDEO_LAYOUT_CHANGED: 'media:remoteVideo:layoutChanged',
|
|
363
|
+
// Controls
|
|
364
|
+
MEETING_CONTROLS_MUTE_ON_ENTRY_UPDATED: 'meeting:controls:mute-on-entry:updated',
|
|
365
|
+
MEETING_CONTROLS_SHARE_CONTROL_UPDATED: 'meeting:controls:share-control:updated',
|
|
366
|
+
MEETING_CONTROLS_DISALLOW_UNMUTE_UPDATED: 'meeting:controls:disallow-unmute:updated',
|
|
367
|
+
MEETING_CONTROLS_REACTIONS_UPDATED: 'meeting:controls:reactions:updated',
|
|
368
|
+
MEETING_CONTROLS_VIEW_THE_PARTICIPANTS_LIST_UPDATED:
|
|
369
|
+
'meeting:controls:view-the-participants-list:updated',
|
|
370
|
+
MEETING_CONTROLS_RAISE_HAND_UPDATED: 'meeting:controls:raise-hand:updated',
|
|
371
|
+
MEETING_CONTROLS_VIDEO_UPDATED: 'meeting:controls:video:updated',
|
|
372
|
+
// Locus URL changed
|
|
373
|
+
MEETING_LOCUS_URL_UPDATE: 'meeting:locus:locusUrl:update',
|
|
374
|
+
MEETING_STREAM_PUBLISH_STATE_CHANGED: 'meeting:streamPublishStateChanged',
|
|
340
375
|
};
|
|
341
376
|
|
|
342
377
|
export const EVENT_TYPES = {
|
|
343
378
|
SELF: 'self',
|
|
344
379
|
OTHER: 'other',
|
|
345
|
-
LOCAL: 'local',
|
|
346
380
|
REMOTE: 'remote',
|
|
347
381
|
REMOTE_AUDIO: 'remoteAudio',
|
|
348
382
|
REMOTE_VIDEO: 'remoteVideo',
|
|
349
383
|
REMOTE_SHARE: 'remoteShare',
|
|
350
|
-
|
|
384
|
+
REMOTE_SHARE_AUDIO: 'remoteShareAudio',
|
|
351
385
|
ERROR: 'error',
|
|
352
386
|
};
|
|
353
387
|
|
|
@@ -360,9 +394,12 @@ export const MEETING_REMOVED_REASON = {
|
|
|
360
394
|
FULLSTATE_REMOVED: 'FULLSTATE_REMOVED', // meeting got dropped ? not sure
|
|
361
395
|
MEETING_INACTIVE_TERMINATING: 'MEETING_INACTIVE_TERMINATING', // Meeting got ended or everyone left the meeting
|
|
362
396
|
CLIENT_LEAVE_REQUEST: 'CLIENT_LEAVE_REQUEST', // You triggered leave meeting
|
|
397
|
+
CLIENT_LEAVE_REQUEST_TAB_CLOSED: 'CLIENT_LEAVE_REQUEST_TAB_CLOSED', // You triggered leave meeting, such as closing the browser tab directly
|
|
363
398
|
USER_ENDED_SHARE_STREAMS: 'USER_ENDED_SHARE_STREAMS', // user triggered stop share
|
|
364
399
|
NO_MEETINGS_TO_SYNC: 'NO_MEETINGS_TO_SYNC', // After the syncMeeting no meeting exists
|
|
365
400
|
MEETING_CONNECTION_FAILED: 'MEETING_CONNECTION_FAILED', // meeting failed to connect due to ice failures or firewall issue
|
|
401
|
+
LOCUS_DTO_SYNC_FAILED: 'LOCUS_DTO_SYNC_FAILED', // failed to get any Locus DTO for that meeting
|
|
402
|
+
MISSING_MEETING_INFO: 'MISSING_MEETING_INFO', // meeting info failed to be fetched
|
|
366
403
|
};
|
|
367
404
|
|
|
368
405
|
// One one one calls ends for the following reasons
|
|
@@ -377,6 +414,8 @@ export const CALL_REMOVED_REASON = {
|
|
|
377
414
|
export const SHARE_STOPPED_REASON = {
|
|
378
415
|
SELF_STOPPED: 'SELF_STOPPED',
|
|
379
416
|
MEETING_REJOIN: 'MEETING_REJOIN',
|
|
417
|
+
MEDIA_RECONNECTION: 'MEDIA_RECONNECTION',
|
|
418
|
+
TRACK_ENDED: 'TRACK_ENDED',
|
|
380
419
|
};
|
|
381
420
|
|
|
382
421
|
export const EVENTS = {
|
|
@@ -457,6 +496,35 @@ export const ERROR_DICTIONARY = {
|
|
|
457
496
|
MESSAGE: 'Edit lock token mismatch',
|
|
458
497
|
CODE: 9,
|
|
459
498
|
},
|
|
499
|
+
NO_MEETING_INFO: {
|
|
500
|
+
NAME: 'NoMeetingInfo',
|
|
501
|
+
MESSAGE: 'No meeting info found for the meeting',
|
|
502
|
+
CODE: 10,
|
|
503
|
+
},
|
|
504
|
+
RECLAIM_HOST_ROLE_NOT_SUPPORTED: {
|
|
505
|
+
NAME: 'ReclaimHostRoleNotSupported',
|
|
506
|
+
MESSAGE:
|
|
507
|
+
'Non converged meetings, PSTN or SIP users in converged meetings are not supported currently.',
|
|
508
|
+
CODE: 11,
|
|
509
|
+
},
|
|
510
|
+
RECLAIM_HOST_ROLE_NOT_ALLOWED: {
|
|
511
|
+
NAME: 'ReclaimHostRoleNotAllowed',
|
|
512
|
+
MESSAGE:
|
|
513
|
+
'Reclaim Host Role Not Allowed For Other Participants. Participants cannot claim host role in PMR meeting, space instant meeting or escalated instant meeting. However, the original host still can reclaim host role when it manually makes another participant to be the host.',
|
|
514
|
+
CODE: 12,
|
|
515
|
+
},
|
|
516
|
+
RECLAIM_HOST_ROLE_EMPTY_OR_WRONG_KEY: {
|
|
517
|
+
NAME: 'ReclaimHostRoleEmptyOrWrongKey',
|
|
518
|
+
MESSAGE:
|
|
519
|
+
'Host Key Not Specified Or Matched. The original host can reclaim the host role without entering the host key. However, any other person who claims the host role must enter the host key to get it.',
|
|
520
|
+
CODE: 13,
|
|
521
|
+
},
|
|
522
|
+
RECLAIM_HOST_ROLE_IS_ALREADY_HOST: {
|
|
523
|
+
NAME: 'ReclaimHostRoleIsAlreadyHost',
|
|
524
|
+
MESSAGE:
|
|
525
|
+
'Participant Having Host Role Already. Participant who sends request to reclaim host role has already a host role.',
|
|
526
|
+
CODE: 14,
|
|
527
|
+
},
|
|
460
528
|
};
|
|
461
529
|
|
|
462
530
|
export const FLOOR_ACTION = {
|
|
@@ -478,6 +546,7 @@ export const HTTP_VERBS = {
|
|
|
478
546
|
POST: 'POST',
|
|
479
547
|
GET: 'GET',
|
|
480
548
|
PATCH: 'PATCH',
|
|
549
|
+
DELETE: 'DELETE',
|
|
481
550
|
};
|
|
482
551
|
|
|
483
552
|
// https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/iceGatheringState
|
|
@@ -511,6 +580,8 @@ export const LOCUS = {
|
|
|
511
580
|
INACTIVE: 'INACTIVE',
|
|
512
581
|
ENDED: 'ENDED',
|
|
513
582
|
INITIALIZING: 'INITIALIZING',
|
|
583
|
+
ACTIVE: 'ACTIVE',
|
|
584
|
+
TERMINATING: 'TERMINATING',
|
|
514
585
|
},
|
|
515
586
|
SEQUENCE: {
|
|
516
587
|
UN_DEF: 'undef',
|
|
@@ -523,17 +594,28 @@ export const LOCUS = {
|
|
|
523
594
|
SYNCDEBUG: 'sync_debug',
|
|
524
595
|
};
|
|
525
596
|
|
|
597
|
+
export const ANNOTATION = {
|
|
598
|
+
ANNOTATION_ON_SHARE_SUPPORTED: 'ANNOTATION_ON_SHARE_SUPPORTED',
|
|
599
|
+
};
|
|
526
600
|
export const BREAKOUTS = {
|
|
527
601
|
STATUS: {
|
|
528
602
|
CLOSING: 'CLOSING',
|
|
603
|
+
CLOSED: 'CLOSED',
|
|
604
|
+
PENDING: 'PENDING',
|
|
605
|
+
OPEN: 'OPEN',
|
|
529
606
|
},
|
|
530
607
|
EVENTS: {
|
|
531
608
|
BREAKOUTS_CLOSING: 'BREAKOUTS_CLOSING',
|
|
532
609
|
MESSAGE: 'MESSAGE',
|
|
533
610
|
MEMBERS_UPDATE: 'MEMBERS_UPDATE',
|
|
611
|
+
ASK_RETURN_TO_MAIN: 'ASK_RETURN_TO_MAIN',
|
|
612
|
+
LEAVE_BREAKOUT: 'LEAVE_BREAKOUT',
|
|
613
|
+
ASK_FOR_HELP: 'ASK_FOR_HELP',
|
|
614
|
+
PRE_ASSIGNMENTS_UPDATE: 'PRE_ASSIGNMENTS_UPDATE',
|
|
534
615
|
},
|
|
535
616
|
SESSION_TYPES: {
|
|
536
617
|
MAIN: 'MAIN',
|
|
618
|
+
BREAKOUT: 'BREAKOUT',
|
|
537
619
|
},
|
|
538
620
|
SESSION_STATES: {
|
|
539
621
|
ACTIVE: 'active',
|
|
@@ -543,12 +625,35 @@ export const BREAKOUTS = {
|
|
|
543
625
|
REQUESTED: 'requested',
|
|
544
626
|
},
|
|
545
627
|
BREAKOUTS_SUPPORTED: 'BREAKOUTS_SUPPORTED',
|
|
546
|
-
|
|
628
|
+
ACTION: {
|
|
629
|
+
START: 'START',
|
|
630
|
+
CLOSE: 'CLOSE',
|
|
547
631
|
DELETE: 'DELETE',
|
|
548
632
|
},
|
|
549
633
|
ERROR_CODE: {
|
|
550
634
|
EDIT_LOCK_TOKEN_MISMATCH: 201409024,
|
|
635
|
+
EDIT_NOT_AUTHORIZED: 201403007,
|
|
636
|
+
},
|
|
637
|
+
EDIT_LOCK_STATUS: {
|
|
638
|
+
LOCKED: 'LOCKED',
|
|
639
|
+
NOT_LOCKED: 'NOT_LOCKED',
|
|
640
|
+
UNKNOWN: 'UNKNOWN',
|
|
641
|
+
},
|
|
642
|
+
DEFAULT_TTL: 30,
|
|
643
|
+
};
|
|
644
|
+
|
|
645
|
+
export const INTERPRETATION = {
|
|
646
|
+
EVENTS: {
|
|
647
|
+
SUPPORT_LANGUAGES_UPDATE: 'SUPPORT_LANGUAGES_UPDATE',
|
|
648
|
+
HANDOFF_REQUESTS_ARRIVED: 'HANDOFF_REQUESTS_ARRIVED',
|
|
551
649
|
},
|
|
650
|
+
ACTION_TYPE: {
|
|
651
|
+
OFFERED: 'OFFERED',
|
|
652
|
+
ACCEPTED: 'ACCEPTED',
|
|
653
|
+
REQUESTED: 'REQUESTED',
|
|
654
|
+
DECLINED: 'DECLINED',
|
|
655
|
+
},
|
|
656
|
+
RESOURCE_TYPE: 'SiHandover',
|
|
552
657
|
};
|
|
553
658
|
|
|
554
659
|
export const LOCUSINFO = {
|
|
@@ -558,13 +663,23 @@ export const LOCUSINFO = {
|
|
|
558
663
|
CONTROLS_MEETING_TRANSCRIBE_UPDATED: 'CONTROLS_MEETING_TRANSCRIBE_UPDATED',
|
|
559
664
|
CONTROLS_MEETING_BREAKOUT_UPDATED: 'CONTROLS_MEETING_BREAKOUT_UPDATED',
|
|
560
665
|
CONTROLS_MEETING_CONTAINER_UPDATED: 'CONTROLS_MEETING_CONTAINER_UPDATED',
|
|
666
|
+
CONTROLS_MEETING_INTERPRETATION_UPDATED: 'CONTROLS_MEETING_INTERPRETATION_UPDATED',
|
|
561
667
|
CONTROLS_ENTRY_EXIT_TONE_UPDATED: 'CONTROLS_ENTRY_EXIT_TONE_UPDATED',
|
|
668
|
+
CONTROLS_MUTE_ON_ENTRY_CHANGED: 'CONTROLS_MUTE_ON_ENTRY_CHANGED',
|
|
669
|
+
CONTROLS_SHARE_CONTROL_CHANGED: 'CONTROLS_SHARE_CONTROL_CHANGED',
|
|
670
|
+
CONTROLS_DISALLOW_UNMUTE_CHANGED: 'CONTROLS_DISALLOW_UNMUTE_CHANGED',
|
|
671
|
+
CONTROLS_REACTIONS_CHANGED: 'CONTROLS_REACTIONS_CHANGED',
|
|
672
|
+
CONTROLS_VIEW_THE_PARTICIPANTS_LIST_CHANGED: 'CONTROLS_VIEW_THE_PARTICIPANTS_LIST_CHANGED',
|
|
673
|
+
CONTROLS_RAISE_HAND_CHANGED: 'CONTROLS_RAISE_HAND_CHANGED',
|
|
674
|
+
CONTROLS_VIDEO_CHANGED: 'CONTROLS_VIDEO_CHANGED',
|
|
562
675
|
SELF_UNADMITTED_GUEST: 'SELF_UNADMITTED_GUEST',
|
|
563
676
|
SELF_ADMITTED_GUEST: 'SELF_ADMITTED_GUEST',
|
|
677
|
+
SELF_REMOTE_VIDEO_MUTE_STATUS_UPDATED: 'SELF_REMOTE_VIDEO_MUTE_STATUS_UPDATED',
|
|
564
678
|
SELF_REMOTE_MUTE_STATUS_UPDATED: 'SELF_REMOTE_MUTE_STATUS_UPDATED',
|
|
565
679
|
LOCAL_UNMUTE_REQUESTED: 'LOCAL_UNMUTE_REQUESTED',
|
|
566
680
|
LOCAL_UNMUTE_REQUIRED: 'LOCAL_UNMUTE_REQUIRED',
|
|
567
681
|
SELF_MODERATOR_CHANGED: 'SELF_MODERATOR_CHANGED',
|
|
682
|
+
SELF_ROLES_CHANGED: 'SELF_ROLES_CHANGED',
|
|
568
683
|
MEETING_UPDATE: 'MEETING_UPDATE',
|
|
569
684
|
MEDIA_STATUS_CHANGE: 'MEDIA_STATUS_CHANGE',
|
|
570
685
|
FULL_STATE_TYPE_UPDATE: 'FULL_STATE_TYPE_UPDATE',
|
|
@@ -579,6 +694,7 @@ export const LOCUSINFO = {
|
|
|
579
694
|
SELF_CANNOT_VIEW_PARTICIPANT_LIST_CHANGE: 'SELF_CANNOT_VIEW_PARTICIPANT_LIST_CHANGE',
|
|
580
695
|
SELF_IS_SHARING_BLOCKED_CHANGE: 'SELF_IS_SHARING_BLOCKED_CHANGE',
|
|
581
696
|
SELF_MEETING_BREAKOUTS_CHANGED: 'SELF_MEETING_BREAKOUTS_CHANGED',
|
|
697
|
+
SELF_MEETING_INTERPRETATION_CHANGED: 'SELF_MEETING_INTERPRETATION_CHANGED',
|
|
582
698
|
MEDIA_INACTIVITY: 'MEDIA_INACTIVITY',
|
|
583
699
|
LINKS_SERVICES: 'LINKS_SERVICES',
|
|
584
700
|
},
|
|
@@ -743,6 +859,28 @@ export const MEETING_END_REASON = {
|
|
|
743
859
|
MEDIA_RELEASED: 'MEDIA_RELEASED',
|
|
744
860
|
};
|
|
745
861
|
|
|
862
|
+
export enum SELF_POLICY {
|
|
863
|
+
ENFORCE_VIRTUAL_BACKGROUND = 'enforceVirtualBackground',
|
|
864
|
+
SUPPORT_LOCAL_RECORD = 'supportLocalRecord',
|
|
865
|
+
SUPPORT_NETWORK_BASED_RECORD = 'supportNetworkBasedRecord',
|
|
866
|
+
SUPPORT_REALTIME_CLOSE_CAPTION = 'supportRealtimeCloseCaption',
|
|
867
|
+
SUPPORT_CHAT = 'supportChat',
|
|
868
|
+
SUPPORT_DESKTOP_SHARE_REMOTE = 'supportDesktopShareRemote',
|
|
869
|
+
SUPPORT_DESKTOP_SHARE = 'supportDesktopShare',
|
|
870
|
+
SUPPORT_WHITEBOARD = 'supportWhiteboard',
|
|
871
|
+
SUPPORT_FILE_TRANSFER = 'supportFileTransfer',
|
|
872
|
+
SUPPORT_APP_SHARE = 'supportAppShare',
|
|
873
|
+
SUPPORT_CAMERA_SHARE = 'supportCameraShare',
|
|
874
|
+
SUPPORT_FILE_SHARE = 'supportFileShare',
|
|
875
|
+
SUPPORT_ANNOTATION = 'supportAnnotation',
|
|
876
|
+
SUPPORT_BROADCAST_MESSAGE = 'supportBroadcastMessage',
|
|
877
|
+
SUPPORT_VIDEO = 'supportVideo',
|
|
878
|
+
SUPPORT_HQV = 'supportHQV',
|
|
879
|
+
SUPPORT_HDV = 'supportHDV',
|
|
880
|
+
SUPPORT_PARTICIPANT_LIST = 'supportParticipantList',
|
|
881
|
+
SUPPORT_VOIP = 'supportVoIP',
|
|
882
|
+
}
|
|
883
|
+
|
|
746
884
|
export const DISPLAY_HINTS = {
|
|
747
885
|
ADD_GUEST: 'ADD_GUEST',
|
|
748
886
|
ROSTER_WAITING_TO_JOIN: 'ROSTER_WAITING_TO_JOIN',
|
|
@@ -766,21 +904,64 @@ export const DISPLAY_HINTS = {
|
|
|
766
904
|
DISPLAY_NON_ENGLISH_ASR: 'DISPLAY_NON_ENGLISH_ASR',
|
|
767
905
|
TRANSCRIPTION_CONTROL_START: 'TRANSCRIPTION_CONTROL_START',
|
|
768
906
|
TRANSCRIPTION_CONTROL_STOP: 'TRANSCRIPTION_CONTROL_STOP',
|
|
907
|
+
SAVE_TRANSCRIPTS_ENABLED: 'SAVE_TRANSCRIPTS_ENABLED',
|
|
769
908
|
WEBEX_ASSISTANT_STATUS_ACTIVE: 'WEBEX_ASSISTANT_STATUS_ACTIVE',
|
|
770
909
|
WAITING_FOR_OTHERS: 'WAITING_FOR_OTHERS',
|
|
771
910
|
ENABLE_REACTIONS: 'ENABLE_REACTIONS',
|
|
772
911
|
DISABLE_REACTIONS: 'DISABLE_REACTIONS',
|
|
773
912
|
REACTIONS_ACTIVE: 'REACTIONS_ACTIVE',
|
|
774
913
|
REACTIONS_INACTIVE: 'REACTIONS_INACTIVE',
|
|
914
|
+
SHARE_CONTROL: 'SHARE_CONTROL',
|
|
775
915
|
ENABLE_MUTE_ON_ENTRY: 'ENABLE_MUTE_ON_ENTRY',
|
|
916
|
+
ENABLE_SHOW_DISPLAY_NAME: 'ENABLE_SHOW_DISPLAY_NAME',
|
|
917
|
+
DISABLE_SHOW_DISPLAY_NAME: 'DISABLE_SHOW_DISPLAY_NAME',
|
|
776
918
|
DISABLE_MUTE_ON_ENTRY: 'DISABLE_MUTE_ON_ENTRY',
|
|
777
919
|
ENABLE_HARD_MUTE: 'ENABLE_HARD_MUTE',
|
|
778
920
|
DISABLE_HARD_MUTE: 'DISABLE_HARD_MUTE',
|
|
921
|
+
MUTE_ALL: 'MUTE_ALL',
|
|
922
|
+
UNMUTE_ALL: 'UNMUTE_ALL',
|
|
923
|
+
PRESENTER_CONTROL: 'PRESENTER_CONTROL',
|
|
924
|
+
CAN_RENAME_SELF_AND_OBSERVED: 'CAN_RENAME_SELF_AND_OBSERVED',
|
|
925
|
+
CAN_RENAME_OTHERS: 'CAN_RENAME_OTHERS',
|
|
926
|
+
|
|
927
|
+
// breakout session
|
|
928
|
+
BREAKOUT_MANAGEMENT: 'BREAKOUT_MANAGEMENT',
|
|
929
|
+
BROADCAST_MESSAGE_TO_BREAKOUT: 'BROADCAST_MESSAGE_TO_BREAKOUT',
|
|
930
|
+
UCF_SUPPRESS_BREAKOUTS_SUPPORT: 'UCF_SUPPRESS_BREAKOUTS_SUPPORT',
|
|
931
|
+
DISABLE_ASK_FOR_HELP: 'DISABLE_ASK_FOR_HELP',
|
|
932
|
+
DISABLE_BREAKOUT_PREASSIGNMENTS: 'DISABLE_BREAKOUT_PREASSIGNMENTS',
|
|
933
|
+
DISABLE_LOBBY_TO_BREAKOUT: 'DISABLE_LOBBY_TO_BREAKOUT',
|
|
934
|
+
|
|
935
|
+
// participants list
|
|
936
|
+
DISABLE_VIEW_THE_PARTICIPANT_LIST: 'DISABLE_VIEW_THE_PARTICIPANT_LIST',
|
|
937
|
+
ENABLE_VIEW_THE_PARTICIPANT_LIST: 'ENABLE_VIEW_THE_PARTICIPANT_LIST',
|
|
938
|
+
|
|
939
|
+
// raise hand
|
|
940
|
+
DISABLE_RAISE_HAND: 'DISABLE_RAISE_HAND',
|
|
941
|
+
ENABLE_RAISE_HAND: 'ENABLE_RAISE_HAND',
|
|
942
|
+
|
|
943
|
+
// video
|
|
944
|
+
DISABLE_VIDEO: 'DISABLE_VIDEO',
|
|
945
|
+
ENABLE_VIDEO: 'ENABLE_VIDEO',
|
|
946
|
+
|
|
947
|
+
// Sharing
|
|
948
|
+
SHARE_FILE: 'SHARE_FILE',
|
|
949
|
+
SHARE_APPLICATION: 'SHARE_APPLICATION',
|
|
950
|
+
SHARE_CAMERA: 'SHARE_CAMERA',
|
|
951
|
+
SHARE_DESKTOP: 'SHARE_DESKTOP',
|
|
952
|
+
SHARE_CONTENT: 'SHARE_CONTENT',
|
|
953
|
+
SHARE_WHITEBOARD: 'SHARE_WHITEBOARD',
|
|
954
|
+
|
|
955
|
+
// Voip (audio/video)
|
|
956
|
+
VOIP_IS_ENABLED: 'VOIP_IS_ENABLED',
|
|
779
957
|
};
|
|
780
958
|
|
|
959
|
+
export const INTERSTITIAL_DISPLAY_HINTS = [DISPLAY_HINTS.VOIP_IS_ENABLED];
|
|
960
|
+
|
|
781
961
|
export const SELF_ROLES = {
|
|
782
962
|
COHOST: 'COHOST',
|
|
783
963
|
MODERATOR: 'MODERATOR',
|
|
964
|
+
ATTENDEE: 'ATTENDEE',
|
|
784
965
|
};
|
|
785
966
|
|
|
786
967
|
export const MEETING_STATE = {
|
|
@@ -856,7 +1037,9 @@ export const RECONNECTION = {
|
|
|
856
1037
|
DEFAULT_TRY_COUNT: 0,
|
|
857
1038
|
DEFAULT_STATUS: '',
|
|
858
1039
|
},
|
|
859
|
-
};
|
|
1040
|
+
} as const;
|
|
1041
|
+
|
|
1042
|
+
export type RECONNECTION_STATE = Enum<typeof RECONNECTION.STATE>;
|
|
860
1043
|
|
|
861
1044
|
export const RESOURCE = {
|
|
862
1045
|
CLUSTERS: 'clusters',
|
|
@@ -892,7 +1075,9 @@ export const NETWORK_STATUS = {
|
|
|
892
1075
|
DISCONNECTED: 'DISCONNECTED',
|
|
893
1076
|
RECONNECTING: 'RECONNECTING',
|
|
894
1077
|
CONNECTED: 'CONNECTED',
|
|
895
|
-
};
|
|
1078
|
+
} as const;
|
|
1079
|
+
|
|
1080
|
+
export type NETWORK_STATUS = Enum<typeof NETWORK_STATUS>;
|
|
896
1081
|
|
|
897
1082
|
export const NETWORK_TYPE = {
|
|
898
1083
|
VPN: 'vpn',
|
|
@@ -1047,21 +1232,11 @@ export const AVAILABLE_RESOLUTIONS = {
|
|
|
1047
1232
|
},
|
|
1048
1233
|
};
|
|
1049
1234
|
|
|
1050
|
-
export const VIDEO_RESOLUTIONS = {
|
|
1051
|
-
[QUALITY_LEVELS.LOW]: AVAILABLE_RESOLUTIONS['480p'],
|
|
1052
|
-
[QUALITY_LEVELS.MEDIUM]: AVAILABLE_RESOLUTIONS['720p'],
|
|
1053
|
-
[QUALITY_LEVELS.HIGH]: AVAILABLE_RESOLUTIONS['1080p'],
|
|
1054
|
-
[QUALITY_LEVELS['360p']]: AVAILABLE_RESOLUTIONS['360p'],
|
|
1055
|
-
[QUALITY_LEVELS['480p']]: AVAILABLE_RESOLUTIONS['480p'],
|
|
1056
|
-
[QUALITY_LEVELS['720p']]: AVAILABLE_RESOLUTIONS['720p'],
|
|
1057
|
-
[QUALITY_LEVELS['1080p']]: AVAILABLE_RESOLUTIONS['1080p'],
|
|
1058
|
-
};
|
|
1059
|
-
|
|
1060
1235
|
/*
|
|
1061
1236
|
* mqa Interval for sending stats metrics
|
|
1062
1237
|
*/
|
|
1063
1238
|
|
|
1064
|
-
export const
|
|
1239
|
+
export const MQA_INTERVAL = 60000; // mqa analyzer interval its fixed to 60000
|
|
1065
1240
|
|
|
1066
1241
|
export const MEDIA_DEVICES = {
|
|
1067
1242
|
MICROPHONE: 'microphone',
|
|
@@ -1069,8 +1244,6 @@ export const MEDIA_DEVICES = {
|
|
|
1069
1244
|
CAMERA: 'camera',
|
|
1070
1245
|
};
|
|
1071
1246
|
|
|
1072
|
-
export const METRICS_JOIN_TIMES_MAX_DURATION = 1200000;
|
|
1073
|
-
|
|
1074
1247
|
export const PSTN_STATUS = {
|
|
1075
1248
|
JOINED: 'JOINED', // we have provisioned a pstn device, which can be used to connect
|
|
1076
1249
|
CONNECTED: 'CONNECTED', // user is connected to audio with pstn device
|
|
@@ -1091,6 +1264,7 @@ export const MEETING_INFO_FAILURE_REASON = {
|
|
|
1091
1264
|
NONE: 'NONE', // meeting info was retrieved succesfully
|
|
1092
1265
|
WRONG_PASSWORD: 'WRONG_PASSWORD', // meeting requires password and no password or wrong one was provided
|
|
1093
1266
|
WRONG_CAPTCHA: 'WRONG_CAPTCHA', // wbxappapi requires a captcha code or a wrong captcha code was provided
|
|
1267
|
+
POLICY: 'POLICY', // meeting info request violates some meeting policy
|
|
1094
1268
|
OTHER: 'OTHER', // any other error (network, etc)
|
|
1095
1269
|
};
|
|
1096
1270
|
|
|
@@ -1105,3 +1279,32 @@ export const EMBEDDED_APP_TYPES = {
|
|
|
1105
1279
|
SLIDO: 'SLIDO',
|
|
1106
1280
|
OTHER: 'OTHER',
|
|
1107
1281
|
};
|
|
1282
|
+
|
|
1283
|
+
export const DEFAULT_MEETING_INFO_REQUEST_BODY = {
|
|
1284
|
+
supportHostKey: true,
|
|
1285
|
+
supportCountryList: true,
|
|
1286
|
+
};
|
|
1287
|
+
|
|
1288
|
+
/** the values for IP_VERSION are fixed and defined in Orpheus API */
|
|
1289
|
+
export const IP_VERSION = {
|
|
1290
|
+
unknown: 0,
|
|
1291
|
+
only_ipv4: 4, // we know we have ipv4, we don't know or we don't have ipv6
|
|
1292
|
+
only_ipv6: 6, // we know we have ipv6, we don't know or we don't have ipv4
|
|
1293
|
+
ipv4_and_ipv6: 1,
|
|
1294
|
+
} as const;
|
|
1295
|
+
|
|
1296
|
+
export const LOCAL_SHARE_ERRORS = {
|
|
1297
|
+
DEVICE_NOT_JOINED: 'Floor requested but device not yet joined',
|
|
1298
|
+
UNDEFINED: 'undefined PUT',
|
|
1299
|
+
NO_MEDIA_FOR_DEVICE: 'No media session found for device',
|
|
1300
|
+
NO_CONFLUENCE_ID: 'Failed to request floor: 404 (null) could not find confluence id',
|
|
1301
|
+
CONTENT_SHARING_DISABLED: 'Content share policies are disabled',
|
|
1302
|
+
LOCUS_PARTICIPANT_DNE: 'does not exist in Locus',
|
|
1303
|
+
CONTENT_REQUEST_WHILE_PENDING_WHITEBOARD:
|
|
1304
|
+
'Content share request is not allowed while whiteboard floor request is pending',
|
|
1305
|
+
};
|
|
1306
|
+
export type IP_VERSION = Enum<typeof IP_VERSION>;
|
|
1307
|
+
|
|
1308
|
+
// constant for if the permissionToken is about to expire in the next 30 seconds, refresh it
|
|
1309
|
+
export const MEETING_PERMISSION_TOKEN_REFRESH_THRESHOLD_IN_SEC = 30;
|
|
1310
|
+
export const MEETING_PERMISSION_TOKEN_REFRESH_REASON = 'ttl-join';
|
|
@@ -1,6 +1,18 @@
|
|
|
1
1
|
enum Setting {
|
|
2
2
|
disallowUnmute = 'DisallowUnmute',
|
|
3
3
|
muteOnEntry = 'MuteOnEntry',
|
|
4
|
+
muted = 'Muted',
|
|
4
5
|
}
|
|
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
|
+
|
|
6
18
|
export default Setting;
|
|
@@ -3,7 +3,8 @@ import PermissionError from '../common/errors/permission';
|
|
|
3
3
|
import {CONTROLS, HTTP_VERBS} from '../constants';
|
|
4
4
|
import MeetingRequest from '../meeting/request';
|
|
5
5
|
import LoggerProxy from '../common/logs/logger-proxy';
|
|
6
|
-
import Setting from './enums';
|
|
6
|
+
import {Control, Setting} from './enums';
|
|
7
|
+
import {ControlConfig} from './types';
|
|
7
8
|
import Util from './util';
|
|
8
9
|
import {CAN_SET, CAN_UNSET, ENABLED} from './constants';
|
|
9
10
|
|
|
@@ -133,32 +134,106 @@ export default class ControlsOptionsManager {
|
|
|
133
134
|
this.setLocusUrl(options?.locusUrl);
|
|
134
135
|
}
|
|
135
136
|
|
|
137
|
+
/**
|
|
138
|
+
* Set controls for this meeting.
|
|
139
|
+
*
|
|
140
|
+
* @param {Array<ControlConfig>} controls - Spread Array of ControlConfigs
|
|
141
|
+
* @returns {Promise<Array<any>>}- Promise resolving if the request was successful.
|
|
142
|
+
*/
|
|
143
|
+
public update(...controls: Array<ControlConfig>) {
|
|
144
|
+
const payloads = controls.map((control) => {
|
|
145
|
+
if (!Object.keys(Control).includes(control.scope)) {
|
|
146
|
+
throw new Error(
|
|
147
|
+
`updating meeting control scope "${control.scope}" is not a supported scope`
|
|
148
|
+
);
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
if (!Util.canUpdate(control, this.displayHints)) {
|
|
152
|
+
throw new PermissionError(
|
|
153
|
+
`updating meeting control scope "${control.scope}" not allowed, due to moderator property.`
|
|
154
|
+
);
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
return {
|
|
158
|
+
[control.scope]: control.properties,
|
|
159
|
+
};
|
|
160
|
+
});
|
|
161
|
+
|
|
162
|
+
return payloads.reduce((previous, payload) => {
|
|
163
|
+
return previous.then(() =>
|
|
164
|
+
// @ts-ignore
|
|
165
|
+
this.request.request({
|
|
166
|
+
uri: `${this.locusUrl}/${CONTROLS}`,
|
|
167
|
+
body: payload,
|
|
168
|
+
method: HTTP_VERBS.PATCH,
|
|
169
|
+
})
|
|
170
|
+
);
|
|
171
|
+
}, Promise.resolve());
|
|
172
|
+
}
|
|
173
|
+
|
|
136
174
|
/**
|
|
137
175
|
* @param {Setting} setting
|
|
138
|
-
* @param {boolean} enabled
|
|
139
176
|
* @private
|
|
140
177
|
* @memberof ControlsOptionsManager
|
|
141
178
|
* @returns {Promise}
|
|
142
179
|
*/
|
|
143
|
-
private setControls(setting: Setting
|
|
144
|
-
LoggerProxy.logger.log(
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
180
|
+
private setControls(setting: {[key in Setting]?: boolean}): Promise<any> {
|
|
181
|
+
LoggerProxy.logger.log(
|
|
182
|
+
`ControlsOptionsManager:index#setControls --> ${JSON.stringify(setting)}`
|
|
183
|
+
);
|
|
184
|
+
|
|
185
|
+
const body: Record<string, any> = {};
|
|
186
|
+
let error: PermissionError;
|
|
187
|
+
|
|
188
|
+
let shouldSkipCheckToMergeBody = false;
|
|
189
|
+
|
|
190
|
+
Object.entries(setting).forEach(([key, value]) => {
|
|
191
|
+
if (
|
|
192
|
+
!shouldSkipCheckToMergeBody &&
|
|
193
|
+
!Util?.[`${value ? CAN_SET : CAN_UNSET}${key}`](this.displayHints)
|
|
194
|
+
) {
|
|
195
|
+
error = new PermissionError(`${key} [${value}] not allowed, due to moderator property.`);
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
if (error) {
|
|
199
|
+
return;
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
switch (key) {
|
|
203
|
+
case Setting.muted:
|
|
204
|
+
shouldSkipCheckToMergeBody = true;
|
|
205
|
+
body.audio = body.audio
|
|
206
|
+
? {...body.audio, [camelCase(key)]: value}
|
|
207
|
+
: {[camelCase(key)]: value};
|
|
208
|
+
break;
|
|
209
|
+
|
|
210
|
+
case Setting.disallowUnmute:
|
|
211
|
+
case Setting.muteOnEntry:
|
|
212
|
+
if (Object.keys(setting).includes(Setting.muted)) {
|
|
213
|
+
body.audio = body.audio
|
|
214
|
+
? {...body.audio, [camelCase(key)]: value}
|
|
215
|
+
: {[camelCase(key)]: value};
|
|
216
|
+
body.audio[camelCase(key)] = value;
|
|
217
|
+
} else {
|
|
218
|
+
body[camelCase(key)] = {[ENABLED]: value};
|
|
219
|
+
}
|
|
220
|
+
break;
|
|
221
|
+
|
|
222
|
+
default:
|
|
223
|
+
error = new PermissionError(`${key} [${value}] not allowed, due to moderator property.`);
|
|
224
|
+
}
|
|
225
|
+
});
|
|
226
|
+
|
|
227
|
+
if (error) {
|
|
228
|
+
return Promise.reject(error);
|
|
157
229
|
}
|
|
158
230
|
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
231
|
+
// @ts-ignore
|
|
232
|
+
return this.request.request({
|
|
233
|
+
uri: `${this.locusUrl}/${CONTROLS}`,
|
|
234
|
+
body,
|
|
235
|
+
method: HTTP_VERBS.PATCH,
|
|
236
|
+
});
|
|
162
237
|
}
|
|
163
238
|
|
|
164
239
|
/**
|
|
@@ -168,7 +243,7 @@ export default class ControlsOptionsManager {
|
|
|
168
243
|
* @returns {Promise}
|
|
169
244
|
*/
|
|
170
245
|
public setMuteOnEntry(enabled: boolean): Promise<any> {
|
|
171
|
-
return this.setControls(Setting.muteOnEntry
|
|
246
|
+
return this.setControls({[Setting.muteOnEntry]: enabled});
|
|
172
247
|
}
|
|
173
248
|
|
|
174
249
|
/**
|
|
@@ -178,6 +253,26 @@ export default class ControlsOptionsManager {
|
|
|
178
253
|
* @returns {Promise}
|
|
179
254
|
*/
|
|
180
255
|
public setDisallowUnmute(enabled: boolean): Promise<any> {
|
|
181
|
-
return this.setControls(Setting.disallowUnmute
|
|
256
|
+
return this.setControls({[Setting.disallowUnmute]: enabled});
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
/**
|
|
260
|
+
* @public
|
|
261
|
+
* @param {boolean} mutedEnabled
|
|
262
|
+
* @param {boolean} disallowUnmuteEnabled
|
|
263
|
+
* @param {boolean} muteOnEntryEnabled
|
|
264
|
+
* @memberof ControlsOptionsManager
|
|
265
|
+
* @returns {Promise}
|
|
266
|
+
*/
|
|
267
|
+
public setMuteAll(
|
|
268
|
+
mutedEnabled: boolean,
|
|
269
|
+
disallowUnmuteEnabled: boolean,
|
|
270
|
+
muteOnEntryEnabled: boolean
|
|
271
|
+
): Promise<any> {
|
|
272
|
+
return this.setControls({
|
|
273
|
+
[Setting.muted]: mutedEnabled,
|
|
274
|
+
[Setting.disallowUnmute]: disallowUnmuteEnabled,
|
|
275
|
+
[Setting.muteOnEntry]: muteOnEntryEnabled,
|
|
276
|
+
});
|
|
182
277
|
}
|
|
183
278
|
}
|