@webex/plugin-meetings 2.59.8 → 2.60.0-next.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/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 +41 -0
- package/dist/annotation/constants.js.map +1 -0
- package/dist/annotation/index.js +357 -0
- package/dist/annotation/index.js.map +1 -0
- package/dist/breakouts/breakout.js +215 -0
- package/dist/breakouts/breakout.js.map +1 -0
- package/dist/breakouts/collection.js +22 -0
- package/dist/breakouts/collection.js.map +1 -0
- package/dist/breakouts/edit-lock-error.js +51 -0
- package/dist/breakouts/edit-lock-error.js.map +1 -0
- package/dist/breakouts/events.js +44 -0
- package/dist/breakouts/events.js.map +1 -0
- package/dist/breakouts/index.js +1047 -0
- package/dist/breakouts/index.js.map +1 -0
- package/dist/breakouts/request.js +77 -0
- package/dist/breakouts/request.js.map +1 -0
- package/dist/breakouts/utils.js +64 -0
- package/dist/breakouts/utils.js.map +1 -0
- package/dist/common/browser-detection.js +2 -3
- package/dist/common/browser-detection.js.map +1 -1
- package/dist/common/collection.js +3 -4
- package/dist/common/collection.js.map +1 -1
- package/dist/common/config.js +1 -2
- package/dist/common/config.js.map +1 -1
- package/dist/common/errors/captcha-error.js +1 -2
- package/dist/common/errors/captcha-error.js.map +1 -1
- package/dist/common/errors/intent-to-join.js +1 -2
- package/dist/common/errors/intent-to-join.js.map +1 -1
- package/dist/common/errors/join-meeting.js +1 -2
- package/dist/common/errors/join-meeting.js.map +1 -1
- package/dist/common/errors/media.js +1 -2
- package/dist/common/errors/media.js.map +1 -1
- package/dist/common/errors/no-meeting-info.js +50 -0
- package/dist/common/errors/no-meeting-info.js.map +1 -0
- package/dist/common/errors/parameter.js +3 -4
- package/dist/common/errors/parameter.js.map +1 -1
- package/dist/common/errors/password-error.js +1 -2
- package/dist/common/errors/password-error.js.map +1 -1
- package/dist/common/errors/permission.js +1 -2
- package/dist/common/errors/permission.js.map +1 -1
- package/dist/common/errors/reclaim-host-role-errors.js +154 -0
- package/dist/common/errors/reclaim-host-role-errors.js.map +1 -0
- package/dist/common/errors/reconnection-in-progress.js +1 -2
- package/dist/common/errors/reconnection-in-progress.js.map +1 -1
- package/dist/common/errors/reconnection.js +1 -2
- package/dist/common/errors/reconnection.js.map +1 -1
- package/dist/common/errors/stats.js +1 -2
- package/dist/common/errors/stats.js.map +1 -1
- package/dist/common/errors/webex-errors.js +48 -28
- package/dist/common/errors/webex-errors.js.map +1 -1
- package/dist/common/errors/webex-meetings-error.js +1 -2
- package/dist/common/errors/webex-meetings-error.js.map +1 -1
- package/dist/common/events/events-scope.js +1 -2
- package/dist/common/events/events-scope.js.map +1 -1
- package/dist/common/events/events.js +1 -2
- package/dist/common/events/events.js.map +1 -1
- package/dist/common/events/trigger-proxy.js +1 -2
- package/dist/common/events/trigger-proxy.js.map +1 -1
- package/dist/common/events/util.js +1 -2
- package/dist/common/events/util.js.map +1 -1
- package/dist/common/logs/logger-config.js +1 -2
- package/dist/common/logs/logger-config.js.map +1 -1
- package/dist/common/logs/logger-proxy.js +2 -3
- package/dist/common/logs/logger-proxy.js.map +1 -1
- package/dist/common/logs/request.js +8 -5
- package/dist/common/logs/request.js.map +1 -1
- package/dist/common/queue.js +22 -9
- package/dist/common/queue.js.map +1 -1
- package/dist/config.js +8 -11
- package/dist/config.js.map +1 -1
- package/dist/constants.js +437 -435
- package/dist/constants.js.map +1 -1
- package/dist/controls-options-manager/constants.js +3 -6
- package/dist/controls-options-manager/constants.js.map +1 -1
- package/dist/controls-options-manager/enums.js +14 -6
- package/dist/controls-options-manager/enums.js.map +1 -1
- package/dist/controls-options-manager/index.js +127 -38
- 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 -19
- package/dist/controls-options-manager/util.js.map +1 -1
- package/dist/index.js +116 -4
- package/dist/index.js.map +1 -1
- package/dist/interpretation/collection.js +22 -0
- package/dist/interpretation/collection.js.map +1 -0
- package/dist/interpretation/index.js +365 -0
- package/dist/interpretation/index.js.map +1 -0
- package/dist/interpretation/siLanguage.js +24 -0
- package/dist/interpretation/siLanguage.js.map +1 -0
- package/dist/locus-info/controlsUtils.js +100 -11
- package/dist/locus-info/controlsUtils.js.map +1 -1
- package/dist/locus-info/embeddedAppsUtils.js +3 -4
- package/dist/locus-info/embeddedAppsUtils.js.map +1 -1
- package/dist/locus-info/fullState.js +1 -2
- package/dist/locus-info/fullState.js.map +1 -1
- package/dist/locus-info/hostUtils.js +1 -2
- package/dist/locus-info/hostUtils.js.map +1 -1
- package/dist/locus-info/index.js +425 -84
- package/dist/locus-info/index.js.map +1 -1
- package/dist/locus-info/infoUtils.js +13 -5
- package/dist/locus-info/infoUtils.js.map +1 -1
- package/dist/locus-info/mediaSharesUtils.js +58 -3
- package/dist/locus-info/mediaSharesUtils.js.map +1 -1
- package/dist/locus-info/parser.js +253 -80
- package/dist/locus-info/parser.js.map +1 -1
- package/dist/locus-info/selfUtils.js +97 -13
- package/dist/locus-info/selfUtils.js.map +1 -1
- package/dist/media/index.js +106 -319
- package/dist/media/index.js.map +1 -1
- package/dist/media/properties.js +96 -153
- package/dist/media/properties.js.map +1 -1
- package/dist/media/util.js +1 -22
- package/dist/media/util.js.map +1 -1
- package/dist/mediaQualityMetrics/config.js +498 -493
- package/dist/mediaQualityMetrics/config.js.map +1 -1
- package/dist/meeting/in-meeting-actions.js +90 -3
- package/dist/meeting/in-meeting-actions.js.map +1 -1
- package/dist/meeting/index.js +4578 -2973
- package/dist/meeting/index.js.map +1 -1
- package/dist/meeting/locusMediaRequest.js +291 -0
- package/dist/meeting/locusMediaRequest.js.map +1 -0
- package/dist/meeting/muteState.js +224 -133
- package/dist/meeting/muteState.js.map +1 -1
- package/dist/meeting/request.js +297 -199
- package/dist/meeting/request.js.map +1 -1
- package/dist/meeting/request.type.js +7 -0
- package/dist/meeting/request.type.js.map +1 -0
- package/dist/meeting/state.js +1 -2
- package/dist/meeting/state.js.map +1 -1
- package/dist/meeting/util.js +605 -435
- package/dist/meeting/util.js.map +1 -1
- package/dist/meeting-info/collection.js +3 -4
- package/dist/meeting-info/collection.js.map +1 -1
- package/dist/meeting-info/index.js +74 -7
- package/dist/meeting-info/index.js.map +1 -1
- package/dist/meeting-info/meeting-info-v2.js +197 -63
- package/dist/meeting-info/meeting-info-v2.js.map +1 -1
- package/dist/meeting-info/request.js +1 -2
- package/dist/meeting-info/request.js.map +1 -1
- package/dist/meeting-info/util.js +2 -3
- package/dist/meeting-info/util.js.map +1 -1
- package/dist/meeting-info/utilv2.js +25 -12
- package/dist/meeting-info/utilv2.js.map +1 -1
- package/dist/meetings/collection.js +25 -4
- package/dist/meetings/collection.js.map +1 -1
- package/dist/meetings/index.js +464 -123
- 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 +4 -3
- package/dist/meetings/request.js.map +1 -1
- package/dist/meetings/util.js +107 -6
- package/dist/meetings/util.js.map +1 -1
- package/dist/member/index.js +54 -2
- package/dist/member/index.js.map +1 -1
- package/dist/member/member.types.js +3 -4
- package/dist/member/member.types.js.map +1 -1
- package/dist/member/types.js +23 -0
- package/dist/member/types.js.map +1 -0
- package/dist/member/util.js +131 -29
- package/dist/member/util.js.map +1 -1
- package/dist/members/collection.js +11 -2
- package/dist/members/collection.js.map +1 -1
- package/dist/members/index.js +174 -10
- package/dist/members/index.js.map +1 -1
- package/dist/members/request.js +108 -41
- package/dist/members/request.js.map +1 -1
- package/dist/members/types.js +14 -0
- package/dist/members/types.js.map +1 -0
- package/dist/members/util.js +327 -234
- package/dist/members/util.js.map +1 -1
- package/dist/metrics/constants.js +14 -9
- package/dist/metrics/constants.js.map +1 -1
- package/dist/metrics/index.js +4 -452
- package/dist/metrics/index.js.map +1 -1
- package/dist/multistream/mediaRequestManager.js +344 -0
- package/dist/multistream/mediaRequestManager.js.map +1 -0
- package/dist/multistream/receiveSlot.js +200 -0
- package/dist/multistream/receiveSlot.js.map +1 -0
- package/dist/multistream/receiveSlotManager.js +174 -0
- package/dist/multistream/receiveSlotManager.js.map +1 -0
- package/dist/multistream/remoteMedia.js +268 -0
- package/dist/multistream/remoteMedia.js.map +1 -0
- package/dist/multistream/remoteMediaGroup.js +267 -0
- package/dist/multistream/remoteMediaGroup.js.map +1 -0
- package/dist/multistream/remoteMediaManager.js +1211 -0
- package/dist/multistream/remoteMediaManager.js.map +1 -0
- package/dist/multistream/sendSlotManager.js +236 -0
- package/dist/multistream/sendSlotManager.js.map +1 -0
- package/dist/networkQualityMonitor/index.js +5 -4
- package/dist/networkQualityMonitor/index.js.map +1 -1
- package/dist/personal-meeting-room/index.js +2 -3
- package/dist/personal-meeting-room/index.js.map +1 -1
- package/dist/personal-meeting-room/request.js +2 -3
- package/dist/personal-meeting-room/request.js.map +1 -1
- package/dist/personal-meeting-room/util.js +1 -2
- package/dist/personal-meeting-room/util.js.map +1 -1
- package/dist/reachability/index.js +265 -72
- package/dist/reachability/index.js.map +1 -1
- package/dist/reachability/request.js +18 -10
- package/dist/reachability/request.js.map +1 -1
- package/dist/reactions/constants.js +12 -0
- package/dist/reactions/constants.js.map +1 -0
- package/dist/reactions/reactions.js +4 -6
- package/dist/reactions/reactions.js.map +1 -1
- package/dist/reactions/reactions.type.js +21 -23
- package/dist/reactions/reactions.type.js.map +1 -1
- package/dist/reconnection-manager/index.js +272 -220
- package/dist/reconnection-manager/index.js.map +1 -1
- package/dist/recording-controller/enums.js +4 -5
- package/dist/recording-controller/enums.js.map +1 -1
- package/dist/recording-controller/index.js +57 -46
- package/dist/recording-controller/index.js.map +1 -1
- package/dist/recording-controller/util.js +10 -10
- package/dist/recording-controller/util.js.map +1 -1
- package/dist/roap/index.js +101 -235
- package/dist/roap/index.js.map +1 -1
- package/dist/roap/request.js +126 -180
- package/dist/roap/request.js.map +1 -1
- package/dist/roap/turnDiscovery.js +115 -105
- package/dist/roap/turnDiscovery.js.map +1 -1
- package/dist/rtcMetrics/constants.js +11 -0
- package/dist/rtcMetrics/constants.js.map +1 -0
- package/dist/rtcMetrics/index.js +115 -0
- package/dist/rtcMetrics/index.js.map +1 -0
- package/dist/statsAnalyzer/global.js +2 -85
- package/dist/statsAnalyzer/global.js.map +1 -1
- package/dist/statsAnalyzer/index.js +384 -426
- package/dist/statsAnalyzer/index.js.map +1 -1
- package/dist/statsAnalyzer/mqaUtil.js +114 -80
- package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
- package/dist/transcription/index.js +1 -2
- package/dist/transcription/index.js.map +1 -1
- package/dist/webinar/collection.js +43 -0
- package/dist/webinar/collection.js.map +1 -0
- package/dist/webinar/index.js +68 -0
- package/dist/webinar/index.js.map +1 -0
- package/package.json +34 -24
- 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 +220 -0
- package/src/breakouts/breakout.ts +188 -0
- package/src/breakouts/collection.ts +19 -0
- package/src/breakouts/edit-lock-error.ts +25 -0
- package/src/breakouts/events.ts +56 -0
- package/src/breakouts/index.ts +925 -0
- package/src/breakouts/request.ts +55 -0
- package/src/breakouts/utils.ts +57 -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 +36 -12
- 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 +5 -7
- package/src/constants.ts +263 -91
- package/src/controls-options-manager/enums.ts +11 -1
- 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 +40 -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 +110 -0
- package/src/locus-info/index.ts +449 -61
- package/src/locus-info/infoUtils.ts +14 -2
- package/src/locus-info/mediaSharesUtils.ts +64 -0
- package/src/locus-info/parser.ts +258 -47
- package/src/locus-info/selfUtils.ts +85 -2
- package/src/media/index.ts +153 -370
- package/src/media/properties.ts +106 -136
- package/src/media/util.ts +0 -21
- package/src/mediaQualityMetrics/config.ts +379 -377
- package/src/meeting/in-meeting-actions.ts +168 -0
- package/src/meeting/index.ts +3800 -2491
- package/src/meeting/locusMediaRequest.ts +313 -0
- package/src/meeting/muteState.ts +224 -138
- package/src/meeting/request.ts +207 -127
- package/src/meeting/request.type.ts +13 -0
- package/src/meeting/util.ts +590 -423
- package/src/meeting-info/index.ts +81 -8
- package/src/meeting-info/meeting-info-v2.ts +159 -13
- package/src/meeting-info/util.ts +1 -1
- package/src/meeting-info/utilv2.ts +22 -9
- package/src/meetings/collection.ts +20 -0
- package/src/meetings/index.ts +466 -124
- package/src/meetings/meetings.types.ts +12 -0
- package/src/meetings/request.ts +2 -0
- package/src/meetings/util.ts +116 -5
- package/src/member/index.ts +52 -1
- package/src/member/types.ts +38 -0
- package/src/member/util.ts +139 -28
- package/src/members/collection.ts +8 -0
- package/src/members/index.ts +196 -7
- 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 +12 -6
- package/src/metrics/index.ts +1 -471
- package/src/multistream/mediaRequestManager.ts +440 -0
- package/src/multistream/receiveSlot.ts +184 -0
- package/src/multistream/receiveSlotManager.ts +166 -0
- package/src/multistream/remoteMedia.ts +254 -0
- package/src/multistream/remoteMediaGroup.ts +284 -0
- package/src/multistream/remoteMediaManager.ts +1145 -0
- package/src/multistream/sendSlotManager.ts +170 -0
- package/src/networkQualityMonitor/index.ts +6 -6
- package/src/reachability/index.ts +238 -45
- package/src/reachability/request.ts +17 -8
- package/src/reactions/constants.ts +4 -0
- package/src/reactions/reactions.ts +4 -4
- package/src/reactions/reactions.type.ts +30 -4
- package/src/reconnection-manager/index.ts +124 -107
- package/src/recording-controller/index.ts +20 -3
- package/src/recording-controller/util.ts +26 -9
- package/src/roap/index.ts +98 -241
- package/src/roap/request.ts +74 -148
- package/src/roap/turnDiscovery.ts +62 -56
- package/src/rtcMetrics/constants.ts +3 -0
- package/src/rtcMetrics/index.ts +100 -0
- package/src/statsAnalyzer/global.ts +1 -84
- package/src/statsAnalyzer/index.ts +442 -523
- package/src/statsAnalyzer/mqaUtil.ts +105 -103
- package/src/webinar/collection.ts +31 -0
- package/src/webinar/index.ts +62 -0
- package/test/integration/spec/converged-space-meetings.js +233 -0
- package/test/integration/spec/journey.js +320 -264
- package/test/integration/spec/space-meeting.js +77 -4
- package/test/unit/spec/annotation/index.ts +418 -0
- package/test/unit/spec/breakouts/breakout.ts +237 -0
- package/test/unit/spec/breakouts/collection.ts +15 -0
- 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 +1790 -0
- 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 +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/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 +323 -30
- package/test/unit/spec/locus-info/index.js +1390 -16
- package/test/unit/spec/locus-info/infoUtils.js +54 -16
- package/test/unit/spec/locus-info/lib/SeqCmp.json +16 -0
- package/test/unit/spec/locus-info/lib/selfConstant.js +48 -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/selfUtils.js +275 -0
- package/test/unit/spec/media/index.ts +274 -0
- package/test/unit/spec/media/properties.ts +75 -84
- package/test/unit/spec/meeting/in-meeting-actions.ts +82 -0
- package/test/unit/spec/meeting/index.js +7395 -3171
- package/test/unit/spec/meeting/locusMediaRequest.ts +442 -0
- package/test/unit/spec/meeting/muteState.js +407 -212
- package/test/unit/spec/meeting/request.js +512 -42
- package/test/unit/spec/meeting/utils.js +741 -24
- package/test/unit/spec/meeting-info/index.js +300 -0
- package/test/unit/spec/meeting-info/meetinginfov2.js +500 -6
- 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 +1012 -209
- package/test/unit/spec/meetings/utils.js +202 -2
- package/test/unit/spec/member/index.js +38 -8
- package/test/unit/spec/member/util.js +528 -27
- package/test/unit/spec/members/index.js +597 -3
- 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 +1418 -0
- package/test/unit/spec/multistream/receiveSlot.ts +163 -0
- package/test/unit/spec/multistream/receiveSlotManager.ts +203 -0
- package/test/unit/spec/multistream/remoteMedia.ts +255 -0
- package/test/unit/spec/multistream/remoteMediaGroup.ts +662 -0
- package/test/unit/spec/multistream/remoteMediaManager.ts +1924 -0
- package/test/unit/spec/multistream/sendSlotManager.ts +242 -0
- package/test/unit/spec/networkQualityMonitor/index.js +4 -4
- package/test/unit/spec/reachability/index.ts +598 -24
- package/test/unit/spec/reachability/request.js +68 -0
- package/test/unit/spec/reconnection-manager/index.js +130 -22
- package/test/unit/spec/recording-controller/index.js +293 -218
- package/test/unit/spec/recording-controller/util.js +223 -96
- package/test/unit/spec/roap/index.ts +200 -76
- package/test/unit/spec/roap/request.ts +232 -0
- package/test/unit/spec/roap/turnDiscovery.ts +86 -48
- package/test/unit/spec/rtcMetrics/index.ts +73 -0
- package/test/unit/spec/stats-analyzer/index.js +181 -177
- package/test/unit/spec/webinar/collection.ts +13 -0
- package/test/unit/spec/webinar/index.ts +60 -0
- 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 +7 -3
- package/dist/common/browser-detection.d.ts +0 -9
- package/dist/common/collection.d.ts +0 -48
- package/dist/common/config.d.ts +0 -2
- package/dist/common/errors/captcha-error.d.ts +0 -15
- package/dist/common/errors/intent-to-join.d.ts +0 -16
- package/dist/common/errors/join-meeting.d.ts +0 -17
- package/dist/common/errors/media.d.ts +0 -15
- package/dist/common/errors/parameter.d.ts +0 -15
- package/dist/common/errors/password-error.d.ts +0 -15
- package/dist/common/errors/permission.d.ts +0 -14
- package/dist/common/errors/reconnection-in-progress.d.ts +0 -9
- package/dist/common/errors/reconnection.d.ts +0 -15
- package/dist/common/errors/stats.d.ts +0 -15
- package/dist/common/errors/webex-errors.d.ts +0 -81
- package/dist/common/errors/webex-meetings-error.d.ts +0 -20
- package/dist/common/events/events-scope.d.ts +0 -17
- package/dist/common/events/events.d.ts +0 -12
- package/dist/common/events/trigger-proxy.d.ts +0 -2
- package/dist/common/events/util.d.ts +0 -2
- package/dist/common/logs/logger-config.d.ts +0 -2
- package/dist/common/logs/logger-proxy.d.ts +0 -2
- package/dist/common/logs/request.d.ts +0 -34
- package/dist/common/queue.d.ts +0 -32
- package/dist/config.d.ts +0 -73
- package/dist/constants.d.ts +0 -926
- package/dist/controls-options-manager/constants.d.ts +0 -4
- package/dist/controls-options-manager/enums.d.ts +0 -5
- package/dist/controls-options-manager/index.d.ts +0 -120
- package/dist/controls-options-manager/util.d.ts +0 -7
- package/dist/index.d.ts +0 -4
- package/dist/locus-info/controlsUtils.d.ts +0 -2
- package/dist/locus-info/embeddedAppsUtils.d.ts +0 -2
- package/dist/locus-info/fullState.d.ts +0 -2
- package/dist/locus-info/hostUtils.d.ts +0 -2
- package/dist/locus-info/index.d.ts +0 -269
- package/dist/locus-info/infoUtils.d.ts +0 -2
- package/dist/locus-info/mediaSharesUtils.d.ts +0 -2
- package/dist/locus-info/parser.d.ts +0 -212
- package/dist/locus-info/selfUtils.d.ts +0 -2
- package/dist/media/index.d.ts +0 -32
- package/dist/media/properties.d.ts +0 -108
- package/dist/media/util.d.ts +0 -2
- package/dist/mediaQualityMetrics/config.d.ts +0 -233
- package/dist/meeting/effectsState.d.ts +0 -42
- package/dist/meeting/effectsState.js +0 -260
- package/dist/meeting/effectsState.js.map +0 -1
- package/dist/meeting/in-meeting-actions.d.ts +0 -79
- package/dist/meeting/index.d.ts +0 -1622
- package/dist/meeting/muteState.d.ts +0 -116
- package/dist/meeting/request.d.ts +0 -255
- package/dist/meeting/state.d.ts +0 -9
- package/dist/meeting/util.d.ts +0 -2
- package/dist/meeting-info/collection.d.ts +0 -20
- package/dist/meeting-info/index.d.ts +0 -57
- package/dist/meeting-info/meeting-info-v2.d.ts +0 -93
- package/dist/meeting-info/request.d.ts +0 -22
- package/dist/meeting-info/util.d.ts +0 -2
- package/dist/meeting-info/utilv2.d.ts +0 -2
- package/dist/meetings/collection.d.ts +0 -23
- package/dist/meetings/index.d.ts +0 -296
- package/dist/meetings/request.d.ts +0 -27
- package/dist/meetings/util.d.ts +0 -18
- package/dist/member/index.d.ts +0 -147
- package/dist/member/member.types.d.ts +0 -11
- package/dist/member/util.d.ts +0 -2
- package/dist/members/collection.d.ts +0 -24
- package/dist/members/index.d.ts +0 -298
- package/dist/members/request.d.ts +0 -50
- package/dist/members/util.d.ts +0 -2
- package/dist/metrics/config.d.ts +0 -169
- package/dist/metrics/config.js +0 -289
- package/dist/metrics/config.js.map +0 -1
- package/dist/metrics/constants.d.ts +0 -59
- package/dist/metrics/index.d.ts +0 -152
- package/dist/networkQualityMonitor/index.d.ts +0 -70
- package/dist/peer-connection-manager/index.d.ts +0 -6
- package/dist/peer-connection-manager/index.js +0 -671
- package/dist/peer-connection-manager/index.js.map +0 -1
- package/dist/peer-connection-manager/util.d.ts +0 -6
- package/dist/peer-connection-manager/util.js +0 -110
- package/dist/peer-connection-manager/util.js.map +0 -1
- package/dist/personal-meeting-room/index.d.ts +0 -47
- package/dist/personal-meeting-room/request.d.ts +0 -14
- package/dist/personal-meeting-room/util.d.ts +0 -2
- package/dist/reachability/index.d.ts +0 -139
- package/dist/reachability/request.d.ts +0 -35
- package/dist/reactions/reactions.d.ts +0 -4
- package/dist/reactions/reactions.type.d.ts +0 -32
- package/dist/reconnection-manager/index.d.ts +0 -112
- package/dist/recording-controller/enums.d.ts +0 -7
- package/dist/recording-controller/index.d.ts +0 -193
- package/dist/recording-controller/util.d.ts +0 -13
- package/dist/roap/collection.d.ts +0 -10
- package/dist/roap/collection.js +0 -63
- package/dist/roap/collection.js.map +0 -1
- package/dist/roap/handler.d.ts +0 -47
- package/dist/roap/handler.js +0 -279
- package/dist/roap/handler.js.map +0 -1
- package/dist/roap/index.d.ts +0 -116
- package/dist/roap/request.d.ts +0 -35
- package/dist/roap/state.d.ts +0 -9
- package/dist/roap/state.js +0 -127
- package/dist/roap/state.js.map +0 -1
- package/dist/roap/turnDiscovery.d.ts +0 -81
- package/dist/roap/util.d.ts +0 -2
- package/dist/roap/util.js +0 -76
- package/dist/roap/util.js.map +0 -1
- package/dist/statsAnalyzer/global.d.ts +0 -118
- package/dist/statsAnalyzer/index.d.ts +0 -193
- package/dist/statsAnalyzer/mqaUtil.d.ts +0 -22
- package/dist/transcription/index.d.ts +0 -64
- package/src/index.js +0 -15
- package/src/meeting/effectsState.ts +0 -209
- package/src/metrics/config.ts +0 -485
- package/src/peer-connection-manager/index.ts +0 -847
- package/src/peer-connection-manager/util.ts +0 -119
- package/src/roap/collection.ts +0 -62
- package/src/roap/handler.ts +0 -294
- package/src/roap/state.ts +0 -156
- package/src/roap/util.ts +0 -100
- package/test/unit/spec/meeting/effectsState.js +0 -281
- package/test/unit/spec/peerconnection-manager/index.js +0 -218
- package/test/unit/spec/peerconnection-manager/utils.js +0 -49
- package/test/unit/spec/peerconnection-manager/utils.test-fixtures.ts +0 -388
- package/test/unit/spec/roap/util.js +0 -30
package/src/members/index.ts
CHANGED
|
@@ -5,15 +5,31 @@ import {isEmpty} from 'lodash';
|
|
|
5
5
|
// @ts-ignore
|
|
6
6
|
import {StatelessWebexPlugin} from '@webex/webex-core';
|
|
7
7
|
|
|
8
|
-
import {
|
|
8
|
+
import {
|
|
9
|
+
MEETINGS,
|
|
10
|
+
EVENT_TRIGGERS,
|
|
11
|
+
FLOOR_ACTION,
|
|
12
|
+
CONTENT,
|
|
13
|
+
WHITEBOARD,
|
|
14
|
+
ASSIGN_ROLES_ERROR_CODES,
|
|
15
|
+
} from '../constants';
|
|
9
16
|
import Trigger from '../common/events/trigger-proxy';
|
|
10
17
|
import Member from '../member';
|
|
11
18
|
import LoggerProxy from '../common/logs/logger-proxy';
|
|
12
19
|
import ParameterError from '../common/errors/parameter';
|
|
20
|
+
import {
|
|
21
|
+
ReclaimHostEmptyWrongKeyError,
|
|
22
|
+
ReclaimHostIsHostAlreadyError,
|
|
23
|
+
ReclaimHostNotAllowedError,
|
|
24
|
+
ReclaimHostNotSupportedError,
|
|
25
|
+
} from '../common/errors/reclaim-host-role-errors';
|
|
13
26
|
|
|
14
27
|
import MembersCollection from './collection';
|
|
15
28
|
import MembersRequest from './request';
|
|
16
29
|
import MembersUtil from './util';
|
|
30
|
+
import {ReceiveSlotManager} from '../multistream/receiveSlotManager';
|
|
31
|
+
import {MediaRequestManager} from '../multistream/mediaRequestManager';
|
|
32
|
+
import {ServerRoleShape} from './types';
|
|
17
33
|
|
|
18
34
|
/**
|
|
19
35
|
* Members Update Event
|
|
@@ -67,6 +83,12 @@ export default class Members extends StatelessWebexPlugin {
|
|
|
67
83
|
mediaShareWhiteboardId: any;
|
|
68
84
|
membersCollection: any;
|
|
69
85
|
membersRequest: any;
|
|
86
|
+
receiveSlotManager: ReceiveSlotManager;
|
|
87
|
+
mediaRequestManagers: {
|
|
88
|
+
audio: MediaRequestManager;
|
|
89
|
+
video: MediaRequestManager;
|
|
90
|
+
};
|
|
91
|
+
|
|
70
92
|
recordingId: any;
|
|
71
93
|
selfId: any;
|
|
72
94
|
type: any;
|
|
@@ -88,8 +110,14 @@ export default class Members extends StatelessWebexPlugin {
|
|
|
88
110
|
* @private
|
|
89
111
|
* @memberof Members
|
|
90
112
|
*/
|
|
113
|
+
|
|
91
114
|
// @ts-ignore
|
|
92
|
-
this.membersRequest = new MembersRequest(
|
|
115
|
+
this.membersRequest = new MembersRequest(
|
|
116
|
+
{
|
|
117
|
+
meeting: attrs.meeting,
|
|
118
|
+
},
|
|
119
|
+
options
|
|
120
|
+
);
|
|
93
121
|
/**
|
|
94
122
|
* The Members Collection cache
|
|
95
123
|
* @instance
|
|
@@ -160,6 +188,18 @@ export default class Members extends StatelessWebexPlugin {
|
|
|
160
188
|
* @memberof Members
|
|
161
189
|
*/
|
|
162
190
|
this.recordingId = null;
|
|
191
|
+
|
|
192
|
+
/**
|
|
193
|
+
* reference to a ReceiveSlotManager instance (for multistream)
|
|
194
|
+
* @private
|
|
195
|
+
*/
|
|
196
|
+
this.receiveSlotManager = attrs.receiveSlotManager;
|
|
197
|
+
|
|
198
|
+
/**
|
|
199
|
+
* reference to a MediaRequestManager instance that manages main video requests (for multistream)
|
|
200
|
+
* @private
|
|
201
|
+
*/
|
|
202
|
+
this.mediaRequestManagers = attrs.mediaRequestManagers;
|
|
163
203
|
}
|
|
164
204
|
|
|
165
205
|
/**
|
|
@@ -262,6 +302,25 @@ export default class Members extends StatelessWebexPlugin {
|
|
|
262
302
|
);
|
|
263
303
|
}
|
|
264
304
|
|
|
305
|
+
/**
|
|
306
|
+
* clear member collection
|
|
307
|
+
* @returns {void}
|
|
308
|
+
* @private
|
|
309
|
+
* @memberof Members
|
|
310
|
+
*/
|
|
311
|
+
clearMembers() {
|
|
312
|
+
this.membersCollection.reset();
|
|
313
|
+
Trigger.trigger(
|
|
314
|
+
this,
|
|
315
|
+
{
|
|
316
|
+
file: 'members',
|
|
317
|
+
function: 'clearMembers',
|
|
318
|
+
},
|
|
319
|
+
EVENT_TRIGGERS.MEMBERS_CLEAR,
|
|
320
|
+
{}
|
|
321
|
+
);
|
|
322
|
+
}
|
|
323
|
+
|
|
265
324
|
/**
|
|
266
325
|
* when new participant updates come in, both delta and full participants, update them in members collection
|
|
267
326
|
* delta object in the event will have {updated, added} and full will be the full membersCollection
|
|
@@ -271,11 +330,16 @@ export default class Members extends StatelessWebexPlugin {
|
|
|
271
330
|
* @private
|
|
272
331
|
* @memberof Members
|
|
273
332
|
*/
|
|
274
|
-
locusParticipantsUpdate(payload: {participants: object}) {
|
|
333
|
+
locusParticipantsUpdate(payload: {participants: object; isReplace?: boolean}) {
|
|
275
334
|
if (payload) {
|
|
335
|
+
if (payload.isReplace) {
|
|
336
|
+
this.clearMembers();
|
|
337
|
+
}
|
|
276
338
|
const delta = this.handleLocusInfoUpdatedParticipants(payload);
|
|
277
339
|
const full = this.handleMembersUpdate(delta); // SDK should propagate the full list for both delta and non delta updates
|
|
278
340
|
|
|
341
|
+
this.receiveSlotManager?.updateMemberIds();
|
|
342
|
+
|
|
279
343
|
Trigger.trigger(
|
|
280
344
|
this,
|
|
281
345
|
{
|
|
@@ -286,6 +350,7 @@ export default class Members extends StatelessWebexPlugin {
|
|
|
286
350
|
{
|
|
287
351
|
delta,
|
|
288
352
|
full,
|
|
353
|
+
isReplace: !!payload.isReplace,
|
|
289
354
|
}
|
|
290
355
|
);
|
|
291
356
|
}
|
|
@@ -711,15 +776,22 @@ export default class Members extends StatelessWebexPlugin {
|
|
|
711
776
|
/**
|
|
712
777
|
* Admits waiting members (invited guests to meeting)
|
|
713
778
|
* @param {Array} memberIds
|
|
779
|
+
* @param {Object} sessionLocusUrls: {authorizingLocusUrl, mainLocusUrl}
|
|
714
780
|
* @returns {Promise}
|
|
715
781
|
* @public
|
|
716
782
|
* @memberof Members
|
|
717
783
|
*/
|
|
718
|
-
public admitMembers(
|
|
784
|
+
public admitMembers(
|
|
785
|
+
memberIds: Array<any>,
|
|
786
|
+
sessionLocusUrls?: {authorizingLocusUrl: string; mainLocusUrl: string}
|
|
787
|
+
) {
|
|
719
788
|
if (isEmpty(memberIds)) {
|
|
720
789
|
return Promise.reject(new ParameterError('No member ids provided to admit.'));
|
|
721
790
|
}
|
|
722
|
-
const options =
|
|
791
|
+
const options = {
|
|
792
|
+
sessionLocusUrls,
|
|
793
|
+
...MembersUtil.generateAdmitMemberOptions(memberIds, this.locusUrl),
|
|
794
|
+
};
|
|
723
795
|
|
|
724
796
|
return this.membersRequest.admitMember(options);
|
|
725
797
|
}
|
|
@@ -751,11 +823,12 @@ export default class Members extends StatelessWebexPlugin {
|
|
|
751
823
|
* Audio mutes another member in a meeting
|
|
752
824
|
* @param {String} memberId
|
|
753
825
|
* @param {boolean} [mute] default true
|
|
826
|
+
* @param {boolean} [isAudio] default true
|
|
754
827
|
* @returns {Promise}
|
|
755
828
|
* @public
|
|
756
829
|
* @memberof Members
|
|
757
830
|
*/
|
|
758
|
-
public muteMember(memberId: string, mute = true) {
|
|
831
|
+
public muteMember(memberId: string, mute = true, isAudio = true) {
|
|
759
832
|
if (!this.locusUrl) {
|
|
760
833
|
return Promise.reject(
|
|
761
834
|
new ParameterError(
|
|
@@ -768,11 +841,51 @@ export default class Members extends StatelessWebexPlugin {
|
|
|
768
841
|
new ParameterError('The member id must be defined to mute the member.')
|
|
769
842
|
);
|
|
770
843
|
}
|
|
771
|
-
const options = MembersUtil.generateMuteMemberOptions(memberId, mute, this.locusUrl);
|
|
844
|
+
const options = MembersUtil.generateMuteMemberOptions(memberId, mute, this.locusUrl, isAudio);
|
|
772
845
|
|
|
773
846
|
return this.membersRequest.muteMember(options);
|
|
774
847
|
}
|
|
775
848
|
|
|
849
|
+
/**
|
|
850
|
+
* Assign role(s) to a member in the meeting
|
|
851
|
+
* @param {String} memberId
|
|
852
|
+
* @param {[ServerRoleShape]} roles - to assign an array of roles
|
|
853
|
+
* @returns {Promise}
|
|
854
|
+
* @public
|
|
855
|
+
* @memberof Members
|
|
856
|
+
*/
|
|
857
|
+
public assignRoles(memberId: string, roles: Array<ServerRoleShape>) {
|
|
858
|
+
if (!this.locusUrl) {
|
|
859
|
+
return Promise.reject(
|
|
860
|
+
new ParameterError(
|
|
861
|
+
'The associated locus url for this meetings members object must be defined.'
|
|
862
|
+
)
|
|
863
|
+
);
|
|
864
|
+
}
|
|
865
|
+
if (!memberId) {
|
|
866
|
+
return Promise.reject(
|
|
867
|
+
new ParameterError('The member id must be defined to assign the roles to a member.')
|
|
868
|
+
);
|
|
869
|
+
}
|
|
870
|
+
const options = MembersUtil.generateRoleAssignmentMemberOptions(memberId, roles, this.locusUrl);
|
|
871
|
+
|
|
872
|
+
return this.membersRequest.assignRolesMember(options).catch((error: any) => {
|
|
873
|
+
const errorCode = error.body?.errorCode;
|
|
874
|
+
switch (errorCode) {
|
|
875
|
+
case ASSIGN_ROLES_ERROR_CODES.ReclaimHostNotSupportedErrorCode:
|
|
876
|
+
return Promise.reject(new ReclaimHostNotSupportedError());
|
|
877
|
+
case ASSIGN_ROLES_ERROR_CODES.ReclaimHostNotAllowedErrorCode:
|
|
878
|
+
return Promise.reject(new ReclaimHostNotAllowedError());
|
|
879
|
+
case ASSIGN_ROLES_ERROR_CODES.ReclaimHostEmptyWrongKeyErrorCode:
|
|
880
|
+
return Promise.reject(new ReclaimHostEmptyWrongKeyError());
|
|
881
|
+
case ASSIGN_ROLES_ERROR_CODES.ReclaimHostIsHostAlreadyErrorCode:
|
|
882
|
+
return Promise.reject(new ReclaimHostIsHostAlreadyError());
|
|
883
|
+
default:
|
|
884
|
+
return Promise.reject(error);
|
|
885
|
+
}
|
|
886
|
+
});
|
|
887
|
+
}
|
|
888
|
+
|
|
776
889
|
/**
|
|
777
890
|
* Raise or lower the hand of a member in a meeting
|
|
778
891
|
* @param {String} memberId
|
|
@@ -897,4 +1010,80 @@ export default class Members extends StatelessWebexPlugin {
|
|
|
897
1010
|
)
|
|
898
1011
|
);
|
|
899
1012
|
}
|
|
1013
|
+
|
|
1014
|
+
/** Finds a member that has any device with a csi matching provided value
|
|
1015
|
+
*
|
|
1016
|
+
* @param {number} csi
|
|
1017
|
+
* @returns {Member}
|
|
1018
|
+
*/
|
|
1019
|
+
findMemberByCsi(csi) {
|
|
1020
|
+
return Object.values(this.membersCollection.getAll()).find((member) =>
|
|
1021
|
+
// @ts-ignore
|
|
1022
|
+
member.participant?.devices?.find((device) =>
|
|
1023
|
+
device.csis?.find((memberCsi) => memberCsi === csi)
|
|
1024
|
+
)
|
|
1025
|
+
);
|
|
1026
|
+
}
|
|
1027
|
+
|
|
1028
|
+
/**
|
|
1029
|
+
* Returns an array of a member's CSIs matching the mediaType and mediaContent
|
|
1030
|
+
*
|
|
1031
|
+
* @param {string} memberId
|
|
1032
|
+
* @param {string} mediaType 'audio' or 'video'
|
|
1033
|
+
* @param {string} mediaContent 'main' or 'slides'
|
|
1034
|
+
* @returns {Member}
|
|
1035
|
+
*/
|
|
1036
|
+
getCsisForMember(memberId, mediaType = 'video', mediaContent = 'main') {
|
|
1037
|
+
const csis = [];
|
|
1038
|
+
|
|
1039
|
+
this.membersCollection.get(memberId)?.participant?.devices?.forEach((device) => {
|
|
1040
|
+
if (device.mediaSessions) {
|
|
1041
|
+
const deviceCsis = device.mediaSessions
|
|
1042
|
+
?.filter(
|
|
1043
|
+
(mediaSession) =>
|
|
1044
|
+
mediaSession.mediaType === mediaType && mediaSession.mediaContent === mediaContent
|
|
1045
|
+
)
|
|
1046
|
+
.map((mediaSession) => mediaSession.csi);
|
|
1047
|
+
|
|
1048
|
+
csis.push(...deviceCsis);
|
|
1049
|
+
}
|
|
1050
|
+
});
|
|
1051
|
+
|
|
1052
|
+
return csis;
|
|
1053
|
+
}
|
|
1054
|
+
|
|
1055
|
+
/**
|
|
1056
|
+
* Edit display name of participants in a meeting
|
|
1057
|
+
* @param {string} memberId - id of the participant who is receiving request
|
|
1058
|
+
* @param {string} requestingParticipantId - id of the participant who is sending request (optional)
|
|
1059
|
+
* @param {string} [alias] - alias name
|
|
1060
|
+
* @returns {Promise}
|
|
1061
|
+
* @public
|
|
1062
|
+
* @memberof Members
|
|
1063
|
+
*/
|
|
1064
|
+
public editDisplayName(memberId: string, requestingParticipantId: string, alias: string) {
|
|
1065
|
+
if (!this.locusUrl) {
|
|
1066
|
+
return Promise.reject(
|
|
1067
|
+
new ParameterError(
|
|
1068
|
+
'The associated locus url for this meetings members object must be defined.'
|
|
1069
|
+
)
|
|
1070
|
+
);
|
|
1071
|
+
}
|
|
1072
|
+
if (!memberId) {
|
|
1073
|
+
return Promise.reject(
|
|
1074
|
+
new ParameterError('The member id must be defined to edit display name of the member.')
|
|
1075
|
+
);
|
|
1076
|
+
}
|
|
1077
|
+
|
|
1078
|
+
const {locusUrl} = this;
|
|
1079
|
+
|
|
1080
|
+
const options = MembersUtil.generateEditDisplayNameMemberOptions(
|
|
1081
|
+
memberId,
|
|
1082
|
+
requestingParticipantId,
|
|
1083
|
+
alias,
|
|
1084
|
+
locusUrl
|
|
1085
|
+
);
|
|
1086
|
+
|
|
1087
|
+
return this.membersRequest.editDisplayNameMember(options);
|
|
1088
|
+
}
|
|
900
1089
|
}
|
package/src/members/request.ts
CHANGED
|
@@ -5,12 +5,26 @@ import {MEETINGS} from '../constants';
|
|
|
5
5
|
import ParameterError from '../common/errors/parameter';
|
|
6
6
|
|
|
7
7
|
import MembersUtil from './util';
|
|
8
|
+
import MeetingUtil from '../meeting/util';
|
|
8
9
|
|
|
9
10
|
/**
|
|
10
11
|
* @class MembersRequest
|
|
11
12
|
*/
|
|
12
13
|
export default class MembersRequest extends StatelessWebexPlugin {
|
|
13
14
|
namespace = MEETINGS;
|
|
15
|
+
locusDeltaRequest: (options: object) => Promise<any>;
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Constructor
|
|
19
|
+
* @param {Object} attrs
|
|
20
|
+
* @param {Object} options
|
|
21
|
+
*/
|
|
22
|
+
constructor(attrs: {meeting: any}, options: object) {
|
|
23
|
+
const {meeting, ...otherAttrs} = attrs;
|
|
24
|
+
super(otherAttrs, options);
|
|
25
|
+
|
|
26
|
+
this.locusDeltaRequest = MeetingUtil.generateLocusDeltaRequest(meeting);
|
|
27
|
+
}
|
|
14
28
|
|
|
15
29
|
/**
|
|
16
30
|
*
|
|
@@ -36,8 +50,7 @@ export default class MembersRequest extends StatelessWebexPlugin {
|
|
|
36
50
|
}
|
|
37
51
|
const requestParams = MembersUtil.getAddMemberRequestParams(options);
|
|
38
52
|
|
|
39
|
-
|
|
40
|
-
return this.request(requestParams);
|
|
53
|
+
return this.locusDeltaRequest(requestParams);
|
|
41
54
|
}
|
|
42
55
|
|
|
43
56
|
/**
|
|
@@ -55,10 +68,16 @@ export default class MembersRequest extends StatelessWebexPlugin {
|
|
|
55
68
|
}
|
|
56
69
|
const requestParams = MembersUtil.getAdmitMemberRequestParams(options);
|
|
57
70
|
|
|
58
|
-
|
|
59
|
-
return this.request(requestParams);
|
|
71
|
+
return this.locusDeltaRequest(requestParams);
|
|
60
72
|
}
|
|
61
73
|
|
|
74
|
+
/**
|
|
75
|
+
* Sends a request to remove a member
|
|
76
|
+
* @param {Object} options
|
|
77
|
+
* @param {String} options.locusUrl
|
|
78
|
+
* @param {String} options.memberId ID of member
|
|
79
|
+
* @returns {Promise}
|
|
80
|
+
*/
|
|
62
81
|
removeMember(options) {
|
|
63
82
|
if (!options || !options.locusUrl || !options.memberId) {
|
|
64
83
|
throw new ParameterError(
|
|
@@ -68,10 +87,16 @@ export default class MembersRequest extends StatelessWebexPlugin {
|
|
|
68
87
|
|
|
69
88
|
const requestParams = MembersUtil.getRemoveMemberRequestParams(options);
|
|
70
89
|
|
|
71
|
-
|
|
72
|
-
return this.request(requestParams);
|
|
90
|
+
return this.locusDeltaRequest(requestParams);
|
|
73
91
|
}
|
|
74
92
|
|
|
93
|
+
/**
|
|
94
|
+
* Sends a request to mute a member
|
|
95
|
+
* @param {Object} options
|
|
96
|
+
* @param {String} options.locusUrl
|
|
97
|
+
* @param {String} options.memberId ID of member
|
|
98
|
+
* @returns {Promise}
|
|
99
|
+
*/
|
|
75
100
|
muteMember(options) {
|
|
76
101
|
if (!options || !options.locusUrl || !options.memberId) {
|
|
77
102
|
throw new ParameterError(
|
|
@@ -82,9 +107,35 @@ export default class MembersRequest extends StatelessWebexPlugin {
|
|
|
82
107
|
const requestParams = MembersUtil.getMuteMemberRequestParams(options);
|
|
83
108
|
|
|
84
109
|
// @ts-ignore
|
|
85
|
-
return this.
|
|
110
|
+
return this.locusDeltaRequest(requestParams);
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
/**
|
|
114
|
+
* Sends a request to the DTMF endpoint to send tones
|
|
115
|
+
* @param {Object} options
|
|
116
|
+
* @param {String} options.locusUrl
|
|
117
|
+
* @param {String} options.memberId ID of PSTN user
|
|
118
|
+
* @returns {Promise}
|
|
119
|
+
*/
|
|
120
|
+
assignRolesMember(options: any) {
|
|
121
|
+
if (!options || !options.locusUrl || !options.memberId) {
|
|
122
|
+
throw new ParameterError(
|
|
123
|
+
'memberId must be defined, and the associated locus url for this meeting object must be defined.'
|
|
124
|
+
);
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
const requestParams = MembersUtil.getRoleAssignmentMemberRequestParams(options);
|
|
128
|
+
|
|
129
|
+
return this.locusDeltaRequest(requestParams);
|
|
86
130
|
}
|
|
87
131
|
|
|
132
|
+
/**
|
|
133
|
+
* Sends a request to raise or lower a member's hand
|
|
134
|
+
* @param {Object} options
|
|
135
|
+
* @param {String} options.locusUrl
|
|
136
|
+
* @param {String} options.memberId ID of member
|
|
137
|
+
* @returns {Promise}
|
|
138
|
+
*/
|
|
88
139
|
raiseOrLowerHandMember(options) {
|
|
89
140
|
if (!options || !options.locusUrl || !options.memberId) {
|
|
90
141
|
throw new ParameterError(
|
|
@@ -94,10 +145,16 @@ export default class MembersRequest extends StatelessWebexPlugin {
|
|
|
94
145
|
|
|
95
146
|
const requestParams = MembersUtil.getRaiseHandMemberRequestParams(options);
|
|
96
147
|
|
|
97
|
-
|
|
98
|
-
return this.request(requestParams);
|
|
148
|
+
return this.locusDeltaRequest(requestParams);
|
|
99
149
|
}
|
|
100
150
|
|
|
151
|
+
/**
|
|
152
|
+
* Sends a request to lower all hands
|
|
153
|
+
* @param {Object} options
|
|
154
|
+
* @param {String} options.locusUrl
|
|
155
|
+
* @param {String} options.requestingParticipantId ID of requesting participant
|
|
156
|
+
* @returns {Promise}
|
|
157
|
+
*/
|
|
101
158
|
lowerAllHandsMember(options) {
|
|
102
159
|
if (!options || !options.locusUrl || !options.requestingParticipantId) {
|
|
103
160
|
throw new ParameterError(
|
|
@@ -107,10 +164,36 @@ export default class MembersRequest extends StatelessWebexPlugin {
|
|
|
107
164
|
|
|
108
165
|
const requestParams = MembersUtil.getLowerAllHandsMemberRequestParams(options);
|
|
109
166
|
|
|
110
|
-
|
|
111
|
-
|
|
167
|
+
return this.locusDeltaRequest(requestParams);
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
/**
|
|
171
|
+
*
|
|
172
|
+
* @param {Object} options with format of {locusUrl: string, requestingParticipantId: string}
|
|
173
|
+
* @returns {Promise}
|
|
174
|
+
* @throws {Error} if the options are not valid and complete, must have requestingParticipantId AND locusUrl
|
|
175
|
+
* @memberof MembersRequest
|
|
176
|
+
*/
|
|
177
|
+
editDisplayNameMember(options: {locusUrl: string; requestingParticipantId: string}) {
|
|
178
|
+
if (!options || !options.locusUrl || !options.requestingParticipantId) {
|
|
179
|
+
throw new ParameterError(
|
|
180
|
+
'requestingParticipantId must be defined, and the associated locus url for this meeting object must be defined.'
|
|
181
|
+
);
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
const requestParams = MembersUtil.editDisplayNameMemberRequestParams(options);
|
|
185
|
+
|
|
186
|
+
return this.locusDeltaRequest(requestParams);
|
|
112
187
|
}
|
|
113
188
|
|
|
189
|
+
/**
|
|
190
|
+
* Sends a request to raise or lower a member's hand
|
|
191
|
+
* @param {Object} options
|
|
192
|
+
* @param {String} options.locusUrl
|
|
193
|
+
* @param {String} options.memberId ID of member
|
|
194
|
+
* @param {String} options.moderator ID of moderator
|
|
195
|
+
* @returns {Promise}
|
|
196
|
+
*/
|
|
114
197
|
transferHostToMember(options) {
|
|
115
198
|
if (!options || !options.locusUrl || !options.memberId || !options.moderator) {
|
|
116
199
|
throw new ParameterError(
|
|
@@ -120,8 +203,7 @@ export default class MembersRequest extends StatelessWebexPlugin {
|
|
|
120
203
|
|
|
121
204
|
const requestParams = MembersUtil.getTransferHostToMemberRequestParams(options);
|
|
122
205
|
|
|
123
|
-
|
|
124
|
-
return this.request(requestParams);
|
|
206
|
+
return this.locusDeltaRequest(requestParams);
|
|
125
207
|
}
|
|
126
208
|
|
|
127
209
|
/**
|
|
@@ -150,8 +232,7 @@ export default class MembersRequest extends StatelessWebexPlugin {
|
|
|
150
232
|
|
|
151
233
|
const requestParams = MembersUtil.generateSendDTMFRequestParams(options);
|
|
152
234
|
|
|
153
|
-
|
|
154
|
-
return this.request(requestParams);
|
|
235
|
+
return this.locusDeltaRequest(requestParams);
|
|
155
236
|
}
|
|
156
237
|
|
|
157
238
|
/**
|
|
@@ -169,7 +250,6 @@ export default class MembersRequest extends StatelessWebexPlugin {
|
|
|
169
250
|
|
|
170
251
|
const requestParams = MembersUtil.generateCancelInviteRequestParams(options);
|
|
171
252
|
|
|
172
|
-
|
|
173
|
-
return this.request(requestParams);
|
|
253
|
+
return this.locusDeltaRequest(requestParams);
|
|
174
254
|
}
|
|
175
255
|
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export enum ServerRoles {
|
|
2
|
+
Cohost = 'COHOST',
|
|
3
|
+
Moderator = 'MODERATOR',
|
|
4
|
+
Presenter = 'PRESENTER',
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
export type ServerRoleShape = {
|
|
8
|
+
type: ServerRoles;
|
|
9
|
+
hasRole: boolean;
|
|
10
|
+
hostKey?: string;
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export type RoleAssignmentOptions = {
|
|
14
|
+
roles: Array<ServerRoleShape>;
|
|
15
|
+
locusUrl: string;
|
|
16
|
+
memberId: string;
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
export type RoleAssignmentBody = {
|
|
20
|
+
role: {
|
|
21
|
+
roles: Array<ServerRoleShape>;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
export type RoleAssignmentRequest = {
|
|
26
|
+
method: string;
|
|
27
|
+
uri: string;
|
|
28
|
+
body: RoleAssignmentBody;
|
|
29
|
+
};
|