@webex/plugin-meetings 3.8.0 → 3.8.1-next.10
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 +26 -13
- package/dist/breakouts/breakout.js +1 -1
- package/dist/breakouts/index.js +70 -6
- package/dist/breakouts/index.js.map +1 -1
- package/dist/common/errors/webex-errors.js +12 -2
- package/dist/common/errors/webex-errors.js.map +1 -1
- package/dist/config.js +5 -1
- package/dist/config.js.map +1 -1
- package/dist/constants.js +28 -123
- package/dist/constants.js.map +1 -1
- package/dist/controls-options-manager/enums.js +3 -0
- package/dist/controls-options-manager/enums.js.map +1 -1
- package/dist/controls-options-manager/types.js.map +1 -1
- package/dist/controls-options-manager/util.js +78 -0
- package/dist/controls-options-manager/util.js.map +1 -1
- package/dist/interpretation/index.js +4 -4
- package/dist/interpretation/index.js.map +1 -1
- package/dist/interpretation/siLanguage.js +1 -1
- package/dist/locus-info/controlsUtils.js +37 -11
- package/dist/locus-info/controlsUtils.js.map +1 -1
- package/dist/locus-info/index.js +92 -12
- package/dist/locus-info/index.js.map +1 -1
- package/dist/locus-info/selfUtils.js +432 -418
- package/dist/locus-info/selfUtils.js.map +1 -1
- package/dist/media/index.js +17 -17
- package/dist/media/index.js.map +1 -1
- package/dist/media/properties.js +94 -6
- package/dist/media/properties.js.map +1 -1
- package/dist/meeting/brbState.js +9 -2
- package/dist/meeting/brbState.js.map +1 -1
- package/dist/meeting/in-meeting-actions.js +21 -1
- package/dist/meeting/in-meeting-actions.js.map +1 -1
- package/dist/meeting/index.js +678 -344
- package/dist/meeting/index.js.map +1 -1
- package/dist/meeting/locusMediaRequest.js +21 -22
- package/dist/meeting/locusMediaRequest.js.map +1 -1
- package/dist/meeting/muteState.js +4 -4
- package/dist/meeting/muteState.js.map +1 -1
- package/dist/meeting/request.js +30 -0
- package/dist/meeting/request.js.map +1 -1
- package/dist/meeting/request.type.js.map +1 -1
- package/dist/meeting/util.js +13 -2
- package/dist/meeting/util.js.map +1 -1
- package/dist/meeting-info/meeting-info-v2.js +373 -68
- package/dist/meeting-info/meeting-info-v2.js.map +1 -1
- package/dist/meeting-info/utilv2.js +5 -1
- package/dist/meeting-info/utilv2.js.map +1 -1
- package/dist/meetings/index.js +136 -1
- package/dist/meetings/index.js.map +1 -1
- package/dist/meetings/util.js +14 -0
- package/dist/meetings/util.js.map +1 -1
- package/dist/member/index.js +55 -9
- package/dist/member/index.js.map +1 -1
- package/dist/member/types.js +3 -0
- package/dist/member/types.js.map +1 -1
- package/dist/member/util.js +335 -353
- package/dist/member/util.js.map +1 -1
- package/dist/members/collection.js.map +1 -1
- package/dist/members/index.js +137 -29
- package/dist/members/index.js.map +1 -1
- package/dist/members/request.js +38 -0
- package/dist/members/request.js.map +1 -1
- package/dist/members/util.js +36 -1
- package/dist/members/util.js.map +1 -1
- package/dist/metrics/constants.js +10 -0
- package/dist/metrics/constants.js.map +1 -1
- package/dist/multistream/remoteMediaManager.js +40 -8
- package/dist/multistream/remoteMediaManager.js.map +1 -1
- package/dist/reachability/clusterReachability.js +63 -27
- package/dist/reachability/clusterReachability.js.map +1 -1
- package/dist/reachability/index.js +107 -47
- package/dist/reachability/index.js.map +1 -1
- package/dist/reachability/reachability.types.js +14 -0
- package/dist/reachability/reachability.types.js.map +1 -1
- package/dist/reachability/request.js +19 -3
- package/dist/reachability/request.js.map +1 -1
- package/dist/reconnection-manager/index.js +2 -2
- package/dist/reconnection-manager/index.js.map +1 -1
- package/dist/recording-controller/util.js +5 -5
- package/dist/recording-controller/util.js.map +1 -1
- package/dist/roap/index.js.map +1 -1
- package/dist/roap/turnDiscovery.js +45 -27
- package/dist/roap/turnDiscovery.js.map +1 -1
- package/dist/roap/types.js +17 -0
- package/dist/roap/types.js.map +1 -0
- package/dist/types/common/errors/webex-errors.d.ts +7 -1
- package/dist/types/config.d.ts +3 -0
- package/dist/types/constants.d.ts +20 -85
- package/dist/types/controls-options-manager/enums.d.ts +4 -1
- package/dist/types/controls-options-manager/types.d.ts +10 -1
- package/dist/types/locus-info/index.d.ts +3 -3
- package/dist/types/locus-info/selfUtils.d.ts +216 -1
- package/dist/types/media/properties.d.ts +15 -0
- package/dist/types/meeting/in-meeting-actions.d.ts +20 -0
- package/dist/types/meeting/index.d.ts +65 -1
- package/dist/types/meeting/muteState.d.ts +0 -1
- package/dist/types/meeting/request.d.ts +12 -1
- package/dist/types/meeting/request.type.d.ts +6 -0
- package/dist/types/meeting/util.d.ts +3 -1
- package/dist/types/meeting-info/meeting-info-v2.d.ts +82 -1
- package/dist/types/meetings/index.d.ts +57 -0
- package/dist/types/member/index.d.ts +21 -6
- package/dist/types/member/types.d.ts +73 -14
- package/dist/types/member/util.d.ts +156 -1
- package/dist/types/members/collection.d.ts +6 -5
- package/dist/types/members/index.d.ts +32 -43
- package/dist/types/members/request.d.ts +26 -0
- package/dist/types/members/util.d.ts +27 -0
- package/dist/types/metrics/constants.d.ts +10 -0
- package/dist/types/multistream/remoteMediaManager.d.ts +10 -1
- package/dist/types/reachability/clusterReachability.d.ts +15 -7
- package/dist/types/reachability/index.d.ts +10 -1
- package/dist/types/reachability/reachability.types.d.ts +5 -0
- package/dist/types/roap/index.d.ts +3 -2
- package/dist/types/roap/turnDiscovery.d.ts +5 -17
- package/dist/types/roap/types.d.ts +16 -0
- package/dist/webinar/index.js +2 -2
- package/dist/webinar/index.js.map +1 -1
- package/package.json +24 -23
- package/src/breakouts/index.ts +69 -0
- package/src/common/errors/webex-errors.ts +8 -1
- package/src/config.ts +3 -0
- package/src/constants.ts +30 -90
- package/src/controls-options-manager/enums.ts +3 -0
- package/src/controls-options-manager/types.ts +16 -1
- package/src/controls-options-manager/util.ts +93 -0
- package/src/interpretation/index.ts +3 -3
- package/src/locus-info/controlsUtils.ts +59 -14
- package/src/locus-info/index.ts +97 -13
- package/src/locus-info/selfUtils.ts +496 -442
- package/src/media/index.ts +23 -21
- package/src/media/properties.ts +96 -0
- package/src/meeting/brbState.ts +11 -2
- package/src/meeting/in-meeting-actions.ts +40 -0
- package/src/meeting/index.ts +470 -105
- package/src/meeting/locusMediaRequest.ts +27 -22
- package/src/meeting/muteState.ts +4 -4
- package/src/meeting/request.ts +36 -1
- package/src/meeting/request.type.ts +7 -0
- package/src/meeting/util.ts +11 -2
- package/src/meeting-info/meeting-info-v2.ts +254 -8
- package/src/meeting-info/utilv2.ts +5 -0
- package/src/meetings/index.ts +148 -1
- package/src/meetings/util.ts +18 -0
- package/src/member/index.ts +68 -22
- package/src/member/types.ts +82 -16
- package/src/member/util.ts +357 -350
- package/src/members/collection.ts +4 -3
- package/src/members/index.ts +137 -18
- package/src/members/request.ts +44 -0
- package/src/members/util.ts +43 -1
- package/src/metrics/constants.ts +10 -0
- package/src/multistream/remoteMediaManager.ts +32 -10
- package/src/reachability/clusterReachability.ts +73 -26
- package/src/reachability/index.ts +62 -1
- package/src/reachability/reachability.types.ts +6 -0
- package/src/reachability/request.ts +7 -0
- package/src/reconnection-manager/index.ts +2 -2
- package/src/recording-controller/util.ts +17 -13
- package/src/roap/index.ts +3 -7
- package/src/roap/turnDiscovery.ts +34 -39
- package/src/roap/types.ts +23 -0
- package/src/webinar/index.ts +1 -1
- package/test/unit/spec/breakouts/index.ts +167 -95
- package/test/unit/spec/controls-options-manager/util.js +178 -0
- package/test/unit/spec/interpretation/index.ts +39 -1
- package/test/unit/spec/locus-info/controlsUtils.js +155 -9
- package/test/unit/spec/locus-info/index.js +209 -73
- package/test/unit/spec/locus-info/selfUtils.js +98 -24
- package/test/unit/spec/media/index.ts +150 -18
- package/test/unit/spec/media/properties.ts +130 -0
- package/test/unit/spec/meeting/brbState.ts +40 -2
- package/test/unit/spec/meeting/in-meeting-actions.ts +23 -4
- package/test/unit/spec/meeting/index.js +804 -139
- package/test/unit/spec/meeting/locusMediaRequest.ts +95 -87
- package/test/unit/spec/meeting/muteState.js +73 -2
- package/test/unit/spec/meeting/request.js +32 -1
- package/test/unit/spec/meeting/utils.js +119 -18
- package/test/unit/spec/meeting-info/meetinginfov2.js +484 -114
- package/test/unit/spec/meeting-info/utilv2.js +19 -0
- package/test/unit/spec/meetings/index.js +146 -2
- package/test/unit/spec/member/index.js +7 -0
- package/test/unit/spec/member/util.js +24 -0
- package/test/unit/spec/members/index.js +304 -78
- package/test/unit/spec/members/request.js +68 -22
- package/test/unit/spec/members/utils.js +75 -0
- package/test/unit/spec/multistream/remoteMediaManager.ts +397 -118
- package/test/unit/spec/reachability/clusterReachability.ts +88 -56
- package/test/unit/spec/reachability/index.ts +97 -0
- package/test/unit/spec/reachability/request.js +47 -2
- package/test/unit/spec/reconnection-manager/index.js +4 -4
- package/test/unit/spec/roap/turnDiscovery.ts +110 -28
- package/test/unit/spec/webinar/index.ts +5 -0
- package/dist/annotation/annotation.types.d.ts +0 -42
- package/dist/annotation/constants.d.ts +0 -31
- package/dist/annotation/index.d.ts +0 -117
- package/dist/breakouts/breakout.d.ts +0 -8
- package/dist/breakouts/collection.d.ts +0 -5
- package/dist/breakouts/edit-lock-error.d.ts +0 -15
- package/dist/breakouts/events.d.ts +0 -8
- package/dist/breakouts/index.d.ts +0 -5
- package/dist/breakouts/request.d.ts +0 -22
- package/dist/breakouts/utils.d.ts +0 -15
- package/dist/common/browser-detection.d.ts +0 -9
- package/dist/common/collection.d.ts +0 -48
- package/dist/common/config.d.ts +0 -2
- package/dist/common/errors/captcha-error.d.ts +0 -15
- package/dist/common/errors/intent-to-join.d.ts +0 -16
- package/dist/common/errors/join-meeting.d.ts +0 -17
- package/dist/common/errors/media.d.ts +0 -15
- package/dist/common/errors/no-meeting-info.d.ts +0 -14
- package/dist/common/errors/parameter.d.ts +0 -15
- package/dist/common/errors/password-error.d.ts +0 -15
- package/dist/common/errors/permission.d.ts +0 -14
- package/dist/common/errors/reclaim-host-role-error.js +0 -149
- package/dist/common/errors/reclaim-host-role-error.js.map +0 -1
- package/dist/common/errors/reclaim-host-role-errors.d.ts +0 -60
- package/dist/common/errors/reconnection-in-progress.d.ts +0 -9
- package/dist/common/errors/reconnection-in-progress.js +0 -33
- package/dist/common/errors/reconnection-in-progress.js.map +0 -1
- package/dist/common/errors/reconnection.d.ts +0 -15
- package/dist/common/errors/stats.d.ts +0 -15
- package/dist/common/errors/webex-errors.d.ts +0 -93
- package/dist/common/errors/webex-meetings-error.d.ts +0 -20
- package/dist/common/events/events-scope.d.ts +0 -17
- package/dist/common/events/events.d.ts +0 -12
- package/dist/common/events/trigger-proxy.d.ts +0 -2
- package/dist/common/events/util.d.ts +0 -2
- package/dist/common/logs/logger-config.d.ts +0 -2
- package/dist/common/logs/logger-proxy.d.ts +0 -2
- package/dist/common/logs/request.d.ts +0 -36
- package/dist/common/queue.d.ts +0 -34
- package/dist/config.d.ts +0 -72
- package/dist/constants.d.ts +0 -1088
- package/dist/controls-options-manager/constants.d.ts +0 -4
- package/dist/controls-options-manager/enums.d.ts +0 -15
- package/dist/controls-options-manager/index.d.ts +0 -136
- package/dist/controls-options-manager/types.d.ts +0 -43
- package/dist/controls-options-manager/util.d.ts +0 -1
- package/dist/index.d.ts +0 -7
- package/dist/interceptors/index.d.ts +0 -2
- package/dist/interceptors/locusRetry.d.ts +0 -27
- package/dist/interpretation/collection.d.ts +0 -5
- package/dist/interpretation/index.d.ts +0 -5
- package/dist/interpretation/siLanguage.d.ts +0 -5
- package/dist/locus-info/controlsUtils.d.ts +0 -2
- package/dist/locus-info/embeddedAppsUtils.d.ts +0 -2
- package/dist/locus-info/fullState.d.ts +0 -2
- package/dist/locus-info/hostUtils.d.ts +0 -2
- package/dist/locus-info/index.d.ts +0 -322
- package/dist/locus-info/infoUtils.d.ts +0 -2
- package/dist/locus-info/mediaSharesUtils.d.ts +0 -2
- package/dist/locus-info/parser.d.ts +0 -272
- package/dist/locus-info/selfUtils.d.ts +0 -2
- package/dist/media/index.d.ts +0 -34
- package/dist/media/properties.d.ts +0 -93
- package/dist/media/util.d.ts +0 -2
- package/dist/mediaQualityMetrics/config.d.ts +0 -241
- package/dist/mediaQualityMetrics/config.js +0 -502
- package/dist/mediaQualityMetrics/config.js.map +0 -1
- package/dist/meeting/effectsState.js +0 -260
- package/dist/meeting/effectsState.js.map +0 -1
- package/dist/meeting/in-meeting-actions.d.ts +0 -167
- package/dist/meeting/index.d.ts +0 -1825
- package/dist/meeting/locusMediaRequest.d.ts +0 -74
- package/dist/meeting/muteState.d.ts +0 -178
- package/dist/meeting/request.d.ts +0 -295
- package/dist/meeting/request.type.d.ts +0 -11
- package/dist/meeting/state.d.ts +0 -9
- package/dist/meeting/util.d.ts +0 -119
- package/dist/meeting/voicea-meeting.d.ts +0 -16
- package/dist/meeting-info/collection.d.ts +0 -20
- package/dist/meeting-info/index.d.ts +0 -69
- package/dist/meeting-info/meeting-info-v2.d.ts +0 -123
- package/dist/meeting-info/request.d.ts +0 -22
- package/dist/meeting-info/util.d.ts +0 -2
- package/dist/meeting-info/utilv2.d.ts +0 -2
- package/dist/meetings/collection.d.ts +0 -40
- package/dist/meetings/index.d.ts +0 -390
- package/dist/meetings/meetings.types.d.ts +0 -4
- package/dist/meetings/request.d.ts +0 -27
- package/dist/meetings/util.d.ts +0 -18
- package/dist/member/index.d.ts +0 -160
- package/dist/member/member.types.js +0 -17
- package/dist/member/member.types.js.map +0 -1
- package/dist/member/types.d.ts +0 -32
- package/dist/member/util.d.ts +0 -2
- package/dist/members/collection.d.ts +0 -29
- package/dist/members/index.d.ts +0 -353
- package/dist/members/request.d.ts +0 -114
- package/dist/members/types.d.ts +0 -25
- package/dist/members/util.d.ts +0 -215
- package/dist/metrics/config.js +0 -276
- package/dist/metrics/config.js.map +0 -1
- package/dist/metrics/constants.d.ts +0 -70
- package/dist/metrics/index.d.ts +0 -45
- package/dist/multistream/mediaRequestManager.d.ts +0 -119
- package/dist/multistream/receiveSlot.d.ts +0 -68
- package/dist/multistream/receiveSlotManager.d.ts +0 -56
- package/dist/multistream/remoteMedia.d.ts +0 -72
- package/dist/multistream/remoteMediaGroup.d.ts +0 -49
- package/dist/multistream/remoteMediaManager.d.ts +0 -300
- package/dist/multistream/sendSlotManager.d.ts +0 -69
- package/dist/networkQualityMonitor/index.d.ts +0 -70
- package/dist/networkQualityMonitor/index.js +0 -221
- package/dist/networkQualityMonitor/index.js.map +0 -1
- package/dist/peer-connection-manager/index.js +0 -671
- package/dist/peer-connection-manager/index.js.map +0 -1
- package/dist/peer-connection-manager/util.js +0 -109
- package/dist/peer-connection-manager/util.js.map +0 -1
- package/dist/personal-meeting-room/index.d.ts +0 -47
- package/dist/personal-meeting-room/request.d.ts +0 -14
- package/dist/personal-meeting-room/util.d.ts +0 -2
- package/dist/reachability/clusterReachability.d.ts +0 -109
- package/dist/reachability/index.d.ts +0 -105
- package/dist/reachability/request.d.ts +0 -39
- package/dist/reachability/util.d.ts +0 -8
- package/dist/reactions/constants.d.ts +0 -3
- package/dist/reactions/reactions.d.ts +0 -4
- package/dist/reactions/reactions.type.d.ts +0 -52
- package/dist/reconnection-manager/index.d.ts +0 -136
- package/dist/recording-controller/enums.d.ts +0 -7
- package/dist/recording-controller/index.d.ts +0 -207
- package/dist/recording-controller/util.d.ts +0 -14
- package/dist/roap/collection.js +0 -62
- package/dist/roap/collection.js.map +0 -1
- package/dist/roap/handler.js +0 -275
- package/dist/roap/handler.js.map +0 -1
- package/dist/roap/index.d.ts +0 -86
- package/dist/roap/request.d.ts +0 -39
- package/dist/roap/state.js +0 -126
- package/dist/roap/state.js.map +0 -1
- package/dist/roap/turnDiscovery.d.ts +0 -155
- package/dist/roap/util.js +0 -75
- package/dist/roap/util.js.map +0 -1
- package/dist/rtcMetrics/constants.d.ts +0 -4
- package/dist/rtcMetrics/constants.js +0 -11
- package/dist/rtcMetrics/constants.js.map +0 -1
- package/dist/rtcMetrics/index.d.ts +0 -61
- package/dist/rtcMetrics/index.js +0 -197
- package/dist/rtcMetrics/index.js.map +0 -1
- package/dist/statsAnalyzer/global.d.ts +0 -36
- package/dist/statsAnalyzer/global.js +0 -126
- package/dist/statsAnalyzer/global.js.map +0 -1
- package/dist/statsAnalyzer/index.d.ts +0 -217
- package/dist/statsAnalyzer/index.js +0 -1013
- package/dist/statsAnalyzer/index.js.map +0 -1
- package/dist/statsAnalyzer/mqaUtil.d.ts +0 -48
- package/dist/statsAnalyzer/mqaUtil.js +0 -179
- package/dist/statsAnalyzer/mqaUtil.js.map +0 -1
- package/dist/transcription/index.d.ts +0 -64
- package/dist/types/common/errors/reconnection-in-progress.d.ts +0 -9
- package/dist/types/mediaQualityMetrics/config.d.ts +0 -241
- package/dist/types/networkQualityMonitor/index.d.ts +0 -70
- package/dist/types/rtcMetrics/constants.d.ts +0 -4
- package/dist/types/rtcMetrics/index.d.ts +0 -71
- package/dist/types/statsAnalyzer/global.d.ts +0 -36
- package/dist/types/statsAnalyzer/index.d.ts +0 -217
- package/dist/types/statsAnalyzer/mqaUtil.d.ts +0 -48
- package/dist/webinar/collection.d.ts +0 -16
- package/dist/webinar/index.d.ts +0 -5
@@ -15,7 +15,8 @@ describe('TurnDiscovery', () => {
|
|
15
15
|
let mockRoapRequest: RoapRequest;
|
16
16
|
let testMeeting: any;
|
17
17
|
|
18
|
-
const
|
18
|
+
const FAKE_TURN_URL1 = 'turns:fakeTurnServer1.com:443?transport=tcp';
|
19
|
+
const FAKE_TURN_URL2 = 'turns:fakeTurnServer2.com:443?transport=tcp';
|
19
20
|
const FAKE_TURN_USERNAME = 'someUsernameFromServer';
|
20
21
|
const FAKE_TURN_PASSWORD = 'fakePasswordFromServer';
|
21
22
|
const FAKE_LOCUS_ID = '09493311-f5d5-3e58-b491-009cc628162e';
|
@@ -186,7 +187,8 @@ describe('TurnDiscovery', () => {
|
|
186
187
|
{
|
187
188
|
messageType: 'TURN_DISCOVERY_RESPONSE',
|
188
189
|
headers: [
|
189
|
-
`x-cisco-turn-url=${
|
190
|
+
`x-cisco-turn-url=${FAKE_TURN_URL1}`,
|
191
|
+
`x-cisco-turn-url=${FAKE_TURN_URL2}`,
|
190
192
|
`x-cisco-turn-username=${FAKE_TURN_USERNAME}`,
|
191
193
|
`x-cisco-turn-password=${FAKE_TURN_PASSWORD}`,
|
192
194
|
],
|
@@ -195,7 +197,7 @@ describe('TurnDiscovery', () => {
|
|
195
197
|
);
|
196
198
|
|
197
199
|
await checkResult(result, 'OK', {
|
198
|
-
|
200
|
+
urls: [FAKE_TURN_URL1, FAKE_TURN_URL2],
|
199
201
|
username: FAKE_TURN_USERNAME,
|
200
202
|
password: FAKE_TURN_PASSWORD,
|
201
203
|
});
|
@@ -220,7 +222,7 @@ describe('TurnDiscovery', () => {
|
|
220
222
|
{
|
221
223
|
messageType: 'TURN_DISCOVERY_RESPONSE',
|
222
224
|
headers: [
|
223
|
-
`x-cisco-turn-url=${
|
225
|
+
`x-cisco-turn-url=${FAKE_TURN_URL1}`,
|
224
226
|
`x-cisco-turn-username=${FAKE_TURN_USERNAME}`,
|
225
227
|
`x-cisco-turn-password=${FAKE_TURN_PASSWORD}`,
|
226
228
|
'noOkInTransaction',
|
@@ -230,7 +232,7 @@ describe('TurnDiscovery', () => {
|
|
230
232
|
);
|
231
233
|
|
232
234
|
await checkResult(result, undefined, {
|
233
|
-
|
235
|
+
urls: [FAKE_TURN_URL1],
|
234
236
|
username: FAKE_TURN_USERNAME,
|
235
237
|
password: FAKE_TURN_PASSWORD,
|
236
238
|
});
|
@@ -241,7 +243,7 @@ describe('TurnDiscovery', () => {
|
|
241
243
|
mediaConnections: [
|
242
244
|
{
|
243
245
|
mediaId: '464ff97f-4bda-466a-ad06-3a22184a2274',
|
244
|
-
remoteSdp: `{"roapMessage": {"messageType":"TURN_DISCOVERY_RESPONSE","seq":"0","headers": ["x-cisco-turn-url=${
|
246
|
+
remoteSdp: `{"roapMessage": {"messageType":"TURN_DISCOVERY_RESPONSE","seq":"0","headers": ["x-cisco-turn-url=${FAKE_TURN_URL1}","x-cisco-turn-username=${FAKE_TURN_USERNAME}","x-cisco-turn-password=${FAKE_TURN_PASSWORD}", "noOkInTransaction"]}}`,
|
245
247
|
},
|
246
248
|
],
|
247
249
|
});
|
@@ -256,7 +258,7 @@ describe('TurnDiscovery', () => {
|
|
256
258
|
mockRoapRequest.sendRoap.resetHistory();
|
257
259
|
|
258
260
|
await checkResult(result, undefined, {
|
259
|
-
|
261
|
+
urls: [FAKE_TURN_URL1],
|
260
262
|
username: FAKE_TURN_USERNAME,
|
261
263
|
password: FAKE_TURN_PASSWORD,
|
262
264
|
});
|
@@ -268,7 +270,7 @@ describe('TurnDiscovery', () => {
|
|
268
270
|
mediaConnections: [
|
269
271
|
{
|
270
272
|
mediaId: '464ff97f-4bda-466a-ad06-3a22184a2274',
|
271
|
-
remoteSdp: `{"roapMessage": {"messageType":"TURN_DISCOVERY_RESPONSE","seq":"0","headers": ["x-cisco-turn-url=${
|
273
|
+
remoteSdp: `{"roapMessage": {"messageType":"TURN_DISCOVERY_RESPONSE","seq":"0","headers": ["x-cisco-turn-url=${FAKE_TURN_URL1}","x-cisco-turn-username=${FAKE_TURN_USERNAME}","x-cisco-turn-password=${FAKE_TURN_PASSWORD}"]}}`,
|
272
274
|
},
|
273
275
|
],
|
274
276
|
};
|
@@ -290,7 +292,7 @@ describe('TurnDiscovery', () => {
|
|
290
292
|
sendRoapPromiseResolve(sendRoapResult);
|
291
293
|
|
292
294
|
await checkResult(result, 'OK', {
|
293
|
-
|
295
|
+
urls: [FAKE_TURN_URL1],
|
294
296
|
username: FAKE_TURN_USERNAME,
|
295
297
|
password: FAKE_TURN_PASSWORD,
|
296
298
|
});
|
@@ -350,16 +352,17 @@ describe('TurnDiscovery', () => {
|
|
350
352
|
{
|
351
353
|
messageType: 'TURN_DISCOVERY_RESPONSE',
|
352
354
|
headers: [
|
353
|
-
`x-cisco-turn-url=${
|
355
|
+
`x-cisco-turn-url=${FAKE_TURN_URL1}`,
|
354
356
|
`x-cisco-turn-username=${FAKE_TURN_USERNAME}`,
|
355
357
|
`x-cisco-turn-password=${FAKE_TURN_PASSWORD}`,
|
358
|
+
`x-cisco-turn-url=${FAKE_TURN_URL2}`,
|
356
359
|
],
|
357
360
|
},
|
358
361
|
'from test'
|
359
362
|
);
|
360
363
|
|
361
364
|
await checkResult(result, 'OK', {
|
362
|
-
|
365
|
+
urls: [FAKE_TURN_URL1, FAKE_TURN_URL2],
|
363
366
|
username: FAKE_TURN_USERNAME,
|
364
367
|
password: FAKE_TURN_PASSWORD,
|
365
368
|
});
|
@@ -391,6 +394,44 @@ describe('TurnDiscovery', () => {
|
|
391
394
|
'failure: TURN_DISCOVERY_RESPONSE in http response has unexpected messageType: {"seq":"0","messageType":"ERROR"}'
|
392
395
|
);
|
393
396
|
});
|
397
|
+
|
398
|
+
it('resets turnInfo each time TURN discovery is done', async () => {
|
399
|
+
const runCheck = async (td, turnUrl, expectedResult) => {
|
400
|
+
mockRoapRequest.sendRoap = sinon.fake.resolves({
|
401
|
+
mediaConnections: [
|
402
|
+
{
|
403
|
+
mediaId: '464ff97f-4bda-466a-ad06-3a22184a2274',
|
404
|
+
remoteSdp: `{"roapMessage": {"messageType":"TURN_DISCOVERY_RESPONSE","seq":"0","headers": ["x-cisco-turn-url=${turnUrl}","x-cisco-turn-username=${FAKE_TURN_USERNAME}","x-cisco-turn-password=${FAKE_TURN_PASSWORD}", "noOkInTransaction"]}}`,
|
405
|
+
},
|
406
|
+
],
|
407
|
+
});
|
408
|
+
|
409
|
+
const result = td.doTurnDiscovery(testMeeting, false);
|
410
|
+
|
411
|
+
// check that TURN_DISCOVERY_REQUEST was sent
|
412
|
+
await checkRoapMessageSent('TURN_DISCOVERY_REQUEST', 0);
|
413
|
+
|
414
|
+
// @ts-ignore
|
415
|
+
mockRoapRequest.sendRoap.resetHistory();
|
416
|
+
|
417
|
+
await checkResult(result, undefined, expectedResult);
|
418
|
+
};
|
419
|
+
|
420
|
+
const td = new TurnDiscovery(mockRoapRequest);
|
421
|
+
|
422
|
+
await runCheck(td, FAKE_TURN_URL1, {
|
423
|
+
urls: [FAKE_TURN_URL1],
|
424
|
+
username: FAKE_TURN_USERNAME,
|
425
|
+
password: FAKE_TURN_PASSWORD,
|
426
|
+
});
|
427
|
+
|
428
|
+
// call it again with different turn url, the result should not have the previous url
|
429
|
+
await runCheck(td, FAKE_TURN_URL2, {
|
430
|
+
urls: [FAKE_TURN_URL2],
|
431
|
+
username: FAKE_TURN_USERNAME,
|
432
|
+
password: FAKE_TURN_PASSWORD,
|
433
|
+
});
|
434
|
+
});
|
394
435
|
});
|
395
436
|
});
|
396
437
|
|
@@ -415,7 +456,7 @@ describe('TurnDiscovery', () => {
|
|
415
456
|
{
|
416
457
|
messageType: 'TURN_DISCOVERY_RESPONSE',
|
417
458
|
headers: [
|
418
|
-
`x-cisco-turn-url=${
|
459
|
+
`x-cisco-turn-url=${FAKE_TURN_URL1}`,
|
419
460
|
`x-cisco-turn-username=${FAKE_TURN_USERNAME}`,
|
420
461
|
`x-cisco-turn-password=${FAKE_TURN_PASSWORD}`,
|
421
462
|
],
|
@@ -428,7 +469,7 @@ describe('TurnDiscovery', () => {
|
|
428
469
|
|
429
470
|
const {turnServerInfo, turnDiscoverySkippedReason} = await result;
|
430
471
|
assert.deepEqual(turnServerInfo, {
|
431
|
-
|
472
|
+
urls: [FAKE_TURN_URL1],
|
432
473
|
username: FAKE_TURN_USERNAME,
|
433
474
|
password: FAKE_TURN_PASSWORD,
|
434
475
|
});
|
@@ -455,7 +496,7 @@ describe('TurnDiscovery', () => {
|
|
455
496
|
{
|
456
497
|
messageType: 'TURN_DISCOVERY_RESPONSE',
|
457
498
|
headers: [
|
458
|
-
`x-cisco-turn-url=${
|
499
|
+
`x-cisco-turn-url=${FAKE_TURN_URL1}`,
|
459
500
|
`x-cisco-turn-username=${FAKE_TURN_USERNAME}`,
|
460
501
|
`x-cisco-turn-password=${FAKE_TURN_PASSWORD}`,
|
461
502
|
],
|
@@ -471,7 +512,7 @@ describe('TurnDiscovery', () => {
|
|
471
512
|
const {turnServerInfo, turnDiscoverySkippedReason} = await result;
|
472
513
|
|
473
514
|
assert.deepEqual(turnServerInfo, {
|
474
|
-
|
515
|
+
urls: [FAKE_TURN_URL1],
|
475
516
|
username: FAKE_TURN_USERNAME,
|
476
517
|
password: FAKE_TURN_PASSWORD,
|
477
518
|
});
|
@@ -493,7 +534,7 @@ describe('TurnDiscovery', () => {
|
|
493
534
|
messageType: 'TURN_DISCOVERY_RESPONSE',
|
494
535
|
headers: [
|
495
536
|
'x-cisco-turn-unexpected-header=xxx',
|
496
|
-
`x-cisco-turn-url=${
|
537
|
+
`x-cisco-turn-url=${FAKE_TURN_URL1}`,
|
497
538
|
'x-cisco-some-other-header',
|
498
539
|
`x-cisco-turn-username=${FAKE_TURN_USERNAME}`,
|
499
540
|
`x-cisco-turn-password=${FAKE_TURN_PASSWORD}`,
|
@@ -510,7 +551,47 @@ describe('TurnDiscovery', () => {
|
|
510
551
|
|
511
552
|
const {turnServerInfo, turnDiscoverySkippedReason} = await result;
|
512
553
|
assert.deepEqual(turnServerInfo, {
|
513
|
-
|
554
|
+
urls: [FAKE_TURN_URL1],
|
555
|
+
username: FAKE_TURN_USERNAME,
|
556
|
+
password: FAKE_TURN_PASSWORD,
|
557
|
+
});
|
558
|
+
assert.isUndefined(turnDiscoverySkippedReason);
|
559
|
+
});
|
560
|
+
|
561
|
+
// this happens when we land on video-mesh nodes (VMN) - we will get a single empty url
|
562
|
+
it('filters out any empty TURN urls', async () => {
|
563
|
+
const td = new TurnDiscovery(mockRoapRequest);
|
564
|
+
const result = td.doTurnDiscovery(testMeeting, false);
|
565
|
+
|
566
|
+
// check that TURN_DISCOVERY_REQUEST was sent
|
567
|
+
await checkRoapMessageSent('TURN_DISCOVERY_REQUEST', 0);
|
568
|
+
// @ts-ignore
|
569
|
+
mockRoapRequest.sendRoap.resetHistory();
|
570
|
+
|
571
|
+
// simulate the response with some empty urls, normally there would be just 1, but we put more just for the sake of testing
|
572
|
+
td.handleTurnDiscoveryResponse(
|
573
|
+
{
|
574
|
+
messageType: 'TURN_DISCOVERY_RESPONSE',
|
575
|
+
headers: [
|
576
|
+
'x-cisco-turn-url=',
|
577
|
+
`x-cisco-turn-username=${FAKE_TURN_USERNAME}`,
|
578
|
+
'x-cisco-turn-url=',
|
579
|
+
`x-cisco-turn-password=${FAKE_TURN_PASSWORD}`,
|
580
|
+
'x-cisco-turn-url=non-empty-url',
|
581
|
+
'x-cisco-turn-url=',
|
582
|
+
],
|
583
|
+
},
|
584
|
+
'from test'
|
585
|
+
);
|
586
|
+
|
587
|
+
await testUtils.flushPromises();
|
588
|
+
|
589
|
+
// check that we've sent OK and still parsed the headers we care about
|
590
|
+
await checkRoapMessageSent('OK', 0);
|
591
|
+
|
592
|
+
const {turnServerInfo, turnDiscoverySkippedReason} = await result;
|
593
|
+
assert.deepEqual(turnServerInfo, {
|
594
|
+
urls: ['non-empty-url'], // empty urls should be filtered out
|
514
595
|
username: FAKE_TURN_USERNAME,
|
515
596
|
password: FAKE_TURN_PASSWORD,
|
516
597
|
});
|
@@ -575,7 +656,7 @@ describe('TurnDiscovery', () => {
|
|
575
656
|
{
|
576
657
|
messageType: 'TURN_DISCOVERY_RESPONSE',
|
577
658
|
headers: [
|
578
|
-
`x-cisco-turn-url=${
|
659
|
+
`x-cisco-turn-url=${FAKE_TURN_URL1}`,
|
579
660
|
`x-cisco-turn-username=${FAKE_TURN_USERNAME}`,
|
580
661
|
],
|
581
662
|
},
|
@@ -587,7 +668,7 @@ describe('TurnDiscovery', () => {
|
|
587
668
|
assert.isUndefined(turnServerInfo);
|
588
669
|
assert.equal(
|
589
670
|
turnDiscoverySkippedReason,
|
590
|
-
`failure: TURN_DISCOVERY_RESPONSE from test missing some headers: ["x-cisco-turn-url=${
|
671
|
+
`failure: TURN_DISCOVERY_RESPONSE from test missing some headers: ["x-cisco-turn-url=${FAKE_TURN_URL1}","x-cisco-turn-username=${FAKE_TURN_USERNAME}"]`
|
591
672
|
);
|
592
673
|
checkFailureMetricsSent();
|
593
674
|
});
|
@@ -655,7 +736,7 @@ describe('TurnDiscovery', () => {
|
|
655
736
|
{
|
656
737
|
messageType: 'TURN_DISCOVERY_RESPONSE',
|
657
738
|
headers: [
|
658
|
-
`x-cisco-turn-url=${
|
739
|
+
`x-cisco-turn-url=${FAKE_TURN_URL1}`,
|
659
740
|
`x-cisco-turn-username=${FAKE_TURN_USERNAME}`,
|
660
741
|
`x-cisco-turn-password=${FAKE_TURN_PASSWORD}`,
|
661
742
|
],
|
@@ -707,7 +788,7 @@ describe('TurnDiscovery', () => {
|
|
707
788
|
{
|
708
789
|
messageType: 'TURN_DISCOVERY_RESPONSE',
|
709
790
|
headers: [
|
710
|
-
`x-cisco-turn-url=${
|
791
|
+
`x-cisco-turn-url=${FAKE_TURN_URL1}`,
|
711
792
|
`x-cisco-turn-username=${FAKE_TURN_USERNAME}`,
|
712
793
|
`x-cisco-turn-password=${FAKE_TURN_PASSWORD}`,
|
713
794
|
],
|
@@ -816,7 +897,8 @@ describe('TurnDiscovery', () => {
|
|
816
897
|
errorType: undefined,
|
817
898
|
errorCause: undefined,
|
818
899
|
headers: [
|
819
|
-
`x-cisco-turn-url=${
|
900
|
+
`x-cisco-turn-url=${FAKE_TURN_URL1}`,
|
901
|
+
`x-cisco-turn-url=${FAKE_TURN_URL2}`,
|
820
902
|
`x-cisco-turn-username=${FAKE_TURN_USERNAME}`,
|
821
903
|
`x-cisco-turn-password=${FAKE_TURN_PASSWORD}`,
|
822
904
|
'noOkInTransaction',
|
@@ -902,7 +984,7 @@ describe('TurnDiscovery', () => {
|
|
902
984
|
|
903
985
|
assert.deepEqual(result, {
|
904
986
|
turnServerInfo: {
|
905
|
-
|
987
|
+
urls: [FAKE_TURN_URL1, FAKE_TURN_URL2],
|
906
988
|
username: FAKE_TURN_USERNAME,
|
907
989
|
password: FAKE_TURN_PASSWORD,
|
908
990
|
},
|
@@ -914,7 +996,7 @@ describe('TurnDiscovery', () => {
|
|
914
996
|
|
915
997
|
it('works as expected when httpResponse is missing some headers', async () => {
|
916
998
|
roapMessage.headers = [
|
917
|
-
`x-cisco-turn-url=${
|
999
|
+
`x-cisco-turn-url=${FAKE_TURN_URL1}`, // missing headers for username and password
|
918
1000
|
];
|
919
1001
|
|
920
1002
|
const httpResponse = {mediaConnections: [{remoteSdp: JSON.stringify({roapMessage})}]};
|
@@ -930,7 +1012,7 @@ describe('TurnDiscovery', () => {
|
|
930
1012
|
assert.deepEqual(result, {
|
931
1013
|
turnServerInfo: undefined,
|
932
1014
|
turnDiscoverySkippedReason:
|
933
|
-
'failure: TURN_DISCOVERY_RESPONSE in http response missing some headers: ["x-cisco-turn-url=turns:
|
1015
|
+
'failure: TURN_DISCOVERY_RESPONSE in http response missing some headers: ["x-cisco-turn-url=turns:fakeTurnServer1.com:443?transport=tcp"]',
|
934
1016
|
});
|
935
1017
|
assert.calledOnceWithExactly(handleTurnDiscoveryResponseSpy, roapMessage, 'in http response');
|
936
1018
|
|
@@ -939,7 +1021,7 @@ describe('TurnDiscovery', () => {
|
|
939
1021
|
|
940
1022
|
it('sends OK when required', async () => {
|
941
1023
|
roapMessage.headers = [
|
942
|
-
`x-cisco-turn-url=${
|
1024
|
+
`x-cisco-turn-url=${FAKE_TURN_URL1}`,
|
943
1025
|
`x-cisco-turn-username=${FAKE_TURN_USERNAME}`,
|
944
1026
|
`x-cisco-turn-password=${FAKE_TURN_PASSWORD}`,
|
945
1027
|
// noOkInTransaction is missing
|
@@ -951,7 +1033,7 @@ describe('TurnDiscovery', () => {
|
|
951
1033
|
|
952
1034
|
assert.deepEqual(result, {
|
953
1035
|
turnServerInfo: {
|
954
|
-
|
1036
|
+
urls: [FAKE_TURN_URL1],
|
955
1037
|
username: FAKE_TURN_USERNAME,
|
956
1038
|
password: FAKE_TURN_PASSWORD,
|
957
1039
|
},
|
@@ -982,7 +1064,7 @@ describe('TurnDiscovery', () => {
|
|
982
1064
|
mediaConnections: [
|
983
1065
|
{
|
984
1066
|
mediaId: '464ff97f-4bda-466a-ad06-3a22184a2274',
|
985
|
-
remoteSdp: `{"roapMessage": {"messageType":"TURN_DISCOVERY_RESPONSE","seq":"0","headers": ["x-cisco-turn-url=${
|
1067
|
+
remoteSdp: `{"roapMessage": {"messageType":"TURN_DISCOVERY_RESPONSE","seq":"0","headers": ["x-cisco-turn-url=${FAKE_TURN_URL1}","x-cisco-turn-username=${FAKE_TURN_USERNAME}","x-cisco-turn-password=${FAKE_TURN_PASSWORD}", "noOkInTransaction"]}}`,
|
986
1068
|
},
|
987
1069
|
],
|
988
1070
|
});
|
@@ -316,6 +316,11 @@ describe('plugin-meetings', () => {
|
|
316
316
|
it('sets PS state true', () => {
|
317
317
|
webinar.updatePracticeSessionStatus({enabled: false});
|
318
318
|
|
319
|
+
assert.equal(webinar.practiceSessionEnabled, false);
|
320
|
+
});
|
321
|
+
it('sets PS state when payload is undefined', () => {
|
322
|
+
webinar.updatePracticeSessionStatus(undefined);
|
323
|
+
|
319
324
|
assert.equal(webinar.practiceSessionEnabled, false);
|
320
325
|
});
|
321
326
|
});
|
@@ -1,42 +0,0 @@
|
|
1
|
-
import { ANNOTATION_POLICY } from './constants';
|
2
|
-
/**
|
3
|
-
* Type for an StrokeData Object
|
4
|
-
*/
|
5
|
-
type StrokeData = {
|
6
|
-
deviceId: string;
|
7
|
-
toUserId: string;
|
8
|
-
requesterId: string;
|
9
|
-
content: string;
|
10
|
-
shareInstanceId: string;
|
11
|
-
encryptionKeyUrl: string;
|
12
|
-
version: string;
|
13
|
-
};
|
14
|
-
type RequestData = {
|
15
|
-
toUserId: string;
|
16
|
-
toDeviceUrl: string;
|
17
|
-
shareInstanceId: string;
|
18
|
-
};
|
19
|
-
type CommandRequestBody = {
|
20
|
-
actionType: string;
|
21
|
-
resourceType: string;
|
22
|
-
shareInstanceId: string;
|
23
|
-
receivers?: any[];
|
24
|
-
};
|
25
|
-
/**
|
26
|
-
* Type for an annotation Object include annotation version and privilege
|
27
|
-
*/
|
28
|
-
type AnnotationInfo = {
|
29
|
-
version: string;
|
30
|
-
policy: ANNOTATION_POLICY;
|
31
|
-
};
|
32
|
-
interface IAnnotationChannel {
|
33
|
-
acceptRequest: (approval: any) => undefined | Promise<void>;
|
34
|
-
declineRequest: (approval: any) => undefined | Promise<void>;
|
35
|
-
closeAnnotation: (requestData: RequestData) => undefined | Promise<void>;
|
36
|
-
approveAnnotation: (requestData: RequestData) => undefined | Promise<void>;
|
37
|
-
cancelApproveAnnotation: (requestData: RequestData, approval: any) => undefined | Promise<void>;
|
38
|
-
sendStrokeData: (strokeData: StrokeData) => void;
|
39
|
-
approvalUrlUpdate: (approvalUrl: string) => void;
|
40
|
-
locusUrlUpdate: (locusUrl: string) => void;
|
41
|
-
}
|
42
|
-
export type { StrokeData, RequestData, CommandRequestBody, IAnnotationChannel, AnnotationInfo };
|
@@ -1,31 +0,0 @@
|
|
1
|
-
export declare const EVENT_TRIGGERS: {
|
2
|
-
ANNOTATION_STROKE_DATA: string;
|
3
|
-
ANNOTATION_COMMAND: string;
|
4
|
-
};
|
5
|
-
export declare const ANNOTATION_RESOURCE_TYPE = "AnnotationOnShare";
|
6
|
-
export declare const ANNOTATION_RELAY_TYPES: {
|
7
|
-
ANNOTATION_CLIENT: string;
|
8
|
-
};
|
9
|
-
export declare const ANNOTATION_STATUS: {
|
10
|
-
NO_ANNOTATION: string;
|
11
|
-
RUNNING_ANNOTATION: string;
|
12
|
-
};
|
13
|
-
export declare enum ANNOTATION_POLICY {
|
14
|
-
ANYONE_CAN_ANNOTATE = "AnyoneCanAnnotate",
|
15
|
-
APPROVAL = "Approval",
|
16
|
-
ANNOTATION_NOT_ALLOWED = "AnnotationNotAllowed"
|
17
|
-
}
|
18
|
-
export declare const ANNOTATION_REQUEST_TYPE: {
|
19
|
-
ANNOTATION_MESSAGE: string;
|
20
|
-
};
|
21
|
-
export declare const enum ANNOTATION_ACTION_TYPE {
|
22
|
-
REQUESTED = "REQUESTED",
|
23
|
-
ACCEPTED = "ACCEPTED",
|
24
|
-
DECLINED = "DECLINED",
|
25
|
-
OFFERED = "OFFERED",
|
26
|
-
CANCELED = "CANCELED",
|
27
|
-
EXPIRED = "EXPIRED",
|
28
|
-
REVOKED = "REVOKED",
|
29
|
-
CLOSED = "CLOSED"
|
30
|
-
}
|
31
|
-
export declare const ANNOTATION = "annotation";
|
@@ -1,117 +0,0 @@
|
|
1
|
-
import { WebexPlugin } from '@webex/webex-core';
|
2
|
-
import { StrokeData, RequestData, IAnnotationChannel } from './annotation.types';
|
3
|
-
/**
|
4
|
-
* @description Annotation to handle LLM and Mercury message and locus API
|
5
|
-
* @class
|
6
|
-
*/
|
7
|
-
declare class AnnotationChannel extends WebexPlugin implements IAnnotationChannel {
|
8
|
-
namespace: string;
|
9
|
-
private seqNum;
|
10
|
-
hasSubscribedToEvents: boolean;
|
11
|
-
approvalUrl: string;
|
12
|
-
locusUrl: string;
|
13
|
-
deviceUrl: string;
|
14
|
-
/**
|
15
|
-
* Initializes annotation module
|
16
|
-
*/
|
17
|
-
constructor(...args: any[]);
|
18
|
-
/**
|
19
|
-
* Process Stroke Data
|
20
|
-
* @param {object} data
|
21
|
-
* @returns {void}
|
22
|
-
*/
|
23
|
-
private processStrokeMessage;
|
24
|
-
/** bind all events from mercury
|
25
|
-
* @param {Object} e
|
26
|
-
* @returns {undefined}
|
27
|
-
*/
|
28
|
-
private eventCommandProcessor;
|
29
|
-
/** bind all events from llm
|
30
|
-
* @param {Object} e
|
31
|
-
* @returns {undefined}
|
32
|
-
*/
|
33
|
-
private eventDataProcessor;
|
34
|
-
/**
|
35
|
-
* Listen to websocket messages
|
36
|
-
* @returns {undefined}
|
37
|
-
*/
|
38
|
-
private listenToEvents;
|
39
|
-
/**
|
40
|
-
* set locusUrl
|
41
|
-
* @param {string} locusUrl
|
42
|
-
* @returns {void}
|
43
|
-
*/
|
44
|
-
locusUrlUpdate(locusUrl: string): void;
|
45
|
-
/**
|
46
|
-
* set approved url
|
47
|
-
* @param {string} approvalUrl
|
48
|
-
* @returns {void}
|
49
|
-
*/
|
50
|
-
approvalUrlUpdate(approvalUrl: string): void;
|
51
|
-
/**
|
52
|
-
* accept request
|
53
|
-
* @param {object} approval
|
54
|
-
* @returns {Promise}
|
55
|
-
*/
|
56
|
-
acceptRequest(approval: any): any;
|
57
|
-
/**
|
58
|
-
* presenter declined request annotation
|
59
|
-
* @param {approval} approval
|
60
|
-
* @returns {Promise}
|
61
|
-
*/
|
62
|
-
declineRequest(approval: any): any;
|
63
|
-
/**
|
64
|
-
* request approved annotation
|
65
|
-
* @param {RequestData} requestData
|
66
|
-
* @returns {Promise}
|
67
|
-
*/
|
68
|
-
approveAnnotation(requestData: RequestData): Promise<void>;
|
69
|
-
/**
|
70
|
-
* cancel approved annotation
|
71
|
-
* @param {object} requestData
|
72
|
-
* @param {object} approval
|
73
|
-
* @returns {Promise}
|
74
|
-
*/
|
75
|
-
cancelApproveAnnotation(requestData: RequestData, approval: any): any;
|
76
|
-
/**
|
77
|
-
* close annotation
|
78
|
-
* @param {object} requestData
|
79
|
-
* @returns {Promise}
|
80
|
-
*/
|
81
|
-
closeAnnotation(requestData: RequestData): Promise<void>;
|
82
|
-
/**
|
83
|
-
* send annotation command
|
84
|
-
* @param {ANNOTATION_ACTION_TYPE} actionType
|
85
|
-
* @param {RequestData} requestData
|
86
|
-
* @returns {Promise}
|
87
|
-
*/
|
88
|
-
private sendAnnotationAction;
|
89
|
-
/**
|
90
|
-
* decrypt data
|
91
|
-
* @param {string} encryptionKeyUrl
|
92
|
-
* @param {string} content encrypted content
|
93
|
-
* @returns {string} decrypted content
|
94
|
-
*/
|
95
|
-
private decryptContent;
|
96
|
-
/**
|
97
|
-
* encrypt data
|
98
|
-
* @param {string} encryptionKeyUrl
|
99
|
-
* @param {string} content original content
|
100
|
-
* @returns {string} encrypted content
|
101
|
-
*/
|
102
|
-
private encryptContent;
|
103
|
-
/**
|
104
|
-
* Sends stroke data to presenter
|
105
|
-
* @param {StrokeData} strokeData
|
106
|
-
* @returns {void}
|
107
|
-
*/
|
108
|
-
sendStrokeData: (strokeData: StrokeData) => void;
|
109
|
-
/**
|
110
|
-
* private encrypted the strokes data
|
111
|
-
* @param {string} encryptedContent
|
112
|
-
* @param {StrokeData} strokeData
|
113
|
-
* @returns {void}
|
114
|
-
*/
|
115
|
-
private publishEncrypted;
|
116
|
-
}
|
117
|
-
export default AnnotationChannel;
|
@@ -1,15 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* Extended Error object to signify breakout related errors
|
3
|
-
*/
|
4
|
-
export default class BreakoutEditLockedError extends Error {
|
5
|
-
code: any;
|
6
|
-
error: any;
|
7
|
-
sdkMessage: any;
|
8
|
-
/**
|
9
|
-
*
|
10
|
-
* @constructor
|
11
|
-
* @param {String} [message]
|
12
|
-
* @param {Object} [error]
|
13
|
-
*/
|
14
|
-
constructor(message?: string, error?: any);
|
15
|
-
}
|
@@ -1,8 +0,0 @@
|
|
1
|
-
import { ClientEvent } from '@webex/internal-plugin-metrics';
|
2
|
-
declare const breakoutEvent: {
|
3
|
-
onBreakoutMoveRequest: (eventInfo: any, submitClientEvent: any) => void;
|
4
|
-
onBreakoutMoveResponse: (eventInfo: any, submitClientEvent: any) => void;
|
5
|
-
onBreakoutJoinResponse: (eventInfo: any, submitClientEvent: any) => void;
|
6
|
-
postMoveCallAnalyzer: (event: ClientEvent['name'], eventInfo: any, submitClientEvent: any) => void;
|
7
|
-
};
|
8
|
-
export default breakoutEvent;
|
@@ -1,22 +0,0 @@
|
|
1
|
-
import { StatelessWebexPlugin } from '@webex/webex-core';
|
2
|
-
/**
|
3
|
-
* @class BreakoutRequest
|
4
|
-
*/
|
5
|
-
export default class BreakoutRequest extends StatelessWebexPlugin {
|
6
|
-
/**
|
7
|
-
* Broadcast message to all breakout session's participants
|
8
|
-
* @param {String} url
|
9
|
-
* @param {String} message
|
10
|
-
* @param {Object} options
|
11
|
-
* @param {string} groupId
|
12
|
-
* @param {string} sessionId
|
13
|
-
* @returns {Promise}
|
14
|
-
*/
|
15
|
-
broadcast({ url, message, options, groupId, sessionId, }: {
|
16
|
-
url: string;
|
17
|
-
message: string;
|
18
|
-
options?: object;
|
19
|
-
groupId: string;
|
20
|
-
sessionId?: string;
|
21
|
-
}): any;
|
22
|
-
}
|
@@ -1,15 +0,0 @@
|
|
1
|
-
export declare const getBroadcastRoles: (options: any) => string[];
|
2
|
-
/**
|
3
|
-
* Deals with all kinds of errors of breakout service
|
4
|
-
* @param {object} error // one of the breakout service error
|
5
|
-
* @param {string} position // position of the error occur
|
6
|
-
* @returns {object}
|
7
|
-
*/
|
8
|
-
export declare const boServiceErrorHandler: (error: any, position: string) => any;
|
9
|
-
/**
|
10
|
-
*
|
11
|
-
* @param {object} breakout
|
12
|
-
* @param {string} newSessionType
|
13
|
-
* @returns {boolean}
|
14
|
-
*/
|
15
|
-
export declare const isSessionTypeChangedFromSessionToMain: (breakout: any, newSessionType: any) => boolean;
|
@@ -1,9 +0,0 @@
|
|
1
|
-
/// <reference types="lodash" />
|
2
|
-
declare const _default: ((agent?: any) => {
|
3
|
-
getOSName: () => any;
|
4
|
-
getOSVersion: () => any;
|
5
|
-
getBrowserName: () => any;
|
6
|
-
getBrowserVersion: () => any;
|
7
|
-
isBrowser: (name: any) => boolean;
|
8
|
-
}) & import("lodash").MemoizedFunction;
|
9
|
-
export default _default;
|