@webex/plugin-meetings 3.0.0-beta.145 → 3.0.0-beta.147
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/dist/annotation/annotation.types.js.map +1 -1
- package/dist/annotation/constants.js +6 -5
- package/dist/annotation/constants.js.map +1 -1
- package/dist/breakouts/breakout.js +1 -1
- package/dist/breakouts/index.js +1 -1
- package/dist/common/errors/webex-errors.js +3 -2
- package/dist/common/errors/webex-errors.js.map +1 -1
- package/dist/config.js +1 -7
- package/dist/config.js.map +1 -1
- package/dist/constants.js +7 -15
- package/dist/constants.js.map +1 -1
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -1
- package/dist/media/index.js +5 -56
- package/dist/media/index.js.map +1 -1
- package/dist/media/properties.js +15 -93
- package/dist/media/properties.js.map +1 -1
- package/dist/meeting/index.js +1106 -1876
- package/dist/meeting/index.js.map +1 -1
- package/dist/meeting/muteState.js +88 -184
- package/dist/meeting/muteState.js.map +1 -1
- package/dist/meeting/request.js +2 -2
- package/dist/meeting/request.js.map +1 -1
- package/dist/meeting/util.js +1 -23
- package/dist/meeting/util.js.map +1 -1
- package/dist/meetings/index.js +1 -2
- package/dist/meetings/index.js.map +1 -1
- package/dist/reconnection-manager/index.js +153 -134
- package/dist/reconnection-manager/index.js.map +1 -1
- package/dist/roap/index.js +8 -7
- package/dist/roap/index.js.map +1 -1
- package/dist/types/annotation/annotation.types.d.ts +9 -1
- package/dist/types/annotation/constants.d.ts +5 -5
- package/dist/types/common/errors/webex-errors.d.ts +1 -1
- package/dist/types/config.d.ts +0 -6
- package/dist/types/constants.d.ts +1 -18
- package/dist/types/index.d.ts +1 -1
- package/dist/types/media/properties.d.ts +16 -38
- package/dist/types/meeting/index.d.ts +92 -352
- package/dist/types/meeting/muteState.d.ts +36 -38
- package/dist/types/meeting/request.d.ts +2 -1
- package/dist/types/meeting/util.d.ts +2 -4
- package/package.json +19 -19
- package/src/annotation/annotation.types.ts +10 -1
- package/src/annotation/constants.ts +5 -5
- package/src/common/errors/webex-errors.ts +6 -2
- package/src/config.ts +0 -6
- package/src/constants.ts +1 -14
- package/src/index.ts +1 -0
- package/src/media/index.ts +10 -53
- package/src/media/properties.ts +32 -92
- package/src/meeting/index.ts +532 -1564
- package/src/meeting/muteState.ts +87 -178
- package/src/meeting/request.ts +4 -3
- package/src/meeting/util.ts +3 -24
- package/src/meetings/index.ts +0 -1
- package/src/reconnection-manager/index.ts +4 -9
- package/src/roap/index.ts +13 -14
- package/test/integration/spec/converged-space-meetings.js +59 -3
- package/test/integration/spec/journey.js +330 -256
- package/test/integration/spec/space-meeting.js +75 -3
- package/test/unit/spec/meeting/index.js +776 -1344
- package/test/unit/spec/meeting/muteState.js +238 -394
- package/test/unit/spec/meeting/request.js +4 -4
- package/test/unit/spec/meeting/utils.js +2 -9
- package/test/unit/spec/multistream/receiveSlot.ts +1 -1
- package/test/unit/spec/roap/index.ts +2 -2
- package/test/utils/integrationTestUtils.js +5 -23
|
@@ -3,6 +3,7 @@ import {assert} from '@webex/test-helper-chai';
|
|
|
3
3
|
import {skipInNode, jenkinsOnly} from '@webex/test-helper-mocha';
|
|
4
4
|
import {patterns} from '@webex/common';
|
|
5
5
|
import MeetingInfoUtil from '@webex/plugin-meetings/dist/meeting-info/utilv2';
|
|
6
|
+
import {createCameraTrack, createMicrophoneTrack} from '@webex/plugin-meetings';
|
|
6
7
|
|
|
7
8
|
import CMR from '../../utils/cmr';
|
|
8
9
|
import testUtils from '../../utils/testUtils';
|
|
@@ -14,6 +15,21 @@ const webexTestUsers = require('../../utils/webex-test-users');
|
|
|
14
15
|
|
|
15
16
|
let userSet, alice, bob, chris, guest;
|
|
16
17
|
|
|
18
|
+
const localTracks = {
|
|
19
|
+
alice: {
|
|
20
|
+
microphone: undefined,
|
|
21
|
+
camera: undefined,
|
|
22
|
+
},
|
|
23
|
+
bob: {
|
|
24
|
+
microphone: undefined,
|
|
25
|
+
camera: undefined,
|
|
26
|
+
},
|
|
27
|
+
guest: {
|
|
28
|
+
microphone: undefined,
|
|
29
|
+
camera: undefined,
|
|
30
|
+
},
|
|
31
|
+
};
|
|
32
|
+
|
|
17
33
|
skipInNode(describe)('plugin-meetings', () => {
|
|
18
34
|
describe('space-meeting', () => {
|
|
19
35
|
let space = null;
|
|
@@ -136,8 +152,17 @@ skipInNode(describe)('plugin-meetings', () => {
|
|
|
136
152
|
.then(() => testUtils.waitForStateChange(bob.meeting, 'JOINED'))
|
|
137
153
|
.then(() => testUtils.waitForStateChange(chris.meeting, 'JOINED')));
|
|
138
154
|
|
|
155
|
+
it('Bob and Alice create local microphone and camera tracks', async () => {
|
|
156
|
+
localTracks.alice.microphone = await createMicrophoneTrack();
|
|
157
|
+
localTracks.alice.camera = await createCameraTrack();
|
|
158
|
+
|
|
159
|
+
localTracks.bob.microphone = await createMicrophoneTrack();
|
|
160
|
+
localTracks.bob.camera = await createCameraTrack();
|
|
161
|
+
});
|
|
162
|
+
|
|
139
163
|
it('Bob and Alice addsMedia', () =>
|
|
140
|
-
integrationTestUtils.addMedia(bob
|
|
164
|
+
integrationTestUtils.addMedia(bob, {microphone: localTracks.bob.microphone, camera: localTracks.bob.camera})
|
|
165
|
+
.then(() => integrationTestUtils.addMedia(alice, {microphone: localTracks.alice.microphone, camera: localTracks.alice.camera})));
|
|
141
166
|
|
|
142
167
|
it('Bob has flowing streams on reconnect', () => {
|
|
143
168
|
const retrieveStats = () => {
|
|
@@ -188,7 +213,11 @@ skipInNode(describe)('plugin-meetings', () => {
|
|
|
188
213
|
])
|
|
189
214
|
)
|
|
190
215
|
.then(() => testUtils.waitForStateChange(guest.meeting, 'JOINED'))
|
|
191
|
-
.then(() =>
|
|
216
|
+
.then(async () => {
|
|
217
|
+
localTracks.guest.microphone = await createMicrophoneTrack();
|
|
218
|
+
localTracks.guest.camera = await createCameraTrack();
|
|
219
|
+
})
|
|
220
|
+
.then(() => integrationTestUtils.addMedia(guest, {microphone: localTracks.guest.microphone, camera: localTracks.guest.camera}))
|
|
192
221
|
.catch((e) => {
|
|
193
222
|
console.error('Error chris joining the meeting ', e);
|
|
194
223
|
throw e;
|
|
@@ -221,6 +250,35 @@ skipInNode(describe)('plugin-meetings', () => {
|
|
|
221
250
|
.then(() => chris.meeting.leave())
|
|
222
251
|
.then(() => testUtils.waitUntil(4000)));
|
|
223
252
|
|
|
253
|
+
it('alice, bob and chris stop all local tracks', () => {
|
|
254
|
+
if (localTracks.alice.microphone) {
|
|
255
|
+
localTracks.alice.microphone.stop();
|
|
256
|
+
localTracks.alice.microphone = undefined;
|
|
257
|
+
}
|
|
258
|
+
if (localTracks.alice.camera) {
|
|
259
|
+
localTracks.alice.camera.stop();
|
|
260
|
+
localTracks.alice.camera = undefined;
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
if (localTracks.bob.microphone) {
|
|
264
|
+
localTracks.bob.microphone.stop();
|
|
265
|
+
localTracks.bob.microphone = undefined;
|
|
266
|
+
}
|
|
267
|
+
if (localTracks.bob.camera) {
|
|
268
|
+
localTracks.bob.camera.stop();
|
|
269
|
+
localTracks.bob.camera = undefined;
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
if (localTracks.guest.microphone) {
|
|
273
|
+
localTracks.guest.microphone.stop();
|
|
274
|
+
localTracks.guest.microphone = undefined;
|
|
275
|
+
}
|
|
276
|
+
if (localTracks.guest.camera) {
|
|
277
|
+
localTracks.guest.camera.stop();
|
|
278
|
+
localTracks.guest.camera = undefined;
|
|
279
|
+
}
|
|
280
|
+
});
|
|
281
|
+
|
|
224
282
|
it('check for meeting cleanup', () => {
|
|
225
283
|
console.log('Alice ', alice.webex.meetings.getAllMeetings());
|
|
226
284
|
console.log('Bob ', bob.webex.meetings.getAllMeetings());
|
|
@@ -415,7 +473,11 @@ skipInNode(describe)('plugin-meetings', () => {
|
|
|
415
473
|
}),
|
|
416
474
|
])
|
|
417
475
|
.then(() => testUtils.waitForStateChange(guest.meeting, 'JOINED'))
|
|
418
|
-
.then(() =>
|
|
476
|
+
.then(async () => {
|
|
477
|
+
localTracks.guest.microphone = await createMicrophoneTrack();
|
|
478
|
+
localTracks.guest.camera = await createCameraTrack();
|
|
479
|
+
})
|
|
480
|
+
.then(() => integrationTestUtils.addMedia(guest, {microphone: localTracks.guest.microphone, camera: localTracks.guest.camera}));
|
|
419
481
|
})
|
|
420
482
|
.catch((e) => {
|
|
421
483
|
console.error('Error guest joining the meeting ', e);
|
|
@@ -452,6 +514,16 @@ skipInNode(describe)('plugin-meetings', () => {
|
|
|
452
514
|
testUtils.waitForCallEnded(bob, alice.sipAddress),
|
|
453
515
|
testUtils.waitForCallEnded(chris, alice.sipAddress),
|
|
454
516
|
])
|
|
517
|
+
.then(() => {
|
|
518
|
+
if (localTracks.guest.microphone) {
|
|
519
|
+
localTracks.guest.microphone.stop();
|
|
520
|
+
localTracks.guest.microphone = undefined;
|
|
521
|
+
}
|
|
522
|
+
if (localTracks.guest.camera) {
|
|
523
|
+
localTracks.guest.camera.stop();
|
|
524
|
+
localTracks.guest.camera = undefined;
|
|
525
|
+
}
|
|
526
|
+
})
|
|
455
527
|
));
|
|
456
528
|
});
|
|
457
529
|
});
|