@webex/plugin-meetings 3.0.0-beta.2 → 3.0.0-beta.200
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 -7
- package/UPGRADING.md +9 -9
- package/browsers.js +19 -24
- package/dist/annotation/annotation.types.js +7 -0
- package/dist/annotation/annotation.types.js.map +1 -0
- package/dist/annotation/constants.js +49 -0
- package/dist/annotation/constants.js.map +1 -0
- package/dist/annotation/index.js +342 -0
- package/dist/annotation/index.js.map +1 -0
- package/dist/breakouts/breakout.js +216 -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 +45 -0
- package/dist/breakouts/events.js.map +1 -0
- package/dist/breakouts/index.js +1048 -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 -20
- 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 +10 -24
- package/dist/common/errors/captcha-error.js.map +1 -1
- package/dist/common/errors/intent-to-join.js +11 -24
- package/dist/common/errors/intent-to-join.js.map +1 -1
- package/dist/common/errors/join-meeting.js +12 -25
- package/dist/common/errors/join-meeting.js.map +1 -1
- package/dist/common/errors/media.js +10 -24
- package/dist/common/errors/media.js.map +1 -1
- package/dist/common/errors/parameter.js +5 -33
- package/dist/common/errors/parameter.js.map +1 -1
- package/dist/common/errors/password-error.js +10 -24
- package/dist/common/errors/password-error.js.map +1 -1
- package/dist/common/errors/permission.js +9 -23
- 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 +10 -24
- package/dist/common/errors/reconnection.js.map +1 -1
- package/dist/common/errors/stats.js +10 -24
- 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 +5 -25
- 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 +37 -60
- package/dist/common/logs/request.js.map +1 -1
- package/dist/common/queue.js +28 -23
- package/dist/common/queue.js.map +1 -1
- package/dist/config.js +8 -13
- package/dist/config.js.map +1 -1
- package/dist/constants.js +250 -66
- 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 +319 -0
- package/dist/controls-options-manager/util.js.map +1 -0
- package/dist/index.js +108 -17
- package/dist/index.js.map +1 -1
- package/dist/interpretation/collection.js +23 -0
- package/dist/interpretation/collection.js.map +1 -0
- package/dist/interpretation/index.js +366 -0
- package/dist/interpretation/index.js.map +1 -0
- package/dist/interpretation/siLanguage.js +25 -0
- package/dist/interpretation/siLanguage.js.map +1 -0
- package/dist/locus-info/controlsUtils.js +101 -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 +532 -240
- package/dist/locus-info/index.js.map +1 -1
- package/dist/locus-info/infoUtils.js +3 -37
- 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 +284 -154
- package/dist/locus-info/parser.js.map +1 -1
- package/dist/locus-info/selfUtils.js +110 -92
- package/dist/locus-info/selfUtils.js.map +1 -1
- package/dist/media/index.js +95 -226
- package/dist/media/index.js.map +1 -1
- package/dist/media/properties.js +99 -194
- package/dist/media/properties.js.map +1 -1
- package/dist/media/util.js +2 -9
- 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 +83 -14
- package/dist/meeting/in-meeting-actions.js.map +1 -1
- package/dist/meeting/index.js +3478 -3563
- 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 +247 -183
- package/dist/meeting/muteState.js.map +1 -1
- package/dist/meeting/request.js +344 -344
- package/dist/meeting/request.js.map +1 -1
- package/dist/meeting/request.type.js +7 -0
- package/dist/meeting/request.type.js.map +1 -0
- package/dist/meeting/state.js +21 -31
- package/dist/meeting/state.js.map +1 -1
- package/dist/meeting/util.js +529 -588
- package/dist/meeting/util.js.map +1 -1
- package/dist/meeting-info/collection.js +6 -25
- package/dist/meeting-info/collection.js.map +1 -1
- package/dist/meeting-info/index.js +62 -39
- package/dist/meeting-info/index.js.map +1 -1
- package/dist/meeting-info/meeting-info-v2.js +328 -283
- package/dist/meeting-info/meeting-info-v2.js.map +1 -1
- package/dist/meeting-info/request.js +3 -15
- 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 +26 -19
- package/dist/meetings/collection.js.map +1 -1
- package/dist/meetings/index.js +795 -574
- 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 +26 -41
- package/dist/meetings/request.js.map +1 -1
- package/dist/meetings/util.js +186 -155
- package/dist/meetings/util.js.map +1 -1
- package/dist/member/index.js +126 -85
- package/dist/member/index.js.map +1 -1
- package/dist/member/types.js +25 -0
- package/dist/member/types.js.map +1 -0
- package/dist/member/util.js +147 -88
- package/dist/member/util.js.map +1 -1
- package/dist/members/collection.js +13 -12
- package/dist/members/collection.js.map +1 -1
- package/dist/members/index.js +178 -204
- package/dist/members/index.js.map +1 -1
- package/dist/members/request.js +113 -68
- 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/constants.js +4 -7
- package/dist/metrics/constants.js.map +1 -1
- package/dist/metrics/index.js +11 -558
- package/dist/metrics/index.js.map +1 -1
- package/dist/multistream/mediaRequestManager.js +264 -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 +76 -95
- package/dist/multistream/receiveSlotManager.js.map +1 -1
- package/dist/multistream/remoteMedia.js +62 -76
- 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 +40 -59
- package/dist/networkQualityMonitor/index.js.map +1 -1
- package/dist/personal-meeting-room/index.js +21 -45
- package/dist/personal-meeting-room/index.js.map +1 -1
- package/dist/personal-meeting-room/request.js +1 -31
- 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 +192 -191
- package/dist/reachability/index.js.map +1 -1
- package/dist/reachability/request.js +15 -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 +109 -0
- package/dist/reactions/reactions.js.map +1 -0
- package/dist/reactions/reactions.type.js +36 -0
- package/dist/reactions/reactions.type.js.map +1 -0
- package/dist/reconnection-manager/index.js +384 -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 +363 -0
- package/dist/recording-controller/index.js.map +1 -0
- package/dist/recording-controller/util.js +64 -0
- package/dist/recording-controller/util.js.map +1 -0
- package/dist/roap/index.js +58 -91
- package/dist/roap/index.js.map +1 -1
- package/dist/roap/request.js +137 -135
- package/dist/roap/request.js.map +1 -1
- package/dist/roap/turnDiscovery.js +148 -100
- package/dist/roap/turnDiscovery.js.map +1 -1
- package/dist/rtcMetrics/constants.js +12 -0
- package/dist/rtcMetrics/constants.js.map +1 -0
- package/dist/rtcMetrics/index.js +115 -0
- package/dist/rtcMetrics/index.js.map +1 -0
- package/dist/statsAnalyzer/global.js +1 -95
- package/dist/statsAnalyzer/global.js.map +1 -1
- package/dist/statsAnalyzer/index.js +385 -460
- package/dist/statsAnalyzer/index.js.map +1 -1
- package/dist/statsAnalyzer/mqaUtil.js +143 -87
- package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
- package/dist/transcription/index.js +22 -47
- package/dist/transcription/index.js.map +1 -1
- package/dist/types/annotation/annotation.types.d.ts +42 -0
- package/dist/types/annotation/constants.d.ts +31 -0
- package/dist/types/annotation/index.d.ts +117 -0
- package/dist/types/breakouts/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 +8 -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 +34 -0
- package/dist/types/config.d.ts +72 -0
- package/dist/types/constants.d.ts +1016 -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/interpretation/collection.d.ts +5 -0
- package/dist/types/interpretation/index.d.ts +5 -0
- package/dist/types/interpretation/siLanguage.d.ts +5 -0
- package/dist/types/locus-info/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 +322 -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 +271 -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 +93 -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 +153 -0
- package/dist/types/meeting/index.d.ts +1471 -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 +257 -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 +78 -0
- package/dist/types/meeting-info/collection.d.ts +20 -0
- package/dist/types/meeting-info/index.d.ts +62 -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 +367 -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 +159 -0
- package/dist/types/member/types.d.ts +32 -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/constants.d.ts +55 -0
- package/dist/types/metrics/index.d.ts +45 -0
- package/dist/types/multistream/mediaRequestManager.d.ts +118 -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 +208 -0
- package/dist/types/recording-controller/util.d.ts +14 -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/rtcMetrics/constants.d.ts +4 -0
- package/dist/types/rtcMetrics/index.d.ts +46 -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/internal-README.md +7 -6
- package/package.json +29 -21
- package/src/annotation/annotation.types.ts +50 -0
- package/src/annotation/constants.ts +36 -0
- package/src/annotation/index.ts +328 -0
- package/src/breakouts/README.md +220 -0
- package/src/breakouts/breakout.ts +188 -0
- package/src/breakouts/collection.ts +19 -0
- package/src/breakouts/edit-lock-error.ts +25 -0
- package/src/breakouts/events.ts +56 -0
- package/src/breakouts/index.ts +925 -0
- package/src/breakouts/request.ts +55 -0
- package/src/breakouts/utils.ts +57 -0
- package/src/common/{browser-detection.js → browser-detection.ts} +9 -6
- package/src/common/collection.ts +9 -7
- package/src/common/{config.js → config.ts} +1 -1
- package/src/common/errors/{captcha-error.js → captcha-error.ts} +11 -7
- package/src/common/errors/{intent-to-join.js → intent-to-join.ts} +12 -7
- package/src/common/errors/{join-meeting.js → join-meeting.ts} +17 -8
- package/src/common/errors/{media.js → media.ts} +11 -7
- package/src/common/errors/parameter.ts +11 -7
- package/src/common/errors/{password-error.js → password-error.ts} +11 -7
- package/src/common/errors/{permission.js → permission.ts} +10 -6
- package/src/common/errors/{reconnection.js → reconnection.ts} +11 -7
- package/src/common/errors/{stats.js → stats.ts} +11 -7
- package/src/common/errors/{webex-errors.js → webex-errors.ts} +14 -9
- package/src/common/errors/{webex-meetings-error.js → webex-meetings-error.ts} +4 -2
- package/src/common/events/{events-scope.js → events-scope.ts} +6 -2
- package/src/common/events/{events.js → events.ts} +5 -1
- package/src/common/events/{trigger-proxy.js → trigger-proxy.ts} +9 -5
- package/src/common/events/{util.js → util.ts} +2 -3
- package/src/common/logs/{logger-config.js → logger-config.ts} +1 -2
- package/src/common/logs/logger-proxy.ts +44 -0
- package/src/common/logs/{request.js → request.ts} +22 -9
- package/src/common/queue.ts +22 -9
- package/src/{config.js → config.ts} +17 -17
- package/src/constants.ts +197 -22
- 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 +300 -0
- package/src/index.ts +39 -0
- package/src/interpretation/README.md +60 -0
- package/src/interpretation/collection.ts +19 -0
- package/src/interpretation/index.ts +332 -0
- package/src/interpretation/siLanguage.ts +18 -0
- package/src/locus-info/controlsUtils.ts +222 -0
- package/src/locus-info/{embeddedAppsUtils.js → embeddedAppsUtils.ts} +5 -6
- package/src/locus-info/{fullState.js → fullState.ts} +16 -12
- package/src/locus-info/{hostUtils.js → hostUtils.ts} +9 -8
- package/src/locus-info/{index.js → index.ts} +518 -111
- package/src/locus-info/{infoUtils.js → infoUtils.ts} +19 -8
- package/src/locus-info/{mediaSharesUtils.js → mediaSharesUtils.ts} +65 -17
- package/src/locus-info/{parser.js → parser.ts} +271 -98
- package/src/locus-info/{selfUtils.js → selfUtils.ts} +199 -68
- package/src/media/index.ts +456 -0
- package/src/media/{properties.js → properties.ts} +80 -102
- package/src/media/{util.js → util.ts} +2 -2
- package/src/mediaQualityMetrics/config.ts +384 -0
- package/src/meeting/in-meeting-actions.ts +171 -3
- package/src/meeting/index.ts +7070 -0
- package/src/meeting/locusMediaRequest.ts +309 -0
- package/src/meeting/muteState.ts +450 -0
- package/src/meeting/{request.js → request.ts} +354 -214
- package/src/meeting/request.type.ts +13 -0
- package/src/meeting/{state.js → state.ts} +50 -35
- package/src/meeting/util.ts +615 -0
- package/src/meeting-info/{collection.js → collection.ts} +6 -2
- package/src/meeting-info/index.ts +183 -0
- package/src/meeting-info/meeting-info-v2.ts +407 -0
- package/src/meeting-info/{request.js → request.ts} +14 -4
- package/src/meeting-info/{util.js → util.ts} +60 -51
- package/src/meeting-info/{utilv2.js → utilv2.ts} +77 -60
- package/src/meetings/{collection.js → collection.ts} +26 -3
- package/src/meetings/index.ts +1467 -0
- package/src/meetings/meetings.types.ts +12 -0
- package/src/meetings/{request.js → request.ts} +34 -25
- package/src/meetings/{util.js → util.ts} +137 -36
- package/src/member/{index.js → index.ts} +151 -56
- package/src/member/types.ts +38 -0
- package/src/member/util.ts +383 -0
- package/src/members/{collection.js → collection.ts} +10 -2
- package/src/members/{index.js → index.ts} +323 -145
- package/src/members/request.ts +255 -0
- package/src/members/types.ts +28 -0
- package/src/members/util.ts +339 -0
- package/src/metrics/{constants.js → constants.ts} +2 -6
- package/src/metrics/index.ts +73 -0
- package/src/multistream/mediaRequestManager.ts +337 -61
- package/src/multistream/receiveSlot.ts +69 -26
- package/src/multistream/receiveSlotManager.ts +66 -42
- package/src/multistream/remoteMedia.ts +40 -5
- package/src/multistream/remoteMediaGroup.ts +63 -3
- package/src/multistream/remoteMediaManager.ts +263 -66
- package/src/networkQualityMonitor/{index.js → index.ts} +41 -29
- package/src/personal-meeting-room/{index.js → index.ts} +28 -19
- package/src/personal-meeting-room/{request.js → request.ts} +13 -4
- package/src/personal-meeting-room/{util.js → util.ts} +4 -4
- package/src/reachability/{index.js → index.ts} +157 -94
- package/src/reachability/request.ts +46 -35
- package/src/reactions/constants.ts +4 -0
- package/src/reactions/reactions.ts +104 -0
- package/src/reactions/reactions.type.ts +62 -0
- package/src/reconnection-manager/{index.js → index.ts} +254 -136
- package/src/recording-controller/enums.ts +8 -0
- package/src/recording-controller/index.ts +333 -0
- package/src/recording-controller/util.ts +75 -0
- package/src/roap/{index.js → index.ts} +86 -78
- package/src/roap/request.ts +163 -0
- package/src/roap/turnDiscovery.ts +111 -49
- package/src/rtcMetrics/constants.ts +3 -0
- package/src/rtcMetrics/index.ts +96 -0
- package/src/statsAnalyzer/global.ts +37 -0
- package/src/statsAnalyzer/index.ts +1272 -0
- package/src/statsAnalyzer/mqaUtil.ts +291 -0
- package/src/transcription/{index.js → index.ts} +46 -39
- package/test/integration/spec/converged-space-meetings.js +233 -0
- package/test/integration/spec/journey.js +804 -526
- package/test/integration/spec/space-meeting.js +391 -204
- package/test/integration/spec/transcription.js +7 -8
- package/test/unit/spec/annotation/index.ts +418 -0
- package/test/unit/spec/breakouts/breakout.ts +237 -0
- package/test/unit/spec/breakouts/collection.ts +15 -0
- package/test/unit/spec/breakouts/edit-lock-error.ts +30 -0
- package/test/unit/spec/breakouts/events.ts +89 -0
- package/test/unit/spec/breakouts/index.ts +1790 -0
- package/test/unit/spec/breakouts/request.ts +104 -0
- package/test/unit/spec/breakouts/utils.js +72 -0
- package/test/unit/spec/common/browser-detection.js +9 -28
- package/test/unit/spec/common/queue.js +31 -2
- package/test/unit/spec/controls-options-manager/index.js +287 -0
- package/test/unit/spec/controls-options-manager/util.js +582 -0
- package/test/unit/spec/fixture/locus.js +93 -90
- package/test/unit/spec/interpretation/collection.ts +15 -0
- package/test/unit/spec/interpretation/index.ts +589 -0
- package/test/unit/spec/interpretation/siLanguage.ts +28 -0
- package/test/unit/spec/locus-info/controlsUtils.js +325 -32
- package/test/unit/spec/locus-info/embeddedAppsUtils.js +8 -6
- package/test/unit/spec/locus-info/index.js +1176 -18
- package/test/unit/spec/locus-info/infoUtils.js +41 -32
- package/test/unit/spec/locus-info/lib/BasicSeqCmp.json +88 -430
- package/test/unit/spec/locus-info/lib/SeqCmp.json +513 -685
- package/test/unit/spec/locus-info/mediaSharesUtils.ts +22 -0
- package/test/unit/spec/locus-info/parser.js +65 -31
- package/test/unit/spec/locus-info/selfConstant.js +120 -103
- package/test/unit/spec/locus-info/selfUtils.js +296 -12
- package/test/unit/spec/media/index.ts +162 -68
- package/test/unit/spec/media/properties.ts +9 -9
- package/test/unit/spec/meeting/in-meeting-actions.ts +82 -3
- package/test/unit/spec/meeting/index.js +4569 -1773
- package/test/unit/spec/meeting/locusMediaRequest.ts +436 -0
- package/test/unit/spec/meeting/muteState.js +382 -211
- package/test/unit/spec/meeting/request.js +444 -78
- package/test/unit/spec/meeting/utils.js +517 -192
- package/test/unit/spec/meeting-info/index.js +181 -0
- package/test/unit/spec/meeting-info/meetinginfov2.js +481 -76
- package/test/unit/spec/meeting-info/request.js +7 -9
- package/test/unit/spec/meeting-info/util.js +11 -12
- package/test/unit/spec/meeting-info/utilv2.js +131 -74
- package/test/unit/spec/meetings/collection.js +15 -1
- package/test/unit/spec/meetings/index.js +1254 -330
- package/test/unit/spec/meetings/utils.js +220 -14
- package/test/unit/spec/member/index.js +58 -5
- package/test/unit/spec/member/util.js +494 -26
- package/test/unit/spec/members/index.js +423 -55
- package/test/unit/spec/members/request.js +228 -40
- package/test/unit/spec/members/utils.js +191 -4
- package/test/unit/spec/metrics/index.js +12 -66
- package/test/unit/spec/multistream/mediaRequestManager.ts +1013 -106
- 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 +40 -2
- package/test/unit/spec/multistream/remoteMediaGroup.ts +271 -5
- package/test/unit/spec/multistream/remoteMediaManager.ts +730 -65
- package/test/unit/spec/networkQualityMonitor/index.js +24 -18
- package/test/unit/spec/personal-meeting-room/personal-meeting-room.js +2 -7
- package/test/unit/spec/reachability/index.ts +176 -27
- package/test/unit/spec/reachability/request.js +66 -0
- package/test/unit/spec/reconnection-manager/index.js +155 -9
- package/test/unit/spec/recording-controller/index.js +307 -0
- package/test/unit/spec/recording-controller/util.js +229 -0
- package/test/unit/spec/roap/index.ts +28 -52
- package/test/unit/spec/roap/request.ts +225 -0
- package/test/unit/spec/roap/turnDiscovery.ts +92 -50
- package/test/unit/spec/rtcMetrics/index.ts +60 -0
- package/test/unit/spec/stats-analyzer/index.js +116 -60
- package/test/utils/cmr.js +44 -42
- package/test/utils/constants.js +9 -0
- package/test/utils/integrationTestUtils.js +46 -0
- package/test/utils/testUtils.js +63 -99
- package/test/utils/webex-config.js +22 -18
- package/test/utils/webex-test-users.js +57 -50
- 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 -327
- package/dist/meeting/effectsState.js.map +0 -1
- package/dist/metrics/config.js +0 -301
- package/dist/metrics/config.js.map +0 -1
- package/dist/multistream/multistreamMedia.js +0 -116
- package/dist/multistream/multistreamMedia.js.map +0 -1
- package/dist/peer-connection-manager/util.js +0 -124
- package/dist/peer-connection-manager/util.js.map +0 -1
- package/src/common/logs/logger-proxy.js +0 -33
- package/src/index.js +0 -15
- package/src/locus-info/controlsUtils.js +0 -102
- package/src/media/index.js +0 -459
- package/src/media/internal-media-core-wrapper.ts +0 -9
- package/src/mediaQualityMetrics/config.js +0 -382
- package/src/meeting/effectsState.js +0 -205
- package/src/meeting/index.js +0 -6284
- package/src/meeting/muteState.js +0 -318
- package/src/meeting/util.js +0 -506
- package/src/meeting-info/index.js +0 -131
- package/src/meeting-info/meeting-info-v2.js +0 -255
- package/src/meetings/index.js +0 -1015
- package/src/member/util.js +0 -254
- package/src/members/request.js +0 -131
- package/src/members/util.js +0 -258
- package/src/metrics/config.js +0 -324
- package/src/metrics/index.js +0 -530
- package/src/multistream/multistreamMedia.ts +0 -92
- package/src/peer-connection-manager/util.ts +0 -117
- package/src/roap/request.js +0 -127
- package/src/statsAnalyzer/global.js +0 -133
- package/src/statsAnalyzer/index.js +0 -1006
- package/src/statsAnalyzer/mqaUtil.js +0 -173
- package/test/unit/spec/meeting/effectsState.js +0 -291
- package/test/unit/spec/peerconnection-manager/utils.test-fixtures.ts +0 -389
- /package/src/common/errors/{reconnection-in-progress.js → reconnection-in-progress.ts} +0 -0
|
@@ -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,208 @@
|
|
|
1
|
+
import { SELF_POLICY } from '../constants';
|
|
2
|
+
import MeetingRequest from '../meeting/request';
|
|
3
|
+
/**
|
|
4
|
+
* @description Recording manages the recording functionality of the meeting object, there should only be one instantation of recording per meeting
|
|
5
|
+
* @export
|
|
6
|
+
* @private
|
|
7
|
+
* @class Recording
|
|
8
|
+
*/
|
|
9
|
+
export default class RecordingController {
|
|
10
|
+
/**
|
|
11
|
+
* @instance
|
|
12
|
+
* @type {MeetingRequest}
|
|
13
|
+
* @private
|
|
14
|
+
* @memberof RecordingController
|
|
15
|
+
*/
|
|
16
|
+
private request;
|
|
17
|
+
/**
|
|
18
|
+
* @instance
|
|
19
|
+
* @type {Array}
|
|
20
|
+
* @private
|
|
21
|
+
* @memberof RecordingInfo
|
|
22
|
+
*/
|
|
23
|
+
private displayHints;
|
|
24
|
+
/**
|
|
25
|
+
* @instance
|
|
26
|
+
* @type {Object}
|
|
27
|
+
* @private
|
|
28
|
+
* @memberof RecordingInfo
|
|
29
|
+
*/
|
|
30
|
+
private selfUserPolicies;
|
|
31
|
+
/**
|
|
32
|
+
* @instance
|
|
33
|
+
* @type {string}
|
|
34
|
+
* @private
|
|
35
|
+
* @memberof RecordingInfo
|
|
36
|
+
*/
|
|
37
|
+
private serviceUrl;
|
|
38
|
+
/**
|
|
39
|
+
* @instance
|
|
40
|
+
* @type {string}
|
|
41
|
+
* @private
|
|
42
|
+
* @memberof RecordingInfo
|
|
43
|
+
*/
|
|
44
|
+
private sessionId;
|
|
45
|
+
/**
|
|
46
|
+
* @instance
|
|
47
|
+
* @type {string}
|
|
48
|
+
* @private
|
|
49
|
+
* @memberof RecordingInfo
|
|
50
|
+
*/
|
|
51
|
+
private locusUrl;
|
|
52
|
+
/**
|
|
53
|
+
* @instance
|
|
54
|
+
* @type {string}
|
|
55
|
+
* @private
|
|
56
|
+
* @memberof RecordingInfo
|
|
57
|
+
*/
|
|
58
|
+
private locusId;
|
|
59
|
+
/**
|
|
60
|
+
* @param {MeetingRequest} request
|
|
61
|
+
* @param {Object} options
|
|
62
|
+
* @constructor
|
|
63
|
+
* @memberof RecordingController
|
|
64
|
+
*/
|
|
65
|
+
constructor(request: MeetingRequest, options?: {
|
|
66
|
+
serviceUrl?: string;
|
|
67
|
+
sessionId: string;
|
|
68
|
+
locusUrl: string;
|
|
69
|
+
displayHints?: Array<string>;
|
|
70
|
+
});
|
|
71
|
+
/**
|
|
72
|
+
* @param {MeetingRequest} request
|
|
73
|
+
* @param {LocusInfo} info
|
|
74
|
+
* @returns {void}
|
|
75
|
+
* @private
|
|
76
|
+
* @memberof RecordingController
|
|
77
|
+
*/
|
|
78
|
+
private initialize;
|
|
79
|
+
/**
|
|
80
|
+
* @param {Object} options
|
|
81
|
+
* @returns {void}
|
|
82
|
+
* @public
|
|
83
|
+
* @memberof RecordingController
|
|
84
|
+
*/
|
|
85
|
+
set(options?: {
|
|
86
|
+
serviceUrl?: string;
|
|
87
|
+
sessionId: string;
|
|
88
|
+
locusUrl: string;
|
|
89
|
+
displayHints?: Array<string>;
|
|
90
|
+
}): void;
|
|
91
|
+
/**
|
|
92
|
+
* @param {string} url
|
|
93
|
+
* @returns {void}
|
|
94
|
+
* @public
|
|
95
|
+
* @memberof RecordingController
|
|
96
|
+
*/
|
|
97
|
+
setLocusUrl(url: string): void;
|
|
98
|
+
/**
|
|
99
|
+
* @param {Array} hints
|
|
100
|
+
* @returns {void}
|
|
101
|
+
* @public
|
|
102
|
+
* @memberof RecordingController
|
|
103
|
+
*/
|
|
104
|
+
setDisplayHints(hints: Array<string>): void;
|
|
105
|
+
/**
|
|
106
|
+
* @param {Object} selfUserPolicies
|
|
107
|
+
* @returns {void}
|
|
108
|
+
* @public
|
|
109
|
+
* @memberof RecordingController
|
|
110
|
+
*/
|
|
111
|
+
setUserPolicy(selfUserPolicies: Record<SELF_POLICY, boolean>): void;
|
|
112
|
+
/**
|
|
113
|
+
* @param {string} id
|
|
114
|
+
* @returns {void}
|
|
115
|
+
* @public
|
|
116
|
+
* @memberof RecordingController
|
|
117
|
+
*/
|
|
118
|
+
setSessionId(id: string): void;
|
|
119
|
+
/**
|
|
120
|
+
* @param {string} url
|
|
121
|
+
* @returns {void}
|
|
122
|
+
* @public
|
|
123
|
+
* @memberof RecordingController
|
|
124
|
+
*/
|
|
125
|
+
setServiceUrl(url: string): void;
|
|
126
|
+
/**
|
|
127
|
+
* @returns {string}
|
|
128
|
+
* @public
|
|
129
|
+
* @memberof RecordingController
|
|
130
|
+
*/
|
|
131
|
+
getLocusUrl(): string;
|
|
132
|
+
/**
|
|
133
|
+
* @returns {string}
|
|
134
|
+
* @public
|
|
135
|
+
* @memberof RecordingController
|
|
136
|
+
*/
|
|
137
|
+
getLocusId(): string;
|
|
138
|
+
/**
|
|
139
|
+
* @returns {string}
|
|
140
|
+
* @public
|
|
141
|
+
* @memberof RecordingController
|
|
142
|
+
*/
|
|
143
|
+
getSessionId(): string;
|
|
144
|
+
/**
|
|
145
|
+
* @returns {string}
|
|
146
|
+
* @public
|
|
147
|
+
* @memberof RecordingController
|
|
148
|
+
*/
|
|
149
|
+
getServiceUrl(): string;
|
|
150
|
+
/**
|
|
151
|
+
* @returns {Array}
|
|
152
|
+
* @public
|
|
153
|
+
* @memberof RecordingController
|
|
154
|
+
*/
|
|
155
|
+
getDisplayHints(): string[];
|
|
156
|
+
/**
|
|
157
|
+
* @param {Object} options
|
|
158
|
+
* @returns {void}
|
|
159
|
+
* @private
|
|
160
|
+
* @memberof RecordingController
|
|
161
|
+
*/
|
|
162
|
+
private extract;
|
|
163
|
+
/**
|
|
164
|
+
* @param {RecordingAction} action
|
|
165
|
+
* @private
|
|
166
|
+
* @memberof RecordingController
|
|
167
|
+
* @returns {Promise}
|
|
168
|
+
*/
|
|
169
|
+
private recordingService;
|
|
170
|
+
/**
|
|
171
|
+
* @param {RecordingAction} action
|
|
172
|
+
* @private
|
|
173
|
+
* @memberof RecordingController
|
|
174
|
+
* @returns {Promise}
|
|
175
|
+
*/
|
|
176
|
+
private recordingControls;
|
|
177
|
+
/**
|
|
178
|
+
* @param {RecordingAction} action
|
|
179
|
+
* @private
|
|
180
|
+
* @memberof RecordingController
|
|
181
|
+
* @returns {Promise}
|
|
182
|
+
*/
|
|
183
|
+
private recordingFacade;
|
|
184
|
+
/**
|
|
185
|
+
* @private
|
|
186
|
+
* @memberof RecordingController
|
|
187
|
+
* @returns {Promise}
|
|
188
|
+
*/
|
|
189
|
+
startRecording(): Promise<any>;
|
|
190
|
+
/**
|
|
191
|
+
* @private
|
|
192
|
+
* @memberof RecordingController
|
|
193
|
+
* @returns {Promise}
|
|
194
|
+
*/
|
|
195
|
+
stopRecording(): Promise<any>;
|
|
196
|
+
/**
|
|
197
|
+
* @private
|
|
198
|
+
* @memberof RecordingController
|
|
199
|
+
* @returns {Promise}
|
|
200
|
+
*/
|
|
201
|
+
pauseRecording(): Promise<any>;
|
|
202
|
+
/**
|
|
203
|
+
* @private
|
|
204
|
+
* @memberof RecordingController
|
|
205
|
+
* @returns {Promise}
|
|
206
|
+
*/
|
|
207
|
+
resumeRecording(): Promise<any>;
|
|
208
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { SELF_POLICY } from '../constants';
|
|
2
|
+
import RecordingAction from './enums';
|
|
3
|
+
declare const _default: {
|
|
4
|
+
canUserStart: (displayHints: string[], userPolicies: Record<SELF_POLICY, boolean>) => boolean;
|
|
5
|
+
canUserPause: (displayHints: string[], userPolicies: Record<SELF_POLICY, boolean>) => boolean;
|
|
6
|
+
canUserResume: (displayHints: string[], userPolicies: Record<SELF_POLICY, boolean>) => boolean;
|
|
7
|
+
canUserStop: (displayHints: string[], userPolicies: Record<SELF_POLICY, boolean>) => boolean;
|
|
8
|
+
deriveRecordingStates: (action: RecordingAction) => {
|
|
9
|
+
recording: boolean;
|
|
10
|
+
paused: boolean;
|
|
11
|
+
};
|
|
12
|
+
extractLocusId: (url: string) => string;
|
|
13
|
+
};
|
|
14
|
+
export default _default;
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { StatelessWebexPlugin } from '@webex/webex-core';
|
|
2
|
+
import Meeting from '../meeting';
|
|
3
|
+
/**
|
|
4
|
+
* Roap options
|
|
5
|
+
* @typedef {Object} RoapOptions
|
|
6
|
+
* @property {String} sdp
|
|
7
|
+
* @property {Meeting} meeting
|
|
8
|
+
* @property {Number} seq
|
|
9
|
+
* @property {Number} tieBreaker
|
|
10
|
+
* @property {Boolean} reconnect
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* @typedef {Object} SeqOptions
|
|
14
|
+
* @property {String} correlationId
|
|
15
|
+
* @property {String} mediaId
|
|
16
|
+
* @property {Number} seq
|
|
17
|
+
*/
|
|
18
|
+
/**
|
|
19
|
+
* @class Roap
|
|
20
|
+
* @export
|
|
21
|
+
* @private
|
|
22
|
+
*/
|
|
23
|
+
export default class Roap extends StatelessWebexPlugin {
|
|
24
|
+
attrs: any;
|
|
25
|
+
lastRoapOffer: any;
|
|
26
|
+
options: any;
|
|
27
|
+
roapHandler: any;
|
|
28
|
+
roapRequest: any;
|
|
29
|
+
turnDiscovery: any;
|
|
30
|
+
/**
|
|
31
|
+
*
|
|
32
|
+
* @param {Object} attrs
|
|
33
|
+
* @param {Object} options
|
|
34
|
+
*/
|
|
35
|
+
constructor(attrs: any, options: any);
|
|
36
|
+
/**
|
|
37
|
+
*
|
|
38
|
+
* @param {SeqOptions} options
|
|
39
|
+
* @returns {null}
|
|
40
|
+
* @memberof Roap
|
|
41
|
+
*/
|
|
42
|
+
sendRoapOK(options: any): Promise<any>;
|
|
43
|
+
/**
|
|
44
|
+
* Sends a ROAP answer...
|
|
45
|
+
* @param {SeqOptions} options
|
|
46
|
+
* @param {Boolean} options.audioMuted
|
|
47
|
+
* @param {Boolean} options.videoMuted
|
|
48
|
+
* @returns {Promise}
|
|
49
|
+
* @memberof Roap
|
|
50
|
+
*/
|
|
51
|
+
sendRoapAnswer(options: any): any;
|
|
52
|
+
/**
|
|
53
|
+
* Sends a ROAP error...
|
|
54
|
+
* @param {Object} options
|
|
55
|
+
* @returns {Promise}
|
|
56
|
+
* @memberof Roap
|
|
57
|
+
*/
|
|
58
|
+
sendRoapError(options: any): any;
|
|
59
|
+
/**
|
|
60
|
+
* sends a roap media request
|
|
61
|
+
* @param {RoapOptions} options
|
|
62
|
+
* @returns {Promise}
|
|
63
|
+
* @memberof Roap
|
|
64
|
+
*/
|
|
65
|
+
sendRoapMediaRequest(options: any): any;
|
|
66
|
+
/**
|
|
67
|
+
* Performs a TURN server discovery procedure, which involves exchanging
|
|
68
|
+
* some roap messages with the server. This exchange has to be done before
|
|
69
|
+
* any other roap messages are sent
|
|
70
|
+
*
|
|
71
|
+
* @param {Meeting} meeting
|
|
72
|
+
* @param {Boolean} isReconnecting should be set to true if this is a new
|
|
73
|
+
* media connection just after a reconnection
|
|
74
|
+
* @returns {Promise}
|
|
75
|
+
*/
|
|
76
|
+
doTurnDiscovery(meeting: Meeting, isReconnecting: boolean): any;
|
|
77
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { StatelessWebexPlugin } from '@webex/webex-core';
|
|
2
|
+
import { LocusMediaRequest } from '../meeting/locusMediaRequest';
|
|
3
|
+
/**
|
|
4
|
+
* @class RoapRequest
|
|
5
|
+
*/
|
|
6
|
+
export default class RoapRequest extends StatelessWebexPlugin {
|
|
7
|
+
/**
|
|
8
|
+
* Returns reachability data.
|
|
9
|
+
* @param {Object} localSdp
|
|
10
|
+
* @returns {Object}
|
|
11
|
+
*/
|
|
12
|
+
attachReachabilityData(localSdp: any): Promise<{
|
|
13
|
+
localSdp: any;
|
|
14
|
+
joinCookie: any;
|
|
15
|
+
}>;
|
|
16
|
+
/**
|
|
17
|
+
* Sends a ROAP message
|
|
18
|
+
* @param {Object} options
|
|
19
|
+
* @param {Object} options.roapMessage
|
|
20
|
+
* @param {String} options.locusSelfUrl
|
|
21
|
+
* @param {String} options.mediaId
|
|
22
|
+
* @param {String} options.correlationId
|
|
23
|
+
* @param {String} options.meetingId
|
|
24
|
+
* @returns {Promise} returns the response/failure of the request
|
|
25
|
+
*/
|
|
26
|
+
sendRoap(options: {
|
|
27
|
+
roapMessage: any;
|
|
28
|
+
locusSelfUrl: string;
|
|
29
|
+
mediaId: string;
|
|
30
|
+
meetingId: string;
|
|
31
|
+
locusMediaRequest?: LocusMediaRequest;
|
|
32
|
+
}): Promise<{
|
|
33
|
+
mediaConnections: any;
|
|
34
|
+
locus: any;
|
|
35
|
+
}>;
|
|
36
|
+
}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import RoapRequest from './request';
|
|
2
|
+
import Meeting from '../meeting';
|
|
3
|
+
/**
|
|
4
|
+
* Handles the process of finding out TURN server information from Linus.
|
|
5
|
+
* This is achieved by sending a TURN_DISCOVERY_REQUEST.
|
|
6
|
+
*/
|
|
7
|
+
export default class TurnDiscovery {
|
|
8
|
+
private roapRequest;
|
|
9
|
+
private defer?;
|
|
10
|
+
private turnInfo;
|
|
11
|
+
private responseTimer?;
|
|
12
|
+
/**
|
|
13
|
+
* Constructor
|
|
14
|
+
*
|
|
15
|
+
* @param {RoapRequest} roapRequest
|
|
16
|
+
*/
|
|
17
|
+
constructor(roapRequest: RoapRequest);
|
|
18
|
+
/**
|
|
19
|
+
* waits for TURN_DISCOVERY_RESPONSE message to arrive
|
|
20
|
+
*
|
|
21
|
+
* @returns {Promise}
|
|
22
|
+
* @private
|
|
23
|
+
* @memberof Roap
|
|
24
|
+
*/
|
|
25
|
+
private waitForTurnDiscoveryResponse;
|
|
26
|
+
/**
|
|
27
|
+
* handles TURN_DISCOVERY_RESPONSE roap message
|
|
28
|
+
*
|
|
29
|
+
* @param {Object} roapMessage
|
|
30
|
+
* @returns {void}
|
|
31
|
+
* @public
|
|
32
|
+
* @memberof Roap
|
|
33
|
+
*/
|
|
34
|
+
handleTurnDiscoveryResponse(roapMessage: object): void;
|
|
35
|
+
/**
|
|
36
|
+
* sends the TURN_DISCOVERY_REQUEST roap request
|
|
37
|
+
*
|
|
38
|
+
* @param {Meeting} meeting
|
|
39
|
+
* @param {Boolean} isReconnecting
|
|
40
|
+
* @returns {Promise}
|
|
41
|
+
* @private
|
|
42
|
+
* @memberof Roap
|
|
43
|
+
*/
|
|
44
|
+
sendRoapTurnDiscoveryRequest(meeting: Meeting, isReconnecting: boolean): Promise<void>;
|
|
45
|
+
/**
|
|
46
|
+
* Sends the OK message that server expects to receive
|
|
47
|
+
* after it sends us TURN_DISCOVERY_RESPONSE
|
|
48
|
+
*
|
|
49
|
+
* @param {Meeting} meeting
|
|
50
|
+
* @returns {Promise}
|
|
51
|
+
*/
|
|
52
|
+
sendRoapOK(meeting: Meeting): Promise<{
|
|
53
|
+
mediaConnections: any;
|
|
54
|
+
locus: any;
|
|
55
|
+
}>;
|
|
56
|
+
/**
|
|
57
|
+
* Gets the reason why reachability is skipped.
|
|
58
|
+
*
|
|
59
|
+
* @param {Meeting} meeting
|
|
60
|
+
* @returns {Promise<string>} Promise with empty string if reachability is not skipped or a reason if it is skipped
|
|
61
|
+
*/
|
|
62
|
+
private getSkipReason;
|
|
63
|
+
/**
|
|
64
|
+
* Checks if TURN discovery is skipped.
|
|
65
|
+
*
|
|
66
|
+
* @param {Meeting} meeting
|
|
67
|
+
* @returns {Boolean} true if TURN discovery is being skipped, false if it is being done
|
|
68
|
+
*/
|
|
69
|
+
isSkipped(meeting: any): Promise<boolean>;
|
|
70
|
+
/**
|
|
71
|
+
* Retrieves TURN server information from the backend by doing
|
|
72
|
+
* a roap message exchange:
|
|
73
|
+
* client server
|
|
74
|
+
* | -----TURN_DISCOVERY_REQUEST-----> |
|
|
75
|
+
* | <----TURN_DISCOVERY_RESPONSE----- |
|
|
76
|
+
* | --------------OK----------------> |
|
|
77
|
+
*
|
|
78
|
+
* This TURN discovery roap exchange is always done with seq=0.
|
|
79
|
+
* The RoapMediaConnection SDP exchange always starts with seq=1,
|
|
80
|
+
* so it works fine no matter if TURN discovery is done or not.
|
|
81
|
+
*
|
|
82
|
+
* @param {Meeting} meeting
|
|
83
|
+
* @param {Boolean} isReconnecting should be set to true if this is a new
|
|
84
|
+
* media connection just after a reconnection
|
|
85
|
+
* @returns {Promise}
|
|
86
|
+
*/
|
|
87
|
+
doTurnDiscovery(meeting: Meeting, isReconnecting?: boolean): Promise<{
|
|
88
|
+
turnServerInfo: any;
|
|
89
|
+
turnDiscoverySkippedReason: any;
|
|
90
|
+
}>;
|
|
91
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Rtc Metrics
|
|
3
|
+
*/
|
|
4
|
+
export default class RtcMetrics {
|
|
5
|
+
/**
|
|
6
|
+
* Array of MetricData items to be sent to the metrics service.
|
|
7
|
+
*/
|
|
8
|
+
metricsQueue: any[];
|
|
9
|
+
intervalId: number;
|
|
10
|
+
webex: any;
|
|
11
|
+
meetingId: string;
|
|
12
|
+
correlationId: string;
|
|
13
|
+
/**
|
|
14
|
+
* Initialize the interval.
|
|
15
|
+
*
|
|
16
|
+
* @param {object} webex - The main `webex` object.
|
|
17
|
+
* @param {string} meetingId - The meeting id.
|
|
18
|
+
*/
|
|
19
|
+
constructor(webex: any, meetingId: any);
|
|
20
|
+
/**
|
|
21
|
+
* Check to see if the metrics queue has any items.
|
|
22
|
+
*
|
|
23
|
+
* @returns {void}
|
|
24
|
+
*/
|
|
25
|
+
private checkMetrics;
|
|
26
|
+
/**
|
|
27
|
+
* Add metrics items to the metrics queue.
|
|
28
|
+
*
|
|
29
|
+
* @param {object} data - An object with a payload array of metrics items.
|
|
30
|
+
*
|
|
31
|
+
* @returns {void}
|
|
32
|
+
*/
|
|
33
|
+
addMetrics(data: any): void;
|
|
34
|
+
/**
|
|
35
|
+
* Clear the metrics interval.
|
|
36
|
+
*
|
|
37
|
+
* @returns {void}
|
|
38
|
+
*/
|
|
39
|
+
closeMetrics(): void;
|
|
40
|
+
/**
|
|
41
|
+
* Send metrics to the metrics service.
|
|
42
|
+
*
|
|
43
|
+
* @returns {void}
|
|
44
|
+
*/
|
|
45
|
+
private sendMetrics;
|
|
46
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
declare const STATS_DEFAULT: {
|
|
2
|
+
encryption: string;
|
|
3
|
+
bandwidth: {
|
|
4
|
+
systemBandwidth: number;
|
|
5
|
+
sentPerSecond: number;
|
|
6
|
+
encodedPerSecond: number;
|
|
7
|
+
helper: {
|
|
8
|
+
audioBytesSent: number;
|
|
9
|
+
videoBytestSent: number;
|
|
10
|
+
};
|
|
11
|
+
speed: number;
|
|
12
|
+
};
|
|
13
|
+
results: {};
|
|
14
|
+
connectionType: {
|
|
15
|
+
systemNetworkType: string;
|
|
16
|
+
systemIpAddress: string;
|
|
17
|
+
local: {
|
|
18
|
+
candidateType: any[];
|
|
19
|
+
transport: any[];
|
|
20
|
+
ipAddress: any[];
|
|
21
|
+
networkType: any[];
|
|
22
|
+
};
|
|
23
|
+
remote: {
|
|
24
|
+
candidateType: any[];
|
|
25
|
+
transport: any[];
|
|
26
|
+
ipAddress: any[];
|
|
27
|
+
networkType: any[];
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
resolutions: {};
|
|
31
|
+
internal: {
|
|
32
|
+
remote: {};
|
|
33
|
+
candidates: {};
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
export default STATS_DEFAULT;
|