@webex/plugin-meetings 3.0.0-beta.15 → 3.0.0-beta.151
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 +45 -1
- package/dist/annotation/annotation.types.js +7 -0
- package/dist/annotation/annotation.types.js.map +1 -0
- package/dist/annotation/constants.js +49 -0
- package/dist/annotation/constants.js.map +1 -0
- package/dist/annotation/index.js +359 -0
- package/dist/annotation/index.js.map +1 -0
- package/dist/breakouts/breakout.js +193 -0
- package/dist/breakouts/breakout.js.map +1 -0
- package/dist/breakouts/collection.js +23 -0
- package/dist/breakouts/collection.js.map +1 -0
- package/dist/breakouts/edit-lock-error.js +52 -0
- package/dist/breakouts/edit-lock-error.js.map +1 -0
- package/dist/breakouts/events.js +43 -0
- package/dist/breakouts/events.js.map +1 -0
- package/dist/breakouts/index.js +1046 -0
- package/dist/breakouts/index.js.map +1 -0
- package/dist/breakouts/request.js +78 -0
- package/dist/breakouts/request.js.map +1 -0
- package/dist/breakouts/utils.js +67 -0
- package/dist/breakouts/utils.js.map +1 -0
- package/dist/common/browser-detection.js +1 -21
- package/dist/common/browser-detection.js.map +1 -1
- package/dist/common/collection.js +5 -20
- package/dist/common/collection.js.map +1 -1
- package/dist/common/config.js +0 -7
- package/dist/common/config.js.map +1 -1
- package/dist/common/errors/captcha-error.js +0 -21
- package/dist/common/errors/captcha-error.js.map +1 -1
- package/dist/common/errors/intent-to-join.js +0 -21
- package/dist/common/errors/intent-to-join.js.map +1 -1
- package/dist/common/errors/join-meeting.js +0 -21
- package/dist/common/errors/join-meeting.js.map +1 -1
- package/dist/common/errors/media.js +0 -21
- package/dist/common/errors/media.js.map +1 -1
- package/dist/common/errors/parameter.js +0 -28
- package/dist/common/errors/parameter.js.map +1 -1
- package/dist/common/errors/password-error.js +0 -21
- package/dist/common/errors/password-error.js.map +1 -1
- package/dist/common/errors/permission.js +0 -21
- package/dist/common/errors/permission.js.map +1 -1
- package/dist/common/errors/reconnection-in-progress.js +0 -17
- package/dist/common/errors/reconnection-in-progress.js.map +1 -1
- package/dist/common/errors/reconnection.js +0 -21
- package/dist/common/errors/reconnection.js.map +1 -1
- package/dist/common/errors/stats.js +0 -21
- package/dist/common/errors/stats.js.map +1 -1
- package/dist/common/errors/webex-errors.js +9 -43
- package/dist/common/errors/webex-errors.js.map +1 -1
- package/dist/common/errors/webex-meetings-error.js +1 -24
- package/dist/common/errors/webex-meetings-error.js.map +1 -1
- package/dist/common/events/events-scope.js +0 -22
- package/dist/common/events/events-scope.js.map +1 -1
- package/dist/common/events/events.js +0 -23
- package/dist/common/events/events.js.map +1 -1
- package/dist/common/events/trigger-proxy.js +0 -12
- package/dist/common/events/trigger-proxy.js.map +1 -1
- package/dist/common/events/util.js +0 -15
- package/dist/common/events/util.js.map +1 -1
- package/dist/common/logs/logger-config.js +0 -4
- package/dist/common/logs/logger-config.js.map +1 -1
- package/dist/common/logs/logger-proxy.js +1 -8
- package/dist/common/logs/logger-proxy.js.map +1 -1
- package/dist/common/logs/request.js +35 -61
- package/dist/common/logs/request.js.map +1 -1
- package/dist/common/queue.js +4 -14
- package/dist/common/queue.js.map +1 -1
- package/dist/config.js +7 -13
- package/dist/config.js.map +1 -1
- package/dist/constants.js +208 -64
- package/dist/constants.js.map +1 -1
- package/dist/controls-options-manager/constants.js +14 -0
- package/dist/controls-options-manager/constants.js.map +1 -0
- package/dist/controls-options-manager/enums.js +27 -0
- package/dist/controls-options-manager/enums.js.map +1 -0
- package/dist/controls-options-manager/index.js +297 -0
- package/dist/controls-options-manager/index.js.map +1 -0
- package/dist/controls-options-manager/types.js +7 -0
- package/dist/controls-options-manager/types.js.map +1 -0
- package/dist/controls-options-manager/util.js +300 -0
- package/dist/controls-options-manager/util.js.map +1 -0
- package/dist/index.js +78 -17
- package/dist/index.js.map +1 -1
- package/dist/locus-info/controlsUtils.js +100 -29
- package/dist/locus-info/controlsUtils.js.map +1 -1
- package/dist/locus-info/embeddedAppsUtils.js +3 -26
- package/dist/locus-info/embeddedAppsUtils.js.map +1 -1
- package/dist/locus-info/fullState.js +0 -15
- package/dist/locus-info/fullState.js.map +1 -1
- package/dist/locus-info/hostUtils.js +4 -12
- package/dist/locus-info/hostUtils.js.map +1 -1
- package/dist/locus-info/index.js +387 -208
- package/dist/locus-info/index.js.map +1 -1
- package/dist/locus-info/infoUtils.js +0 -38
- package/dist/locus-info/infoUtils.js.map +1 -1
- package/dist/locus-info/mediaSharesUtils.js +54 -38
- package/dist/locus-info/mediaSharesUtils.js.map +1 -1
- package/dist/locus-info/parser.js +90 -126
- package/dist/locus-info/parser.js.map +1 -1
- package/dist/locus-info/selfUtils.js +93 -92
- package/dist/locus-info/selfUtils.js.map +1 -1
- package/dist/media/index.js +70 -219
- package/dist/media/index.js.map +1 -1
- package/dist/media/properties.js +74 -198
- package/dist/media/properties.js.map +1 -1
- package/dist/media/util.js +1 -8
- package/dist/media/util.js.map +1 -1
- package/dist/mediaQualityMetrics/config.js +505 -495
- package/dist/mediaQualityMetrics/config.js.map +1 -1
- package/dist/meeting/in-meeting-actions.js +79 -14
- package/dist/meeting/in-meeting-actions.js.map +1 -1
- package/dist/meeting/index.js +2685 -3324
- package/dist/meeting/index.js.map +1 -1
- package/dist/meeting/locusMediaRequest.js +291 -0
- package/dist/meeting/locusMediaRequest.js.map +1 -0
- package/dist/meeting/muteState.js +243 -185
- package/dist/meeting/muteState.js.map +1 -1
- package/dist/meeting/request.js +296 -342
- package/dist/meeting/request.js.map +1 -1
- package/dist/meeting/request.type.js +0 -1
- package/dist/meeting/request.type.js.map +1 -1
- package/dist/meeting/state.js +16 -26
- package/dist/meeting/state.js.map +1 -1
- package/dist/meeting/util.js +446 -585
- package/dist/meeting/util.js.map +1 -1
- package/dist/meeting-info/collection.js +3 -25
- package/dist/meeting-info/collection.js.map +1 -1
- package/dist/meeting-info/index.js +8 -31
- package/dist/meeting-info/index.js.map +1 -1
- package/dist/meeting-info/meeting-info-v2.js +261 -242
- package/dist/meeting-info/meeting-info-v2.js.map +1 -1
- package/dist/meeting-info/request.js +1 -16
- package/dist/meeting-info/request.js.map +1 -1
- package/dist/meeting-info/util.js +98 -183
- package/dist/meeting-info/util.js.map +1 -1
- package/dist/meeting-info/utilv2.js +156 -232
- package/dist/meeting-info/utilv2.js.map +1 -1
- package/dist/meetings/collection.js +24 -20
- package/dist/meetings/collection.js.map +1 -1
- package/dist/meetings/index.js +526 -372
- package/dist/meetings/index.js.map +1 -1
- package/dist/meetings/meetings.types.js +7 -0
- package/dist/meetings/meetings.types.js.map +1 -0
- package/dist/meetings/request.js +21 -40
- package/dist/meetings/request.js.map +1 -1
- package/dist/meetings/util.js +172 -141
- package/dist/meetings/util.js.map +1 -1
- package/dist/member/index.js +58 -57
- package/dist/member/index.js.map +1 -1
- package/dist/member/types.js +15 -0
- package/dist/member/types.js.map +1 -0
- package/dist/member/util.js +101 -69
- package/dist/member/util.js.map +1 -1
- package/dist/members/collection.js +12 -12
- package/dist/members/collection.js.map +1 -1
- package/dist/members/index.js +123 -162
- package/dist/members/index.js.map +1 -1
- package/dist/members/request.js +120 -85
- package/dist/members/request.js.map +1 -1
- package/dist/members/types.js +15 -0
- package/dist/members/types.js.map +1 -0
- package/dist/members/util.js +314 -260
- package/dist/members/util.js.map +1 -1
- package/dist/metrics/config.js +50 -16
- package/dist/metrics/config.js.map +1 -1
- package/dist/metrics/constants.js +4 -7
- package/dist/metrics/constants.js.map +1 -1
- package/dist/metrics/index.js +75 -147
- package/dist/metrics/index.js.map +1 -1
- package/dist/multistream/mediaRequestManager.js +170 -50
- package/dist/multistream/mediaRequestManager.js.map +1 -1
- package/dist/multistream/receiveSlot.js +58 -65
- package/dist/multistream/receiveSlot.js.map +1 -1
- package/dist/multistream/receiveSlotManager.js +73 -94
- package/dist/multistream/receiveSlotManager.js.map +1 -1
- package/dist/multistream/remoteMedia.js +55 -74
- package/dist/multistream/remoteMedia.js.map +1 -1
- package/dist/multistream/remoteMediaGroup.js +66 -43
- package/dist/multistream/remoteMediaGroup.js.map +1 -1
- package/dist/multistream/remoteMediaManager.js +502 -442
- package/dist/multistream/remoteMediaManager.js.map +1 -1
- package/dist/networkQualityMonitor/index.js +24 -51
- package/dist/networkQualityMonitor/index.js.map +1 -1
- package/dist/personal-meeting-room/index.js +3 -38
- package/dist/personal-meeting-room/index.js.map +1 -1
- package/dist/personal-meeting-room/request.js +2 -33
- package/dist/personal-meeting-room/request.js.map +1 -1
- package/dist/personal-meeting-room/util.js +0 -13
- package/dist/personal-meeting-room/util.js.map +1 -1
- package/dist/reachability/index.js +190 -199
- package/dist/reachability/index.js.map +1 -1
- package/dist/reachability/request.js +14 -23
- package/dist/reachability/request.js.map +1 -1
- package/dist/reactions/constants.js +13 -0
- package/dist/reactions/constants.js.map +1 -0
- package/dist/reactions/reactions.js +2 -4
- package/dist/reactions/reactions.js.map +1 -1
- package/dist/reactions/reactions.type.js +18 -24
- package/dist/reactions/reactions.type.js.map +1 -1
- package/dist/reconnection-manager/index.js +356 -476
- package/dist/reconnection-manager/index.js.map +1 -1
- package/dist/recording-controller/enums.js +17 -0
- package/dist/recording-controller/enums.js.map +1 -0
- package/dist/recording-controller/index.js +343 -0
- package/dist/recording-controller/index.js.map +1 -0
- package/dist/recording-controller/util.js +63 -0
- package/dist/recording-controller/util.js.map +1 -0
- package/dist/roap/index.js +32 -75
- package/dist/roap/index.js.map +1 -1
- package/dist/roap/request.js +129 -136
- package/dist/roap/request.js.map +1 -1
- package/dist/roap/turnDiscovery.js +143 -103
- package/dist/roap/turnDiscovery.js.map +1 -1
- package/dist/statsAnalyzer/global.js +1 -95
- package/dist/statsAnalyzer/global.js.map +1 -1
- package/dist/statsAnalyzer/index.js +369 -462
- package/dist/statsAnalyzer/index.js.map +1 -1
- package/dist/statsAnalyzer/mqaUtil.js +144 -94
- package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
- package/dist/transcription/index.js +9 -44
- package/dist/transcription/index.js.map +1 -1
- package/dist/types/annotation/annotation.types.d.ts +43 -0
- package/dist/types/annotation/constants.d.ts +31 -0
- package/dist/types/annotation/index.d.ts +124 -0
- package/dist/types/breakouts/breakout.d.ts +8 -0
- package/dist/types/breakouts/collection.d.ts +5 -0
- package/dist/types/breakouts/edit-lock-error.d.ts +15 -0
- package/dist/types/breakouts/events.d.ts +2 -0
- package/dist/types/breakouts/index.d.ts +5 -0
- package/dist/types/breakouts/request.d.ts +22 -0
- package/dist/types/breakouts/utils.d.ts +15 -0
- package/dist/types/common/browser-detection.d.ts +9 -0
- package/dist/types/common/collection.d.ts +48 -0
- package/dist/types/common/config.d.ts +2 -0
- package/dist/types/common/errors/captcha-error.d.ts +15 -0
- package/dist/types/common/errors/intent-to-join.d.ts +16 -0
- package/dist/types/common/errors/join-meeting.d.ts +17 -0
- package/dist/types/common/errors/media.d.ts +15 -0
- package/dist/types/common/errors/parameter.d.ts +15 -0
- package/dist/types/common/errors/password-error.d.ts +15 -0
- package/dist/types/common/errors/permission.d.ts +14 -0
- package/dist/types/common/errors/reconnection-in-progress.d.ts +9 -0
- package/dist/types/common/errors/reconnection.d.ts +15 -0
- package/dist/types/common/errors/stats.d.ts +15 -0
- package/dist/types/common/errors/webex-errors.d.ts +69 -0
- package/dist/types/common/errors/webex-meetings-error.d.ts +20 -0
- package/dist/types/common/events/events-scope.d.ts +17 -0
- package/dist/types/common/events/events.d.ts +12 -0
- package/dist/types/common/events/trigger-proxy.d.ts +2 -0
- package/dist/types/common/events/util.d.ts +2 -0
- package/dist/types/common/logs/logger-config.d.ts +2 -0
- package/dist/types/common/logs/logger-proxy.d.ts +2 -0
- package/dist/types/common/logs/request.d.ts +34 -0
- package/dist/types/common/queue.d.ts +32 -0
- package/dist/types/config.d.ts +72 -0
- package/dist/types/constants.d.ts +978 -0
- package/dist/types/controls-options-manager/constants.d.ts +4 -0
- package/dist/types/controls-options-manager/enums.d.ts +15 -0
- package/dist/types/controls-options-manager/index.d.ts +136 -0
- package/dist/types/controls-options-manager/types.d.ts +43 -0
- package/dist/types/controls-options-manager/util.d.ts +1 -0
- package/dist/types/index.d.ts +7 -0
- package/dist/types/locus-info/controlsUtils.d.ts +2 -0
- package/dist/types/locus-info/embeddedAppsUtils.d.ts +2 -0
- package/dist/types/locus-info/fullState.d.ts +2 -0
- package/dist/types/locus-info/hostUtils.d.ts +2 -0
- package/dist/types/locus-info/index.d.ts +315 -0
- package/dist/types/locus-info/infoUtils.d.ts +2 -0
- package/dist/types/locus-info/mediaSharesUtils.d.ts +2 -0
- package/dist/types/locus-info/parser.d.ts +212 -0
- package/dist/types/locus-info/selfUtils.d.ts +2 -0
- package/dist/types/media/index.d.ts +34 -0
- package/dist/types/media/properties.d.ts +86 -0
- package/dist/types/media/util.d.ts +2 -0
- package/dist/types/mediaQualityMetrics/config.d.ts +365 -0
- package/dist/types/meeting/in-meeting-actions.d.ts +149 -0
- package/dist/types/meeting/index.d.ts +1509 -0
- package/dist/types/meeting/locusMediaRequest.d.ts +70 -0
- package/dist/types/meeting/muteState.d.ts +184 -0
- package/dist/types/meeting/request.d.ts +270 -0
- package/dist/types/meeting/request.type.d.ts +11 -0
- package/dist/types/meeting/state.d.ts +9 -0
- package/dist/types/meeting/util.d.ts +75 -0
- package/dist/types/meeting-info/collection.d.ts +20 -0
- package/dist/types/meeting-info/index.d.ts +57 -0
- package/dist/types/meeting-info/meeting-info-v2.d.ts +122 -0
- package/dist/types/meeting-info/request.d.ts +22 -0
- package/dist/types/meeting-info/util.d.ts +2 -0
- package/dist/types/meeting-info/utilv2.d.ts +2 -0
- package/dist/types/meetings/collection.d.ts +31 -0
- package/dist/types/meetings/index.d.ts +364 -0
- package/dist/types/meetings/meetings.types.d.ts +4 -0
- package/dist/types/meetings/request.d.ts +27 -0
- package/dist/types/meetings/util.d.ts +18 -0
- package/dist/types/member/index.d.ts +157 -0
- package/dist/types/member/types.d.ts +21 -0
- package/dist/types/member/util.d.ts +2 -0
- package/dist/types/members/collection.d.ts +29 -0
- package/dist/types/members/index.d.ts +353 -0
- package/dist/types/members/request.d.ts +114 -0
- package/dist/types/members/types.d.ts +24 -0
- package/dist/types/members/util.d.ts +210 -0
- package/dist/types/metrics/config.d.ts +195 -0
- package/dist/types/metrics/constants.d.ts +55 -0
- package/dist/types/metrics/index.d.ts +169 -0
- package/dist/types/multistream/mediaRequestManager.d.ts +104 -0
- package/dist/types/multistream/receiveSlot.d.ts +68 -0
- package/dist/types/multistream/receiveSlotManager.d.ts +56 -0
- package/dist/types/multistream/remoteMedia.d.ts +72 -0
- package/dist/types/multistream/remoteMediaGroup.d.ts +47 -0
- package/dist/types/multistream/remoteMediaManager.d.ts +277 -0
- package/dist/types/networkQualityMonitor/index.d.ts +70 -0
- package/dist/types/personal-meeting-room/index.d.ts +47 -0
- package/dist/types/personal-meeting-room/request.d.ts +14 -0
- package/dist/types/personal-meeting-room/util.d.ts +2 -0
- package/dist/types/reachability/index.d.ts +152 -0
- package/dist/types/reachability/request.d.ts +37 -0
- package/dist/types/reactions/constants.d.ts +3 -0
- package/dist/types/reactions/reactions.d.ts +4 -0
- package/dist/types/reactions/reactions.type.d.ts +52 -0
- package/dist/types/reconnection-manager/index.d.ts +126 -0
- package/dist/types/recording-controller/enums.d.ts +7 -0
- package/dist/types/recording-controller/index.d.ts +193 -0
- package/dist/types/recording-controller/util.d.ts +13 -0
- package/dist/types/roap/index.d.ts +77 -0
- package/dist/types/roap/request.d.ts +36 -0
- package/dist/types/roap/turnDiscovery.d.ts +91 -0
- package/dist/types/statsAnalyzer/global.d.ts +36 -0
- package/dist/types/statsAnalyzer/index.d.ts +200 -0
- package/dist/types/statsAnalyzer/mqaUtil.d.ts +24 -0
- package/dist/types/transcription/index.d.ts +64 -0
- package/package.json +28 -21
- package/src/annotation/annotation.types.ts +52 -0
- package/src/annotation/constants.ts +36 -0
- package/src/annotation/index.ts +343 -0
- package/src/breakouts/README.md +220 -0
- package/src/breakouts/breakout.ts +163 -0
- package/src/breakouts/collection.ts +19 -0
- package/src/breakouts/edit-lock-error.ts +25 -0
- package/src/breakouts/events.ts +37 -0
- package/src/breakouts/index.ts +921 -0
- package/src/breakouts/request.ts +55 -0
- package/src/breakouts/utils.ts +57 -0
- package/src/common/errors/webex-errors.ts +6 -2
- package/src/common/logs/logger-proxy.ts +1 -1
- package/src/config.ts +5 -7
- package/src/constants.ts +155 -20
- package/src/controls-options-manager/constants.ts +5 -0
- package/src/controls-options-manager/enums.ts +18 -0
- package/src/controls-options-manager/index.ts +278 -0
- package/src/controls-options-manager/types.ts +59 -0
- package/src/controls-options-manager/util.ts +286 -0
- package/src/index.ts +34 -0
- package/src/locus-info/controlsUtils.ts +108 -0
- package/src/locus-info/index.ts +310 -21
- package/src/locus-info/mediaSharesUtils.ts +48 -0
- package/src/locus-info/parser.ts +2 -1
- package/src/locus-info/selfUtils.ts +71 -1
- package/src/media/index.ts +70 -142
- package/src/media/properties.ts +41 -104
- package/src/mediaQualityMetrics/config.ts +379 -377
- package/src/meeting/in-meeting-actions.ts +156 -0
- package/src/meeting/index.ts +1730 -1768
- package/src/meeting/locusMediaRequest.ts +309 -0
- package/src/meeting/muteState.ts +228 -132
- package/src/meeting/request.ts +100 -91
- package/src/meeting/request.type.ts +2 -0
- package/src/meeting/util.ts +421 -421
- package/src/meeting-info/meeting-info-v2.ts +134 -13
- package/src/meeting-info/utilv2.ts +13 -3
- package/src/meetings/collection.ts +20 -0
- package/src/meetings/index.ts +375 -83
- package/src/meetings/meetings.types.ts +9 -0
- package/src/meetings/request.ts +3 -1
- package/src/meetings/util.ts +103 -4
- package/src/member/index.ts +40 -0
- package/src/member/types.ts +24 -0
- package/src/member/util.ts +81 -1
- package/src/members/collection.ts +8 -0
- package/src/members/index.ts +108 -6
- package/src/members/request.ts +98 -17
- package/src/members/types.ts +28 -0
- package/src/members/util.ts +319 -240
- package/src/metrics/config.ts +49 -10
- package/src/metrics/constants.ts +2 -4
- package/src/metrics/index.ts +43 -27
- package/src/multistream/mediaRequestManager.ts +210 -45
- package/src/multistream/receiveSlot.ts +68 -26
- package/src/multistream/receiveSlotManager.ts +61 -38
- package/src/multistream/remoteMedia.ts +29 -3
- package/src/multistream/remoteMediaGroup.ts +61 -2
- package/src/multistream/remoteMediaManager.ts +260 -66
- package/src/networkQualityMonitor/index.ts +6 -6
- package/src/reachability/index.ts +75 -25
- package/src/reachability/request.ts +10 -5
- package/src/reactions/constants.ts +4 -0
- package/src/reactions/reactions.ts +4 -4
- package/src/reactions/reactions.type.ts +28 -3
- package/src/reconnection-manager/index.ts +53 -32
- package/src/recording-controller/enums.ts +8 -0
- package/src/recording-controller/index.ts +315 -0
- package/src/recording-controller/util.ts +58 -0
- package/src/roap/index.ts +21 -30
- package/src/roap/request.ts +51 -52
- package/src/roap/turnDiscovery.ts +51 -27
- package/src/statsAnalyzer/global.ts +1 -94
- package/src/statsAnalyzer/index.ts +380 -390
- package/src/statsAnalyzer/mqaUtil.ts +106 -99
- package/test/integration/spec/converged-space-meetings.js +233 -0
- package/test/integration/spec/journey.js +332 -255
- package/test/integration/spec/space-meeting.js +78 -5
- package/test/integration/spec/transcription.js +1 -1
- package/test/unit/spec/annotation/index.ts +436 -0
- package/test/unit/spec/breakouts/breakout.ts +203 -0
- package/test/unit/spec/breakouts/collection.ts +15 -0
- package/test/unit/spec/breakouts/edit-lock-error.ts +30 -0
- package/test/unit/spec/breakouts/events.ts +77 -0
- package/test/unit/spec/breakouts/index.ts +1790 -0
- package/test/unit/spec/breakouts/request.ts +104 -0
- package/test/unit/spec/breakouts/utils.js +72 -0
- package/test/unit/spec/controls-options-manager/index.js +287 -0
- package/test/unit/spec/controls-options-manager/util.js +518 -0
- package/test/unit/spec/fixture/locus.js +1 -0
- package/test/unit/spec/locus-info/controlsUtils.js +303 -30
- package/test/unit/spec/locus-info/index.js +615 -4
- package/test/unit/spec/locus-info/mediaSharesUtils.ts +22 -0
- package/test/unit/spec/locus-info/selfConstant.js +38 -0
- package/test/unit/spec/locus-info/selfUtils.js +200 -0
- package/test/unit/spec/media/index.ts +118 -22
- package/test/unit/spec/media/properties.ts +9 -9
- package/test/unit/spec/meeting/in-meeting-actions.ts +76 -0
- package/test/unit/spec/meeting/index.js +2394 -1381
- package/test/unit/spec/meeting/locusMediaRequest.ts +436 -0
- package/test/unit/spec/meeting/muteState.js +370 -208
- package/test/unit/spec/meeting/request.js +354 -42
- package/test/unit/spec/meeting/utils.js +268 -156
- package/test/unit/spec/meeting-info/meetinginfov2.js +383 -5
- package/test/unit/spec/meeting-info/utilv2.js +21 -0
- package/test/unit/spec/meetings/collection.js +14 -0
- package/test/unit/spec/meetings/index.js +842 -128
- package/test/unit/spec/meetings/utils.js +206 -2
- package/test/unit/spec/member/index.js +24 -0
- package/test/unit/spec/member/util.js +384 -32
- package/test/unit/spec/members/index.js +320 -1
- package/test/unit/spec/members/request.js +206 -27
- package/test/unit/spec/members/utils.js +184 -0
- package/test/unit/spec/metrics/index.js +98 -0
- package/test/unit/spec/multistream/mediaRequestManager.ts +676 -105
- package/test/unit/spec/multistream/receiveSlot.ts +77 -18
- package/test/unit/spec/multistream/receiveSlotManager.ts +69 -39
- package/test/unit/spec/multistream/remoteMedia.ts +32 -2
- package/test/unit/spec/multistream/remoteMediaGroup.ts +271 -5
- package/test/unit/spec/multistream/remoteMediaManager.ts +672 -65
- package/test/unit/spec/networkQualityMonitor/index.js +4 -4
- package/test/unit/spec/reachability/index.ts +176 -25
- package/test/unit/spec/reachability/request.js +66 -0
- package/test/unit/spec/reconnection-manager/index.js +46 -13
- package/test/unit/spec/recording-controller/index.js +231 -0
- package/test/unit/spec/recording-controller/util.js +102 -0
- package/test/unit/spec/roap/index.ts +21 -51
- package/test/unit/spec/roap/request.ts +187 -0
- package/test/unit/spec/roap/turnDiscovery.ts +73 -34
- package/test/unit/spec/stats-analyzer/index.js +94 -43
- package/test/utils/constants.js +9 -0
- package/test/utils/integrationTestUtils.js +46 -0
- package/test/utils/testUtils.js +0 -45
- package/test/utils/webex-config.js +4 -0
- package/test/utils/webex-test-users.js +7 -3
- package/tsconfig.json +6 -0
- package/dist/media/internal-media-core-wrapper.js +0 -22
- package/dist/media/internal-media-core-wrapper.js.map +0 -1
- package/dist/meeting/effectsState.js +0 -334
- package/dist/meeting/effectsState.js.map +0 -1
- package/dist/multistream/multistreamMedia.js +0 -117
- package/dist/multistream/multistreamMedia.js.map +0 -1
- package/src/index.js +0 -15
- package/src/media/internal-media-core-wrapper.ts +0 -9
- package/src/meeting/effectsState.ts +0 -211
- package/src/multistream/multistreamMedia.ts +0 -93
- package/test/unit/spec/meeting/effectsState.js +0 -281
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { StatelessWebexPlugin } from '@webex/webex-core';
|
|
2
|
+
/**
|
|
3
|
+
* @class PersonalMeetingRoom
|
|
4
|
+
*/
|
|
5
|
+
export default class PersonalMeetingRoom extends StatelessWebexPlugin {
|
|
6
|
+
link: any;
|
|
7
|
+
meetingInfo: any;
|
|
8
|
+
name: any;
|
|
9
|
+
personalMeetingRoomRequest: any;
|
|
10
|
+
pmr: any;
|
|
11
|
+
sipUri: any;
|
|
12
|
+
userId: any;
|
|
13
|
+
meetingLink: any;
|
|
14
|
+
number: any;
|
|
15
|
+
namespace: string;
|
|
16
|
+
/**
|
|
17
|
+
*
|
|
18
|
+
* @param {Object} attrs
|
|
19
|
+
* @param {Object} options
|
|
20
|
+
*/
|
|
21
|
+
constructor(attrs: any, options: any);
|
|
22
|
+
/**
|
|
23
|
+
* claims a pmr and updates the cached PMR values
|
|
24
|
+
* @param {String} link
|
|
25
|
+
* @param {String} pin
|
|
26
|
+
* @param {Boolean} [preferred] defaults to true to set this claimed PMR as the preferred
|
|
27
|
+
* @returns {Promise}
|
|
28
|
+
* @public
|
|
29
|
+
* @memberof PersonalMeetingRoom
|
|
30
|
+
*/
|
|
31
|
+
claim(link: string, pin: string, preferred?: boolean): any;
|
|
32
|
+
/**
|
|
33
|
+
* @param {Object} body the response body from meeting info request
|
|
34
|
+
* @returns {undefined}
|
|
35
|
+
* @private
|
|
36
|
+
* @memberof PersonalMeetingRoom
|
|
37
|
+
*/
|
|
38
|
+
private set;
|
|
39
|
+
/**
|
|
40
|
+
* TODO: implement TTL for syncing and caching so to not request again and again
|
|
41
|
+
* @param {Object} options
|
|
42
|
+
* @returns {Promise}
|
|
43
|
+
* @public
|
|
44
|
+
* @memberof PersonalMeetingRoom
|
|
45
|
+
*/
|
|
46
|
+
get(): any;
|
|
47
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { StatelessWebexPlugin } from '@webex/webex-core';
|
|
2
|
+
/**
|
|
3
|
+
* @class MeetingInfoRequest
|
|
4
|
+
*/
|
|
5
|
+
export default class PersonalMeetingRoomRequest extends StatelessWebexPlugin {
|
|
6
|
+
namespace: string;
|
|
7
|
+
/**
|
|
8
|
+
*
|
|
9
|
+
* @param {Object} options with format of {userId, passcode, meetingAddress, preferred}
|
|
10
|
+
* @returns {Promise} returns a promise that resolves/rejects the result of the request
|
|
11
|
+
* @memberof PersonalMeetingRoomRequest
|
|
12
|
+
*/
|
|
13
|
+
claimPmr(options: any): any;
|
|
14
|
+
}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
3
|
+
*/
|
|
4
|
+
export type ICECandidateResult = {
|
|
5
|
+
clusterId: string;
|
|
6
|
+
elapsed?: string | null;
|
|
7
|
+
publicIPs?: string[];
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* @class Reachability
|
|
11
|
+
* @export
|
|
12
|
+
*/
|
|
13
|
+
export default class Reachability {
|
|
14
|
+
namespace: string;
|
|
15
|
+
webex: object;
|
|
16
|
+
reachabilityRequest: any;
|
|
17
|
+
clusterLatencyResults: any;
|
|
18
|
+
/**
|
|
19
|
+
* Creates an instance of Reachability.
|
|
20
|
+
* @param {object} webex
|
|
21
|
+
* @memberof Reachability
|
|
22
|
+
*/
|
|
23
|
+
constructor(webex: object);
|
|
24
|
+
/**
|
|
25
|
+
* fetches reachability data
|
|
26
|
+
* @returns {Object} reachability data
|
|
27
|
+
* @public
|
|
28
|
+
* @async
|
|
29
|
+
* @memberof Reachability
|
|
30
|
+
*/
|
|
31
|
+
gatherReachability(): Promise<unknown>;
|
|
32
|
+
/**
|
|
33
|
+
* fetches reachability data and checks for cluster reachability
|
|
34
|
+
* @returns {boolean}
|
|
35
|
+
* @public
|
|
36
|
+
* @memberof Reachability
|
|
37
|
+
*/
|
|
38
|
+
isAnyClusterReachable(): Promise<boolean>;
|
|
39
|
+
/**
|
|
40
|
+
* Generate peerConnection config settings
|
|
41
|
+
* @param {object} cluster
|
|
42
|
+
* @returns {object} peerConnectionConfig
|
|
43
|
+
* @private
|
|
44
|
+
* @memberof Reachability
|
|
45
|
+
*/
|
|
46
|
+
private buildPeerConnectionConfig;
|
|
47
|
+
/**
|
|
48
|
+
* Creates an RTCPeerConnection
|
|
49
|
+
* @param {object} cluster
|
|
50
|
+
* @returns {RTCPeerConnection} peerConnection
|
|
51
|
+
* @private
|
|
52
|
+
* @memberof Reachability
|
|
53
|
+
*/
|
|
54
|
+
private createPeerConnection;
|
|
55
|
+
/**
|
|
56
|
+
* Gets total elapsed time
|
|
57
|
+
* @param {RTCPeerConnection} peerConnection
|
|
58
|
+
* @returns {Number} Milliseconds
|
|
59
|
+
* @private
|
|
60
|
+
* @memberof Reachability
|
|
61
|
+
*/
|
|
62
|
+
private getElapsedTime;
|
|
63
|
+
/**
|
|
64
|
+
* creates offer and generates localSDP
|
|
65
|
+
* @param {object} clusterList cluster List
|
|
66
|
+
* @returns {Promise} Reachability latency results
|
|
67
|
+
* @private
|
|
68
|
+
* @memberof Reachability
|
|
69
|
+
*/
|
|
70
|
+
private getLocalSDPForClusters;
|
|
71
|
+
/**
|
|
72
|
+
* Get list of all unreachable clusters
|
|
73
|
+
* @returns {array} Unreachable clusters
|
|
74
|
+
* @private
|
|
75
|
+
* @memberof Reachability
|
|
76
|
+
*/
|
|
77
|
+
private getUnreachablClusters;
|
|
78
|
+
/**
|
|
79
|
+
* Attach an event handler for the icegatheringstatechange
|
|
80
|
+
* event and measure latency.
|
|
81
|
+
* @param {RTCPeerConnection} peerConnection
|
|
82
|
+
* @returns {undefined}
|
|
83
|
+
* @private
|
|
84
|
+
* @memberof Reachability
|
|
85
|
+
*/
|
|
86
|
+
private handleIceGatheringStateChange;
|
|
87
|
+
/**
|
|
88
|
+
* Attach an event handler for the icecandidate
|
|
89
|
+
* event and measure latency.
|
|
90
|
+
* @param {RTCPeerConnection} peerConnection
|
|
91
|
+
* @returns {undefined}
|
|
92
|
+
* @private
|
|
93
|
+
* @memberof Reachability
|
|
94
|
+
*/
|
|
95
|
+
private handleOnIceCandidate;
|
|
96
|
+
/**
|
|
97
|
+
* An event handler on an RTCPeerConnection when the state of the ICE
|
|
98
|
+
* candidate gathering process changes. Used to measure connection
|
|
99
|
+
* speed.
|
|
100
|
+
* @private
|
|
101
|
+
* @param {RTCPeerConnection} peerConnection
|
|
102
|
+
* @param {number} timeout
|
|
103
|
+
* @returns {Promise}
|
|
104
|
+
*/
|
|
105
|
+
private iceGatheringState;
|
|
106
|
+
/**
|
|
107
|
+
* Make a log of unreachable clusters.
|
|
108
|
+
* @returns {undefined}
|
|
109
|
+
* @private
|
|
110
|
+
* @memberof Reachability
|
|
111
|
+
*/
|
|
112
|
+
private logUnreachableClusters;
|
|
113
|
+
/**
|
|
114
|
+
* Calculates time to establish connection
|
|
115
|
+
* @param {Array<ICECandidateResult>} iceResults iceResults
|
|
116
|
+
* @returns {object} reachabilityMap
|
|
117
|
+
* @protected
|
|
118
|
+
* @memberof Reachability
|
|
119
|
+
*/
|
|
120
|
+
protected parseIceResultsToReachabilityResults(iceResults: Array<ICECandidateResult>): {};
|
|
121
|
+
/**
|
|
122
|
+
* fetches reachability data
|
|
123
|
+
* @param {object} clusterList
|
|
124
|
+
* @returns {Promise<localSDPData>} reachability check results
|
|
125
|
+
* @private
|
|
126
|
+
* @memberof Reachability
|
|
127
|
+
*/
|
|
128
|
+
private performReachabilityCheck;
|
|
129
|
+
/**
|
|
130
|
+
* Adds public IP (client media IPs)
|
|
131
|
+
* @param {RTCPeerConnection} peerConnection
|
|
132
|
+
* @param {string} publicIP
|
|
133
|
+
* @returns {void}
|
|
134
|
+
*/
|
|
135
|
+
protected addPublicIP(peerConnection: RTCPeerConnection, publicIP?: string | null): void;
|
|
136
|
+
/**
|
|
137
|
+
* Records latency and closes the peerConnection
|
|
138
|
+
* @param {RTCPeerConnection} peerConnection
|
|
139
|
+
* @param {number} elapsed Latency in milliseconds
|
|
140
|
+
* @returns {undefined}
|
|
141
|
+
* @private
|
|
142
|
+
* @memberof Reachability
|
|
143
|
+
*/
|
|
144
|
+
private setLatencyAndClose;
|
|
145
|
+
/**
|
|
146
|
+
* utility function
|
|
147
|
+
* @returns {undefined}
|
|
148
|
+
* @private
|
|
149
|
+
* @memberof Reachability
|
|
150
|
+
*/
|
|
151
|
+
private setup;
|
|
152
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export interface ClusterNode {
|
|
2
|
+
isVideoMesh: boolean;
|
|
3
|
+
udp: Array<string>;
|
|
4
|
+
tcp: Array<string>;
|
|
5
|
+
xtls: Array<string>;
|
|
6
|
+
}
|
|
7
|
+
export type ClusterList = {
|
|
8
|
+
[key: string]: ClusterNode;
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* @class ReachabilityRequest
|
|
12
|
+
*/
|
|
13
|
+
declare class ReachabilityRequest {
|
|
14
|
+
webex: any;
|
|
15
|
+
/**
|
|
16
|
+
* Creates an instance of ReachabilityRequest.
|
|
17
|
+
* @param {object} webex
|
|
18
|
+
* @memberof ReachabilityRequest
|
|
19
|
+
*/
|
|
20
|
+
constructor(webex: object);
|
|
21
|
+
/**
|
|
22
|
+
* Gets the cluster information
|
|
23
|
+
*
|
|
24
|
+
* @returns {Promise}
|
|
25
|
+
*/
|
|
26
|
+
getClusters: () => Promise<{
|
|
27
|
+
clusters: ClusterList;
|
|
28
|
+
joinCookie: any;
|
|
29
|
+
}>;
|
|
30
|
+
/**
|
|
31
|
+
* gets remote SDP For Clusters
|
|
32
|
+
* @param {Object} localSDPList localSDPs for the cluster
|
|
33
|
+
* @returns {Object}
|
|
34
|
+
*/
|
|
35
|
+
remoteSDPForClusters: (localSDPList: object) => any;
|
|
36
|
+
}
|
|
37
|
+
export default ReachabilityRequest;
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { REACTION_RELAY_TYPES } from './constants';
|
|
2
|
+
export type EmoticonData = {
|
|
3
|
+
type: string;
|
|
4
|
+
codepoints?: string;
|
|
5
|
+
shortcodes?: string;
|
|
6
|
+
};
|
|
7
|
+
export type SkinTone = EmoticonData;
|
|
8
|
+
export type Reaction = EmoticonData & {
|
|
9
|
+
tone?: SkinTone;
|
|
10
|
+
};
|
|
11
|
+
export declare enum ReactionServerType {
|
|
12
|
+
smile = "smile",
|
|
13
|
+
sad = "sad",
|
|
14
|
+
wow = "wow",
|
|
15
|
+
haha = "haha",
|
|
16
|
+
celebrate = "celebrate",
|
|
17
|
+
clap = "clap",
|
|
18
|
+
thumb_up = "thumb_up",
|
|
19
|
+
thumb_down = "thumb_down",
|
|
20
|
+
heart = "heart",
|
|
21
|
+
fire = "fire",
|
|
22
|
+
prayer = "prayer",
|
|
23
|
+
speed_up = "speed_up",
|
|
24
|
+
slow_down = "slow_down"
|
|
25
|
+
}
|
|
26
|
+
export declare enum SkinToneType {
|
|
27
|
+
normal = "normal",
|
|
28
|
+
light = "light",
|
|
29
|
+
medium_light = "medium_light",
|
|
30
|
+
medium = "medium",
|
|
31
|
+
medium_dark = "medium_dark",
|
|
32
|
+
dark = "dark"
|
|
33
|
+
}
|
|
34
|
+
export type Sender = {
|
|
35
|
+
participantId: string;
|
|
36
|
+
};
|
|
37
|
+
export type ProcessedReaction = {
|
|
38
|
+
reaction: Reaction;
|
|
39
|
+
sender: {
|
|
40
|
+
id: Sender['participantId'];
|
|
41
|
+
name: string;
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
type RelayEventData = {
|
|
45
|
+
relayType: (typeof REACTION_RELAY_TYPES)['REACTION'];
|
|
46
|
+
reaction: Reaction;
|
|
47
|
+
sender: Sender;
|
|
48
|
+
};
|
|
49
|
+
export type RelayEvent = {
|
|
50
|
+
data: RelayEventData;
|
|
51
|
+
};
|
|
52
|
+
export {};
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
3
|
+
*/
|
|
4
|
+
import Meeting from '../meeting';
|
|
5
|
+
/**
|
|
6
|
+
* @export
|
|
7
|
+
* @class ReconnectionManager
|
|
8
|
+
*/
|
|
9
|
+
export default class ReconnectionManager {
|
|
10
|
+
autoRejoinEnabled: any;
|
|
11
|
+
iceState: any;
|
|
12
|
+
maxRejoinAttempts: any;
|
|
13
|
+
meeting: any;
|
|
14
|
+
rejoinAttempts: any;
|
|
15
|
+
shareStatus: any;
|
|
16
|
+
status: any;
|
|
17
|
+
tryCount: any;
|
|
18
|
+
webex: any;
|
|
19
|
+
/**
|
|
20
|
+
* @param {Meeting} meeting
|
|
21
|
+
*/
|
|
22
|
+
constructor(meeting: Meeting);
|
|
23
|
+
/**
|
|
24
|
+
* @public
|
|
25
|
+
* @memberof ReconnectionManager
|
|
26
|
+
* @returns {void}
|
|
27
|
+
*/
|
|
28
|
+
resetReconnectionTimer(): void;
|
|
29
|
+
/**
|
|
30
|
+
* Sets the iceState to connected and clears any disconnect timeouts and
|
|
31
|
+
* related timeout data within the iceState.
|
|
32
|
+
*
|
|
33
|
+
* @returns {undefined}
|
|
34
|
+
* @public
|
|
35
|
+
* @memberof ReconnectionManager
|
|
36
|
+
*/
|
|
37
|
+
iceReconnected(): void;
|
|
38
|
+
/**
|
|
39
|
+
* Set the iceState to disconnected and generates a timeout that waits for the
|
|
40
|
+
* iceState to reconnect and then resolves. If the ice state is already
|
|
41
|
+
* processing a reconnect, it immediately resolves. Rejects if the timeout
|
|
42
|
+
* duration is reached.
|
|
43
|
+
*
|
|
44
|
+
* @returns {Promise<undefined>}
|
|
45
|
+
* @public
|
|
46
|
+
* @memberof ReconnectionManager
|
|
47
|
+
*/
|
|
48
|
+
waitForIceReconnect(): Promise<void>;
|
|
49
|
+
/**
|
|
50
|
+
* @returns {undefined}
|
|
51
|
+
* @public
|
|
52
|
+
* @memberof ReconnectionManager
|
|
53
|
+
*/
|
|
54
|
+
reset(): void;
|
|
55
|
+
/**
|
|
56
|
+
* @returns {undefined}
|
|
57
|
+
* @public
|
|
58
|
+
* @memberof ReconnectionManager
|
|
59
|
+
*/
|
|
60
|
+
cleanUp(): void;
|
|
61
|
+
/**
|
|
62
|
+
* Stop the local share track.
|
|
63
|
+
*
|
|
64
|
+
* @param {string} reason a {@link SHARE_STOPPED_REASON}
|
|
65
|
+
* @returns {undefined}
|
|
66
|
+
* @private
|
|
67
|
+
* @memberof ReconnectionManager
|
|
68
|
+
*/
|
|
69
|
+
private stopLocalShareTrack;
|
|
70
|
+
/**
|
|
71
|
+
* @public
|
|
72
|
+
* @memberof ReconnectionManager
|
|
73
|
+
* @returns {Boolean} true if reconnection operation is in progress
|
|
74
|
+
*/
|
|
75
|
+
isReconnectInProgress(): boolean;
|
|
76
|
+
/**
|
|
77
|
+
* @returns {Boolean}
|
|
78
|
+
* @throws {ReconnectionError}
|
|
79
|
+
* @private
|
|
80
|
+
* @memberof ReconnectionManager
|
|
81
|
+
*/
|
|
82
|
+
private validate;
|
|
83
|
+
/**
|
|
84
|
+
* Initiates a media reconnect for the active meeting
|
|
85
|
+
* @param {Object} reconnectOptions
|
|
86
|
+
* @param {boolean} [reconnectOptions.networkDisconnect=false] indicates if a network disconnect event happened
|
|
87
|
+
* @param {boolean} [reconnectOptions.networkRetry=false] indicates if we are retrying the reconnect
|
|
88
|
+
* @returns {Promise}
|
|
89
|
+
* @public
|
|
90
|
+
* @memberof ReconnectionManager
|
|
91
|
+
*/
|
|
92
|
+
reconnect({ networkDisconnect, networkRetry, }?: {
|
|
93
|
+
networkDisconnect?: boolean;
|
|
94
|
+
networkRetry?: boolean;
|
|
95
|
+
}): any;
|
|
96
|
+
/**
|
|
97
|
+
* @param {Object} reconnectOptions
|
|
98
|
+
* @param {boolean} [reconnectOptions.networkDisconnect=false] indicates if a network disconnect event happened
|
|
99
|
+
* @returns {Promise}
|
|
100
|
+
* @throws {NeedsRetryError}
|
|
101
|
+
* @private
|
|
102
|
+
* @memberof ReconnectionManager
|
|
103
|
+
*/
|
|
104
|
+
private executeReconnection;
|
|
105
|
+
/**
|
|
106
|
+
* Rejoins a meeting after detecting the member was in a LEFT state
|
|
107
|
+
*
|
|
108
|
+
* @async
|
|
109
|
+
* @param {boolean} wasSharing
|
|
110
|
+
* @returns {Promise}
|
|
111
|
+
*/
|
|
112
|
+
rejoinMeeting(wasSharing?: boolean): Promise<void>;
|
|
113
|
+
/**
|
|
114
|
+
* @returns {Promise}
|
|
115
|
+
* @private
|
|
116
|
+
* @memberof ReconnectionManager
|
|
117
|
+
*/
|
|
118
|
+
reconnectMedia(): Promise<void>;
|
|
119
|
+
/**
|
|
120
|
+
* Attempt to Reconnect Mercury Websocket
|
|
121
|
+
* @returns {Promise}
|
|
122
|
+
* @private
|
|
123
|
+
* @memberof ReconnectionManager
|
|
124
|
+
*/
|
|
125
|
+
private reconnectMercuryWebSocket;
|
|
126
|
+
}
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
import MeetingRequest from '../meeting/request';
|
|
2
|
+
/**
|
|
3
|
+
* @description Recording manages the recording functionality of the meeting object, there should only be one instantation of recording per meeting
|
|
4
|
+
* @export
|
|
5
|
+
* @private
|
|
6
|
+
* @class Recording
|
|
7
|
+
*/
|
|
8
|
+
export default class RecordingController {
|
|
9
|
+
/**
|
|
10
|
+
* @instance
|
|
11
|
+
* @type {MeetingRequest}
|
|
12
|
+
* @private
|
|
13
|
+
* @memberof RecordingController
|
|
14
|
+
*/
|
|
15
|
+
private request;
|
|
16
|
+
/**
|
|
17
|
+
* @instance
|
|
18
|
+
* @type {Array}
|
|
19
|
+
* @private
|
|
20
|
+
* @memberof RecordingInfo
|
|
21
|
+
*/
|
|
22
|
+
private displayHints;
|
|
23
|
+
/**
|
|
24
|
+
* @instance
|
|
25
|
+
* @type {string}
|
|
26
|
+
* @private
|
|
27
|
+
* @memberof RecordingInfo
|
|
28
|
+
*/
|
|
29
|
+
private serviceUrl;
|
|
30
|
+
/**
|
|
31
|
+
* @instance
|
|
32
|
+
* @type {string}
|
|
33
|
+
* @private
|
|
34
|
+
* @memberof RecordingInfo
|
|
35
|
+
*/
|
|
36
|
+
private sessionId;
|
|
37
|
+
/**
|
|
38
|
+
* @instance
|
|
39
|
+
* @type {string}
|
|
40
|
+
* @private
|
|
41
|
+
* @memberof RecordingInfo
|
|
42
|
+
*/
|
|
43
|
+
private locusUrl;
|
|
44
|
+
/**
|
|
45
|
+
* @instance
|
|
46
|
+
* @type {string}
|
|
47
|
+
* @private
|
|
48
|
+
* @memberof RecordingInfo
|
|
49
|
+
*/
|
|
50
|
+
private locusId;
|
|
51
|
+
/**
|
|
52
|
+
* @param {MeetingRequest} request
|
|
53
|
+
* @param {Object} options
|
|
54
|
+
* @constructor
|
|
55
|
+
* @memberof RecordingController
|
|
56
|
+
*/
|
|
57
|
+
constructor(request: MeetingRequest, options?: {
|
|
58
|
+
serviceUrl?: string;
|
|
59
|
+
sessionId: string;
|
|
60
|
+
locusUrl: string;
|
|
61
|
+
displayHints?: Array<string>;
|
|
62
|
+
});
|
|
63
|
+
/**
|
|
64
|
+
* @param {MeetingRequest} request
|
|
65
|
+
* @param {LocusInfo} info
|
|
66
|
+
* @returns {void}
|
|
67
|
+
* @private
|
|
68
|
+
* @memberof RecordingController
|
|
69
|
+
*/
|
|
70
|
+
private initialize;
|
|
71
|
+
/**
|
|
72
|
+
* @param {Object} options
|
|
73
|
+
* @returns {void}
|
|
74
|
+
* @public
|
|
75
|
+
* @memberof RecordingController
|
|
76
|
+
*/
|
|
77
|
+
set(options?: {
|
|
78
|
+
serviceUrl?: string;
|
|
79
|
+
sessionId: string;
|
|
80
|
+
locusUrl: string;
|
|
81
|
+
displayHints?: Array<string>;
|
|
82
|
+
}): void;
|
|
83
|
+
/**
|
|
84
|
+
* @param {string} url
|
|
85
|
+
* @returns {void}
|
|
86
|
+
* @public
|
|
87
|
+
* @memberof RecordingController
|
|
88
|
+
*/
|
|
89
|
+
setLocusUrl(url: string): void;
|
|
90
|
+
/**
|
|
91
|
+
* @param {Array} hints
|
|
92
|
+
* @returns {void}
|
|
93
|
+
* @public
|
|
94
|
+
* @memberof RecordingController
|
|
95
|
+
*/
|
|
96
|
+
setDisplayHints(hints: Array<string>): void;
|
|
97
|
+
/**
|
|
98
|
+
* @param {string} id
|
|
99
|
+
* @returns {void}
|
|
100
|
+
* @public
|
|
101
|
+
* @memberof RecordingController
|
|
102
|
+
*/
|
|
103
|
+
setSessionId(id: string): void;
|
|
104
|
+
/**
|
|
105
|
+
* @param {string} url
|
|
106
|
+
* @returns {void}
|
|
107
|
+
* @public
|
|
108
|
+
* @memberof RecordingController
|
|
109
|
+
*/
|
|
110
|
+
setServiceUrl(url: string): void;
|
|
111
|
+
/**
|
|
112
|
+
* @returns {string}
|
|
113
|
+
* @public
|
|
114
|
+
* @memberof RecordingController
|
|
115
|
+
*/
|
|
116
|
+
getLocusUrl(): string;
|
|
117
|
+
/**
|
|
118
|
+
* @returns {string}
|
|
119
|
+
* @public
|
|
120
|
+
* @memberof RecordingController
|
|
121
|
+
*/
|
|
122
|
+
getLocusId(): string;
|
|
123
|
+
/**
|
|
124
|
+
* @returns {string}
|
|
125
|
+
* @public
|
|
126
|
+
* @memberof RecordingController
|
|
127
|
+
*/
|
|
128
|
+
getSessionId(): string;
|
|
129
|
+
/**
|
|
130
|
+
* @returns {string}
|
|
131
|
+
* @public
|
|
132
|
+
* @memberof RecordingController
|
|
133
|
+
*/
|
|
134
|
+
getServiceUrl(): string;
|
|
135
|
+
/**
|
|
136
|
+
* @returns {Array}
|
|
137
|
+
* @public
|
|
138
|
+
* @memberof RecordingController
|
|
139
|
+
*/
|
|
140
|
+
getDisplayHints(): string[];
|
|
141
|
+
/**
|
|
142
|
+
* @param {Object} options
|
|
143
|
+
* @returns {void}
|
|
144
|
+
* @private
|
|
145
|
+
* @memberof RecordingController
|
|
146
|
+
*/
|
|
147
|
+
private extract;
|
|
148
|
+
/**
|
|
149
|
+
* @param {RecordingAction} action
|
|
150
|
+
* @private
|
|
151
|
+
* @memberof RecordingController
|
|
152
|
+
* @returns {Promise}
|
|
153
|
+
*/
|
|
154
|
+
private recordingService;
|
|
155
|
+
/**
|
|
156
|
+
* @param {RecordingAction} action
|
|
157
|
+
* @private
|
|
158
|
+
* @memberof RecordingController
|
|
159
|
+
* @returns {Promise}
|
|
160
|
+
*/
|
|
161
|
+
private recordingControls;
|
|
162
|
+
/**
|
|
163
|
+
* @param {RecordingAction} action
|
|
164
|
+
* @private
|
|
165
|
+
* @memberof RecordingController
|
|
166
|
+
* @returns {Promise}
|
|
167
|
+
*/
|
|
168
|
+
private recordingFacade;
|
|
169
|
+
/**
|
|
170
|
+
* @private
|
|
171
|
+
* @memberof RecordingController
|
|
172
|
+
* @returns {Promise}
|
|
173
|
+
*/
|
|
174
|
+
startRecording(): Promise<any>;
|
|
175
|
+
/**
|
|
176
|
+
* @private
|
|
177
|
+
* @memberof RecordingController
|
|
178
|
+
* @returns {Promise}
|
|
179
|
+
*/
|
|
180
|
+
stopRecording(): Promise<any>;
|
|
181
|
+
/**
|
|
182
|
+
* @private
|
|
183
|
+
* @memberof RecordingController
|
|
184
|
+
* @returns {Promise}
|
|
185
|
+
*/
|
|
186
|
+
pauseRecording(): Promise<any>;
|
|
187
|
+
/**
|
|
188
|
+
* @private
|
|
189
|
+
* @memberof RecordingController
|
|
190
|
+
* @returns {Promise}
|
|
191
|
+
*/
|
|
192
|
+
resumeRecording(): Promise<any>;
|
|
193
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import RecordingAction from './enums';
|
|
2
|
+
declare const _default: {
|
|
3
|
+
canUserStart: (displayHints: string[]) => boolean;
|
|
4
|
+
canUserPause: (displayHints: string[]) => boolean;
|
|
5
|
+
canUserResume: (displayHints: string[]) => boolean;
|
|
6
|
+
canUserStop: (displayHints: string[]) => boolean;
|
|
7
|
+
deriveRecordingStates: (action: RecordingAction) => {
|
|
8
|
+
recording: boolean;
|
|
9
|
+
paused: boolean;
|
|
10
|
+
};
|
|
11
|
+
extractLocusId: (url: string) => string;
|
|
12
|
+
};
|
|
13
|
+
export default _default;
|