@webex/plugin-meetings 3.8.0-next.16 → 3.8.0-next.18
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/breakouts/breakout.js +1 -1
- package/dist/breakouts/index.js +1 -1
- package/dist/interpretation/index.js +1 -1
- package/dist/interpretation/siLanguage.js +1 -1
- package/dist/locus-info/controlsUtils.js +1 -1
- package/dist/locus-info/controlsUtils.js.map +1 -1
- package/dist/meeting/index.js +5 -3
- package/dist/meeting/index.js.map +1 -1
- package/dist/webinar/index.js +1 -1
- package/package.json +3 -3
- package/src/locus-info/controlsUtils.ts +2 -2
- package/src/meeting/index.ts +5 -1
- package/test/unit/spec/locus-info/controlsUtils.js +8 -0
- package/test/unit/spec/meeting/index.js +25 -0
package/dist/webinar/index.js
CHANGED
package/package.json
CHANGED
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
"@webex/eslint-config-legacy": "0.0.0",
|
|
44
44
|
"@webex/jest-config-legacy": "0.0.0",
|
|
45
45
|
"@webex/legacy-tools": "0.0.0",
|
|
46
|
-
"@webex/plugin-meetings": "3.8.0-next.
|
|
46
|
+
"@webex/plugin-meetings": "3.8.0-next.18",
|
|
47
47
|
"@webex/plugin-rooms": "3.8.0-next.9",
|
|
48
48
|
"@webex/test-helper-chai": "3.8.0-next.8",
|
|
49
49
|
"@webex/test-helper-mocha": "3.8.0-next.8",
|
|
@@ -71,7 +71,7 @@
|
|
|
71
71
|
"@webex/internal-plugin-metrics": "3.8.0-next.8",
|
|
72
72
|
"@webex/internal-plugin-support": "3.8.0-next.9",
|
|
73
73
|
"@webex/internal-plugin-user": "3.8.0-next.8",
|
|
74
|
-
"@webex/internal-plugin-voicea": "3.8.0-next.
|
|
74
|
+
"@webex/internal-plugin-voicea": "3.8.0-next.18",
|
|
75
75
|
"@webex/media-helpers": "3.8.0-next.8",
|
|
76
76
|
"@webex/plugin-people": "3.8.0-next.9",
|
|
77
77
|
"@webex/plugin-rooms": "3.8.0-next.9",
|
|
@@ -92,5 +92,5 @@
|
|
|
92
92
|
"//": [
|
|
93
93
|
"TODO: upgrade jwt-decode when moving to node 18"
|
|
94
94
|
],
|
|
95
|
-
"version": "3.8.0-next.
|
|
95
|
+
"version": "3.8.0-next.18"
|
|
96
96
|
}
|
|
@@ -206,8 +206,8 @@ ControlsUtils.getControls = (oldControls: any, newControls: any) => {
|
|
|
206
206
|
),
|
|
207
207
|
|
|
208
208
|
hasPracticeSessionEnabledChanged: !isEqual(
|
|
209
|
-
previous?.practiceSession?.enabled,
|
|
210
|
-
current?.practiceSession?.enabled
|
|
209
|
+
!!previous?.practiceSession?.enabled,
|
|
210
|
+
!!current?.practiceSession?.enabled
|
|
211
211
|
),
|
|
212
212
|
|
|
213
213
|
hasStageViewChanged: !isEqual(previous?.videoLayout, current?.videoLayout),
|
package/src/meeting/index.ts
CHANGED
|
@@ -8726,6 +8726,9 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
8726
8726
|
LoggerProxy.logger.log(
|
|
8727
8727
|
`Meeting:index#handleShareVideoStreamMuteStateChange --> Share video stream mute state changed to muted ${muted}`
|
|
8728
8728
|
);
|
|
8729
|
+
|
|
8730
|
+
const shareVideoStreamSettings = this.mediaProperties?.shareVideoStream?.getSettings();
|
|
8731
|
+
|
|
8729
8732
|
Metrics.sendBehavioralMetric(BEHAVIORAL_METRICS.MEETING_SHARE_VIDEO_MUTE_STATE_CHANGE, {
|
|
8730
8733
|
correlationId: this.correlationId,
|
|
8731
8734
|
muted,
|
|
@@ -8734,8 +8737,9 @@ export default class Meeting extends StatelessWebexPlugin {
|
|
|
8734
8737
|
// SDK to TypeScript 5, which may affect other packages, use bracket notation for now, since
|
|
8735
8738
|
// all we're doing here is adding metrics.
|
|
8736
8739
|
// eslint-disable-next-line dot-notation
|
|
8737
|
-
displaySurface:
|
|
8740
|
+
displaySurface: shareVideoStreamSettings?.['displaySurface'],
|
|
8738
8741
|
isMultistream: this.isMultistream,
|
|
8742
|
+
frameRate: shareVideoStreamSettings?.frameRate,
|
|
8739
8743
|
});
|
|
8740
8744
|
};
|
|
8741
8745
|
|
|
@@ -269,6 +269,14 @@ describe('plugin-meetings', () => {
|
|
|
269
269
|
assert.equal(updates.hasPracticeSessionEnabledChanged, true);
|
|
270
270
|
});
|
|
271
271
|
|
|
272
|
+
it('returns hasPracticeSessionEnabledChanged = false when enabled is false and previous state is false', () => {
|
|
273
|
+
const newControls = {practiceSession: {enabled: false}};
|
|
274
|
+
|
|
275
|
+
const {updates} = ControlsUtils.getControls(defaultControls, newControls);
|
|
276
|
+
|
|
277
|
+
assert.equal(updates.hasPracticeSessionEnabledChanged, false);
|
|
278
|
+
});
|
|
279
|
+
|
|
272
280
|
it('returns hasEntryExitToneChanged = true when mode changed', () => {
|
|
273
281
|
const newControls = {
|
|
274
282
|
entryExitTone: {
|
|
@@ -12682,6 +12682,31 @@ describe('plugin-meetings', () => {
|
|
|
12682
12682
|
});
|
|
12683
12683
|
});
|
|
12684
12684
|
});
|
|
12685
|
+
|
|
12686
|
+
describe('handleShareVideoStreamMuteStateChange', () => {
|
|
12687
|
+
it('should emit MEETING_SHARE_VIDEO_MUTE_STATE_CHANGE event with correct fields', () => {
|
|
12688
|
+
meeting.isMultistream = true;
|
|
12689
|
+
meeting.statsAnalyzer = {shareVideoEncoderImplementation: 'OpenH264'};
|
|
12690
|
+
meeting.mediaProperties.shareVideoStream = {
|
|
12691
|
+
getSettings: sinon.stub().returns({displaySurface: 'monitor', frameRate: 30}),
|
|
12692
|
+
};
|
|
12693
|
+
|
|
12694
|
+
meeting.handleShareVideoStreamMuteStateChange(true);
|
|
12695
|
+
|
|
12696
|
+
assert.calledOnceWithExactly(
|
|
12697
|
+
Metrics.sendBehavioralMetric,
|
|
12698
|
+
BEHAVIORAL_METRICS.MEETING_SHARE_VIDEO_MUTE_STATE_CHANGE,
|
|
12699
|
+
{
|
|
12700
|
+
correlationId: meeting.correlationId,
|
|
12701
|
+
muted: true,
|
|
12702
|
+
encoderImplementation: 'OpenH264',
|
|
12703
|
+
displaySurface: 'monitor',
|
|
12704
|
+
isMultistream: true,
|
|
12705
|
+
frameRate: 30,
|
|
12706
|
+
}
|
|
12707
|
+
);
|
|
12708
|
+
});
|
|
12709
|
+
});
|
|
12685
12710
|
});
|
|
12686
12711
|
|
|
12687
12712
|
describe('#startKeepAlive', () => {
|