@webex/plugin-meetings 2.60.1-next.9 → 2.60.2
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 +8 -58
- package/dist/common/browser-detection.js +3 -2
- package/dist/common/browser-detection.js.map +1 -1
- package/dist/common/collection.js +4 -3
- package/dist/common/collection.js.map +1 -1
- package/dist/common/config.js +2 -1
- package/dist/common/config.js.map +1 -1
- package/dist/common/errors/captcha-error.js +2 -1
- package/dist/common/errors/captcha-error.js.map +1 -1
- package/dist/common/errors/intent-to-join.js +2 -1
- package/dist/common/errors/intent-to-join.js.map +1 -1
- package/dist/common/errors/join-meeting.js +2 -1
- package/dist/common/errors/join-meeting.js.map +1 -1
- package/dist/common/errors/media.js +2 -1
- package/dist/common/errors/media.js.map +1 -1
- package/dist/common/errors/parameter.js +4 -3
- package/dist/common/errors/parameter.js.map +1 -1
- package/dist/common/errors/password-error.js +2 -1
- package/dist/common/errors/password-error.js.map +1 -1
- package/dist/common/errors/permission.js +2 -1
- package/dist/common/errors/permission.js.map +1 -1
- package/dist/common/errors/{reclaim-host-role-errors.js → reclaim-host-role-error.js} +11 -7
- package/dist/common/errors/reclaim-host-role-error.js.map +1 -0
- package/dist/common/errors/reconnection-in-progress.js +2 -1
- package/dist/common/errors/reconnection-in-progress.js.map +1 -1
- package/dist/common/errors/reconnection.js +2 -1
- package/dist/common/errors/reconnection.js.map +1 -1
- package/dist/common/errors/stats.js +2 -1
- package/dist/common/errors/stats.js.map +1 -1
- package/dist/common/errors/webex-errors.d.ts +8 -20
- package/dist/common/errors/webex-errors.js +28 -48
- package/dist/common/errors/webex-errors.js.map +1 -1
- package/dist/common/errors/webex-meetings-error.js +2 -1
- package/dist/common/errors/webex-meetings-error.js.map +1 -1
- package/dist/common/events/events-scope.js +2 -1
- package/dist/common/events/events-scope.js.map +1 -1
- package/dist/common/events/events.js +2 -1
- package/dist/common/events/events.js.map +1 -1
- package/dist/common/events/trigger-proxy.js +2 -1
- package/dist/common/events/trigger-proxy.js.map +1 -1
- package/dist/common/events/util.js +2 -1
- package/dist/common/events/util.js.map +1 -1
- package/dist/common/logs/logger-config.js +2 -1
- package/dist/common/logs/logger-config.js.map +1 -1
- package/dist/common/logs/logger-proxy.js +3 -2
- package/dist/common/logs/logger-proxy.js.map +1 -1
- package/dist/common/logs/request.d.ts +1 -3
- package/dist/common/logs/request.js +5 -8
- package/dist/common/logs/request.js.map +1 -1
- package/dist/common/queue.d.ts +7 -9
- package/dist/common/queue.js +9 -22
- package/dist/common/queue.js.map +1 -1
- package/dist/config.d.ts +7 -6
- package/dist/config.js +10 -8
- package/dist/config.js.map +1 -1
- package/dist/constants.d.ts +100 -234
- package/dist/constants.js +444 -433
- package/dist/constants.js.map +1 -1
- package/dist/controls-options-manager/constants.js +6 -3
- package/dist/controls-options-manager/constants.js.map +1 -1
- package/dist/controls-options-manager/enums.d.ts +1 -11
- package/dist/controls-options-manager/enums.js +6 -15
- package/dist/controls-options-manager/enums.js.map +1 -1
- package/dist/controls-options-manager/index.d.ts +1 -17
- package/dist/controls-options-manager/index.js +38 -127
- package/dist/controls-options-manager/index.js.map +1 -1
- package/dist/controls-options-manager/util.d.ts +7 -1
- package/dist/controls-options-manager/util.js +19 -309
- package/dist/controls-options-manager/util.js.map +1 -1
- package/dist/index.d.ts +3 -6
- package/dist/index.js +5 -121
- package/dist/index.js.map +1 -1
- package/dist/locus-info/controlsUtils.js +11 -100
- package/dist/locus-info/controlsUtils.js.map +1 -1
- package/dist/locus-info/embeddedAppsUtils.js +4 -3
- package/dist/locus-info/embeddedAppsUtils.js.map +1 -1
- package/dist/locus-info/fullState.js +2 -1
- package/dist/locus-info/fullState.js.map +1 -1
- package/dist/locus-info/hostUtils.js +2 -1
- package/dist/locus-info/hostUtils.js.map +1 -1
- package/dist/locus-info/index.d.ts +4 -57
- package/dist/locus-info/index.js +84 -425
- package/dist/locus-info/index.js.map +1 -1
- package/dist/locus-info/infoUtils.js +5 -13
- package/dist/locus-info/infoUtils.js.map +1 -1
- package/dist/locus-info/mediaSharesUtils.js +3 -58
- package/dist/locus-info/mediaSharesUtils.js.map +1 -1
- package/dist/locus-info/parser.d.ts +6 -66
- package/dist/locus-info/parser.js +80 -253
- package/dist/locus-info/parser.js.map +1 -1
- package/dist/locus-info/selfUtils.js +13 -97
- package/dist/locus-info/selfUtils.js.map +1 -1
- package/dist/media/index.d.ts +0 -2
- package/dist/media/index.js +319 -107
- package/dist/media/index.js.map +1 -1
- package/dist/media/properties.d.ts +53 -38
- package/dist/media/properties.js +153 -96
- package/dist/media/properties.js.map +1 -1
- package/dist/media/util.js +22 -1
- package/dist/media/util.js.map +1 -1
- package/dist/mediaQualityMetrics/config.d.ts +230 -234
- package/dist/mediaQualityMetrics/config.js +498 -302
- package/dist/mediaQualityMetrics/config.js.map +1 -1
- package/dist/meeting/effectsState.d.ts +42 -0
- package/dist/meeting/effectsState.js +260 -0
- package/dist/meeting/effectsState.js.map +1 -0
- package/dist/meeting/in-meeting-actions.d.ts +0 -88
- package/dist/meeting/in-meeting-actions.js +3 -94
- package/dist/meeting/in-meeting-actions.js.map +1 -1
- package/dist/meeting/index.d.ts +520 -705
- package/dist/meeting/index.js +3083 -5041
- package/dist/meeting/index.js.map +1 -1
- package/dist/meeting/muteState.d.ts +25 -93
- package/dist/meeting/muteState.js +133 -224
- package/dist/meeting/muteState.js.map +1 -1
- package/dist/meeting/request.d.ts +47 -82
- package/dist/meeting/request.js +199 -304
- package/dist/meeting/request.js.map +1 -1
- package/dist/meeting/state.js +2 -1
- package/dist/meeting/state.js.map +1 -1
- package/dist/meeting/util.d.ts +1 -118
- package/dist/meeting/util.js +435 -676
- package/dist/meeting/util.js.map +1 -1
- package/dist/meeting-info/collection.js +4 -3
- package/dist/meeting-info/collection.js.map +1 -1
- package/dist/meeting-info/index.d.ts +1 -13
- package/dist/meeting-info/index.js +7 -74
- package/dist/meeting-info/index.js.map +1 -1
- package/dist/meeting-info/meeting-info-v2.d.ts +1 -31
- package/dist/meeting-info/meeting-info-v2.js +63 -200
- package/dist/meeting-info/meeting-info-v2.js.map +1 -1
- package/dist/meeting-info/request.js +2 -1
- package/dist/meeting-info/request.js.map +1 -1
- package/dist/meeting-info/util.js +3 -2
- package/dist/meeting-info/util.js.map +1 -1
- package/dist/meeting-info/utilv2.js +41 -39
- package/dist/meeting-info/utilv2.js.map +1 -1
- package/dist/meetings/collection.d.ts +0 -17
- package/dist/meetings/collection.js +4 -42
- package/dist/meetings/collection.js.map +1 -1
- package/dist/meetings/index.d.ts +20 -114
- package/dist/meetings/index.js +133 -540
- package/dist/meetings/index.js.map +1 -1
- package/dist/meetings/request.js +3 -4
- package/dist/meetings/request.js.map +1 -1
- package/dist/meetings/util.js +6 -107
- package/dist/meetings/util.js.map +1 -1
- package/dist/member/index.d.ts +1 -13
- package/dist/member/index.js +2 -45
- package/dist/member/index.js.map +1 -1
- package/dist/member/member.types.js +4 -3
- package/dist/member/member.types.js.map +1 -1
- package/dist/member/util.js +29 -120
- package/dist/member/util.js.map +1 -1
- package/dist/members/collection.d.ts +0 -5
- package/dist/members/collection.js +2 -11
- package/dist/members/collection.js.map +1 -1
- package/dist/members/index.d.ts +11 -56
- package/dist/members/index.js +47 -174
- package/dist/members/index.js.map +1 -1
- package/dist/members/request.d.ts +11 -67
- package/dist/members/request.js +54 -102
- package/dist/members/request.js.map +1 -1
- package/dist/members/types.js +4 -3
- package/dist/members/types.js.map +1 -1
- package/dist/members/util.d.ts +1 -214
- package/dist/members/util.js +284 -327
- package/dist/members/util.js.map +1 -1
- package/dist/metrics/config.d.ts +169 -0
- package/dist/metrics/config.js +289 -0
- package/dist/metrics/config.js.map +1 -0
- package/dist/metrics/constants.d.ts +6 -15
- package/dist/metrics/constants.js +9 -17
- package/dist/metrics/constants.js.map +1 -1
- package/dist/metrics/index.d.ts +111 -4
- package/dist/metrics/index.js +452 -4
- package/dist/metrics/index.js.map +1 -1
- package/dist/networkQualityMonitor/index.js +4 -5
- package/dist/networkQualityMonitor/index.js.map +1 -1
- package/dist/peer-connection-manager/index.d.ts +6 -0
- package/dist/peer-connection-manager/index.js +671 -0
- package/dist/peer-connection-manager/index.js.map +1 -0
- package/dist/peer-connection-manager/util.d.ts +6 -0
- package/dist/peer-connection-manager/util.js +110 -0
- package/dist/peer-connection-manager/util.js.map +1 -0
- package/dist/personal-meeting-room/index.js +3 -2
- package/dist/personal-meeting-room/index.js.map +1 -1
- package/dist/personal-meeting-room/request.js +3 -2
- package/dist/personal-meeting-room/request.js.map +1 -1
- package/dist/personal-meeting-room/util.js +2 -1
- package/dist/personal-meeting-room/util.js.map +1 -1
- package/dist/reachability/index.d.ts +95 -61
- package/dist/reachability/index.js +392 -304
- package/dist/reachability/index.js.map +1 -1
- package/dist/reachability/request.d.ts +3 -7
- package/dist/reachability/request.js +10 -18
- package/dist/reachability/request.js.map +1 -1
- package/dist/reactions/reactions.d.ts +2 -2
- package/dist/reactions/reactions.js +6 -4
- package/dist/reactions/reactions.js.map +1 -1
- package/dist/reactions/reactions.type.d.ts +3 -23
- package/dist/reactions/reactions.type.js +23 -21
- package/dist/reactions/reactions.type.js.map +1 -1
- package/dist/reconnection-manager/index.d.ts +8 -32
- package/dist/reconnection-manager/index.js +232 -285
- package/dist/reconnection-manager/index.js.map +1 -1
- package/dist/recording-controller/enums.js +5 -4
- package/dist/recording-controller/enums.js.map +1 -1
- package/dist/recording-controller/index.d.ts +1 -15
- package/dist/recording-controller/index.js +46 -57
- package/dist/recording-controller/index.js.map +1 -1
- package/dist/recording-controller/util.d.ts +4 -5
- package/dist/recording-controller/util.js +10 -10
- package/dist/recording-controller/util.js.map +1 -1
- package/dist/roap/collection.d.ts +10 -0
- package/dist/roap/collection.js +63 -0
- package/dist/roap/collection.js.map +1 -0
- package/dist/roap/handler.d.ts +47 -0
- package/dist/roap/handler.js +279 -0
- package/dist/roap/handler.js.map +1 -0
- package/dist/roap/index.d.ts +47 -9
- package/dist/roap/index.js +238 -100
- package/dist/roap/index.js.map +1 -1
- package/dist/roap/request.d.ts +12 -18
- package/dist/roap/request.js +180 -126
- package/dist/roap/request.js.map +1 -1
- package/dist/roap/state.d.ts +9 -0
- package/dist/roap/state.js +127 -0
- package/dist/roap/state.js.map +1 -0
- package/dist/roap/turnDiscovery.d.ts +16 -27
- package/dist/roap/turnDiscovery.js +105 -115
- package/dist/roap/turnDiscovery.js.map +1 -1
- package/dist/roap/util.d.ts +2 -0
- package/dist/roap/util.js +76 -0
- package/dist/roap/util.js.map +1 -0
- package/dist/statsAnalyzer/global.d.ts +83 -1
- package/dist/statsAnalyzer/global.js +85 -2
- package/dist/statsAnalyzer/global.js.map +1 -1
- package/dist/statsAnalyzer/index.d.ts +30 -50
- package/dist/statsAnalyzer/index.js +511 -436
- package/dist/statsAnalyzer/index.js.map +1 -1
- package/dist/statsAnalyzer/mqaUtil.d.ts +6 -8
- package/dist/statsAnalyzer/mqaUtil.js +90 -130
- package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
- package/dist/transcription/index.js +2 -1
- package/dist/transcription/index.js.map +1 -1
- package/package.json +26 -39
- package/src/common/errors/webex-errors.ts +12 -36
- package/src/common/logs/logger-proxy.ts +1 -1
- package/src/common/logs/request.ts +1 -5
- package/src/common/queue.ts +8 -22
- package/src/config.ts +7 -6
- package/src/constants.ts +100 -265
- package/src/controls-options-manager/enums.ts +0 -12
- package/src/controls-options-manager/index.ts +21 -116
- package/src/controls-options-manager/util.ts +14 -294
- package/src/index.js +15 -0
- package/src/locus-info/controlsUtils.ts +0 -110
- package/src/locus-info/index.ts +61 -450
- package/src/locus-info/infoUtils.ts +2 -14
- package/src/locus-info/mediaSharesUtils.ts +0 -64
- package/src/locus-info/parser.ts +47 -258
- package/src/locus-info/selfUtils.ts +2 -85
- package/src/media/index.ts +370 -153
- package/src/media/properties.ts +136 -106
- package/src/media/util.ts +21 -0
- package/src/mediaQualityMetrics/config.ts +377 -244
- package/src/meeting/effectsState.ts +209 -0
- package/src/meeting/in-meeting-actions.ts +0 -176
- package/src/meeting/index.ts +2581 -4306
- package/src/meeting/muteState.ts +138 -224
- package/src/meeting/request.ts +127 -214
- package/src/meeting/util.ts +423 -687
- package/src/meeting-info/index.ts +8 -81
- package/src/meeting-info/meeting-info-v2.ts +13 -163
- package/src/meeting-info/util.ts +1 -1
- package/src/meeting-info/utilv2.ts +28 -28
- package/src/meetings/collection.ts +0 -33
- package/src/meetings/index.ts +136 -531
- package/src/meetings/request.ts +0 -2
- package/src/meetings/util.ts +5 -116
- package/src/member/index.ts +1 -43
- package/src/member/util.ts +28 -125
- package/src/members/collection.ts +0 -8
- package/src/members/index.ts +52 -187
- package/src/members/request.ts +27 -87
- package/src/members/util.ts +291 -332
- package/src/metrics/config.ts +485 -0
- package/src/metrics/constants.ts +6 -15
- package/src/metrics/index.ts +471 -1
- package/src/networkQualityMonitor/index.ts +6 -6
- package/src/peer-connection-manager/index.ts +847 -0
- package/src/peer-connection-manager/util.ts +119 -0
- package/src/reachability/index.ts +347 -246
- package/src/reachability/request.ts +8 -17
- package/src/reactions/reactions.ts +4 -4
- package/src/reactions/reactions.type.ts +4 -30
- package/src/reconnection-manager/index.ts +156 -168
- package/src/recording-controller/index.ts +3 -20
- package/src/recording-controller/util.ts +9 -26
- package/src/roap/collection.ts +62 -0
- package/src/roap/handler.ts +294 -0
- package/src/roap/index.ts +241 -96
- package/src/roap/request.ts +148 -74
- package/src/roap/state.ts +156 -0
- package/src/roap/turnDiscovery.ts +56 -62
- package/src/roap/util.ts +100 -0
- package/src/statsAnalyzer/global.ts +84 -1
- package/src/statsAnalyzer/index.ts +645 -479
- package/src/statsAnalyzer/mqaUtil.ts +126 -128
- package/test/integration/spec/journey.js +264 -320
- package/test/integration/spec/space-meeting.js +4 -77
- package/test/unit/spec/common/queue.js +2 -31
- package/test/unit/spec/controls-options-manager/index.js +0 -163
- package/test/unit/spec/controls-options-manager/util.js +60 -576
- package/test/unit/spec/fixture/locus.js +0 -1
- package/test/unit/spec/locus-info/controlsUtils.js +30 -323
- package/test/unit/spec/locus-info/index.js +15 -1437
- package/test/unit/spec/locus-info/infoUtils.js +16 -54
- package/test/unit/spec/locus-info/lib/SeqCmp.json +0 -16
- package/test/unit/spec/locus-info/lib/selfConstant.js +0 -48
- package/test/unit/spec/locus-info/parser.js +35 -116
- package/test/unit/spec/locus-info/selfUtils.js +0 -275
- package/test/unit/spec/media/properties.ts +84 -75
- package/test/unit/spec/meeting/effectsState.js +281 -0
- package/test/unit/spec/meeting/in-meeting-actions.ts +0 -86
- package/test/unit/spec/meeting/index.js +2313 -8384
- package/test/unit/spec/meeting/muteState.js +213 -409
- package/test/unit/spec/meeting/request.js +43 -523
- package/test/unit/spec/meeting/utils.js +24 -834
- package/test/unit/spec/meeting-info/meetinginfov2.js +5 -527
- package/test/unit/spec/meeting-info/utilv2.js +0 -21
- package/test/unit/spec/meetings/collection.js +0 -26
- package/test/unit/spec/meetings/index.js +232 -1445
- package/test/unit/spec/meetings/utils.js +2 -202
- package/test/unit/spec/member/index.js +9 -32
- package/test/unit/spec/member/util.js +61 -499
- package/test/unit/spec/members/index.js +5 -394
- package/test/unit/spec/members/request.js +27 -206
- package/test/unit/spec/members/utils.js +38 -173
- package/test/unit/spec/metrics/index.js +50 -1
- package/test/unit/spec/networkQualityMonitor/index.js +4 -4
- package/test/unit/spec/peerconnection-manager/index.js +218 -0
- package/test/unit/spec/peerconnection-manager/utils.js +49 -0
- package/test/unit/spec/peerconnection-manager/utils.test-fixtures.ts +388 -0
- package/test/unit/spec/reachability/index.ts +24 -532
- package/test/unit/spec/reconnection-manager/index.js +24 -163
- package/test/unit/spec/recording-controller/index.js +218 -293
- package/test/unit/spec/recording-controller/util.js +96 -223
- package/test/unit/spec/roap/index.ts +77 -187
- package/test/unit/spec/roap/turnDiscovery.ts +48 -86
- package/test/unit/spec/roap/util.js +30 -0
- package/test/unit/spec/stats-analyzer/index.js +165 -644
- package/test/utils/testUtils.js +45 -0
- package/test/utils/webex-config.js +0 -4
- package/test/utils/webex-test-users.js +3 -7
- package/dist/annotation/annotation.types.d.ts +0 -42
- package/dist/annotation/annotation.types.js +0 -7
- package/dist/annotation/annotation.types.js.map +0 -1
- package/dist/annotation/constants.d.ts +0 -31
- package/dist/annotation/constants.js +0 -41
- package/dist/annotation/constants.js.map +0 -1
- package/dist/annotation/index.d.ts +0 -117
- package/dist/annotation/index.js +0 -357
- package/dist/annotation/index.js.map +0 -1
- package/dist/breakouts/breakout.d.ts +0 -8
- package/dist/breakouts/breakout.js +0 -215
- package/dist/breakouts/breakout.js.map +0 -1
- package/dist/breakouts/collection.d.ts +0 -5
- package/dist/breakouts/collection.js +0 -22
- package/dist/breakouts/collection.js.map +0 -1
- package/dist/breakouts/edit-lock-error.d.ts +0 -15
- package/dist/breakouts/edit-lock-error.js +0 -51
- package/dist/breakouts/edit-lock-error.js.map +0 -1
- package/dist/breakouts/events.d.ts +0 -8
- package/dist/breakouts/events.js +0 -44
- package/dist/breakouts/events.js.map +0 -1
- package/dist/breakouts/index.d.ts +0 -5
- package/dist/breakouts/index.js +0 -1047
- package/dist/breakouts/index.js.map +0 -1
- package/dist/breakouts/request.d.ts +0 -22
- package/dist/breakouts/request.js +0 -77
- package/dist/breakouts/request.js.map +0 -1
- package/dist/breakouts/utils.d.ts +0 -15
- package/dist/breakouts/utils.js +0 -64
- package/dist/breakouts/utils.js.map +0 -1
- package/dist/common/errors/no-meeting-info.d.ts +0 -14
- package/dist/common/errors/no-meeting-info.js +0 -50
- package/dist/common/errors/no-meeting-info.js.map +0 -1
- package/dist/common/errors/reclaim-host-role-errors.js.map +0 -1
- package/dist/controls-options-manager/types.d.ts +0 -43
- package/dist/controls-options-manager/types.js +0 -7
- package/dist/controls-options-manager/types.js.map +0 -1
- package/dist/interceptors/index.d.ts +0 -2
- package/dist/interceptors/index.js +0 -15
- package/dist/interceptors/index.js.map +0 -1
- package/dist/interceptors/locusRetry.d.ts +0 -27
- package/dist/interceptors/locusRetry.js +0 -94
- package/dist/interceptors/locusRetry.js.map +0 -1
- package/dist/interpretation/collection.d.ts +0 -5
- package/dist/interpretation/collection.js +0 -22
- package/dist/interpretation/collection.js.map +0 -1
- package/dist/interpretation/index.d.ts +0 -5
- package/dist/interpretation/index.js +0 -365
- package/dist/interpretation/index.js.map +0 -1
- package/dist/interpretation/siLanguage.d.ts +0 -5
- package/dist/interpretation/siLanguage.js +0 -24
- package/dist/interpretation/siLanguage.js.map +0 -1
- package/dist/meeting/locusMediaRequest.d.ts +0 -74
- package/dist/meeting/locusMediaRequest.js +0 -291
- package/dist/meeting/locusMediaRequest.js.map +0 -1
- package/dist/meeting/request.type.d.ts +0 -11
- package/dist/meeting/request.type.js +0 -7
- package/dist/meeting/request.type.js.map +0 -1
- package/dist/meeting/voicea-meeting.d.ts +0 -20
- package/dist/meeting/voicea-meeting.js +0 -201
- package/dist/meeting/voicea-meeting.js.map +0 -1
- package/dist/meetings/meetings.types.d.ts +0 -4
- package/dist/meetings/meetings.types.js +0 -7
- package/dist/meetings/meetings.types.js.map +0 -1
- package/dist/member/types.d.ts +0 -32
- package/dist/member/types.js +0 -23
- package/dist/member/types.js.map +0 -1
- package/dist/multistream/mediaRequestManager.d.ts +0 -118
- package/dist/multistream/mediaRequestManager.js +0 -344
- package/dist/multistream/mediaRequestManager.js.map +0 -1
- package/dist/multistream/receiveSlot.d.ts +0 -68
- package/dist/multistream/receiveSlot.js +0 -200
- package/dist/multistream/receiveSlot.js.map +0 -1
- package/dist/multistream/receiveSlotManager.d.ts +0 -56
- package/dist/multistream/receiveSlotManager.js +0 -174
- package/dist/multistream/receiveSlotManager.js.map +0 -1
- package/dist/multistream/remoteMedia.d.ts +0 -72
- package/dist/multistream/remoteMedia.js +0 -268
- package/dist/multistream/remoteMedia.js.map +0 -1
- package/dist/multistream/remoteMediaGroup.d.ts +0 -47
- package/dist/multistream/remoteMediaGroup.js +0 -267
- package/dist/multistream/remoteMediaGroup.js.map +0 -1
- package/dist/multistream/remoteMediaManager.d.ts +0 -285
- package/dist/multistream/remoteMediaManager.js +0 -1211
- package/dist/multistream/remoteMediaManager.js.map +0 -1
- package/dist/multistream/sendSlotManager.d.ts +0 -61
- package/dist/multistream/sendSlotManager.js +0 -236
- package/dist/multistream/sendSlotManager.js.map +0 -1
- package/dist/reachability/clusterReachability.d.ts +0 -109
- package/dist/reachability/clusterReachability.js +0 -357
- package/dist/reachability/clusterReachability.js.map +0 -1
- package/dist/reachability/util.d.ts +0 -8
- package/dist/reachability/util.js +0 -29
- package/dist/reachability/util.js.map +0 -1
- package/dist/reactions/constants.d.ts +0 -3
- package/dist/reactions/constants.js +0 -12
- package/dist/reactions/constants.js.map +0 -1
- package/dist/rtcMetrics/constants.d.ts +0 -4
- package/dist/rtcMetrics/constants.js +0 -11
- package/dist/rtcMetrics/constants.js.map +0 -1
- package/dist/rtcMetrics/index.d.ts +0 -54
- package/dist/rtcMetrics/index.js +0 -140
- package/dist/rtcMetrics/index.js.map +0 -1
- package/dist/webinar/collection.d.ts +0 -16
- package/dist/webinar/collection.js +0 -43
- package/dist/webinar/collection.js.map +0 -1
- package/dist/webinar/index.d.ts +0 -5
- package/dist/webinar/index.js +0 -68
- package/dist/webinar/index.js.map +0 -1
- package/src/annotation/annotation.types.ts +0 -50
- package/src/annotation/constants.ts +0 -36
- package/src/annotation/index.ts +0 -328
- package/src/breakouts/README.md +0 -220
- package/src/breakouts/breakout.ts +0 -188
- package/src/breakouts/collection.ts +0 -19
- package/src/breakouts/edit-lock-error.ts +0 -25
- package/src/breakouts/events.ts +0 -56
- package/src/breakouts/index.ts +0 -925
- package/src/breakouts/request.ts +0 -55
- package/src/breakouts/utils.ts +0 -57
- package/src/common/errors/no-meeting-info.ts +0 -24
- package/src/controls-options-manager/types.ts +0 -59
- package/src/index.ts +0 -44
- package/src/interceptors/index.ts +0 -3
- package/src/interceptors/locusRetry.ts +0 -67
- package/src/interpretation/README.md +0 -60
- package/src/interpretation/collection.ts +0 -19
- package/src/interpretation/index.ts +0 -332
- package/src/interpretation/siLanguage.ts +0 -18
- package/src/meeting/locusMediaRequest.ts +0 -313
- package/src/meeting/request.type.ts +0 -13
- package/src/meeting/voicea-meeting.ts +0 -161
- package/src/meetings/meetings.types.ts +0 -12
- package/src/member/types.ts +0 -38
- package/src/multistream/mediaRequestManager.ts +0 -440
- package/src/multistream/receiveSlot.ts +0 -184
- package/src/multistream/receiveSlotManager.ts +0 -166
- package/src/multistream/remoteMedia.ts +0 -254
- package/src/multistream/remoteMediaGroup.ts +0 -284
- package/src/multistream/remoteMediaManager.ts +0 -1145
- package/src/multistream/sendSlotManager.ts +0 -170
- package/src/reachability/clusterReachability.ts +0 -320
- package/src/reachability/util.ts +0 -24
- package/src/reactions/constants.ts +0 -4
- package/src/rtcMetrics/constants.ts +0 -3
- package/src/rtcMetrics/index.ts +0 -124
- package/src/webinar/collection.ts +0 -31
- package/src/webinar/index.ts +0 -62
- package/test/integration/spec/converged-space-meetings.js +0 -233
- package/test/unit/spec/annotation/index.ts +0 -418
- package/test/unit/spec/breakouts/breakout.ts +0 -237
- package/test/unit/spec/breakouts/collection.ts +0 -15
- package/test/unit/spec/breakouts/edit-lock-error.ts +0 -30
- package/test/unit/spec/breakouts/events.ts +0 -89
- package/test/unit/spec/breakouts/index.ts +0 -1790
- package/test/unit/spec/breakouts/request.ts +0 -104
- package/test/unit/spec/breakouts/utils.js +0 -72
- package/test/unit/spec/interceptors/locusRetry.ts +0 -131
- package/test/unit/spec/interpretation/collection.ts +0 -15
- package/test/unit/spec/interpretation/index.ts +0 -589
- package/test/unit/spec/interpretation/siLanguage.ts +0 -28
- package/test/unit/spec/locus-info/mediaSharesUtils.ts +0 -32
- package/test/unit/spec/media/index.ts +0 -290
- package/test/unit/spec/meeting/locusMediaRequest.ts +0 -442
- package/test/unit/spec/meeting-info/index.js +0 -300
- package/test/unit/spec/multistream/mediaRequestManager.ts +0 -1418
- package/test/unit/spec/multistream/receiveSlot.ts +0 -163
- package/test/unit/spec/multistream/receiveSlotManager.ts +0 -203
- package/test/unit/spec/multistream/remoteMedia.ts +0 -255
- package/test/unit/spec/multistream/remoteMediaGroup.ts +0 -662
- package/test/unit/spec/multistream/remoteMediaManager.ts +0 -1924
- package/test/unit/spec/multistream/sendSlotManager.ts +0 -242
- package/test/unit/spec/reachability/clusterReachability.ts +0 -279
- package/test/unit/spec/reachability/request.js +0 -68
- package/test/unit/spec/reachability/util.ts +0 -40
- package/test/unit/spec/roap/request.ts +0 -255
- package/test/unit/spec/rtcMetrics/index.ts +0 -93
- package/test/unit/spec/webinar/collection.ts +0 -13
- package/test/unit/spec/webinar/index.ts +0 -60
- package/test/utils/constants.js +0 -9
- package/test/utils/integrationTestUtils.js +0 -46
- /package/dist/common/errors/{reclaim-host-role-errors.d.ts → reclaim-host-role-error.d.ts} +0 -0
- /package/src/common/errors/{reclaim-host-role-errors.ts → reclaim-host-role-error.ts} +0 -0
package/dist/meeting/index.d.ts
CHANGED
|
@@ -1,91 +1,22 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { StatelessWebexPlugin } from '@webex/webex-core';
|
|
3
|
-
import { ClientEvent, ClientEventLeaveReason } from '@webex/internal-plugin-metrics';
|
|
4
|
-
import { LocalStream, LocalCameraStream, LocalDisplayStream, LocalSystemAudioStream, LocalMicrophoneStream } from '@webex/media-helpers';
|
|
5
3
|
import { StatsAnalyzer } from '../statsAnalyzer';
|
|
6
4
|
import NetworkQualityMonitor from '../networkQualityMonitor';
|
|
7
5
|
import Roap from '../roap/index';
|
|
8
|
-
import { type BundlePolicy } from '../media';
|
|
9
6
|
import MediaProperties from '../media/properties';
|
|
10
7
|
import ReconnectionManager from '../reconnection-manager';
|
|
11
8
|
import MeetingRequest from './request';
|
|
12
9
|
import Members from '../members/index';
|
|
13
|
-
import
|
|
14
|
-
import {
|
|
15
|
-
import { MediaRequestManager } from '../multistream/mediaRequestManager';
|
|
16
|
-
import { Configuration as RemoteMediaManagerConfiguration, RemoteMediaManager } from '../multistream/remoteMediaManager';
|
|
17
|
-
import { ReactionServerType, SkinToneType } from '../reactions/reactions.type';
|
|
10
|
+
import Transcription from '../transcription';
|
|
11
|
+
import { ReactionType, SkinToneType } from '../reactions/reactions.type';
|
|
18
12
|
import InMeetingActions from './in-meeting-actions';
|
|
19
13
|
import RecordingController from '../recording-controller';
|
|
20
14
|
import ControlsOptionsManager from '../controls-options-manager';
|
|
21
|
-
import { LocusMediaRequest } from './locusMediaRequest';
|
|
22
|
-
export type CaptionData = {
|
|
23
|
-
id: string;
|
|
24
|
-
isFinal: boolean;
|
|
25
|
-
translations: Array<string>;
|
|
26
|
-
text: string;
|
|
27
|
-
currentCaptionLanguage: string;
|
|
28
|
-
timestamp: string;
|
|
29
|
-
speaker: string;
|
|
30
|
-
};
|
|
31
|
-
export type Transcription = {
|
|
32
|
-
languageOptions: {
|
|
33
|
-
captionLanguages?: string;
|
|
34
|
-
maxLanguages?: number;
|
|
35
|
-
spokenLanguages?: Array<string>;
|
|
36
|
-
currentCaptionLanguage?: string;
|
|
37
|
-
requestedCaptionLanguage?: string;
|
|
38
|
-
currentSpokenLanguage?: string;
|
|
39
|
-
};
|
|
40
|
-
status: string;
|
|
41
|
-
isListening: boolean;
|
|
42
|
-
commandText: string;
|
|
43
|
-
captions: Array<CaptionData>;
|
|
44
|
-
highlights: Array<any>;
|
|
45
|
-
showCaptionBox: boolean;
|
|
46
|
-
transcribingRequestStatus: string;
|
|
47
|
-
isCaptioning: boolean;
|
|
48
|
-
speakerProxy: Map<string, any>;
|
|
49
|
-
interimCaptions: Map<string, CaptionData>;
|
|
50
|
-
};
|
|
51
|
-
export type LocalStreams = {
|
|
52
|
-
microphone?: LocalMicrophoneStream;
|
|
53
|
-
camera?: LocalCameraStream;
|
|
54
|
-
screenShare?: {
|
|
55
|
-
audio?: LocalSystemAudioStream;
|
|
56
|
-
video?: LocalDisplayStream;
|
|
57
|
-
};
|
|
58
|
-
};
|
|
59
|
-
export type AddMediaOptions = {
|
|
60
|
-
localStreams?: LocalStreams;
|
|
61
|
-
audioEnabled?: boolean;
|
|
62
|
-
videoEnabled?: boolean;
|
|
63
|
-
shareAudioEnabled?: boolean;
|
|
64
|
-
shareVideoEnabled?: boolean;
|
|
65
|
-
remoteMediaManagerConfig?: RemoteMediaManagerConfiguration;
|
|
66
|
-
bundlePolicy?: BundlePolicy;
|
|
67
|
-
allowMediaInLobby?: boolean;
|
|
68
|
-
};
|
|
69
|
-
export type CallStateForMetrics = {
|
|
70
|
-
correlationId?: string;
|
|
71
|
-
joinTrigger?: string;
|
|
72
|
-
loginType?: string;
|
|
73
|
-
};
|
|
74
15
|
export declare const MEDIA_UPDATE_TYPE: {
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
export declare enum ScreenShareFloorStatus {
|
|
80
|
-
PENDING = "floor_request_pending",
|
|
81
|
-
GRANTED = "floor_request_granted",
|
|
82
|
-
RELEASED = "floor_released"
|
|
83
|
-
}
|
|
84
|
-
type FetchMeetingInfoParams = {
|
|
85
|
-
password?: string;
|
|
86
|
-
captchaCode?: string;
|
|
87
|
-
extraParams?: Record<string, any>;
|
|
88
|
-
sendCAevents?: boolean;
|
|
16
|
+
ALL: string;
|
|
17
|
+
AUDIO: string;
|
|
18
|
+
VIDEO: string;
|
|
19
|
+
SHARE: string;
|
|
89
20
|
};
|
|
90
21
|
/**
|
|
91
22
|
* MediaDirection
|
|
@@ -98,6 +29,15 @@ type FetchMeetingInfoParams = {
|
|
|
98
29
|
* @property {boolean} receiveShare
|
|
99
30
|
* @property {boolean} isSharing
|
|
100
31
|
*/
|
|
32
|
+
/**
|
|
33
|
+
* AudioVideo
|
|
34
|
+
* @typedef {Object} AudioVideo
|
|
35
|
+
* @property {Object} audio
|
|
36
|
+
* @property {String} audio.deviceId
|
|
37
|
+
* @property {Object} video
|
|
38
|
+
* @property {String} video.deviceId
|
|
39
|
+
* @property {String} video.localVideoQuality // [240p, 360p, 480p, 720p, 1080p]
|
|
40
|
+
*/
|
|
101
41
|
/**
|
|
102
42
|
* SharePreferences
|
|
103
43
|
* @typedef {Object} SharePreferences
|
|
@@ -111,9 +51,16 @@ type FetchMeetingInfoParams = {
|
|
|
111
51
|
* @property {String} [pin]
|
|
112
52
|
* @property {Boolean} [moderator]
|
|
113
53
|
* @property {String|Object} [meetingQuality]
|
|
54
|
+
* @property {String} [meetingQuality.local]
|
|
114
55
|
* @property {String} [meetingQuality.remote]
|
|
115
56
|
* @property {Boolean} [rejoin]
|
|
116
|
-
|
|
57
|
+
*/
|
|
58
|
+
/**
|
|
59
|
+
* SendOptions
|
|
60
|
+
* @typedef {Object} SendOptions
|
|
61
|
+
* @property {Boolean} sendAudio
|
|
62
|
+
* @property {Boolean} sendVideo
|
|
63
|
+
* @property {Boolean} sendShare
|
|
117
64
|
*/
|
|
118
65
|
/**
|
|
119
66
|
* Recording
|
|
@@ -196,11 +143,7 @@ type FetchMeetingInfoParams = {
|
|
|
196
143
|
* @instance
|
|
197
144
|
* @type {Object}
|
|
198
145
|
* @property {Boolean} memberId id of the meeting member that started screen share
|
|
199
|
-
* @property {String} url of this content share
|
|
200
|
-
* @property {String} shareInstanceId of this content share
|
|
201
|
-
* @property {Object} annotation Info of this content share
|
|
202
146
|
* @memberof Meeting
|
|
203
|
-
*
|
|
204
147
|
*/
|
|
205
148
|
/**
|
|
206
149
|
* Meeting Stopped Sharing Remote Event
|
|
@@ -336,23 +279,18 @@ type FetchMeetingInfoParams = {
|
|
|
336
279
|
export default class Meeting extends StatelessWebexPlugin {
|
|
337
280
|
attrs: any;
|
|
338
281
|
audio: any;
|
|
339
|
-
breakouts: any;
|
|
340
|
-
simultaneousInterpretation: any;
|
|
341
|
-
annotation: any;
|
|
342
|
-
webinar: any;
|
|
343
282
|
conversationUrl: string;
|
|
344
|
-
|
|
283
|
+
correlationId: string;
|
|
345
284
|
destination: string;
|
|
346
285
|
destinationType: string;
|
|
347
286
|
deviceUrl: string;
|
|
287
|
+
effects: any;
|
|
348
288
|
hostId: string;
|
|
349
289
|
id: string;
|
|
350
|
-
isMultistream: boolean;
|
|
351
290
|
locusUrl: string;
|
|
352
291
|
mediaConnections: any[];
|
|
353
|
-
mediaId?: string;
|
|
354
292
|
meetingFiniteStateMachine: any;
|
|
355
|
-
meetingInfo:
|
|
293
|
+
meetingInfo: object;
|
|
356
294
|
meetingRequest: MeetingRequest;
|
|
357
295
|
members: Members;
|
|
358
296
|
options: object;
|
|
@@ -364,13 +302,11 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
364
302
|
resource: string;
|
|
365
303
|
roap: Roap;
|
|
366
304
|
roapSeq: number;
|
|
367
|
-
selfUrl?: string;
|
|
368
305
|
sipUri: string;
|
|
369
306
|
type: string;
|
|
370
307
|
userId: string;
|
|
371
308
|
video: any;
|
|
372
309
|
callEvents: any[];
|
|
373
|
-
datachannelUrl: string;
|
|
374
310
|
deferJoin: Promise<any>;
|
|
375
311
|
dialInDeviceStatus: string;
|
|
376
312
|
dialInUrl: string;
|
|
@@ -382,45 +318,31 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
382
318
|
hasWebsocketConnected: boolean;
|
|
383
319
|
inMeetingActions: InMeetingActions;
|
|
384
320
|
isLocalShareLive: boolean;
|
|
385
|
-
|
|
321
|
+
isSharing: boolean;
|
|
386
322
|
keepAliveTimerId: NodeJS.Timeout;
|
|
387
323
|
lastVideoLayoutInfo: any;
|
|
388
324
|
locusInfo: any;
|
|
389
|
-
locusMediaRequest?: LocusMediaRequest;
|
|
390
325
|
mediaProperties: MediaProperties;
|
|
391
|
-
mediaRequestManagers: {
|
|
392
|
-
audio: MediaRequestManager;
|
|
393
|
-
video: MediaRequestManager;
|
|
394
|
-
screenShareAudio: MediaRequestManager;
|
|
395
|
-
screenShareVideo: MediaRequestManager;
|
|
396
|
-
};
|
|
397
326
|
meetingInfoFailureReason: string;
|
|
398
|
-
meetingInfoFailureCode?: number;
|
|
399
|
-
meetingInfoExtraParams?: Record<string, any>;
|
|
400
327
|
networkQualityMonitor: NetworkQualityMonitor;
|
|
401
|
-
networkStatus
|
|
328
|
+
networkStatus: string;
|
|
402
329
|
passwordStatus: string;
|
|
403
330
|
queuedMediaUpdates: any[];
|
|
404
331
|
recording: any;
|
|
405
|
-
remoteMediaManager: RemoteMediaManager | null;
|
|
406
332
|
recordingController: RecordingController;
|
|
407
333
|
controlsOptionsManager: ControlsOptionsManager;
|
|
408
334
|
requiredCaptcha: any;
|
|
409
|
-
receiveSlotManager: ReceiveSlotManager;
|
|
410
|
-
selfUserPolicies: any;
|
|
411
|
-
enforceVBGImagesURL: string;
|
|
412
335
|
shareStatus: string;
|
|
413
|
-
screenShareFloorState: ScreenShareFloorStatus;
|
|
414
336
|
statsAnalyzer: StatsAnalyzer;
|
|
415
337
|
transcription: Transcription;
|
|
338
|
+
receiveTranscription: boolean;
|
|
416
339
|
updateMediaConnections: (mediaConnections: any[]) => void;
|
|
417
|
-
|
|
418
|
-
endCallInitJoinReq: any;
|
|
340
|
+
endCallInitiateJoinReq: any;
|
|
419
341
|
endJoinReqResp: any;
|
|
420
342
|
endLocalSDPGenRemoteSDPRecvDelay: any;
|
|
421
343
|
joinedWith: any;
|
|
422
344
|
locusId: any;
|
|
423
|
-
|
|
345
|
+
startCallInitiateJoinReq: any;
|
|
424
346
|
startJoinReqResp: any;
|
|
425
347
|
startLocalSDPGenRemoteSDPRecvDelay: any;
|
|
426
348
|
wirelessShare: any;
|
|
@@ -428,31 +350,12 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
428
350
|
meetingJoinUrl: any;
|
|
429
351
|
meetingNumber: any;
|
|
430
352
|
meetingState: any;
|
|
431
|
-
permissionToken:
|
|
432
|
-
permissionTokenPayload: any;
|
|
433
|
-
permissionTokenReceivedLocalTime: number;
|
|
353
|
+
permissionToken: any;
|
|
434
354
|
resourceId: any;
|
|
435
355
|
resourceUrl: string;
|
|
436
356
|
selfId: string;
|
|
437
357
|
state: any;
|
|
438
|
-
localAudioStreamMuteStateHandler: (muted: boolean) => void;
|
|
439
|
-
localVideoStreamMuteStateHandler: (muted: boolean) => void;
|
|
440
|
-
localOutputTrackChangeHandler: () => void;
|
|
441
|
-
roles: any[];
|
|
442
|
-
environment: string;
|
|
443
358
|
namespace: string;
|
|
444
|
-
allowMediaInLobby: boolean;
|
|
445
|
-
localShareInstanceId: string;
|
|
446
|
-
remoteShareInstanceId: string;
|
|
447
|
-
turnDiscoverySkippedReason: string;
|
|
448
|
-
turnServerUsed: boolean;
|
|
449
|
-
areVoiceaEventsSetup: boolean;
|
|
450
|
-
voiceaListenerCallbacks: object;
|
|
451
|
-
private retriedWithTurnServer;
|
|
452
|
-
private sendSlotManager;
|
|
453
|
-
private deferSDPAnswer?;
|
|
454
|
-
private sdpResponseTimer?;
|
|
455
|
-
private hasMediaConnectionConnectedAtLeastOnce;
|
|
456
359
|
/**
|
|
457
360
|
* @param {Object} attrs
|
|
458
361
|
* @param {Object} options
|
|
@@ -460,91 +363,29 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
460
363
|
* @memberof Meeting
|
|
461
364
|
*/
|
|
462
365
|
constructor(attrs: any, options: object);
|
|
463
|
-
/**
|
|
464
|
-
* returns meeting is joined
|
|
465
|
-
* @private
|
|
466
|
-
* @memberof Meeting
|
|
467
|
-
* @returns {Boolean}
|
|
468
|
-
*/
|
|
469
|
-
private isJoined;
|
|
470
|
-
/**
|
|
471
|
-
* Returns whether this meeting is a Locus CALL
|
|
472
|
-
* @returns {Boolean}
|
|
473
|
-
*/
|
|
474
|
-
isLocusCall(): boolean;
|
|
475
|
-
/**
|
|
476
|
-
* Getter - Returns callStateForMetrics.correlationId
|
|
477
|
-
* @returns {string}
|
|
478
|
-
*/
|
|
479
|
-
get correlationId(): string;
|
|
480
|
-
/**
|
|
481
|
-
* Setter - sets callStateForMetrics.correlationId
|
|
482
|
-
* @param {string} correlationId
|
|
483
|
-
*/
|
|
484
|
-
set correlationId(correlationId: string);
|
|
485
|
-
/**
|
|
486
|
-
* Set meeting info and trigger `MEETING_INFO_AVAILABLE` event
|
|
487
|
-
* @param {any} info
|
|
488
|
-
* @param {string} [meetingLookupUrl] Lookup url, defined when the meeting info fetched
|
|
489
|
-
* @returns {void}
|
|
490
|
-
*/
|
|
491
|
-
private setMeetingInfo;
|
|
492
|
-
/**
|
|
493
|
-
* Add pre-fetched meeting info
|
|
494
|
-
*
|
|
495
|
-
* The passed meeting info should be be complete, e.g.: fetched after password or captcha provided
|
|
496
|
-
*
|
|
497
|
-
* @param {Object} meetingInfo - Complete meeting info
|
|
498
|
-
* @param {FetchMeetingInfoParams} fetchParams - Fetch parameters for validation
|
|
499
|
-
* @param {String|undefined} meetingLookupUrl - Lookup url, defined when the meeting info fetched
|
|
500
|
-
* @returns {Promise<void>}
|
|
501
|
-
*/
|
|
502
|
-
injectMeetingInfo(meetingInfo: any, fetchParams: FetchMeetingInfoParams, meetingLookupUrl: string | undefined): Promise<void>;
|
|
503
|
-
/**
|
|
504
|
-
* Validate fetch parameters and clear the fetchMeetingInfoTimeout timeout
|
|
505
|
-
*
|
|
506
|
-
* @param {FetchMeetingInfoParams} fetchParams - fetch parameters for validation
|
|
507
|
-
* @param {String} caller - Name of the caller for logging
|
|
508
|
-
*
|
|
509
|
-
* @returns {Promise<void>}
|
|
510
|
-
* @private
|
|
511
|
-
*/
|
|
512
|
-
private prepForFetchMeetingInfo;
|
|
513
|
-
/**
|
|
514
|
-
* Internal method for fetching meeting info
|
|
515
|
-
*
|
|
516
|
-
* @returns {Promise}
|
|
517
|
-
*/
|
|
518
|
-
private fetchMeetingInfoInternal;
|
|
519
|
-
/**
|
|
520
|
-
* Refreshes the meeting info permission token (it's required for joining meetings)
|
|
521
|
-
*
|
|
522
|
-
* @param {string} [reason] used for metrics and logging purposes (optional)
|
|
523
|
-
* @returns {Promise}
|
|
524
|
-
*/
|
|
525
|
-
refreshPermissionToken(reason?: string): Promise<void>;
|
|
526
366
|
/**
|
|
527
367
|
* Fetches meeting information.
|
|
528
368
|
* @param {Object} options
|
|
529
369
|
* @param {String} [options.password] optional
|
|
530
370
|
* @param {String} [options.captchaCode] optional
|
|
531
|
-
* @param {Boolean} [options.sendCAevents] optional - Whether to submit Call Analyzer events or not. Default: false.
|
|
532
371
|
* @public
|
|
533
372
|
* @memberof Meeting
|
|
534
373
|
* @returns {Promise}
|
|
535
374
|
*/
|
|
536
|
-
fetchMeetingInfo(
|
|
375
|
+
fetchMeetingInfo({ password, captchaCode, }: {
|
|
376
|
+
password?: string;
|
|
377
|
+
captchaCode?: string;
|
|
378
|
+
}): Promise<void>;
|
|
537
379
|
/**
|
|
538
380
|
* Checks if the supplied password/host key is correct. It returns a promise with information whether the
|
|
539
381
|
* password and captcha code were correct or not.
|
|
540
382
|
* @param {String} password - this can be either a password or a host key, can be undefined if only captcha was required
|
|
541
383
|
* @param {String} captchaCode - can be undefined if captcha was not required by the server
|
|
542
|
-
* @param {Boolean} sendCAevents - whether Call Analyzer events should be sent when fetching meeting information
|
|
543
384
|
* @public
|
|
544
385
|
* @memberof Meeting
|
|
545
386
|
* @returns {Promise<{isPasswordValid: boolean, requiredCaptcha: boolean, failureReason: MEETING_INFO_FAILURE_REASON}>}
|
|
546
387
|
*/
|
|
547
|
-
verifyPassword(password: string, captchaCode: string
|
|
388
|
+
verifyPassword(password: string, captchaCode: string): Promise<{
|
|
548
389
|
isPasswordValid: boolean;
|
|
549
390
|
requiredCaptcha: any;
|
|
550
391
|
failureReason: string;
|
|
@@ -561,14 +402,6 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
561
402
|
* @returns {Promise}
|
|
562
403
|
*/
|
|
563
404
|
refreshCaptcha(): any;
|
|
564
|
-
/**
|
|
565
|
-
* Posts metrics event for this meeting. Allows the app to send Call Analyzer events.
|
|
566
|
-
* @param {String} eventName - Call Analyzer event
|
|
567
|
-
* @public
|
|
568
|
-
* @memberof Meeting
|
|
569
|
-
* @returns {Promise}
|
|
570
|
-
*/
|
|
571
|
-
postMetrics(eventName: ClientEvent['name']): void;
|
|
572
405
|
/**
|
|
573
406
|
* Proxy function for all the listener set ups
|
|
574
407
|
* @returns {undefined}
|
|
@@ -577,50 +410,70 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
577
410
|
*/
|
|
578
411
|
private setUpLocusInfoListeners;
|
|
579
412
|
/**
|
|
580
|
-
* Set up the
|
|
413
|
+
* Set up the locus info listener for meetings disconnected due to inactivity
|
|
581
414
|
* @returns {undefined}
|
|
582
415
|
* @private
|
|
583
416
|
* @memberof Meeting
|
|
584
417
|
*/
|
|
585
|
-
|
|
418
|
+
private setUpLocusInfoMediaInactiveListener;
|
|
586
419
|
/**
|
|
587
|
-
* Set up the
|
|
420
|
+
* Set up the locus info listener for assign host permissions on a meeting
|
|
588
421
|
* @returns {undefined}
|
|
589
422
|
* @private
|
|
590
423
|
* @memberof Meeting
|
|
591
424
|
*/
|
|
592
|
-
private
|
|
425
|
+
private setUpLocusInfoAssignHostListener;
|
|
593
426
|
/**
|
|
594
|
-
* Set up the
|
|
427
|
+
* Set up the internal locus info full state object listener
|
|
595
428
|
* @returns {undefined}
|
|
596
429
|
* @private
|
|
597
430
|
* @memberof Meeting
|
|
598
431
|
*/
|
|
599
|
-
private
|
|
432
|
+
private setUpLocusFullStateListener;
|
|
600
433
|
/**
|
|
601
|
-
*
|
|
602
|
-
* @
|
|
603
|
-
* @
|
|
604
|
-
* @
|
|
605
|
-
|
|
606
|
-
|
|
434
|
+
* get the metrics payload pre
|
|
435
|
+
* @param {Object} options
|
|
436
|
+
* @param {String} options.event
|
|
437
|
+
* @param {String} options.trackingId
|
|
438
|
+
* @param {Object} options.locus
|
|
439
|
+
* @param {Array} options.mediaConnections
|
|
440
|
+
* @param {Object} options.errors
|
|
441
|
+
* @returns {Object}
|
|
442
|
+
* @memberof Meeting
|
|
443
|
+
*/
|
|
444
|
+
getAnalyzerMetricsPrePayload(options: {
|
|
445
|
+
event: string;
|
|
446
|
+
trackingId: string;
|
|
447
|
+
locus: object;
|
|
448
|
+
mediaConnections: Array<any>;
|
|
449
|
+
errors: object;
|
|
450
|
+
} | any): {};
|
|
607
451
|
/**
|
|
608
|
-
*
|
|
609
|
-
* @
|
|
452
|
+
* Send the metrics to call-analyzer dashboard
|
|
453
|
+
* @param {Object} options
|
|
454
|
+
* @param {String} options.event
|
|
455
|
+
* @param {String} options.trackingId
|
|
456
|
+
* @param {Object} options.locus
|
|
457
|
+
* @param {Object} options.errors
|
|
458
|
+
* @returns {Promise}
|
|
610
459
|
* @private
|
|
611
460
|
* @memberof Meeting
|
|
612
461
|
*/
|
|
613
|
-
private
|
|
462
|
+
private sendCallAnalyzerMetrics;
|
|
614
463
|
/**
|
|
615
|
-
*
|
|
616
|
-
* @
|
|
464
|
+
* Send the metrics to Media Quality Analyzer dashboard
|
|
465
|
+
* @param {Object} options
|
|
466
|
+
* @param {String} options.event
|
|
467
|
+
* @param {String} options.trackingId
|
|
468
|
+
* @param {Object} options.locus
|
|
469
|
+
* @returns {Promise}
|
|
617
470
|
* @private
|
|
618
471
|
* @memberof Meeting
|
|
619
472
|
*/
|
|
620
|
-
private
|
|
473
|
+
private sendMediaQualityAnalyzerMetrics;
|
|
621
474
|
/**
|
|
622
475
|
* sets the network status on meeting object
|
|
623
|
-
* @param {
|
|
476
|
+
* @param {String} networkStatus
|
|
624
477
|
* @private
|
|
625
478
|
* @returns {undefined}
|
|
626
479
|
* @memberof Meeting
|
|
@@ -680,13 +533,6 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
680
533
|
* @memberof Meeting
|
|
681
534
|
*/
|
|
682
535
|
private setupLocusControlsListener;
|
|
683
|
-
/**
|
|
684
|
-
* Trigger annotation info update event
|
|
685
|
-
@returns {undefined}
|
|
686
|
-
@param {object} contentShare
|
|
687
|
-
@param {object} previousContentShare
|
|
688
|
-
*/
|
|
689
|
-
private triggerAnnotationInfoEvent;
|
|
690
536
|
/**
|
|
691
537
|
* Set up the locus info media shares listener
|
|
692
538
|
* update content and whiteboard sharing id value for members, and updates the member
|
|
@@ -721,12 +567,6 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
721
567
|
* @memberof meeting
|
|
722
568
|
*/
|
|
723
569
|
private setUpLocusInfoMeetingInfoListener;
|
|
724
|
-
/**
|
|
725
|
-
* Handles a data channel URL change
|
|
726
|
-
* @param {String} datachannelUrl
|
|
727
|
-
* @returns {void}
|
|
728
|
-
*/
|
|
729
|
-
handleDataChannelUrlChange(datachannelUrl: any): void;
|
|
730
570
|
/**
|
|
731
571
|
* Set up the locus info embedded apps listener
|
|
732
572
|
* @returns {undefined}
|
|
@@ -785,23 +625,13 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
785
625
|
phoneNumber: string;
|
|
786
626
|
}): any;
|
|
787
627
|
/**
|
|
788
|
-
* Admit the guest(s) to the call once they are waiting
|
|
789
|
-
* If the host/cohost is in a breakout session, the locus url
|
|
790
|
-
* of the session must be provided as the authorizingLocusUrl.
|
|
791
|
-
* Regardless of host/cohost location, the locus Id (lid) in
|
|
792
|
-
* the path should be the locus Id of the main, which means the
|
|
793
|
-
* locus url of the api call must be from the main session.
|
|
794
|
-
* If these loucs urls are not provided, the function will do the check.
|
|
628
|
+
* Admit the guest(s) to the call once they are waiting
|
|
795
629
|
* @param {Array} memberIds
|
|
796
|
-
* @param {Object} sessionLocusUrls: {authorizingLocusUrl, mainLocusUrl}
|
|
797
630
|
* @returns {Promise} see #members.admitMembers
|
|
798
631
|
* @public
|
|
799
632
|
* @memberof Meeting
|
|
800
633
|
*/
|
|
801
|
-
admit(memberIds: Array<any
|
|
802
|
-
authorizingLocusUrl: string;
|
|
803
|
-
mainLocusUrl: string;
|
|
804
|
-
}): any;
|
|
634
|
+
admit(memberIds: Array<any>): any;
|
|
805
635
|
/**
|
|
806
636
|
* Remove the member from the meeting, boot them
|
|
807
637
|
* @param {String} memberId
|
|
@@ -835,63 +665,80 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
835
665
|
* @memberof Meeting
|
|
836
666
|
*/
|
|
837
667
|
getMembers(): Members;
|
|
668
|
+
/**
|
|
669
|
+
* Truthy when a meeting has an audio connection established
|
|
670
|
+
* @returns {Boolean} true if meeting audio is connected otherwise false
|
|
671
|
+
* @public
|
|
672
|
+
* @memberof Meeting
|
|
673
|
+
*/
|
|
674
|
+
isAudioConnected(): boolean;
|
|
675
|
+
/**
|
|
676
|
+
* Convenience function to tell whether a meeting is muted
|
|
677
|
+
* @returns {Boolean} if meeting audio muted or not
|
|
678
|
+
* @public
|
|
679
|
+
* @memberof Meeting
|
|
680
|
+
*/
|
|
681
|
+
isAudioMuted(): any;
|
|
682
|
+
/**
|
|
683
|
+
* Convenience function to tell if the end user last changed the audio state
|
|
684
|
+
* @returns {Boolean} if audio was manipulated by the end user
|
|
685
|
+
* @public
|
|
686
|
+
* @memberof Meeting
|
|
687
|
+
*/
|
|
688
|
+
isAudioSelf(): any;
|
|
689
|
+
/**
|
|
690
|
+
* Truthy when a meeting has a video connection established
|
|
691
|
+
* @returns {Boolean} true if meeting video connected otherwise false
|
|
692
|
+
* @public
|
|
693
|
+
* @memberof Meeting
|
|
694
|
+
*/
|
|
695
|
+
isVideoConnected(): boolean;
|
|
696
|
+
/**
|
|
697
|
+
* Convenience function to tell whether video is muted
|
|
698
|
+
* @returns {Boolean} if meeting video is muted or not
|
|
699
|
+
* @public
|
|
700
|
+
* @memberof Meeting
|
|
701
|
+
*/
|
|
702
|
+
isVideoMuted(): any;
|
|
703
|
+
/**
|
|
704
|
+
* Convenience function to tell whether the end user changed the video state
|
|
705
|
+
* @returns {Boolean} if meeting video is muted or not
|
|
706
|
+
* @public
|
|
707
|
+
* @memberof Meeting
|
|
708
|
+
*/
|
|
709
|
+
isVideoSelf(): any;
|
|
838
710
|
/**
|
|
839
711
|
* Sets the meeting info on the class instance
|
|
840
712
|
* @param {Object} meetingInfo
|
|
841
|
-
* @param {
|
|
842
|
-
* @param {String} meetingInfo.
|
|
843
|
-
* @param {String} meetingInfo.
|
|
844
|
-
* @param {String}
|
|
845
|
-
* @param {
|
|
846
|
-
* @param {String} [meetingInfo.meetingNumber]
|
|
847
|
-
* @param {String} [meetingInfo.meetingJoinUrl]
|
|
848
|
-
* @param {String} [meetingInfo.hostId]
|
|
849
|
-
* @param {String} [meetingInfo.permissionToken]
|
|
850
|
-
* @param {String} [meetingInfo.channel]
|
|
851
|
-
* @param {Object} meetingInfo.owner
|
|
713
|
+
* @param {Object} meetingInfo.body
|
|
714
|
+
* @param {String} meetingInfo.body.conversationUrl
|
|
715
|
+
* @param {String} meetingInfo.body.locusUrl
|
|
716
|
+
* @param {String} meetingInfo.body.sipUri
|
|
717
|
+
* @param {Object} meetingInfo.body.owner
|
|
852
718
|
* @param {Object | String} destination locus object with meeting data or destination string (sip url, meeting link, etc)
|
|
853
|
-
* @param {Object | String} errors Meeting info request error
|
|
854
719
|
* @returns {undefined}
|
|
855
720
|
* @private
|
|
856
721
|
* @memberof Meeting
|
|
857
722
|
*/
|
|
858
723
|
parseMeetingInfo(meetingInfo: {
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
meetingJoinUrl?: string;
|
|
867
|
-
hostId?: string;
|
|
868
|
-
permissionToken?: string;
|
|
869
|
-
channel?: string;
|
|
870
|
-
}, destination?: object | string | null, errors?: any): void;
|
|
871
|
-
/**
|
|
872
|
-
* Indicates whether policy can be applied
|
|
873
|
-
* @returns {boolean}
|
|
874
|
-
*/
|
|
875
|
-
private arePolicyRestrictionsSupported;
|
|
724
|
+
body: {
|
|
725
|
+
conversationUrl: string;
|
|
726
|
+
locusUrl: string;
|
|
727
|
+
sipUri: string;
|
|
728
|
+
owner: object;
|
|
729
|
+
};
|
|
730
|
+
} | any, destination?: object | string | null): void;
|
|
876
731
|
/**
|
|
877
|
-
*
|
|
732
|
+
* Sets the first locus info on the class instance
|
|
733
|
+
* @param {Object} locus
|
|
734
|
+
* @param {String} locus.url
|
|
735
|
+
* @param {Array} locus.participants
|
|
736
|
+
* @param {Object} locus.self
|
|
878
737
|
* @returns {undefined}
|
|
879
738
|
* @private
|
|
880
739
|
* @memberof Meeting
|
|
881
740
|
*/
|
|
882
|
-
private
|
|
883
|
-
/**
|
|
884
|
-
* Sets the self user policies based on the contents of the permission token
|
|
885
|
-
* @returns {void}
|
|
886
|
-
*/
|
|
887
|
-
setSelfUserPolicies(): void;
|
|
888
|
-
/**
|
|
889
|
-
* Sets the permission token payload on the class instance
|
|
890
|
-
*
|
|
891
|
-
* @param {String} permissionToken
|
|
892
|
-
* @returns {void}
|
|
893
|
-
*/
|
|
894
|
-
setPermissionTokenPayload(permissionToken: string): void;
|
|
741
|
+
private parseLocus;
|
|
895
742
|
/**
|
|
896
743
|
* Sets the sip uri on the class instance
|
|
897
744
|
* uses meeting info as precedence
|
|
@@ -901,6 +748,14 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
901
748
|
* @memberof Meeting
|
|
902
749
|
*/
|
|
903
750
|
setSipUri(sipUri: string): void;
|
|
751
|
+
/**
|
|
752
|
+
* Set the roap seq on the class instance
|
|
753
|
+
* @param {Number} seq
|
|
754
|
+
* @returns {undefined}
|
|
755
|
+
* @private
|
|
756
|
+
* @memberof Meeting
|
|
757
|
+
*/
|
|
758
|
+
setRoapSeq(seq: number): void;
|
|
904
759
|
/**
|
|
905
760
|
* Set the locus info the class instance
|
|
906
761
|
* @param {Object} locus
|
|
@@ -914,13 +769,16 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
914
769
|
* @private
|
|
915
770
|
* @memberof Meeting
|
|
916
771
|
*/
|
|
917
|
-
setLocus
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
772
|
+
private setLocus;
|
|
773
|
+
/**
|
|
774
|
+
* Sets the remote stream on the class instance and emits and
|
|
775
|
+
* event to developers
|
|
776
|
+
* @param {Object} pc The remote stream peer connection
|
|
777
|
+
* @returns {undefined}
|
|
778
|
+
* @public
|
|
779
|
+
* @memberof Meeting
|
|
780
|
+
*/
|
|
781
|
+
setRemoteStream(pc: any): void;
|
|
924
782
|
/**
|
|
925
783
|
* Upload logs for the current meeting
|
|
926
784
|
* @param {object} options file name and function name
|
|
@@ -930,10 +788,19 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
930
788
|
*/
|
|
931
789
|
uploadLogs(options?: object): void;
|
|
932
790
|
/**
|
|
933
|
-
* Removes remote audio
|
|
791
|
+
* Removes remote audio and video stream on the class instance and triggers an event
|
|
792
|
+
* to developers
|
|
793
|
+
* @returns {undefined}
|
|
794
|
+
* @public
|
|
795
|
+
* @memberof Meeting
|
|
796
|
+
* @deprecated after v1.89.3
|
|
797
|
+
*/
|
|
798
|
+
unsetRemoteStream(): void;
|
|
799
|
+
/**
|
|
800
|
+
* Removes remote audio, video and share tracks from class instance's mediaProperties
|
|
934
801
|
* @returns {undefined}
|
|
935
802
|
*/
|
|
936
|
-
|
|
803
|
+
unsetRemoteTracks(): void;
|
|
937
804
|
/**
|
|
938
805
|
* Removes the remote stream on the class instance and triggers an event
|
|
939
806
|
* to developers
|
|
@@ -944,92 +811,115 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
944
811
|
*/
|
|
945
812
|
closeRemoteStream(): void;
|
|
946
813
|
/**
|
|
947
|
-
* Removes the remote
|
|
814
|
+
* Removes the remote tracks on the class instance and triggers an event
|
|
948
815
|
* to developers
|
|
949
816
|
* @returns {undefined}
|
|
950
817
|
* @memberof Meeting
|
|
951
818
|
*/
|
|
952
|
-
|
|
819
|
+
closeRemoteTracks(): Promise<[any, any, any]>;
|
|
953
820
|
/**
|
|
954
|
-
*
|
|
955
|
-
*
|
|
956
|
-
*
|
|
957
|
-
* @
|
|
958
|
-
* @returns {Promise<void>}
|
|
821
|
+
* Emits the 'media:ready' event with a local stream that consists of 1 local audio and 1 local video track
|
|
822
|
+
* @returns {undefined}
|
|
823
|
+
* @private
|
|
824
|
+
* @memberof Meeting
|
|
959
825
|
*/
|
|
960
|
-
private
|
|
826
|
+
private sendLocalMediaReadyEvent;
|
|
961
827
|
/**
|
|
962
|
-
*
|
|
963
|
-
*
|
|
964
|
-
*
|
|
965
|
-
* @
|
|
966
|
-
* @
|
|
828
|
+
* Sets the local audio track on the class and emits an event to the developer
|
|
829
|
+
* @param {MediaStreamTrack} audioTrack
|
|
830
|
+
* @param {Boolean} emitEvent if true, a media ready event is emitted to the developer
|
|
831
|
+
* @returns {undefined}
|
|
832
|
+
* @private
|
|
833
|
+
* @memberof Meeting
|
|
967
834
|
*/
|
|
968
|
-
private
|
|
835
|
+
private setLocalAudioTrack;
|
|
969
836
|
/**
|
|
970
|
-
*
|
|
971
|
-
*
|
|
972
|
-
*
|
|
973
|
-
*
|
|
974
|
-
* @
|
|
975
|
-
* @
|
|
837
|
+
* Sets the local video track on the class and emits an event to the developer
|
|
838
|
+
* @param {MediaStreamTrack} videoTrack
|
|
839
|
+
* @param {Boolean} emitEvent if true, a media ready event is emitted to the developer
|
|
840
|
+
* @returns {undefined}
|
|
841
|
+
* @private
|
|
842
|
+
* @memberof Meeting
|
|
976
843
|
*/
|
|
977
|
-
private
|
|
844
|
+
private setLocalVideoTrack;
|
|
978
845
|
/**
|
|
979
|
-
*
|
|
980
|
-
*
|
|
981
|
-
*
|
|
982
|
-
* @
|
|
983
|
-
* @
|
|
846
|
+
* Sets the local media stream on the class and emits an event to the developer
|
|
847
|
+
* @param {Stream} localStream the local media stream
|
|
848
|
+
* @returns {undefined}
|
|
849
|
+
* @public
|
|
850
|
+
* @memberof Meeting
|
|
984
851
|
*/
|
|
985
|
-
|
|
852
|
+
setLocalTracks(localStream: any): void;
|
|
986
853
|
/**
|
|
987
|
-
*
|
|
854
|
+
* Sets the local media stream on the class and emits an event to the developer
|
|
855
|
+
* @param {MediaStream} localShare the local media stream
|
|
988
856
|
* @returns {undefined}
|
|
989
857
|
* @public
|
|
990
858
|
* @memberof Meeting
|
|
991
859
|
*/
|
|
992
|
-
|
|
860
|
+
setLocalShareTrack(localShare: MediaStream): void;
|
|
993
861
|
/**
|
|
994
|
-
*
|
|
995
|
-
*
|
|
996
|
-
*
|
|
997
|
-
* @returns {Promise}
|
|
862
|
+
* Closes the local stream from the class and emits an event to the developer
|
|
863
|
+
* @returns {undefined}
|
|
864
|
+
* @event media:stopped
|
|
998
865
|
* @public
|
|
999
866
|
* @memberof Meeting
|
|
1000
867
|
*/
|
|
1001
|
-
|
|
868
|
+
closeLocalStream(): any;
|
|
1002
869
|
/**
|
|
1003
|
-
*
|
|
1004
|
-
* warning DO NOT CALL WITHOUT CLOSING PEER CONNECTIONS FIRST
|
|
870
|
+
* Closes the local stream from the class and emits an event to the developer
|
|
1005
871
|
* @returns {undefined}
|
|
872
|
+
* @event media:stopped
|
|
1006
873
|
* @public
|
|
1007
874
|
* @memberof Meeting
|
|
1008
875
|
*/
|
|
1009
|
-
|
|
876
|
+
closeLocalShare(): any;
|
|
1010
877
|
/**
|
|
1011
|
-
*
|
|
1012
|
-
* @param {String} id correlation id to set on the callStateForMetrics
|
|
878
|
+
* Removes the local stream from the class and emits an event to the developer
|
|
1013
879
|
* @returns {undefined}
|
|
1014
880
|
* @public
|
|
1015
881
|
* @memberof Meeting
|
|
1016
882
|
*/
|
|
1017
|
-
|
|
883
|
+
unsetLocalVideoTrack(): void;
|
|
1018
884
|
/**
|
|
1019
|
-
*
|
|
1020
|
-
* @param {CallStateForMetrics} callStateForMetrics updated values for callStateForMetrics
|
|
885
|
+
* Removes the local share from the class and emits an event to the developer
|
|
1021
886
|
* @returns {undefined}
|
|
1022
887
|
* @public
|
|
1023
888
|
* @memberof Meeting
|
|
1024
889
|
*/
|
|
1025
|
-
|
|
890
|
+
unsetLocalShareTrack(): void;
|
|
1026
891
|
/**
|
|
1027
|
-
*
|
|
1028
|
-
* @returns {
|
|
892
|
+
* sets up listner for mercury event
|
|
893
|
+
* @returns {undefined}
|
|
894
|
+
* @public
|
|
895
|
+
* @memberof Meeting
|
|
896
|
+
*/
|
|
897
|
+
setMercuryListener(): void;
|
|
898
|
+
/**
|
|
899
|
+
* Close the peer connections and remove them from the class. Triggers an event
|
|
900
|
+
* when each is closed.
|
|
901
|
+
* @returns {Promise} returns a resolved promise with an array of closed peer connections
|
|
902
|
+
* @public
|
|
903
|
+
* @memberof Meeting
|
|
904
|
+
*/
|
|
905
|
+
closePeerConnections(): any;
|
|
906
|
+
/**
|
|
907
|
+
* Unsets the peer connections on the class
|
|
908
|
+
* warning DO NOT CALL WITHOUT CLOSING PEER CONNECTIONS FIRST
|
|
909
|
+
* @param {PeerConnection} peerConnection
|
|
910
|
+
* @returns {undefined}
|
|
911
|
+
* @public
|
|
912
|
+
* @memberof Meeting
|
|
913
|
+
*/
|
|
914
|
+
unsetPeerConnections(): void;
|
|
915
|
+
/**
|
|
916
|
+
* Convenience method to set the correlation id for the Meeting
|
|
917
|
+
* @param {String} id correlation id to set on the class
|
|
918
|
+
* @returns {undefined}
|
|
1029
919
|
* @private
|
|
1030
920
|
* @memberof Meeting
|
|
1031
921
|
*/
|
|
1032
|
-
private
|
|
922
|
+
private setCorrelationId;
|
|
1033
923
|
/**
|
|
1034
924
|
* Mute the audio for a meeting
|
|
1035
925
|
* @returns {Promise} resolves the data from muting audio {mute, self} or rejects if there is no audio set
|
|
@@ -1062,25 +952,32 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1062
952
|
* Shorthand function to join AND set up media
|
|
1063
953
|
* @param {Object} options - options to join with media
|
|
1064
954
|
* @param {JoinOptions} [options.joinOptions] - see #join()
|
|
1065
|
-
* @param {
|
|
1066
|
-
* @
|
|
955
|
+
* @param {MediaDirection} options.mediaSettings - see #addMedia()
|
|
956
|
+
* @param {AudioVideo} [options.audioVideoOptions] - see #getMediaStreams()
|
|
957
|
+
* @returns {Promise} -- {join: see join(), media: see addMedia(), local: see getMediaStreams()}
|
|
1067
958
|
* @public
|
|
1068
959
|
* @memberof Meeting
|
|
1069
960
|
* @example
|
|
1070
961
|
* joinWithMedia({
|
|
1071
962
|
* joinOptions: {resourceId: 'resourceId' },
|
|
1072
|
-
*
|
|
1073
|
-
*
|
|
1074
|
-
*
|
|
1075
|
-
*
|
|
963
|
+
* mediaSettings: {
|
|
964
|
+
* sendAudio: true,
|
|
965
|
+
* sendVideo: true,
|
|
966
|
+
* sendShare: false,
|
|
967
|
+
* receiveVideo:true,
|
|
968
|
+
* receiveAudio: true,
|
|
969
|
+
* receiveShare: true
|
|
970
|
+
* }
|
|
971
|
+
* audioVideoOptions: {
|
|
972
|
+
* audio: 'audioDeviceId',
|
|
973
|
+
* video: 'videoDeviceId'
|
|
974
|
+
* }})
|
|
1076
975
|
*/
|
|
1077
976
|
joinWithMedia(options?: {
|
|
1078
977
|
joinOptions?: any;
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
media: void;
|
|
1083
|
-
}>;
|
|
978
|
+
mediaSettings: any;
|
|
979
|
+
audioVideoOptions?: any;
|
|
980
|
+
}): any;
|
|
1084
981
|
/**
|
|
1085
982
|
* Initiates the reconnection of the media in the meeting
|
|
1086
983
|
*
|
|
@@ -1097,43 +994,23 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1097
994
|
*/
|
|
1098
995
|
isTranscriptionSupported(): boolean;
|
|
1099
996
|
/**
|
|
1100
|
-
*
|
|
1101
|
-
* @
|
|
1102
|
-
|
|
1103
|
-
isReactionsSupported(): boolean;
|
|
1104
|
-
/**
|
|
1105
|
-
* sets Caption language for the meeting
|
|
1106
|
-
* @param {string} language
|
|
1107
|
-
* @returns {Promise}
|
|
1108
|
-
*/
|
|
1109
|
-
setCaptionLanguage(language: string): Promise<unknown>;
|
|
1110
|
-
/**
|
|
1111
|
-
* sets Spoken language for the meeting
|
|
1112
|
-
* @param {string} language
|
|
1113
|
-
* @returns {Promise}
|
|
997
|
+
* Monitor the Low-Latency Mercury (LLM) web socket connection on `onError` and `onClose` states
|
|
998
|
+
* @private
|
|
999
|
+
* @returns {void}
|
|
1114
1000
|
*/
|
|
1115
|
-
|
|
1001
|
+
private monitorTranscriptionSocketConnection;
|
|
1116
1002
|
/**
|
|
1117
|
-
*
|
|
1118
|
-
* @param {Object} options object with spokenlanguage setting
|
|
1119
|
-
* @public
|
|
1120
|
-
* @returns {Promise<void>} a promise to open the WebSocket connection
|
|
1121
|
-
*/
|
|
1122
|
-
startTranscription(options?: {
|
|
1123
|
-
spokenLanguage?: string;
|
|
1124
|
-
}): Promise<void>;
|
|
1125
|
-
/**
|
|
1126
|
-
* Callback called when a relay event is received from meeting LLM Connection
|
|
1127
|
-
* @param {RelayEvent} e Event object coming from LLM Connection
|
|
1003
|
+
* Request for a WebSocket Url, open and monitor the WebSocket connection
|
|
1128
1004
|
* @private
|
|
1129
|
-
* @returns {void}
|
|
1005
|
+
* @returns {Promise<void>} a promise to open the WebSocket connection
|
|
1130
1006
|
*/
|
|
1131
|
-
private
|
|
1007
|
+
private startTranscription;
|
|
1132
1008
|
/**
|
|
1133
|
-
*
|
|
1009
|
+
* stop recieving Transcription by closing
|
|
1010
|
+
* the web socket connection properly
|
|
1134
1011
|
* @returns {void}
|
|
1135
1012
|
*/
|
|
1136
|
-
|
|
1013
|
+
stopReceivingTranscription(): void;
|
|
1137
1014
|
/**
|
|
1138
1015
|
* triggers an event to notify that the user
|
|
1139
1016
|
* will not receive any more transcription
|
|
@@ -1153,14 +1030,7 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1153
1030
|
* if joining as host on second loop, pass pin and pass moderator if joining as guest on second loop
|
|
1154
1031
|
* Scenario D: Joining any other way (sip, pstn, conversationUrl, link just need to specify resourceId)
|
|
1155
1032
|
*/
|
|
1156
|
-
join(options?: any):
|
|
1157
|
-
/**
|
|
1158
|
-
* Connects to low latency mercury and reconnects if the address has changed
|
|
1159
|
-
* It will also disconnect if called when the meeting has ended
|
|
1160
|
-
* @param {String} datachannelUrl
|
|
1161
|
-
* @returns {Promise}
|
|
1162
|
-
*/
|
|
1163
|
-
updateLLMConnection(): Promise<any>;
|
|
1033
|
+
join(options?: any): any;
|
|
1164
1034
|
/**
|
|
1165
1035
|
* Use phone for meeting audio
|
|
1166
1036
|
* @param {String} phoneNumber If provided, it will dial-out using this number. If not provided, dial-in will be used
|
|
@@ -1168,7 +1038,7 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1168
1038
|
* @public
|
|
1169
1039
|
* @memberof Meeting
|
|
1170
1040
|
*/
|
|
1171
|
-
usePhoneAudio(phoneNumber: string):
|
|
1041
|
+
usePhoneAudio(phoneNumber: string): any;
|
|
1172
1042
|
/**
|
|
1173
1043
|
* Determines if the given pstnStatus is in a state which implies the phone is provisioned
|
|
1174
1044
|
* @param {String} pstnStatus
|
|
@@ -1217,162 +1087,58 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1217
1087
|
*/
|
|
1218
1088
|
moveFrom(resourceId: string): any;
|
|
1219
1089
|
/**
|
|
1220
|
-
*
|
|
1221
|
-
*
|
|
1222
|
-
* @param {
|
|
1223
|
-
* @
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
|
|
1227
|
-
*
|
|
1228
|
-
*
|
|
1229
|
-
* @returns {undefined}
|
|
1090
|
+
* Get local media streams based on options passed
|
|
1091
|
+
* @param {MediaDirection} mediaDirection A configurable options object for joining a meeting
|
|
1092
|
+
* @param {AudioVideo} [audioVideo] audio/video object to set audioinput and videoinput devices, see #Media.getUserMedia
|
|
1093
|
+
* @param {SharePreferences} [sharePreferences] audio/video object to set audioinput and videoinput devices, see #Media.getUserMedia
|
|
1094
|
+
* @returns {Promise} see #Media.getUserMedia
|
|
1095
|
+
* @public
|
|
1096
|
+
* @todo should be static, or moved so can be called outside of a meeting
|
|
1097
|
+
* @memberof Meeting
|
|
1230
1098
|
*/
|
|
1231
|
-
|
|
1232
|
-
setupMediaConnectionListeners: () => void;
|
|
1099
|
+
getMediaStreams: (mediaDirection: any, audioVideo?: any, sharePreferences?: any) => any;
|
|
1233
1100
|
/**
|
|
1234
|
-
*
|
|
1235
|
-
* @
|
|
1236
|
-
* @
|
|
1101
|
+
* Checks if the machine has at least one audio or video device
|
|
1102
|
+
* @param {Object} options
|
|
1103
|
+
* @param {Boolean} options.sendAudio
|
|
1104
|
+
* @param {Boolean} options.sendVideo
|
|
1105
|
+
* @returns {Object}
|
|
1237
1106
|
* @memberof Meetings
|
|
1238
1107
|
*/
|
|
1239
|
-
|
|
1240
|
-
|
|
1241
|
-
|
|
1242
|
-
|
|
1243
|
-
*
|
|
1244
|
-
* @param {Object} turnServerInfo TURN server information
|
|
1245
|
-
* @param {BundlePolicy} [bundlePolicy] Bundle policy settings
|
|
1246
|
-
* @param {AddMediaOptions} [options] Options for enabling/disabling audio/video
|
|
1247
|
-
* @returns {RoapMediaConnection | MultistreamRoapMediaConnection}
|
|
1248
|
-
*/
|
|
1249
|
-
private createMediaConnection;
|
|
1250
|
-
/**
|
|
1251
|
-
* Listens for an event emitted by eventEmitter and emits it from the meeting object
|
|
1252
|
-
*
|
|
1253
|
-
* @private
|
|
1254
|
-
* @param {*} eventEmitter object from which to forward the event
|
|
1255
|
-
* @param {*} eventTypeToForward which event type to listen on and to forward
|
|
1256
|
-
* @param {string} meetingEventType event type to be used in the event emitted from the meeting object
|
|
1257
|
-
* @returns {void}
|
|
1258
|
-
*/
|
|
1259
|
-
forwardEvent(eventEmitter: any, eventTypeToForward: any, meetingEventType: any): void;
|
|
1108
|
+
getSupportedDevices: ({ sendAudio, sendVideo, }: {
|
|
1109
|
+
sendAudio: boolean;
|
|
1110
|
+
sendVideo: boolean;
|
|
1111
|
+
}) => any;
|
|
1260
1112
|
/**
|
|
1261
|
-
*
|
|
1262
|
-
*
|
|
1263
|
-
*
|
|
1264
|
-
* @private
|
|
1265
|
-
* @param {LocalStreams} localStreams
|
|
1266
|
-
* @returns {Promise<void>}
|
|
1267
|
-
*/
|
|
1268
|
-
private setUpLocalStreamReferences;
|
|
1269
|
-
/**
|
|
1270
|
-
* Calls mediaProperties.waitForMediaConnectionConnected() and sends CA client.ice.end metric on failure
|
|
1271
|
-
*
|
|
1272
|
-
* @private
|
|
1273
|
-
* @returns {Promise<void>}
|
|
1113
|
+
* Get the devices from the Media module
|
|
1114
|
+
* @returns {Promise} resolves to an array of DeviceInfo
|
|
1115
|
+
* @memberof Meetings
|
|
1274
1116
|
*/
|
|
1275
|
-
|
|
1117
|
+
getDevices: () => any;
|
|
1276
1118
|
/**
|
|
1277
|
-
*
|
|
1278
|
-
*
|
|
1119
|
+
* Registers for all required StatsAnalyzer events
|
|
1279
1120
|
* @private
|
|
1280
1121
|
* @returns {void}
|
|
1122
|
+
* @memberof Meetings
|
|
1281
1123
|
*/
|
|
1282
|
-
|
|
1283
|
-
/**
|
|
1284
|
-
* Handles device logging
|
|
1285
|
-
*
|
|
1286
|
-
* @private
|
|
1287
|
-
* @static
|
|
1288
|
-
* @returns {Promise<void>}
|
|
1289
|
-
*/
|
|
1290
|
-
private static handleDeviceLogging;
|
|
1291
|
-
/**
|
|
1292
|
-
* Returns a promise. This promise is created once the local sdp offer has been successfully created and is resolved
|
|
1293
|
-
* once the remote sdp answer has been received.
|
|
1294
|
-
*
|
|
1295
|
-
* @private
|
|
1296
|
-
* @returns {Promise<void>}
|
|
1297
|
-
*/
|
|
1298
|
-
private waitForRemoteSDPAnswer;
|
|
1299
|
-
/**
|
|
1300
|
-
* Calls establishMediaConnection with isForced = true to force turn discovery to happen
|
|
1301
|
-
*
|
|
1302
|
-
* @private
|
|
1303
|
-
* @param {RemoteMediaManagerConfiguration} [remoteMediaManagerConfig]
|
|
1304
|
-
* @param {BundlePolicy} [bundlePolicy]
|
|
1305
|
-
* @returns {Promise<void>}
|
|
1306
|
-
*/
|
|
1307
|
-
private retryEstablishMediaConnectionWithForcedTurnDiscovery;
|
|
1308
|
-
/**
|
|
1309
|
-
* Does relevant clean up before retrying to establish media connection
|
|
1310
|
-
* and performs the retry with forced turn discovery
|
|
1311
|
-
*
|
|
1312
|
-
* @private
|
|
1313
|
-
* @param {RemoteMediaManagerConfiguration} [remoteMediaManagerConfig]
|
|
1314
|
-
* @param {BundlePolicy} [bundlePolicy]
|
|
1315
|
-
* @returns {Promise<void>}
|
|
1316
|
-
*/
|
|
1317
|
-
private retryWithForcedTurnDiscovery;
|
|
1318
|
-
/**
|
|
1319
|
-
* If waitForMediaConnectionConnected() fails when we haven't done turn discovery then we
|
|
1320
|
-
* attempt to establish a media connection again, but this time using turn discovery. If we
|
|
1321
|
-
* used turn discovery on the first pass we do not attempt connection again.
|
|
1322
|
-
*
|
|
1323
|
-
* @private
|
|
1324
|
-
* @param {Error} error
|
|
1325
|
-
* @param {RemoteMediaManagerConfiguration} [remoteMediaManagerConfig]
|
|
1326
|
-
* @param {BundlePolicy} [bundlePolicy]
|
|
1327
|
-
* @returns {Promise<void>}
|
|
1328
|
-
*/
|
|
1329
|
-
private handleWaitForMediaConnectionConnectedError;
|
|
1330
|
-
/**
|
|
1331
|
-
* Does TURN discovery, SDP offer/answer exhange, establishes ICE connection and DTLS handshake.
|
|
1332
|
-
*
|
|
1333
|
-
* @private
|
|
1334
|
-
* @param {RemoteMediaManagerConfiguration} [remoteMediaManagerConfig]
|
|
1335
|
-
* @param {BundlePolicy} [bundlePolicy]
|
|
1336
|
-
* @param {boolean} [isForced] - let isForced be true to do turn discovery regardless of reachability results
|
|
1337
|
-
* @returns {Promise<void>}
|
|
1338
|
-
*/
|
|
1339
|
-
private establishMediaConnection;
|
|
1340
|
-
/**
|
|
1341
|
-
* Cleans up stats analyzer, peer connection, and turns off listeners
|
|
1342
|
-
*
|
|
1343
|
-
* @private
|
|
1344
|
-
* @returns {Promise<void>}
|
|
1345
|
-
*/
|
|
1346
|
-
private cleanUpOnAddMediaFailure;
|
|
1347
|
-
/**
|
|
1348
|
-
* Sends stats report, closes peer connection and cleans up any media connection
|
|
1349
|
-
* related things before trying to establish media connection again with turn server
|
|
1350
|
-
*
|
|
1351
|
-
* @private
|
|
1352
|
-
* @returns {Promise<void>}
|
|
1353
|
-
*/
|
|
1354
|
-
private cleanUpBeforeRetryWithTurnServer;
|
|
1124
|
+
setupStatsAnalyzerEventHandlers: () => void;
|
|
1355
1125
|
/**
|
|
1356
|
-
*
|
|
1357
|
-
*
|
|
1358
|
-
* @param {
|
|
1359
|
-
* @
|
|
1126
|
+
* Specify joining via audio (option: pstn), video, screenshare
|
|
1127
|
+
* @param {Object} options A configurable options object for joining a meeting
|
|
1128
|
+
* @param {Object} options.resourceId pass the deviceId
|
|
1129
|
+
* @param {MediaDirection} options.mediaSettings pass media options
|
|
1130
|
+
* @param {MediaStream} options.localStream
|
|
1131
|
+
* @param {MediaStream} options.localShare
|
|
1132
|
+
* @returns {Promise}
|
|
1360
1133
|
* @public
|
|
1361
1134
|
* @memberof Meeting
|
|
1362
1135
|
*/
|
|
1363
|
-
addMedia(options?:
|
|
1136
|
+
addMedia(options?: any): any;
|
|
1364
1137
|
/**
|
|
1365
1138
|
* Informs if the peer connection is in a state that can be updated with updateMedia (audio/video/share)
|
|
1366
1139
|
* @returns {Boolean}
|
|
1367
1140
|
*/
|
|
1368
1141
|
canUpdateMedia(): boolean;
|
|
1369
|
-
/**
|
|
1370
|
-
* media failed, so collect a stats report from webrtc using the wcme connection to grab the rtc stats report
|
|
1371
|
-
* send a webrtc telemetry dump to the configured server using the internal media core check metrics configured callback
|
|
1372
|
-
* @param {String} callFrom - the function calling this function, optional.
|
|
1373
|
-
* @returns {Promise<void>}
|
|
1374
|
-
*/
|
|
1375
|
-
private forceSendStatsReport;
|
|
1376
1142
|
/**
|
|
1377
1143
|
* Enqueues a media update operation.
|
|
1378
1144
|
* @param {String} mediaUpdateType one of MEDIA_UPDATE_TYPE values
|
|
@@ -1398,26 +1164,86 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1398
1164
|
*/
|
|
1399
1165
|
processNextQueuedMediaUpdate: () => void;
|
|
1400
1166
|
/**
|
|
1401
|
-
*
|
|
1402
|
-
*
|
|
1403
|
-
* updateMedia({audioEnabled: false}) is called, the audio will not be sent or received anymore,
|
|
1404
|
-
* but the track's "published" state is not changed and when updateMedia({audioEnabled: true}) is called,
|
|
1405
|
-
* the sending of the audio from the same track will resume.
|
|
1406
|
-
*
|
|
1167
|
+
* A confluence of updateAudio, updateVideo, and updateShare
|
|
1168
|
+
* this function re-establishes all of the media streams with new options
|
|
1407
1169
|
* @param {Object} options
|
|
1408
|
-
* @param {
|
|
1409
|
-
* @param {
|
|
1410
|
-
* @param {
|
|
1170
|
+
* @param {MediaStream} options.localStream
|
|
1171
|
+
* @param {MediaStream} options.localShare
|
|
1172
|
+
* @param {MediaDirection} options.mediaSettings
|
|
1411
1173
|
* @returns {Promise}
|
|
1174
|
+
* @todo fix setRemoteStream for updateMedia
|
|
1412
1175
|
* @public
|
|
1413
1176
|
* @memberof Meeting
|
|
1414
1177
|
*/
|
|
1415
|
-
updateMedia(options
|
|
1416
|
-
|
|
1417
|
-
|
|
1418
|
-
|
|
1419
|
-
|
|
1420
|
-
|
|
1178
|
+
updateMedia(options?: {
|
|
1179
|
+
localStream?: MediaStream;
|
|
1180
|
+
localShare?: MediaStream;
|
|
1181
|
+
mediaSettings?: any;
|
|
1182
|
+
}): any;
|
|
1183
|
+
/**
|
|
1184
|
+
* Update the main audio track with new parameters
|
|
1185
|
+
* @param {Object} options
|
|
1186
|
+
* @param {boolean} options.sendAudio
|
|
1187
|
+
* @param {boolean} options.receiveAudio
|
|
1188
|
+
* @param {MediaStream} options.stream Stream that contains the audio track to update
|
|
1189
|
+
* @returns {Promise}
|
|
1190
|
+
* @public
|
|
1191
|
+
* @memberof Meeting
|
|
1192
|
+
*/
|
|
1193
|
+
updateAudio(options: {
|
|
1194
|
+
sendAudio: boolean;
|
|
1195
|
+
receiveAudio: boolean;
|
|
1196
|
+
stream: MediaStream;
|
|
1197
|
+
}): Promise<any>;
|
|
1198
|
+
/**
|
|
1199
|
+
* Update the main video track with new parameters
|
|
1200
|
+
* @param {Object} options
|
|
1201
|
+
* @param {boolean} options.sendVideo
|
|
1202
|
+
* @param {boolean} options.receiveVideo
|
|
1203
|
+
* @param {MediaStream} options.stream Stream that contains the video track to update
|
|
1204
|
+
* @returns {Promise}
|
|
1205
|
+
* @public
|
|
1206
|
+
* @memberof Meeting
|
|
1207
|
+
*/
|
|
1208
|
+
updateVideo(options: {
|
|
1209
|
+
sendVideo: boolean;
|
|
1210
|
+
receiveVideo: boolean;
|
|
1211
|
+
stream: MediaStream;
|
|
1212
|
+
}): any;
|
|
1213
|
+
/**
|
|
1214
|
+
* Internal function when stopping a share stream, cleanup
|
|
1215
|
+
* @param {boolean} sendShare
|
|
1216
|
+
* @param {boolean} previousShareStatus
|
|
1217
|
+
* @returns {Promise}
|
|
1218
|
+
* @private
|
|
1219
|
+
* @memberof Meeting
|
|
1220
|
+
*/
|
|
1221
|
+
private checkForStopShare;
|
|
1222
|
+
/**
|
|
1223
|
+
* Update the share streams, can be used to start sharing
|
|
1224
|
+
* @param {Object} options
|
|
1225
|
+
* @param {boolean} options.sendShare
|
|
1226
|
+
* @param {boolean} options.receiveShare
|
|
1227
|
+
* @returns {Promise}
|
|
1228
|
+
* @public
|
|
1229
|
+
* @memberof Meeting
|
|
1230
|
+
*/
|
|
1231
|
+
updateShare(options: {
|
|
1232
|
+
sendShare?: boolean;
|
|
1233
|
+
receiveShare?: boolean;
|
|
1234
|
+
stream?: any;
|
|
1235
|
+
skipSignalingCheck?: boolean;
|
|
1236
|
+
}): any;
|
|
1237
|
+
/**
|
|
1238
|
+
* Do all the attach media pre set up before executing the actual attach
|
|
1239
|
+
* @param {MediaStream} localStream
|
|
1240
|
+
* @param {MediaStream} localShare
|
|
1241
|
+
* @param {MediaDirection} mediaSettings
|
|
1242
|
+
* @returns {undefined}
|
|
1243
|
+
* @private
|
|
1244
|
+
* @memberof Meeting
|
|
1245
|
+
*/
|
|
1246
|
+
private preMedia;
|
|
1421
1247
|
/**
|
|
1422
1248
|
* Acknowledge the meeting, outgoing or incoming
|
|
1423
1249
|
* @param {String} type
|
|
@@ -1425,11 +1251,7 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1425
1251
|
* @public
|
|
1426
1252
|
* @memberof Meeting
|
|
1427
1253
|
*/
|
|
1428
|
-
acknowledge(type: string):
|
|
1429
|
-
response: any;
|
|
1430
|
-
}> | Promise<{
|
|
1431
|
-
message: string;
|
|
1432
|
-
}>;
|
|
1254
|
+
acknowledge(type: string): any;
|
|
1433
1255
|
/**
|
|
1434
1256
|
* Decline this meeting
|
|
1435
1257
|
* @param {String} reason
|
|
@@ -1439,45 +1261,15 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1439
1261
|
*/
|
|
1440
1262
|
decline(reason: string): any;
|
|
1441
1263
|
/**
|
|
1442
|
-
*
|
|
1443
|
-
*
|
|
1444
|
-
* This is to support quickly submitting a leave request when the browser/tab is closing.
|
|
1445
|
-
* Calling meeting.leave will not work because there are some async steps that will
|
|
1446
|
-
* not complete before the browser is closed. Instead, we pre-gather all the
|
|
1447
|
-
* information/options needed for the request(s), and then simply and quickly
|
|
1448
|
-
* fire the fetch(es) when pagehide is triggered.
|
|
1449
|
-
*
|
|
1450
|
-
* We must use fetch instead of request because fetch has a keepalive option that
|
|
1451
|
-
* allows the request it to outlive the page.
|
|
1452
|
-
*
|
|
1453
|
-
* Note: the $timings values will be wrong, but setRequestTimingsAndFetch() will
|
|
1454
|
-
* properly adjust them before submitting.
|
|
1455
|
-
*
|
|
1456
|
-
* @public
|
|
1264
|
+
* Leave the current meeting
|
|
1457
1265
|
* @param {Object} options leave options
|
|
1458
1266
|
* @param {String} options.resourceId the device with which to leave from, empty if just the computer
|
|
1459
|
-
* @param {any} options.reason the reason for leaving
|
|
1460
|
-
* @returns {Promise} resolves to options to be used with fetch
|
|
1461
|
-
*/
|
|
1462
|
-
buildLeaveFetchRequestOptions(options?: {
|
|
1463
|
-
resourceId?: string;
|
|
1464
|
-
reason?: any;
|
|
1465
|
-
}): any;
|
|
1466
|
-
/**
|
|
1467
|
-
* Leave the current meeting
|
|
1468
|
-
* @param {Object} options - leave options
|
|
1469
|
-
* @param {String} [options.resourceId] - the device with which to leave from, empty if just the computer
|
|
1470
|
-
* @param {String} [options.clientEventLeaveReason] - the leaveReason to include in the Call Analyzer event.
|
|
1471
|
-
* Must be one of: 'paired-leave' | 'one-to-one' | 'ended-by-locus' (defaults to no reason)
|
|
1472
|
-
* https://sqbu-github.cisco.com/WebExSquared/event-dictionary/blob/main/diagnostic-events.raml#L796
|
|
1473
|
-
* @param {String} [options.reason] - only used for logging
|
|
1474
1267
|
* @returns {Promise}
|
|
1475
1268
|
* @public
|
|
1476
1269
|
* @memberof Meeting
|
|
1477
1270
|
*/
|
|
1478
1271
|
leave(options?: {
|
|
1479
1272
|
resourceId?: string;
|
|
1480
|
-
clientEventLeaveReason?: ClientEventLeaveReason;
|
|
1481
1273
|
reason?: any;
|
|
1482
1274
|
}): any;
|
|
1483
1275
|
/**
|
|
@@ -1505,12 +1297,12 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1505
1297
|
*/
|
|
1506
1298
|
private requestScreenShareFloor;
|
|
1507
1299
|
/**
|
|
1508
|
-
*
|
|
1509
|
-
*
|
|
1510
|
-
*
|
|
1511
|
-
* @
|
|
1300
|
+
* Stops the screen share
|
|
1301
|
+
* @returns {Promise} see #updateShare
|
|
1302
|
+
* @public
|
|
1303
|
+
* @memberof Meeting
|
|
1512
1304
|
*/
|
|
1513
|
-
|
|
1305
|
+
stopShare(options?: {}): any;
|
|
1514
1306
|
/**
|
|
1515
1307
|
* Sends a request to Locus to release the screen share floor.
|
|
1516
1308
|
* @returns {Promise} see #meetingRequest.changeMeetingFloor
|
|
@@ -1541,16 +1333,6 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1541
1333
|
* @memberof Meeting
|
|
1542
1334
|
*/
|
|
1543
1335
|
setDisallowUnmute(enabled: boolean): Promise<any>;
|
|
1544
|
-
/**
|
|
1545
|
-
* set the mute all flag for participants if you're the host
|
|
1546
|
-
* @returns {Promise}
|
|
1547
|
-
* @param {boolean} mutedEnabled
|
|
1548
|
-
* @param {boolean} disallowUnmuteEnabled
|
|
1549
|
-
* @param {boolean} muteOnEntryEnabled
|
|
1550
|
-
* @public
|
|
1551
|
-
* @memberof Meeting
|
|
1552
|
-
*/
|
|
1553
|
-
setMuteAll(mutedEnabled: boolean, disallowUnmuteEnabled: boolean, muteOnEntryEnabled: boolean): Promise<any>;
|
|
1554
1336
|
/**
|
|
1555
1337
|
* End the recording of this meeting
|
|
1556
1338
|
* @returns {Promise}
|
|
@@ -1601,7 +1383,7 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1601
1383
|
* @public
|
|
1602
1384
|
* @memberof Meeting
|
|
1603
1385
|
*/
|
|
1604
|
-
sendDTMF(tones: string):
|
|
1386
|
+
sendDTMF(tones: string): any;
|
|
1605
1387
|
/**
|
|
1606
1388
|
* Sends request to change layout type for the current meeting for the specific participant/device only
|
|
1607
1389
|
* @param {String} [layoutType] a layout type that should be available in meeting constants {@link #layout_types}
|
|
@@ -1626,41 +1408,50 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1626
1408
|
height: number;
|
|
1627
1409
|
};
|
|
1628
1410
|
}): any;
|
|
1411
|
+
/**
|
|
1412
|
+
* Sets the quality of the local video stream
|
|
1413
|
+
* @param {String} level {LOW|MEDIUM|HIGH}
|
|
1414
|
+
* @returns {Promise<MediaStream>} localStream
|
|
1415
|
+
*/
|
|
1416
|
+
setLocalVideoQuality(level: string): any;
|
|
1629
1417
|
/**
|
|
1630
1418
|
* Sets the quality level of the remote incoming media
|
|
1631
1419
|
* @param {String} level {LOW|MEDIUM|HIGH}
|
|
1632
1420
|
* @returns {Promise}
|
|
1633
1421
|
*/
|
|
1634
|
-
setRemoteQualityLevel(level: string):
|
|
1422
|
+
setRemoteQualityLevel(level: string): any;
|
|
1635
1423
|
/**
|
|
1636
|
-
*
|
|
1637
|
-
* @
|
|
1638
|
-
* @
|
|
1639
|
-
* @
|
|
1424
|
+
* This is deprecated, please use setLocalVideoQuality for setting local and setRemoteQualityLevel for remote
|
|
1425
|
+
* @param {String} level {LOW|MEDIUM|HIGH}
|
|
1426
|
+
* @returns {Promise}
|
|
1427
|
+
* @deprecated After FHD support
|
|
1640
1428
|
*/
|
|
1641
|
-
|
|
1429
|
+
setMeetingQuality(level: string): any;
|
|
1642
1430
|
/**
|
|
1643
|
-
*
|
|
1644
|
-
* @
|
|
1645
|
-
* @
|
|
1646
|
-
* @param {
|
|
1647
|
-
* @
|
|
1431
|
+
* @param {Object} options parameter
|
|
1432
|
+
* @param {Boolean} options.sendAudio send audio from the display share
|
|
1433
|
+
* @param {Boolean} options.sendShare send video from the display share
|
|
1434
|
+
* @param {Object} options.sharePreferences
|
|
1435
|
+
* @param {MediaTrackConstraints} options.sharePreferences.shareConstraints constraints to apply to video
|
|
1436
|
+
* @see {@link https://developer.mozilla.org/en-US/docs/Web/API/MediaTrackConstraints}
|
|
1437
|
+
* @param {Boolean} options.sharePreferences.highFrameRate if shareConstraints isn't provided, set default values based off of this boolean
|
|
1438
|
+
* @returns {Promise}
|
|
1648
1439
|
*/
|
|
1649
|
-
|
|
1440
|
+
shareScreen(options?: {
|
|
1441
|
+
sendAudio: boolean;
|
|
1442
|
+
sendShare: boolean;
|
|
1443
|
+
sharePreferences: {
|
|
1444
|
+
shareConstraints: MediaTrackConstraints;
|
|
1445
|
+
};
|
|
1446
|
+
}): any;
|
|
1650
1447
|
/**
|
|
1651
|
-
* Functionality for when a share
|
|
1448
|
+
* Functionality for when a share is ended.
|
|
1652
1449
|
* @private
|
|
1653
1450
|
* @memberof Meeting
|
|
1451
|
+
* @param {MediaStream} localShare
|
|
1654
1452
|
* @returns {undefined}
|
|
1655
1453
|
*/
|
|
1656
|
-
private
|
|
1657
|
-
/**
|
|
1658
|
-
* Emits meeting:stoppedSharingLocal
|
|
1659
|
-
* @private
|
|
1660
|
-
* @returns {undefined}
|
|
1661
|
-
* @memberof Meeting
|
|
1662
|
-
*/
|
|
1663
|
-
private triggerStoppedSharing;
|
|
1454
|
+
private handleShareTrackEnded;
|
|
1664
1455
|
/**
|
|
1665
1456
|
* Emits the 'network:quality' event
|
|
1666
1457
|
* 1 indicates an acceptable uplink network.
|
|
@@ -1675,133 +1466,157 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1675
1466
|
private sendNetworkQualityEvent;
|
|
1676
1467
|
/**
|
|
1677
1468
|
* Handle logging the media
|
|
1678
|
-
* @param {Object}
|
|
1469
|
+
* @param {Object} audioTrack The audio track
|
|
1470
|
+
* @param {Object} videoTrack The video track
|
|
1679
1471
|
* @private
|
|
1680
1472
|
* @returns {undefined}
|
|
1681
1473
|
*/
|
|
1682
1474
|
private handleMediaLogging;
|
|
1683
1475
|
/**
|
|
1684
|
-
*
|
|
1685
|
-
* @returns {
|
|
1476
|
+
* @param {string} typeMedia 'audio' or 'video'
|
|
1477
|
+
* @returns {undefined}
|
|
1686
1478
|
*/
|
|
1687
|
-
|
|
1479
|
+
setStartSetupDelay(typeMedia: string): void;
|
|
1688
1480
|
/**
|
|
1689
|
-
*
|
|
1690
|
-
* @returns {
|
|
1691
|
-
* @public
|
|
1692
|
-
* @memberof Meeting
|
|
1481
|
+
* @param {string} typeMedia 'audio' or 'video'
|
|
1482
|
+
* @returns {undefined}
|
|
1693
1483
|
*/
|
|
1694
|
-
|
|
1484
|
+
setEndSetupDelay(typeMedia: string): void;
|
|
1695
1485
|
/**
|
|
1696
|
-
*
|
|
1486
|
+
* @param {string} typeMedia 'audio' or 'video'
|
|
1487
|
+
* @returns {string} duration between start and end of setup
|
|
1488
|
+
*/
|
|
1489
|
+
getSetupDelayDuration(typeMedia: string): number;
|
|
1490
|
+
/**
|
|
1491
|
+
* @param {string} typeMedia 'audio' or 'video'
|
|
1697
1492
|
* @returns {undefined}
|
|
1698
|
-
* @public
|
|
1699
|
-
* @memberof Meeting
|
|
1700
1493
|
*/
|
|
1701
|
-
|
|
1494
|
+
setStartSendingMediaDelay(typeMedia: string): void;
|
|
1702
1495
|
/**
|
|
1703
|
-
*
|
|
1704
|
-
* @returns {
|
|
1705
|
-
* @private
|
|
1706
|
-
* @memberof Meeting
|
|
1496
|
+
* @param {string} typeMedia 'audio' or 'video'
|
|
1497
|
+
* @returns {undefined}
|
|
1707
1498
|
*/
|
|
1708
|
-
|
|
1499
|
+
setEndSendingMediaDelay(typeMedia: string): void;
|
|
1709
1500
|
/**
|
|
1710
|
-
*
|
|
1711
|
-
* @returns {
|
|
1712
|
-
* @private
|
|
1713
|
-
* @memberof Meeting
|
|
1501
|
+
* @param {string} typeMedia 'audio' or 'video'
|
|
1502
|
+
* @returns {string} duration between join response and first media tx
|
|
1714
1503
|
*/
|
|
1715
|
-
|
|
1504
|
+
getSendingMediaDelayDuration(typeMedia: string): number;
|
|
1716
1505
|
/**
|
|
1717
|
-
* Send a reaction inside the meeting.
|
|
1718
1506
|
*
|
|
1719
|
-
* @
|
|
1720
|
-
* @param {SkinToneType} skinToneType - skin tone for the reaction. Example: "medium_dark"
|
|
1721
|
-
* @returns {Promise}
|
|
1722
|
-
* @public
|
|
1723
|
-
* @memberof Meeting
|
|
1507
|
+
* @returns {undefined}
|
|
1724
1508
|
*/
|
|
1725
|
-
|
|
1509
|
+
setStartLocalSDPGenRemoteSDPRecvDelay(): void;
|
|
1726
1510
|
/**
|
|
1727
|
-
* Method to enable or disable reactions inside the meeting.
|
|
1728
1511
|
*
|
|
1729
|
-
* @
|
|
1730
|
-
* @returns {Promise}
|
|
1731
|
-
* @public
|
|
1732
|
-
* @memberof Meeting
|
|
1512
|
+
* @returns {undefined}
|
|
1733
1513
|
*/
|
|
1734
|
-
|
|
1514
|
+
setEndLocalSDPGenRemoteSDPRecvDelay(): void;
|
|
1735
1515
|
/**
|
|
1736
|
-
* Throws if we don't have a media connection created
|
|
1737
1516
|
*
|
|
1738
|
-
* @returns {
|
|
1517
|
+
* @returns {string} duration between local SDP generation and remote SDP reception
|
|
1739
1518
|
*/
|
|
1740
|
-
|
|
1519
|
+
getLocalSDPGenRemoteSDPRecvDelay(): number;
|
|
1741
1520
|
/**
|
|
1742
|
-
* Method to enable or disable the 'Music mode' effect on audio stream
|
|
1743
1521
|
*
|
|
1744
|
-
* @
|
|
1745
|
-
* @returns {Promise}
|
|
1522
|
+
* @returns {undefined}
|
|
1746
1523
|
*/
|
|
1747
|
-
|
|
1748
|
-
/**
|
|
1524
|
+
setStartCallInitiateJoinReq(): void;
|
|
1525
|
+
/**
|
|
1749
1526
|
*
|
|
1750
|
-
* @returns {
|
|
1527
|
+
* @returns {undefined}
|
|
1751
1528
|
*/
|
|
1752
|
-
|
|
1529
|
+
setEndCallInitiateJoinReq(): void;
|
|
1753
1530
|
/**
|
|
1754
|
-
* Publishes a stream.
|
|
1755
1531
|
*
|
|
1756
|
-
* @
|
|
1757
|
-
* @param {LocalStream} stream to publish
|
|
1758
|
-
* @returns {Promise}
|
|
1532
|
+
* @returns {string} duration between call initiate and sending join request to locus
|
|
1759
1533
|
*/
|
|
1760
|
-
|
|
1534
|
+
getCallInitiateJoinReq(): number;
|
|
1761
1535
|
/**
|
|
1762
|
-
* Un-publishes a stream.
|
|
1763
1536
|
*
|
|
1764
|
-
* @
|
|
1765
|
-
* @param {LocalStream} stream to unpublish
|
|
1766
|
-
* @returns {Promise}
|
|
1537
|
+
* @returns {undefined}
|
|
1767
1538
|
*/
|
|
1768
|
-
|
|
1539
|
+
setStartJoinReqResp(): void;
|
|
1769
1540
|
/**
|
|
1770
|
-
* Publishes specified local streams in the meeting
|
|
1771
1541
|
*
|
|
1772
|
-
* @
|
|
1773
|
-
* @returns {Promise}
|
|
1542
|
+
* @returns {undefined}
|
|
1774
1543
|
*/
|
|
1775
|
-
|
|
1544
|
+
setEndJoinReqResp(): void;
|
|
1776
1545
|
/**
|
|
1777
|
-
* Un-publishes specified local streams in the meeting
|
|
1778
1546
|
*
|
|
1779
|
-
* @
|
|
1780
|
-
* @returns {Promise}
|
|
1547
|
+
* @returns {string} duration between sending locus join request and receiving join response
|
|
1781
1548
|
*/
|
|
1782
|
-
|
|
1549
|
+
getJoinReqResp(): number;
|
|
1783
1550
|
/**
|
|
1784
|
-
* Gets permission token expiry information including timeLeft, expiryTime, currentTime
|
|
1785
|
-
* (from the time the function has been fired)
|
|
1786
1551
|
*
|
|
1787
|
-
* @returns {
|
|
1788
|
-
|
|
1789
|
-
|
|
1790
|
-
|
|
1791
|
-
|
|
1792
|
-
|
|
1793
|
-
|
|
1794
|
-
|
|
1795
|
-
|
|
1796
|
-
|
|
1797
|
-
/**
|
|
1798
|
-
*
|
|
1799
|
-
*
|
|
1552
|
+
* @returns {string} duration between call initiate and successful locus join (even if it is in lobby)
|
|
1553
|
+
*/
|
|
1554
|
+
getTotalJmt(): number;
|
|
1555
|
+
/**
|
|
1556
|
+
* End the current meeting for all
|
|
1557
|
+
* @returns {Promise}
|
|
1558
|
+
* @public
|
|
1559
|
+
* @memberof Meeting
|
|
1560
|
+
*/
|
|
1561
|
+
endMeetingForAll(): any;
|
|
1562
|
+
/**
|
|
1563
|
+
* clear the meeting data
|
|
1564
|
+
* @returns {undefined}
|
|
1565
|
+
* @public
|
|
1566
|
+
* @memberof Meeting
|
|
1567
|
+
*/
|
|
1568
|
+
clearMeetingData: () => void;
|
|
1569
|
+
/**
|
|
1570
|
+
* Internal API to return status of BNR
|
|
1571
|
+
* @returns {Boolean}
|
|
1572
|
+
* @public
|
|
1573
|
+
* @memberof Meeting
|
|
1574
|
+
*/
|
|
1575
|
+
isBnrEnabled(): any;
|
|
1576
|
+
/**
|
|
1577
|
+
* Internal API to obtain BNR enabled MediaStream
|
|
1578
|
+
* @returns {Promise<MediaStreamTrack>}
|
|
1579
|
+
* @private
|
|
1580
|
+
* @param {MedaiStreamTrack} audioTrack from updateAudio
|
|
1581
|
+
* @memberof Meeting
|
|
1582
|
+
*/
|
|
1583
|
+
private internal_enableBNR;
|
|
1584
|
+
/**
|
|
1585
|
+
* Enable the audio track with BNR for a meeting
|
|
1586
|
+
* @returns {Promise} resolves the data from enable bnr or rejects if there is no audio or audio is muted
|
|
1587
|
+
* @public
|
|
1588
|
+
* @memberof Meeting
|
|
1589
|
+
*/
|
|
1590
|
+
enableBNR(): any;
|
|
1591
|
+
/**
|
|
1592
|
+
* Disable the BNR for an audio track
|
|
1593
|
+
* @returns {Promise} resolves the data from disable bnr or rejects if there is no audio set
|
|
1594
|
+
* @public
|
|
1595
|
+
* @memberof Meeting
|
|
1596
|
+
*/
|
|
1597
|
+
disableBNR(): any;
|
|
1598
|
+
/**
|
|
1599
|
+
* starts keepAlives being sent
|
|
1600
|
+
* @returns {void}
|
|
1601
|
+
* @private
|
|
1602
|
+
* @memberof Meeting
|
|
1603
|
+
*/
|
|
1604
|
+
startKeepAlive: () => void;
|
|
1605
|
+
/**
|
|
1606
|
+
* stops keepAlives being sent
|
|
1607
|
+
* @returns {void}
|
|
1608
|
+
* @private
|
|
1609
|
+
* @memberof Meeting
|
|
1610
|
+
*/
|
|
1611
|
+
stopKeepAlive: () => void;
|
|
1612
|
+
/**
|
|
1613
|
+
* Send a reaction inside the meeting.
|
|
1800
1614
|
*
|
|
1801
|
-
* @param {
|
|
1802
|
-
* @param {
|
|
1803
|
-
* @returns {Promise
|
|
1615
|
+
* @param {ReactionType} reactionType - type of reaction to be sent. Example: "thumbs_up"
|
|
1616
|
+
* @param {SkinToneType} skinToneType - skin tone for the reaction. Example: "medium_dark"
|
|
1617
|
+
* @returns {Promise}
|
|
1618
|
+
* @public
|
|
1619
|
+
* @memberof Meeting
|
|
1804
1620
|
*/
|
|
1805
|
-
|
|
1621
|
+
sendReaction(reactionType: ReactionType, skinToneType?: SkinToneType): any;
|
|
1806
1622
|
}
|
|
1807
|
-
export {};
|