@webex/plugin-meetings 2.60.0-next.9 → 2.60.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -46
- 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 -5
- package/dist/config.js +11 -8
- package/dist/config.js.map +1 -1
- package/dist/constants.d.ts +97 -217
- package/dist/constants.js +441 -416
- 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 +4 -116
- 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 +494 -591
- package/dist/meeting/index.js +2969 -4707
- 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 -297
- 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 -102
- package/dist/meeting/util.js +435 -605
- 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 +21 -103
- package/dist/meetings/index.js +124 -486
- 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 +7 -62
- package/dist/reachability/index.js +72 -265
- 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 +231 -282
- 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 +235 -101
- 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 -28
- package/dist/statsAnalyzer/index.js +509 -374
- package/dist/statsAnalyzer/index.js.map +1 -1
- package/dist/statsAnalyzer/mqaUtil.d.ts +6 -8
- package/dist/statsAnalyzer/mqaUtil.js +83 -116
- 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 -35
- 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 -5
- package/src/constants.ts +97 -244
- 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 -449
- 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 +2482 -3929
- package/src/meeting/muteState.ts +138 -224
- package/src/meeting/request.ts +127 -207
- package/src/meeting/util.ts +423 -590
- 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 +126 -486
- 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 +45 -238
- 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 -98
- 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 +642 -413
- package/src/statsAnalyzer/mqaUtil.ts +114 -111
- 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 -1389
- 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 +3136 -8547
- package/test/unit/spec/meeting/muteState.js +213 -409
- package/test/unit/spec/meeting/request.js +42 -512
- package/test/unit/spec/meeting/utils.js +24 -741
- 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 +211 -1278
- 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 -598
- package/test/unit/spec/reconnection-manager/index.js +24 -162
- 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 +76 -200
- 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 +174 -188
- 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/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/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/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 -40
- 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/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/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/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/request.js +0 -68
- package/test/unit/spec/roap/request.ts +0 -232
- 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,58 +1,23 @@
|
|
|
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
10
|
import Transcription from '../transcription';
|
|
14
|
-
import {
|
|
15
|
-
import { ReceiveSlotManager } from '../multistream/receiveSlotManager';
|
|
16
|
-
import { MediaRequestManager } from '../multistream/mediaRequestManager';
|
|
17
|
-
import { Configuration as RemoteMediaManagerConfiguration, RemoteMediaManager } from '../multistream/remoteMediaManager';
|
|
18
|
-
import { ReactionServerType, SkinToneType } from '../reactions/reactions.type';
|
|
11
|
+
import { ReactionType, SkinToneType } from '../reactions/reactions.type';
|
|
19
12
|
import InMeetingActions from './in-meeting-actions';
|
|
20
13
|
import RecordingController from '../recording-controller';
|
|
21
14
|
import ControlsOptionsManager from '../controls-options-manager';
|
|
22
|
-
import { LocusMediaRequest } from './locusMediaRequest';
|
|
23
|
-
export type LocalStreams = {
|
|
24
|
-
microphone?: LocalMicrophoneStream;
|
|
25
|
-
camera?: LocalCameraStream;
|
|
26
|
-
screenShare?: {
|
|
27
|
-
audio?: LocalSystemAudioStream;
|
|
28
|
-
video?: LocalDisplayStream;
|
|
29
|
-
};
|
|
30
|
-
};
|
|
31
|
-
export type AddMediaOptions = {
|
|
32
|
-
localStreams?: LocalStreams;
|
|
33
|
-
audioEnabled?: boolean;
|
|
34
|
-
videoEnabled?: boolean;
|
|
35
|
-
shareAudioEnabled?: boolean;
|
|
36
|
-
shareVideoEnabled?: boolean;
|
|
37
|
-
remoteMediaManagerConfig?: RemoteMediaManagerConfiguration;
|
|
38
|
-
bundlePolicy?: BundlePolicy;
|
|
39
|
-
allowMediaInLobby?: boolean;
|
|
40
|
-
};
|
|
41
|
-
export type CallStateForMetrics = {
|
|
42
|
-
correlationId?: string;
|
|
43
|
-
joinTrigger?: string;
|
|
44
|
-
loginType?: string;
|
|
45
|
-
};
|
|
46
15
|
export declare const MEDIA_UPDATE_TYPE: {
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
16
|
+
ALL: string;
|
|
17
|
+
AUDIO: string;
|
|
18
|
+
VIDEO: string;
|
|
19
|
+
SHARE: string;
|
|
50
20
|
};
|
|
51
|
-
export declare enum ScreenShareFloorStatus {
|
|
52
|
-
PENDING = "floor_request_pending",
|
|
53
|
-
GRANTED = "floor_request_granted",
|
|
54
|
-
RELEASED = "floor_released"
|
|
55
|
-
}
|
|
56
21
|
/**
|
|
57
22
|
* MediaDirection
|
|
58
23
|
* @typedef {Object} MediaDirection
|
|
@@ -64,6 +29,15 @@ export declare enum ScreenShareFloorStatus {
|
|
|
64
29
|
* @property {boolean} receiveShare
|
|
65
30
|
* @property {boolean} isSharing
|
|
66
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
|
+
*/
|
|
67
41
|
/**
|
|
68
42
|
* SharePreferences
|
|
69
43
|
* @typedef {Object} SharePreferences
|
|
@@ -77,9 +51,16 @@ export declare enum ScreenShareFloorStatus {
|
|
|
77
51
|
* @property {String} [pin]
|
|
78
52
|
* @property {Boolean} [moderator]
|
|
79
53
|
* @property {String|Object} [meetingQuality]
|
|
54
|
+
* @property {String} [meetingQuality.local]
|
|
80
55
|
* @property {String} [meetingQuality.remote]
|
|
81
56
|
* @property {Boolean} [rejoin]
|
|
82
|
-
|
|
57
|
+
*/
|
|
58
|
+
/**
|
|
59
|
+
* SendOptions
|
|
60
|
+
* @typedef {Object} SendOptions
|
|
61
|
+
* @property {Boolean} sendAudio
|
|
62
|
+
* @property {Boolean} sendVideo
|
|
63
|
+
* @property {Boolean} sendShare
|
|
83
64
|
*/
|
|
84
65
|
/**
|
|
85
66
|
* Recording
|
|
@@ -162,11 +143,7 @@ export declare enum ScreenShareFloorStatus {
|
|
|
162
143
|
* @instance
|
|
163
144
|
* @type {Object}
|
|
164
145
|
* @property {Boolean} memberId id of the meeting member that started screen share
|
|
165
|
-
* @property {String} url of this content share
|
|
166
|
-
* @property {String} shareInstanceId of this content share
|
|
167
|
-
* @property {Object} annotation Info of this content share
|
|
168
146
|
* @memberof Meeting
|
|
169
|
-
*
|
|
170
147
|
*/
|
|
171
148
|
/**
|
|
172
149
|
* Meeting Stopped Sharing Remote Event
|
|
@@ -302,23 +279,18 @@ export declare enum ScreenShareFloorStatus {
|
|
|
302
279
|
export default class Meeting extends StatelessWebexPlugin {
|
|
303
280
|
attrs: any;
|
|
304
281
|
audio: any;
|
|
305
|
-
breakouts: any;
|
|
306
|
-
simultaneousInterpretation: any;
|
|
307
|
-
annotation: any;
|
|
308
|
-
webinar: any;
|
|
309
282
|
conversationUrl: string;
|
|
310
|
-
|
|
283
|
+
correlationId: string;
|
|
311
284
|
destination: string;
|
|
312
285
|
destinationType: string;
|
|
313
286
|
deviceUrl: string;
|
|
287
|
+
effects: any;
|
|
314
288
|
hostId: string;
|
|
315
289
|
id: string;
|
|
316
|
-
isMultistream: boolean;
|
|
317
290
|
locusUrl: string;
|
|
318
291
|
mediaConnections: any[];
|
|
319
|
-
mediaId?: string;
|
|
320
292
|
meetingFiniteStateMachine: any;
|
|
321
|
-
meetingInfo:
|
|
293
|
+
meetingInfo: object;
|
|
322
294
|
meetingRequest: MeetingRequest;
|
|
323
295
|
members: Members;
|
|
324
296
|
options: object;
|
|
@@ -330,13 +302,11 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
330
302
|
resource: string;
|
|
331
303
|
roap: Roap;
|
|
332
304
|
roapSeq: number;
|
|
333
|
-
selfUrl?: string;
|
|
334
305
|
sipUri: string;
|
|
335
306
|
type: string;
|
|
336
307
|
userId: string;
|
|
337
308
|
video: any;
|
|
338
309
|
callEvents: any[];
|
|
339
|
-
datachannelUrl: string;
|
|
340
310
|
deferJoin: Promise<any>;
|
|
341
311
|
dialInDeviceStatus: string;
|
|
342
312
|
dialInUrl: string;
|
|
@@ -348,46 +318,31 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
348
318
|
hasWebsocketConnected: boolean;
|
|
349
319
|
inMeetingActions: InMeetingActions;
|
|
350
320
|
isLocalShareLive: boolean;
|
|
351
|
-
|
|
321
|
+
isSharing: boolean;
|
|
352
322
|
keepAliveTimerId: NodeJS.Timeout;
|
|
353
323
|
lastVideoLayoutInfo: any;
|
|
354
324
|
locusInfo: any;
|
|
355
|
-
locusMediaRequest?: LocusMediaRequest;
|
|
356
325
|
mediaProperties: MediaProperties;
|
|
357
|
-
mediaRequestManagers: {
|
|
358
|
-
audio: MediaRequestManager;
|
|
359
|
-
video: MediaRequestManager;
|
|
360
|
-
screenShareAudio: MediaRequestManager;
|
|
361
|
-
screenShareVideo: MediaRequestManager;
|
|
362
|
-
};
|
|
363
326
|
meetingInfoFailureReason: string;
|
|
364
|
-
meetingInfoFailureCode?: number;
|
|
365
|
-
meetingInfoExtraParams?: Record<string, any>;
|
|
366
327
|
networkQualityMonitor: NetworkQualityMonitor;
|
|
367
|
-
networkStatus
|
|
328
|
+
networkStatus: string;
|
|
368
329
|
passwordStatus: string;
|
|
369
330
|
queuedMediaUpdates: any[];
|
|
370
331
|
recording: any;
|
|
371
|
-
remoteMediaManager: RemoteMediaManager | null;
|
|
372
332
|
recordingController: RecordingController;
|
|
373
333
|
controlsOptionsManager: ControlsOptionsManager;
|
|
374
334
|
requiredCaptcha: any;
|
|
375
|
-
receiveSlotManager: ReceiveSlotManager;
|
|
376
|
-
selfUserPolicies: any;
|
|
377
|
-
enforceVBGImagesURL: string;
|
|
378
335
|
shareStatus: string;
|
|
379
|
-
screenShareFloorState: ScreenShareFloorStatus;
|
|
380
336
|
statsAnalyzer: StatsAnalyzer;
|
|
381
337
|
transcription: Transcription;
|
|
382
338
|
receiveTranscription: boolean;
|
|
383
339
|
updateMediaConnections: (mediaConnections: any[]) => void;
|
|
384
|
-
|
|
385
|
-
endCallInitJoinReq: any;
|
|
340
|
+
endCallInitiateJoinReq: any;
|
|
386
341
|
endJoinReqResp: any;
|
|
387
342
|
endLocalSDPGenRemoteSDPRecvDelay: any;
|
|
388
343
|
joinedWith: any;
|
|
389
344
|
locusId: any;
|
|
390
|
-
|
|
345
|
+
startCallInitiateJoinReq: any;
|
|
391
346
|
startJoinReqResp: any;
|
|
392
347
|
startLocalSDPGenRemoteSDPRecvDelay: any;
|
|
393
348
|
wirelessShare: any;
|
|
@@ -395,27 +350,12 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
395
350
|
meetingJoinUrl: any;
|
|
396
351
|
meetingNumber: any;
|
|
397
352
|
meetingState: any;
|
|
398
|
-
permissionToken:
|
|
399
|
-
permissionTokenPayload: any;
|
|
400
|
-
permissionTokenReceivedLocalTime: number;
|
|
353
|
+
permissionToken: any;
|
|
401
354
|
resourceId: any;
|
|
402
355
|
resourceUrl: string;
|
|
403
356
|
selfId: string;
|
|
404
357
|
state: any;
|
|
405
|
-
localAudioStreamMuteStateHandler: (muted: boolean) => void;
|
|
406
|
-
localVideoStreamMuteStateHandler: (muted: boolean) => void;
|
|
407
|
-
localOutputTrackChangeHandler: () => void;
|
|
408
|
-
roles: any[];
|
|
409
|
-
environment: string;
|
|
410
358
|
namespace: string;
|
|
411
|
-
allowMediaInLobby: boolean;
|
|
412
|
-
turnDiscoverySkippedReason: string;
|
|
413
|
-
turnServerUsed: boolean;
|
|
414
|
-
private retriedWithTurnServer;
|
|
415
|
-
private sendSlotManager;
|
|
416
|
-
private deferSDPAnswer?;
|
|
417
|
-
private sdpResponseTimer?;
|
|
418
|
-
private hasMediaConnectionConnectedAtLeastOnce;
|
|
419
359
|
/**
|
|
420
360
|
* @param {Object} attrs
|
|
421
361
|
* @param {Object} options
|
|
@@ -423,68 +363,29 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
423
363
|
* @memberof Meeting
|
|
424
364
|
*/
|
|
425
365
|
constructor(attrs: any, options: object);
|
|
426
|
-
/**
|
|
427
|
-
* returns meeting is joined
|
|
428
|
-
* @private
|
|
429
|
-
* @memberof Meeting
|
|
430
|
-
* @returns {Boolean}
|
|
431
|
-
*/
|
|
432
|
-
private isJoined;
|
|
433
|
-
/**
|
|
434
|
-
* Returns whether this meeting is a Locus CALL
|
|
435
|
-
* @returns {Boolean}
|
|
436
|
-
*/
|
|
437
|
-
isLocusCall(): boolean;
|
|
438
|
-
/**
|
|
439
|
-
* Getter - Returns callStateForMetrics.correlationId
|
|
440
|
-
* @returns {string}
|
|
441
|
-
*/
|
|
442
|
-
get correlationId(): string;
|
|
443
|
-
/**
|
|
444
|
-
* Setter - sets callStateForMetrics.correlationId
|
|
445
|
-
* @param {string} correlationId
|
|
446
|
-
*/
|
|
447
|
-
set correlationId(correlationId: string);
|
|
448
|
-
/**
|
|
449
|
-
* Internal method for fetching meeting info
|
|
450
|
-
*
|
|
451
|
-
* @returns {Promise}
|
|
452
|
-
*/
|
|
453
|
-
private fetchMeetingInfoInternal;
|
|
454
|
-
/**
|
|
455
|
-
* Refreshes the meeting info permission token (it's required for joining meetings)
|
|
456
|
-
*
|
|
457
|
-
* @param {string} [reason] used for metrics and logging purposes (optional)
|
|
458
|
-
* @returns {Promise}
|
|
459
|
-
*/
|
|
460
|
-
refreshPermissionToken(reason?: string): Promise<void>;
|
|
461
366
|
/**
|
|
462
367
|
* Fetches meeting information.
|
|
463
368
|
* @param {Object} options
|
|
464
369
|
* @param {String} [options.password] optional
|
|
465
370
|
* @param {String} [options.captchaCode] optional
|
|
466
|
-
* @param {Boolean} [options.sendCAevents] optional - Whether to submit Call Analyzer events or not. Default: false.
|
|
467
371
|
* @public
|
|
468
372
|
* @memberof Meeting
|
|
469
373
|
* @returns {Promise}
|
|
470
374
|
*/
|
|
471
|
-
fetchMeetingInfo({ password, captchaCode,
|
|
375
|
+
fetchMeetingInfo({ password, captchaCode, }: {
|
|
472
376
|
password?: string;
|
|
473
377
|
captchaCode?: string;
|
|
474
|
-
extraParams?: Record<string, any>;
|
|
475
|
-
sendCAevents?: boolean;
|
|
476
378
|
}): Promise<void>;
|
|
477
379
|
/**
|
|
478
380
|
* Checks if the supplied password/host key is correct. It returns a promise with information whether the
|
|
479
381
|
* password and captcha code were correct or not.
|
|
480
382
|
* @param {String} password - this can be either a password or a host key, can be undefined if only captcha was required
|
|
481
383
|
* @param {String} captchaCode - can be undefined if captcha was not required by the server
|
|
482
|
-
* @param {Boolean} sendCAevents - whether Call Analyzer events should be sent when fetching meeting information
|
|
483
384
|
* @public
|
|
484
385
|
* @memberof Meeting
|
|
485
386
|
* @returns {Promise<{isPasswordValid: boolean, requiredCaptcha: boolean, failureReason: MEETING_INFO_FAILURE_REASON}>}
|
|
486
387
|
*/
|
|
487
|
-
verifyPassword(password: string, captchaCode: string
|
|
388
|
+
verifyPassword(password: string, captchaCode: string): Promise<{
|
|
488
389
|
isPasswordValid: boolean;
|
|
489
390
|
requiredCaptcha: any;
|
|
490
391
|
failureReason: string;
|
|
@@ -501,14 +402,6 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
501
402
|
* @returns {Promise}
|
|
502
403
|
*/
|
|
503
404
|
refreshCaptcha(): any;
|
|
504
|
-
/**
|
|
505
|
-
* Posts metrics event for this meeting. Allows the app to send Call Analyzer events.
|
|
506
|
-
* @param {String} eventName - Call Analyzer event
|
|
507
|
-
* @public
|
|
508
|
-
* @memberof Meeting
|
|
509
|
-
* @returns {Promise}
|
|
510
|
-
*/
|
|
511
|
-
postMetrics(eventName: ClientEvent['name']): void;
|
|
512
405
|
/**
|
|
513
406
|
* Proxy function for all the listener set ups
|
|
514
407
|
* @returns {undefined}
|
|
@@ -517,43 +410,70 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
517
410
|
*/
|
|
518
411
|
private setUpLocusInfoListeners;
|
|
519
412
|
/**
|
|
520
|
-
* Set up the
|
|
413
|
+
* Set up the locus info listener for meetings disconnected due to inactivity
|
|
521
414
|
* @returns {undefined}
|
|
522
415
|
* @private
|
|
523
416
|
* @memberof Meeting
|
|
524
417
|
*/
|
|
525
|
-
|
|
418
|
+
private setUpLocusInfoMediaInactiveListener;
|
|
526
419
|
/**
|
|
527
|
-
* Set up the
|
|
420
|
+
* Set up the locus info listener for assign host permissions on a meeting
|
|
528
421
|
* @returns {undefined}
|
|
529
422
|
* @private
|
|
530
423
|
* @memberof Meeting
|
|
531
424
|
*/
|
|
532
|
-
private
|
|
425
|
+
private setUpLocusInfoAssignHostListener;
|
|
533
426
|
/**
|
|
534
|
-
* Set up the locus info
|
|
427
|
+
* Set up the internal locus info full state object listener
|
|
535
428
|
* @returns {undefined}
|
|
536
429
|
* @private
|
|
537
430
|
* @memberof Meeting
|
|
538
431
|
*/
|
|
539
|
-
private
|
|
432
|
+
private setUpLocusFullStateListener;
|
|
540
433
|
/**
|
|
541
|
-
*
|
|
542
|
-
* @
|
|
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): {};
|
|
451
|
+
/**
|
|
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}
|
|
543
459
|
* @private
|
|
544
460
|
* @memberof Meeting
|
|
545
461
|
*/
|
|
546
|
-
private
|
|
462
|
+
private sendCallAnalyzerMetrics;
|
|
547
463
|
/**
|
|
548
|
-
*
|
|
549
|
-
* @
|
|
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}
|
|
550
470
|
* @private
|
|
551
471
|
* @memberof Meeting
|
|
552
472
|
*/
|
|
553
|
-
private
|
|
473
|
+
private sendMediaQualityAnalyzerMetrics;
|
|
554
474
|
/**
|
|
555
475
|
* sets the network status on meeting object
|
|
556
|
-
* @param {
|
|
476
|
+
* @param {String} networkStatus
|
|
557
477
|
* @private
|
|
558
478
|
* @returns {undefined}
|
|
559
479
|
* @memberof Meeting
|
|
@@ -613,13 +533,6 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
613
533
|
* @memberof Meeting
|
|
614
534
|
*/
|
|
615
535
|
private setupLocusControlsListener;
|
|
616
|
-
/**
|
|
617
|
-
* Trigger annotation info update event
|
|
618
|
-
@returns {undefined}
|
|
619
|
-
@param {object} contentShare
|
|
620
|
-
@param {object} previousContentShare
|
|
621
|
-
*/
|
|
622
|
-
private triggerAnnotationInfoEvent;
|
|
623
536
|
/**
|
|
624
537
|
* Set up the locus info media shares listener
|
|
625
538
|
* update content and whiteboard sharing id value for members, and updates the member
|
|
@@ -654,12 +567,6 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
654
567
|
* @memberof meeting
|
|
655
568
|
*/
|
|
656
569
|
private setUpLocusInfoMeetingInfoListener;
|
|
657
|
-
/**
|
|
658
|
-
* Handles a data channel URL change
|
|
659
|
-
* @param {String} datachannelUrl
|
|
660
|
-
* @returns {void}
|
|
661
|
-
*/
|
|
662
|
-
handleDataChannelUrlChange(datachannelUrl: any): void;
|
|
663
570
|
/**
|
|
664
571
|
* Set up the locus info embedded apps listener
|
|
665
572
|
* @returns {undefined}
|
|
@@ -718,23 +625,13 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
718
625
|
phoneNumber: string;
|
|
719
626
|
}): any;
|
|
720
627
|
/**
|
|
721
|
-
* Admit the guest(s) to the call once they are waiting
|
|
722
|
-
* If the host/cohost is in a breakout session, the locus url
|
|
723
|
-
* of the session must be provided as the authorizingLocusUrl.
|
|
724
|
-
* Regardless of host/cohost location, the locus Id (lid) in
|
|
725
|
-
* the path should be the locus Id of the main, which means the
|
|
726
|
-
* locus url of the api call must be from the main session.
|
|
727
|
-
* 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
|
|
728
629
|
* @param {Array} memberIds
|
|
729
|
-
* @param {Object} sessionLocusUrls: {authorizingLocusUrl, mainLocusUrl}
|
|
730
630
|
* @returns {Promise} see #members.admitMembers
|
|
731
631
|
* @public
|
|
732
632
|
* @memberof Meeting
|
|
733
633
|
*/
|
|
734
|
-
admit(memberIds: Array<any
|
|
735
|
-
authorizingLocusUrl: string;
|
|
736
|
-
mainLocusUrl: string;
|
|
737
|
-
}): any;
|
|
634
|
+
admit(memberIds: Array<any>): any;
|
|
738
635
|
/**
|
|
739
636
|
* Remove the member from the meeting, boot them
|
|
740
637
|
* @param {String} memberId
|
|
@@ -768,6 +665,48 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
768
665
|
* @memberof Meeting
|
|
769
666
|
*/
|
|
770
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;
|
|
771
710
|
/**
|
|
772
711
|
* Sets the meeting info on the class instance
|
|
773
712
|
* @param {Object} meetingInfo
|
|
@@ -790,29 +729,16 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
790
729
|
};
|
|
791
730
|
} | any, destination?: object | string | null): void;
|
|
792
731
|
/**
|
|
793
|
-
*
|
|
794
|
-
* @
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
* Updates the meeting actions (display hints), depends on locus display hints, user policy and app api info
|
|
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
|
|
799
737
|
* @returns {undefined}
|
|
800
738
|
* @private
|
|
801
739
|
* @memberof Meeting
|
|
802
740
|
*/
|
|
803
|
-
private
|
|
804
|
-
/**
|
|
805
|
-
* Sets the self user policies based on the contents of the permission token
|
|
806
|
-
* @returns {void}
|
|
807
|
-
*/
|
|
808
|
-
setSelfUserPolicies(): void;
|
|
809
|
-
/**
|
|
810
|
-
* Sets the permission token payload on the class instance
|
|
811
|
-
*
|
|
812
|
-
* @param {String} permissionToken
|
|
813
|
-
* @returns {void}
|
|
814
|
-
*/
|
|
815
|
-
setPermissionTokenPayload(permissionToken: string): void;
|
|
741
|
+
private parseLocus;
|
|
816
742
|
/**
|
|
817
743
|
* Sets the sip uri on the class instance
|
|
818
744
|
* uses meeting info as precedence
|
|
@@ -822,6 +748,14 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
822
748
|
* @memberof Meeting
|
|
823
749
|
*/
|
|
824
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;
|
|
825
759
|
/**
|
|
826
760
|
* Set the locus info the class instance
|
|
827
761
|
* @param {Object} locus
|
|
@@ -835,13 +769,16 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
835
769
|
* @private
|
|
836
770
|
* @memberof Meeting
|
|
837
771
|
*/
|
|
838
|
-
setLocus
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
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;
|
|
845
782
|
/**
|
|
846
783
|
* Upload logs for the current meeting
|
|
847
784
|
* @param {object} options file name and function name
|
|
@@ -851,10 +788,19 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
851
788
|
*/
|
|
852
789
|
uploadLogs(options?: object): void;
|
|
853
790
|
/**
|
|
854
|
-
* Removes remote audio
|
|
791
|
+
* Removes remote audio and video stream on the class instance and triggers an event
|
|
792
|
+
* to developers
|
|
855
793
|
* @returns {undefined}
|
|
794
|
+
* @public
|
|
795
|
+
* @memberof Meeting
|
|
796
|
+
* @deprecated after v1.89.3
|
|
856
797
|
*/
|
|
857
|
-
|
|
798
|
+
unsetRemoteStream(): void;
|
|
799
|
+
/**
|
|
800
|
+
* Removes remote audio, video and share tracks from class instance's mediaProperties
|
|
801
|
+
* @returns {undefined}
|
|
802
|
+
*/
|
|
803
|
+
unsetRemoteTracks(): void;
|
|
858
804
|
/**
|
|
859
805
|
* Removes the remote stream on the class instance and triggers an event
|
|
860
806
|
* to developers
|
|
@@ -865,92 +811,115 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
865
811
|
*/
|
|
866
812
|
closeRemoteStream(): void;
|
|
867
813
|
/**
|
|
868
|
-
* Removes the remote
|
|
814
|
+
* Removes the remote tracks on the class instance and triggers an event
|
|
869
815
|
* to developers
|
|
870
816
|
* @returns {undefined}
|
|
871
817
|
* @memberof Meeting
|
|
872
818
|
*/
|
|
873
|
-
|
|
819
|
+
closeRemoteTracks(): Promise<[any, any, any]>;
|
|
874
820
|
/**
|
|
875
|
-
*
|
|
876
|
-
*
|
|
877
|
-
*
|
|
878
|
-
* @
|
|
879
|
-
* @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
|
|
880
825
|
*/
|
|
881
|
-
private
|
|
826
|
+
private sendLocalMediaReadyEvent;
|
|
882
827
|
/**
|
|
883
|
-
*
|
|
884
|
-
*
|
|
885
|
-
*
|
|
886
|
-
* @
|
|
887
|
-
* @
|
|
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
|
|
888
834
|
*/
|
|
889
|
-
private
|
|
835
|
+
private setLocalAudioTrack;
|
|
890
836
|
/**
|
|
891
|
-
*
|
|
892
|
-
*
|
|
893
|
-
*
|
|
894
|
-
*
|
|
895
|
-
* @
|
|
896
|
-
* @
|
|
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
|
|
897
843
|
*/
|
|
898
|
-
private
|
|
844
|
+
private setLocalVideoTrack;
|
|
899
845
|
/**
|
|
900
|
-
*
|
|
901
|
-
*
|
|
902
|
-
*
|
|
903
|
-
* @
|
|
904
|
-
* @
|
|
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
|
|
905
851
|
*/
|
|
906
|
-
|
|
852
|
+
setLocalTracks(localStream: any): void;
|
|
907
853
|
/**
|
|
908
|
-
*
|
|
854
|
+
* Sets the local media stream on the class and emits an event to the developer
|
|
855
|
+
* @param {MediaStream} localShare the local media stream
|
|
909
856
|
* @returns {undefined}
|
|
910
857
|
* @public
|
|
911
858
|
* @memberof Meeting
|
|
912
859
|
*/
|
|
913
|
-
|
|
860
|
+
setLocalShareTrack(localShare: MediaStream): void;
|
|
914
861
|
/**
|
|
915
|
-
*
|
|
916
|
-
*
|
|
917
|
-
*
|
|
918
|
-
* @returns {Promise}
|
|
862
|
+
* Closes the local stream from the class and emits an event to the developer
|
|
863
|
+
* @returns {undefined}
|
|
864
|
+
* @event media:stopped
|
|
919
865
|
* @public
|
|
920
866
|
* @memberof Meeting
|
|
921
867
|
*/
|
|
922
|
-
|
|
868
|
+
closeLocalStream(): any;
|
|
923
869
|
/**
|
|
924
|
-
*
|
|
925
|
-
* warning DO NOT CALL WITHOUT CLOSING PEER CONNECTIONS FIRST
|
|
870
|
+
* Closes the local stream from the class and emits an event to the developer
|
|
926
871
|
* @returns {undefined}
|
|
872
|
+
* @event media:stopped
|
|
927
873
|
* @public
|
|
928
874
|
* @memberof Meeting
|
|
929
875
|
*/
|
|
930
|
-
|
|
876
|
+
closeLocalShare(): any;
|
|
931
877
|
/**
|
|
932
|
-
*
|
|
933
|
-
* @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
|
|
934
879
|
* @returns {undefined}
|
|
935
880
|
* @public
|
|
936
881
|
* @memberof Meeting
|
|
937
882
|
*/
|
|
938
|
-
|
|
883
|
+
unsetLocalVideoTrack(): void;
|
|
939
884
|
/**
|
|
940
|
-
*
|
|
941
|
-
* @param {CallStateForMetrics} callStateForMetrics updated values for callStateForMetrics
|
|
885
|
+
* Removes the local share from the class and emits an event to the developer
|
|
942
886
|
* @returns {undefined}
|
|
943
887
|
* @public
|
|
944
888
|
* @memberof Meeting
|
|
945
889
|
*/
|
|
946
|
-
|
|
890
|
+
unsetLocalShareTrack(): void;
|
|
947
891
|
/**
|
|
948
|
-
*
|
|
949
|
-
* @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}
|
|
950
919
|
* @private
|
|
951
920
|
* @memberof Meeting
|
|
952
921
|
*/
|
|
953
|
-
private
|
|
922
|
+
private setCorrelationId;
|
|
954
923
|
/**
|
|
955
924
|
* Mute the audio for a meeting
|
|
956
925
|
* @returns {Promise} resolves the data from muting audio {mute, self} or rejects if there is no audio set
|
|
@@ -983,25 +952,32 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
983
952
|
* Shorthand function to join AND set up media
|
|
984
953
|
* @param {Object} options - options to join with media
|
|
985
954
|
* @param {JoinOptions} [options.joinOptions] - see #join()
|
|
986
|
-
* @param {
|
|
987
|
-
* @
|
|
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()}
|
|
988
958
|
* @public
|
|
989
959
|
* @memberof Meeting
|
|
990
960
|
* @example
|
|
991
961
|
* joinWithMedia({
|
|
992
962
|
* joinOptions: {resourceId: 'resourceId' },
|
|
993
|
-
*
|
|
994
|
-
*
|
|
995
|
-
*
|
|
996
|
-
*
|
|
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
|
+
* }})
|
|
997
975
|
*/
|
|
998
976
|
joinWithMedia(options?: {
|
|
999
977
|
joinOptions?: any;
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
media: void;
|
|
1004
|
-
}>;
|
|
978
|
+
mediaSettings: any;
|
|
979
|
+
audioVideoOptions?: any;
|
|
980
|
+
}): any;
|
|
1005
981
|
/**
|
|
1006
982
|
* Initiates the reconnection of the media in the meeting
|
|
1007
983
|
*
|
|
@@ -1017,11 +993,6 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1017
993
|
* @throws TranscriptionNotSupportedError
|
|
1018
994
|
*/
|
|
1019
995
|
isTranscriptionSupported(): boolean;
|
|
1020
|
-
/**
|
|
1021
|
-
* Check if the meeting supports the Reactions
|
|
1022
|
-
* @returns {boolean}
|
|
1023
|
-
*/
|
|
1024
|
-
isReactionsSupported(): boolean;
|
|
1025
996
|
/**
|
|
1026
997
|
* Monitor the Low-Latency Mercury (LLM) web socket connection on `onError` and `onClose` states
|
|
1027
998
|
* @private
|
|
@@ -1034,13 +1005,6 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1034
1005
|
* @returns {Promise<void>} a promise to open the WebSocket connection
|
|
1035
1006
|
*/
|
|
1036
1007
|
private startTranscription;
|
|
1037
|
-
/**
|
|
1038
|
-
* Callback called when a relay event is received from meeting LLM Connection
|
|
1039
|
-
* @param {RelayEvent} e Event object coming from LLM Connection
|
|
1040
|
-
* @private
|
|
1041
|
-
* @returns {void}
|
|
1042
|
-
*/
|
|
1043
|
-
private processRelayEvent;
|
|
1044
1008
|
/**
|
|
1045
1009
|
* stop recieving Transcription by closing
|
|
1046
1010
|
* the web socket connection properly
|
|
@@ -1066,14 +1030,7 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1066
1030
|
* if joining as host on second loop, pass pin and pass moderator if joining as guest on second loop
|
|
1067
1031
|
* Scenario D: Joining any other way (sip, pstn, conversationUrl, link just need to specify resourceId)
|
|
1068
1032
|
*/
|
|
1069
|
-
join(options?: any):
|
|
1070
|
-
/**
|
|
1071
|
-
* Connects to low latency mercury and reconnects if the address has changed
|
|
1072
|
-
* It will also disconnect if called when the meeting has ended
|
|
1073
|
-
* @param {String} datachannelUrl
|
|
1074
|
-
* @returns {Promise}
|
|
1075
|
-
*/
|
|
1076
|
-
updateLLMConnection(): Promise<any>;
|
|
1033
|
+
join(options?: any): any;
|
|
1077
1034
|
/**
|
|
1078
1035
|
* Use phone for meeting audio
|
|
1079
1036
|
* @param {String} phoneNumber If provided, it will dial-out using this number. If not provided, dial-in will be used
|
|
@@ -1081,7 +1038,7 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1081
1038
|
* @public
|
|
1082
1039
|
* @memberof Meeting
|
|
1083
1040
|
*/
|
|
1084
|
-
usePhoneAudio(phoneNumber: string):
|
|
1041
|
+
usePhoneAudio(phoneNumber: string): any;
|
|
1085
1042
|
/**
|
|
1086
1043
|
* Determines if the given pstnStatus is in a state which implies the phone is provisioned
|
|
1087
1044
|
* @param {String} pstnStatus
|
|
@@ -1130,162 +1087,58 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1130
1087
|
*/
|
|
1131
1088
|
moveFrom(resourceId: string): any;
|
|
1132
1089
|
/**
|
|
1133
|
-
*
|
|
1134
|
-
*
|
|
1135
|
-
* @param {
|
|
1136
|
-
* @
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
*
|
|
1141
|
-
*
|
|
1142
|
-
* @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
|
|
1143
1098
|
*/
|
|
1144
|
-
|
|
1145
|
-
setupMediaConnectionListeners: () => void;
|
|
1099
|
+
getMediaStreams: (mediaDirection: any, audioVideo?: any, sharePreferences?: any) => any;
|
|
1146
1100
|
/**
|
|
1147
|
-
*
|
|
1148
|
-
* @
|
|
1149
|
-
* @
|
|
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}
|
|
1150
1106
|
* @memberof Meetings
|
|
1151
1107
|
*/
|
|
1152
|
-
|
|
1153
|
-
|
|
1108
|
+
getSupportedDevices: ({ sendAudio, sendVideo, }: {
|
|
1109
|
+
sendAudio: boolean;
|
|
1110
|
+
sendVideo: boolean;
|
|
1111
|
+
}) => any;
|
|
1154
1112
|
/**
|
|
1155
|
-
*
|
|
1156
|
-
*
|
|
1157
|
-
* @
|
|
1158
|
-
* @param {BundlePolicy} [bundlePolicy] Bundle policy settings
|
|
1159
|
-
* @param {AddMediaOptions} [options] Options for enabling/disabling audio/video
|
|
1160
|
-
* @returns {RoapMediaConnection | MultistreamRoapMediaConnection}
|
|
1161
|
-
*/
|
|
1162
|
-
private createMediaConnection;
|
|
1163
|
-
/**
|
|
1164
|
-
* Listens for an event emitted by eventEmitter and emits it from the meeting object
|
|
1165
|
-
*
|
|
1166
|
-
* @private
|
|
1167
|
-
* @param {*} eventEmitter object from which to forward the event
|
|
1168
|
-
* @param {*} eventTypeToForward which event type to listen on and to forward
|
|
1169
|
-
* @param {string} meetingEventType event type to be used in the event emitted from the meeting object
|
|
1170
|
-
* @returns {void}
|
|
1171
|
-
*/
|
|
1172
|
-
forwardEvent(eventEmitter: any, eventTypeToForward: any, meetingEventType: any): void;
|
|
1173
|
-
/**
|
|
1174
|
-
* Sets up all the references to local streams in this.mediaProperties before creating media connection
|
|
1175
|
-
* and before TURN discovery, so that the correct mute state is sent with TURN discovery roap messages.
|
|
1176
|
-
*
|
|
1177
|
-
* @private
|
|
1178
|
-
* @param {LocalStreams} localStreams
|
|
1179
|
-
* @returns {Promise<void>}
|
|
1180
|
-
*/
|
|
1181
|
-
private setUpLocalStreamReferences;
|
|
1182
|
-
/**
|
|
1183
|
-
* Calls mediaProperties.waitForMediaConnectionConnected() and sends CA client.ice.end metric on failure
|
|
1184
|
-
*
|
|
1185
|
-
* @private
|
|
1186
|
-
* @returns {Promise<void>}
|
|
1113
|
+
* Get the devices from the Media module
|
|
1114
|
+
* @returns {Promise} resolves to an array of DeviceInfo
|
|
1115
|
+
* @memberof Meetings
|
|
1187
1116
|
*/
|
|
1188
|
-
|
|
1117
|
+
getDevices: () => any;
|
|
1189
1118
|
/**
|
|
1190
|
-
*
|
|
1191
|
-
*
|
|
1119
|
+
* Registers for all required StatsAnalyzer events
|
|
1192
1120
|
* @private
|
|
1193
1121
|
* @returns {void}
|
|
1122
|
+
* @memberof Meetings
|
|
1194
1123
|
*/
|
|
1195
|
-
|
|
1196
|
-
/**
|
|
1197
|
-
* Handles device logging
|
|
1198
|
-
*
|
|
1199
|
-
* @private
|
|
1200
|
-
* @static
|
|
1201
|
-
* @returns {Promise<void>}
|
|
1202
|
-
*/
|
|
1203
|
-
private static handleDeviceLogging;
|
|
1204
|
-
/**
|
|
1205
|
-
* Returns a promise. This promise is created once the local sdp offer has been successfully created and is resolved
|
|
1206
|
-
* once the remote sdp answer has been received.
|
|
1207
|
-
*
|
|
1208
|
-
* @private
|
|
1209
|
-
* @returns {Promise<void>}
|
|
1210
|
-
*/
|
|
1211
|
-
private waitForRemoteSDPAnswer;
|
|
1212
|
-
/**
|
|
1213
|
-
* Calls establishMediaConnection with isForced = true to force turn discovery to happen
|
|
1214
|
-
*
|
|
1215
|
-
* @private
|
|
1216
|
-
* @param {RemoteMediaManagerConfiguration} [remoteMediaManagerConfig]
|
|
1217
|
-
* @param {BundlePolicy} [bundlePolicy]
|
|
1218
|
-
* @returns {Promise<void>}
|
|
1219
|
-
*/
|
|
1220
|
-
private retryEstablishMediaConnectionWithForcedTurnDiscovery;
|
|
1221
|
-
/**
|
|
1222
|
-
* Does relevant clean up before retrying to establish media connection
|
|
1223
|
-
* and performs the retry with forced turn discovery
|
|
1224
|
-
*
|
|
1225
|
-
* @private
|
|
1226
|
-
* @param {RemoteMediaManagerConfiguration} [remoteMediaManagerConfig]
|
|
1227
|
-
* @param {BundlePolicy} [bundlePolicy]
|
|
1228
|
-
* @returns {Promise<void>}
|
|
1229
|
-
*/
|
|
1230
|
-
private retryWithForcedTurnDiscovery;
|
|
1231
|
-
/**
|
|
1232
|
-
* If waitForMediaConnectionConnected() fails when we haven't done turn discovery then we
|
|
1233
|
-
* attempt to establish a media connection again, but this time using turn discovery. If we
|
|
1234
|
-
* used turn discovery on the first pass we do not attempt connection again.
|
|
1235
|
-
*
|
|
1236
|
-
* @private
|
|
1237
|
-
* @param {Error} error
|
|
1238
|
-
* @param {RemoteMediaManagerConfiguration} [remoteMediaManagerConfig]
|
|
1239
|
-
* @param {BundlePolicy} [bundlePolicy]
|
|
1240
|
-
* @returns {Promise<void>}
|
|
1241
|
-
*/
|
|
1242
|
-
private handleWaitForMediaConnectionConnectedError;
|
|
1243
|
-
/**
|
|
1244
|
-
* Does TURN discovery, SDP offer/answer exhange, establishes ICE connection and DTLS handshake.
|
|
1245
|
-
*
|
|
1246
|
-
* @private
|
|
1247
|
-
* @param {RemoteMediaManagerConfiguration} [remoteMediaManagerConfig]
|
|
1248
|
-
* @param {BundlePolicy} [bundlePolicy]
|
|
1249
|
-
* @param {boolean} [isForced] - let isForced be true to do turn discovery regardless of reachability results
|
|
1250
|
-
* @returns {Promise<void>}
|
|
1251
|
-
*/
|
|
1252
|
-
private establishMediaConnection;
|
|
1253
|
-
/**
|
|
1254
|
-
* Cleans up stats analyzer, peer connection, and turns off listeners
|
|
1255
|
-
*
|
|
1256
|
-
* @private
|
|
1257
|
-
* @returns {Promise<void>}
|
|
1258
|
-
*/
|
|
1259
|
-
private cleanUpOnAddMediaFailure;
|
|
1260
|
-
/**
|
|
1261
|
-
* Sends stats report, closes peer connection and cleans up any media connection
|
|
1262
|
-
* related things before trying to establish media connection again with turn server
|
|
1263
|
-
*
|
|
1264
|
-
* @private
|
|
1265
|
-
* @returns {Promise<void>}
|
|
1266
|
-
*/
|
|
1267
|
-
private cleanUpBeforeRetryWithTurnServer;
|
|
1124
|
+
setupStatsAnalyzerEventHandlers: () => void;
|
|
1268
1125
|
/**
|
|
1269
|
-
*
|
|
1270
|
-
*
|
|
1271
|
-
* @param {
|
|
1272
|
-
* @
|
|
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}
|
|
1273
1133
|
* @public
|
|
1274
1134
|
* @memberof Meeting
|
|
1275
1135
|
*/
|
|
1276
|
-
addMedia(options?:
|
|
1136
|
+
addMedia(options?: any): any;
|
|
1277
1137
|
/**
|
|
1278
1138
|
* Informs if the peer connection is in a state that can be updated with updateMedia (audio/video/share)
|
|
1279
1139
|
* @returns {Boolean}
|
|
1280
1140
|
*/
|
|
1281
1141
|
canUpdateMedia(): boolean;
|
|
1282
|
-
/**
|
|
1283
|
-
* media failed, so collect a stats report from webrtc using the wcme connection to grab the rtc stats report
|
|
1284
|
-
* send a webrtc telemetry dump to the configured server using the internal media core check metrics configured callback
|
|
1285
|
-
* @param {String} callFrom - the function calling this function, optional.
|
|
1286
|
-
* @returns {Promise<void>}
|
|
1287
|
-
*/
|
|
1288
|
-
private forceSendStatsReport;
|
|
1289
1142
|
/**
|
|
1290
1143
|
* Enqueues a media update operation.
|
|
1291
1144
|
* @param {String} mediaUpdateType one of MEDIA_UPDATE_TYPE values
|
|
@@ -1311,26 +1164,86 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1311
1164
|
*/
|
|
1312
1165
|
processNextQueuedMediaUpdate: () => void;
|
|
1313
1166
|
/**
|
|
1314
|
-
*
|
|
1315
|
-
*
|
|
1316
|
-
* updateMedia({audioEnabled: false}) is called, the audio will not be sent or received anymore,
|
|
1317
|
-
* but the track's "published" state is not changed and when updateMedia({audioEnabled: true}) is called,
|
|
1318
|
-
* the sending of the audio from the same track will resume.
|
|
1319
|
-
*
|
|
1167
|
+
* A confluence of updateAudio, updateVideo, and updateShare
|
|
1168
|
+
* this function re-establishes all of the media streams with new options
|
|
1320
1169
|
* @param {Object} options
|
|
1321
|
-
* @param {
|
|
1322
|
-
* @param {
|
|
1323
|
-
* @param {
|
|
1170
|
+
* @param {MediaStream} options.localStream
|
|
1171
|
+
* @param {MediaStream} options.localShare
|
|
1172
|
+
* @param {MediaDirection} options.mediaSettings
|
|
1324
1173
|
* @returns {Promise}
|
|
1174
|
+
* @todo fix setRemoteStream for updateMedia
|
|
1325
1175
|
* @public
|
|
1326
1176
|
* @memberof Meeting
|
|
1327
1177
|
*/
|
|
1328
|
-
updateMedia(options
|
|
1329
|
-
|
|
1330
|
-
|
|
1331
|
-
|
|
1332
|
-
|
|
1333
|
-
|
|
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;
|
|
1334
1247
|
/**
|
|
1335
1248
|
* Acknowledge the meeting, outgoing or incoming
|
|
1336
1249
|
* @param {String} type
|
|
@@ -1338,11 +1251,7 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1338
1251
|
* @public
|
|
1339
1252
|
* @memberof Meeting
|
|
1340
1253
|
*/
|
|
1341
|
-
acknowledge(type: string):
|
|
1342
|
-
response: any;
|
|
1343
|
-
}> | Promise<{
|
|
1344
|
-
message: string;
|
|
1345
|
-
}>;
|
|
1254
|
+
acknowledge(type: string): any;
|
|
1346
1255
|
/**
|
|
1347
1256
|
* Decline this meeting
|
|
1348
1257
|
* @param {String} reason
|
|
@@ -1352,45 +1261,15 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1352
1261
|
*/
|
|
1353
1262
|
decline(reason: string): any;
|
|
1354
1263
|
/**
|
|
1355
|
-
*
|
|
1356
|
-
*
|
|
1357
|
-
* This is to support quickly submitting a leave request when the browser/tab is closing.
|
|
1358
|
-
* Calling meeting.leave will not work because there are some async steps that will
|
|
1359
|
-
* not complete before the browser is closed. Instead, we pre-gather all the
|
|
1360
|
-
* information/options needed for the request(s), and then simply and quickly
|
|
1361
|
-
* fire the fetch(es) when pagehide is triggered.
|
|
1362
|
-
*
|
|
1363
|
-
* We must use fetch instead of request because fetch has a keepalive option that
|
|
1364
|
-
* allows the request it to outlive the page.
|
|
1365
|
-
*
|
|
1366
|
-
* Note: the $timings values will be wrong, but setRequestTimingsAndFetch() will
|
|
1367
|
-
* properly adjust them before submitting.
|
|
1368
|
-
*
|
|
1369
|
-
* @public
|
|
1264
|
+
* Leave the current meeting
|
|
1370
1265
|
* @param {Object} options leave options
|
|
1371
1266
|
* @param {String} options.resourceId the device with which to leave from, empty if just the computer
|
|
1372
|
-
* @param {any} options.reason the reason for leaving
|
|
1373
|
-
* @returns {Promise} resolves to options to be used with fetch
|
|
1374
|
-
*/
|
|
1375
|
-
buildLeaveFetchRequestOptions(options?: {
|
|
1376
|
-
resourceId?: string;
|
|
1377
|
-
reason?: any;
|
|
1378
|
-
}): any;
|
|
1379
|
-
/**
|
|
1380
|
-
* Leave the current meeting
|
|
1381
|
-
* @param {Object} options - leave options
|
|
1382
|
-
* @param {String} [options.resourceId] - the device with which to leave from, empty if just the computer
|
|
1383
|
-
* @param {String} [options.clientEventLeaveReason] - the leaveReason to include in the Call Analyzer event.
|
|
1384
|
-
* Must be one of: 'paired-leave' | 'one-to-one' | 'ended-by-locus' (defaults to no reason)
|
|
1385
|
-
* https://sqbu-github.cisco.com/WebExSquared/event-dictionary/blob/main/diagnostic-events.raml#L796
|
|
1386
|
-
* @param {String} [options.reason] - only used for logging
|
|
1387
1267
|
* @returns {Promise}
|
|
1388
1268
|
* @public
|
|
1389
1269
|
* @memberof Meeting
|
|
1390
1270
|
*/
|
|
1391
1271
|
leave(options?: {
|
|
1392
1272
|
resourceId?: string;
|
|
1393
|
-
clientEventLeaveReason?: ClientEventLeaveReason;
|
|
1394
1273
|
reason?: any;
|
|
1395
1274
|
}): any;
|
|
1396
1275
|
/**
|
|
@@ -1418,12 +1297,12 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1418
1297
|
*/
|
|
1419
1298
|
private requestScreenShareFloor;
|
|
1420
1299
|
/**
|
|
1421
|
-
*
|
|
1422
|
-
*
|
|
1423
|
-
*
|
|
1424
|
-
* @
|
|
1300
|
+
* Stops the screen share
|
|
1301
|
+
* @returns {Promise} see #updateShare
|
|
1302
|
+
* @public
|
|
1303
|
+
* @memberof Meeting
|
|
1425
1304
|
*/
|
|
1426
|
-
|
|
1305
|
+
stopShare(options?: {}): any;
|
|
1427
1306
|
/**
|
|
1428
1307
|
* Sends a request to Locus to release the screen share floor.
|
|
1429
1308
|
* @returns {Promise} see #meetingRequest.changeMeetingFloor
|
|
@@ -1454,16 +1333,6 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1454
1333
|
* @memberof Meeting
|
|
1455
1334
|
*/
|
|
1456
1335
|
setDisallowUnmute(enabled: boolean): Promise<any>;
|
|
1457
|
-
/**
|
|
1458
|
-
* set the mute all flag for participants if you're the host
|
|
1459
|
-
* @returns {Promise}
|
|
1460
|
-
* @param {boolean} mutedEnabled
|
|
1461
|
-
* @param {boolean} disallowUnmuteEnabled
|
|
1462
|
-
* @param {boolean} muteOnEntryEnabled
|
|
1463
|
-
* @public
|
|
1464
|
-
* @memberof Meeting
|
|
1465
|
-
*/
|
|
1466
|
-
setMuteAll(mutedEnabled: boolean, disallowUnmuteEnabled: boolean, muteOnEntryEnabled: boolean): Promise<any>;
|
|
1467
1336
|
/**
|
|
1468
1337
|
* End the recording of this meeting
|
|
1469
1338
|
* @returns {Promise}
|
|
@@ -1514,7 +1383,7 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1514
1383
|
* @public
|
|
1515
1384
|
* @memberof Meeting
|
|
1516
1385
|
*/
|
|
1517
|
-
sendDTMF(tones: string):
|
|
1386
|
+
sendDTMF(tones: string): any;
|
|
1518
1387
|
/**
|
|
1519
1388
|
* Sends request to change layout type for the current meeting for the specific participant/device only
|
|
1520
1389
|
* @param {String} [layoutType] a layout type that should be available in meeting constants {@link #layout_types}
|
|
@@ -1539,41 +1408,50 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1539
1408
|
height: number;
|
|
1540
1409
|
};
|
|
1541
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;
|
|
1542
1417
|
/**
|
|
1543
1418
|
* Sets the quality level of the remote incoming media
|
|
1544
1419
|
* @param {String} level {LOW|MEDIUM|HIGH}
|
|
1545
1420
|
* @returns {Promise}
|
|
1546
1421
|
*/
|
|
1547
|
-
setRemoteQualityLevel(level: string):
|
|
1422
|
+
setRemoteQualityLevel(level: string): any;
|
|
1548
1423
|
/**
|
|
1549
|
-
*
|
|
1550
|
-
* @
|
|
1551
|
-
* @
|
|
1552
|
-
* @
|
|
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
|
|
1553
1428
|
*/
|
|
1554
|
-
|
|
1429
|
+
setMeetingQuality(level: string): any;
|
|
1555
1430
|
/**
|
|
1556
|
-
*
|
|
1557
|
-
* @
|
|
1558
|
-
* @
|
|
1559
|
-
* @param {
|
|
1560
|
-
* @
|
|
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}
|
|
1561
1439
|
*/
|
|
1562
|
-
|
|
1440
|
+
shareScreen(options?: {
|
|
1441
|
+
sendAudio: boolean;
|
|
1442
|
+
sendShare: boolean;
|
|
1443
|
+
sharePreferences: {
|
|
1444
|
+
shareConstraints: MediaTrackConstraints;
|
|
1445
|
+
};
|
|
1446
|
+
}): any;
|
|
1563
1447
|
/**
|
|
1564
|
-
* Functionality for when a share
|
|
1448
|
+
* Functionality for when a share is ended.
|
|
1565
1449
|
* @private
|
|
1566
1450
|
* @memberof Meeting
|
|
1451
|
+
* @param {MediaStream} localShare
|
|
1567
1452
|
* @returns {undefined}
|
|
1568
1453
|
*/
|
|
1569
|
-
private
|
|
1570
|
-
/**
|
|
1571
|
-
* Emits meeting:stoppedSharingLocal
|
|
1572
|
-
* @private
|
|
1573
|
-
* @returns {undefined}
|
|
1574
|
-
* @memberof Meeting
|
|
1575
|
-
*/
|
|
1576
|
-
private triggerStoppedSharing;
|
|
1454
|
+
private handleShareTrackEnded;
|
|
1577
1455
|
/**
|
|
1578
1456
|
* Emits the 'network:quality' event
|
|
1579
1457
|
* 1 indicates an acceptable uplink network.
|
|
@@ -1588,132 +1466,157 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
1588
1466
|
private sendNetworkQualityEvent;
|
|
1589
1467
|
/**
|
|
1590
1468
|
* Handle logging the media
|
|
1591
|
-
* @param {Object}
|
|
1469
|
+
* @param {Object} audioTrack The audio track
|
|
1470
|
+
* @param {Object} videoTrack The video track
|
|
1592
1471
|
* @private
|
|
1593
1472
|
* @returns {undefined}
|
|
1594
1473
|
*/
|
|
1595
1474
|
private handleMediaLogging;
|
|
1596
1475
|
/**
|
|
1597
|
-
*
|
|
1598
|
-
* @returns {
|
|
1476
|
+
* @param {string} typeMedia 'audio' or 'video'
|
|
1477
|
+
* @returns {undefined}
|
|
1599
1478
|
*/
|
|
1600
|
-
|
|
1479
|
+
setStartSetupDelay(typeMedia: string): void;
|
|
1601
1480
|
/**
|
|
1602
|
-
*
|
|
1603
|
-
* @returns {
|
|
1604
|
-
* @public
|
|
1605
|
-
* @memberof Meeting
|
|
1481
|
+
* @param {string} typeMedia 'audio' or 'video'
|
|
1482
|
+
* @returns {undefined}
|
|
1606
1483
|
*/
|
|
1607
|
-
|
|
1484
|
+
setEndSetupDelay(typeMedia: string): void;
|
|
1608
1485
|
/**
|
|
1609
|
-
*
|
|
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'
|
|
1610
1492
|
* @returns {undefined}
|
|
1611
|
-
* @public
|
|
1612
|
-
* @memberof Meeting
|
|
1613
1493
|
*/
|
|
1614
|
-
|
|
1494
|
+
setStartSendingMediaDelay(typeMedia: string): void;
|
|
1615
1495
|
/**
|
|
1616
|
-
*
|
|
1617
|
-
* @returns {
|
|
1618
|
-
* @private
|
|
1619
|
-
* @memberof Meeting
|
|
1496
|
+
* @param {string} typeMedia 'audio' or 'video'
|
|
1497
|
+
* @returns {undefined}
|
|
1620
1498
|
*/
|
|
1621
|
-
|
|
1499
|
+
setEndSendingMediaDelay(typeMedia: string): void;
|
|
1622
1500
|
/**
|
|
1623
|
-
*
|
|
1624
|
-
* @returns {
|
|
1625
|
-
* @private
|
|
1626
|
-
* @memberof Meeting
|
|
1501
|
+
* @param {string} typeMedia 'audio' or 'video'
|
|
1502
|
+
* @returns {string} duration between join response and first media tx
|
|
1627
1503
|
*/
|
|
1628
|
-
|
|
1504
|
+
getSendingMediaDelayDuration(typeMedia: string): number;
|
|
1629
1505
|
/**
|
|
1630
|
-
* Send a reaction inside the meeting.
|
|
1631
1506
|
*
|
|
1632
|
-
* @
|
|
1633
|
-
* @param {SkinToneType} skinToneType - skin tone for the reaction. Example: "medium_dark"
|
|
1634
|
-
* @returns {Promise}
|
|
1635
|
-
* @public
|
|
1636
|
-
* @memberof Meeting
|
|
1507
|
+
* @returns {undefined}
|
|
1637
1508
|
*/
|
|
1638
|
-
|
|
1509
|
+
setStartLocalSDPGenRemoteSDPRecvDelay(): void;
|
|
1639
1510
|
/**
|
|
1640
|
-
* Method to enable or disable reactions inside the meeting.
|
|
1641
1511
|
*
|
|
1642
|
-
* @
|
|
1643
|
-
* @returns {Promise}
|
|
1644
|
-
* @public
|
|
1645
|
-
* @memberof Meeting
|
|
1512
|
+
* @returns {undefined}
|
|
1646
1513
|
*/
|
|
1647
|
-
|
|
1514
|
+
setEndLocalSDPGenRemoteSDPRecvDelay(): void;
|
|
1648
1515
|
/**
|
|
1649
|
-
* Throws if we don't have a media connection created
|
|
1650
1516
|
*
|
|
1651
|
-
* @returns {
|
|
1517
|
+
* @returns {string} duration between local SDP generation and remote SDP reception
|
|
1652
1518
|
*/
|
|
1653
|
-
|
|
1519
|
+
getLocalSDPGenRemoteSDPRecvDelay(): number;
|
|
1654
1520
|
/**
|
|
1655
|
-
* Method to enable or disable the 'Music mode' effect on audio stream
|
|
1656
1521
|
*
|
|
1657
|
-
* @
|
|
1658
|
-
* @returns {Promise}
|
|
1522
|
+
* @returns {undefined}
|
|
1659
1523
|
*/
|
|
1660
|
-
|
|
1661
|
-
/**
|
|
1524
|
+
setStartCallInitiateJoinReq(): void;
|
|
1525
|
+
/**
|
|
1662
1526
|
*
|
|
1663
|
-
* @returns {
|
|
1527
|
+
* @returns {undefined}
|
|
1664
1528
|
*/
|
|
1665
|
-
|
|
1529
|
+
setEndCallInitiateJoinReq(): void;
|
|
1666
1530
|
/**
|
|
1667
|
-
* Publishes a stream.
|
|
1668
1531
|
*
|
|
1669
|
-
* @
|
|
1670
|
-
* @param {LocalStream} stream to publish
|
|
1671
|
-
* @returns {Promise}
|
|
1532
|
+
* @returns {string} duration between call initiate and sending join request to locus
|
|
1672
1533
|
*/
|
|
1673
|
-
|
|
1534
|
+
getCallInitiateJoinReq(): number;
|
|
1674
1535
|
/**
|
|
1675
|
-
* Un-publishes a stream.
|
|
1676
1536
|
*
|
|
1677
|
-
* @
|
|
1678
|
-
* @param {LocalStream} stream to unpublish
|
|
1679
|
-
* @returns {Promise}
|
|
1537
|
+
* @returns {undefined}
|
|
1680
1538
|
*/
|
|
1681
|
-
|
|
1539
|
+
setStartJoinReqResp(): void;
|
|
1682
1540
|
/**
|
|
1683
|
-
* Publishes specified local streams in the meeting
|
|
1684
1541
|
*
|
|
1685
|
-
* @
|
|
1686
|
-
* @returns {Promise}
|
|
1542
|
+
* @returns {undefined}
|
|
1687
1543
|
*/
|
|
1688
|
-
|
|
1544
|
+
setEndJoinReqResp(): void;
|
|
1689
1545
|
/**
|
|
1690
|
-
* Un-publishes specified local streams in the meeting
|
|
1691
1546
|
*
|
|
1692
|
-
* @
|
|
1693
|
-
* @returns {Promise}
|
|
1547
|
+
* @returns {string} duration between sending locus join request and receiving join response
|
|
1694
1548
|
*/
|
|
1695
|
-
|
|
1549
|
+
getJoinReqResp(): number;
|
|
1696
1550
|
/**
|
|
1697
|
-
* Gets permission token expiry information including timeLeft, expiryTime, currentTime
|
|
1698
|
-
* (from the time the function has been fired)
|
|
1699
1551
|
*
|
|
1700
|
-
* @returns {
|
|
1701
|
-
|
|
1702
|
-
|
|
1703
|
-
|
|
1704
|
-
|
|
1705
|
-
|
|
1706
|
-
|
|
1707
|
-
|
|
1708
|
-
|
|
1709
|
-
|
|
1710
|
-
/**
|
|
1711
|
-
*
|
|
1712
|
-
*
|
|
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.
|
|
1713
1614
|
*
|
|
1714
|
-
* @param {
|
|
1715
|
-
* @param {
|
|
1716
|
-
* @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
|
|
1717
1620
|
*/
|
|
1718
|
-
|
|
1621
|
+
sendReaction(reactionType: ReactionType, skinToneType?: SkinToneType): any;
|
|
1719
1622
|
}
|