@webex/plugin-meetings 3.1.0-next.10 → 3.1.0-next.12
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/constants.js +2 -1
- package/dist/constants.js.map +1 -1
- package/dist/interpretation/index.js +1 -1
- package/dist/interpretation/siLanguage.js +1 -1
- package/dist/meetings/index.js +5 -4
- package/dist/meetings/index.js.map +1 -1
- package/dist/types/constants.d.ts +1 -0
- package/dist/webinar/index.js +1 -1
- package/package.json +21 -21
- package/src/constants.ts +1 -1
- package/src/meetings/index.ts +6 -1
- package/test/unit/spec/meetings/index.js +26 -2
package/src/constants.ts
CHANGED
|
@@ -100,7 +100,7 @@ export const _JOINED_ = 'JOINED';
|
|
|
100
100
|
export const _LOCUS_ID_ = 'LOCUS_ID';
|
|
101
101
|
export const _LEFT_ = 'LEFT';
|
|
102
102
|
export const _MOVED_ = 'MOVED';
|
|
103
|
-
|
|
103
|
+
export const _ON_HOLD_LOBBY_ = 'ON_HOLD_LOBBY';
|
|
104
104
|
export const _MEETING_LINK_ = 'MEETING_LINK';
|
|
105
105
|
export const _MEETING_UUID_ = 'MEETING_UUID';
|
|
106
106
|
export const _MEETING_ = 'MEETING';
|
package/src/meetings/index.ts
CHANGED
|
@@ -45,6 +45,8 @@ import {
|
|
|
45
45
|
MEETINGNUMBER,
|
|
46
46
|
_JOINED_,
|
|
47
47
|
_MOVED_,
|
|
48
|
+
_ON_HOLD_LOBBY_,
|
|
49
|
+
_WAIT_,
|
|
48
50
|
} from '../constants';
|
|
49
51
|
import BEHAVIORAL_METRICS from '../metrics/constants';
|
|
50
52
|
import MeetingInfo from '../meeting-info';
|
|
@@ -340,6 +342,9 @@ export default class Meetings extends WebexPlugin {
|
|
|
340
342
|
if (newLocus) {
|
|
341
343
|
const isNewLocusAsBreakout = MeetingsUtil.isBreakoutLocusDTO(newLocus);
|
|
342
344
|
const isSelfMoved = newLocus?.self?.state === _LEFT_ && newLocus?.self?.reason === _MOVED_;
|
|
345
|
+
const isSelfMovedToLobby =
|
|
346
|
+
newLocus?.self?.devices[0]?.intent?.reason === _ON_HOLD_LOBBY_ &&
|
|
347
|
+
newLocus?.self?.devices[0]?.intent?.type === _WAIT_;
|
|
343
348
|
if (!meeting) {
|
|
344
349
|
if (isNewLocusAsBreakout) {
|
|
345
350
|
LoggerProxy.logger.log(
|
|
@@ -352,7 +357,7 @@ export default class Meetings extends WebexPlugin {
|
|
|
352
357
|
return this.isNeedHandleMainLocus(meeting, newLocus);
|
|
353
358
|
}
|
|
354
359
|
if (!isNewLocusAsBreakout) {
|
|
355
|
-
return this.isNeedHandleMainLocus(meeting, newLocus);
|
|
360
|
+
return isSelfMovedToLobby || this.isNeedHandleMainLocus(meeting, newLocus);
|
|
356
361
|
}
|
|
357
362
|
|
|
358
363
|
return !isSelfMoved;
|
|
@@ -1006,6 +1006,7 @@ describe('plugin-meetings', () => {
|
|
|
1006
1006
|
callBackInfo: {
|
|
1007
1007
|
callbackAddress: uri1,
|
|
1008
1008
|
},
|
|
1009
|
+
devices: [],
|
|
1009
1010
|
},
|
|
1010
1011
|
info: {
|
|
1011
1012
|
webExMeetingId,
|
|
@@ -1033,6 +1034,7 @@ describe('plugin-meetings', () => {
|
|
|
1033
1034
|
callBackInfo: {
|
|
1034
1035
|
callbackAddress: uri1,
|
|
1035
1036
|
},
|
|
1037
|
+
devices: [],
|
|
1036
1038
|
},
|
|
1037
1039
|
info: {
|
|
1038
1040
|
webExMeetingId,
|
|
@@ -1047,6 +1049,7 @@ describe('plugin-meetings', () => {
|
|
|
1047
1049
|
callBackInfo: {
|
|
1048
1050
|
callbackAddress: uri1,
|
|
1049
1051
|
},
|
|
1052
|
+
devices: [],
|
|
1050
1053
|
},
|
|
1051
1054
|
info: {
|
|
1052
1055
|
webExMeetingId,
|
|
@@ -1069,6 +1072,7 @@ describe('plugin-meetings', () => {
|
|
|
1069
1072
|
callBackInfo: {
|
|
1070
1073
|
callbackAddress: uri1,
|
|
1071
1074
|
},
|
|
1075
|
+
devices: [],
|
|
1072
1076
|
},
|
|
1073
1077
|
info: {
|
|
1074
1078
|
webExMeetingId,
|
|
@@ -1086,6 +1090,7 @@ describe('plugin-meetings', () => {
|
|
|
1086
1090
|
callBackInfo: {
|
|
1087
1091
|
callbackAddress: uri1,
|
|
1088
1092
|
},
|
|
1093
|
+
devices: [],
|
|
1089
1094
|
},
|
|
1090
1095
|
info: {
|
|
1091
1096
|
webExMeetingId,
|
|
@@ -1116,6 +1121,7 @@ describe('plugin-meetings', () => {
|
|
|
1116
1121
|
callBackInfo: {
|
|
1117
1122
|
callbackAddress: uri1,
|
|
1118
1123
|
},
|
|
1124
|
+
devices: [],
|
|
1119
1125
|
},
|
|
1120
1126
|
info: {
|
|
1121
1127
|
webExMeetingId,
|
|
@@ -1138,6 +1144,7 @@ describe('plugin-meetings', () => {
|
|
|
1138
1144
|
callBackInfo: {
|
|
1139
1145
|
callbackAddress: uri1,
|
|
1140
1146
|
},
|
|
1147
|
+
devices: [],
|
|
1141
1148
|
},
|
|
1142
1149
|
info: {
|
|
1143
1150
|
webExMeetingId,
|
|
@@ -1152,6 +1159,7 @@ describe('plugin-meetings', () => {
|
|
|
1152
1159
|
callbackInfo: {
|
|
1153
1160
|
callbackAddress: uri1,
|
|
1154
1161
|
},
|
|
1162
|
+
devices: [],
|
|
1155
1163
|
},
|
|
1156
1164
|
info: {
|
|
1157
1165
|
isUnifiedSpaceMeeting,
|
|
@@ -2294,6 +2302,7 @@ describe('plugin-meetings', () => {
|
|
|
2294
2302
|
sessionType: 'BREAKOUT',
|
|
2295
2303
|
};
|
|
2296
2304
|
newLocus.self.state = 'JOINED';
|
|
2305
|
+
newLocus.self.devices = [];
|
|
2297
2306
|
newLocus.fullState = {
|
|
2298
2307
|
active: true,
|
|
2299
2308
|
};
|
|
@@ -2310,7 +2319,7 @@ describe('plugin-meetings', () => {
|
|
|
2310
2319
|
sessionType: 'MAIN',
|
|
2311
2320
|
};
|
|
2312
2321
|
newLocus.self.state = 'JOINED';
|
|
2313
|
-
|
|
2322
|
+
newLocus.self.devices = [];
|
|
2314
2323
|
LoggerProxy.logger.log = sinon.stub();
|
|
2315
2324
|
const result = webex.meetings.isNeedHandleLocusDTO(meeting, newLocus);
|
|
2316
2325
|
assert.equal(result, true);
|
|
@@ -2325,11 +2334,26 @@ describe('plugin-meetings', () => {
|
|
|
2325
2334
|
};
|
|
2326
2335
|
newLocus.self.state = 'LEFT';
|
|
2327
2336
|
newLocus.self.reason = 'MOVED';
|
|
2328
|
-
|
|
2337
|
+
newLocus.self.devices = [];
|
|
2329
2338
|
LoggerProxy.logger.log = sinon.stub();
|
|
2330
2339
|
const result = webex.meetings.isNeedHandleLocusDTO(meeting, newLocus);
|
|
2331
2340
|
assert.equal(result, false);
|
|
2332
2341
|
});
|
|
2342
|
+
it('moved to lobby, return true', () => {
|
|
2343
|
+
newLocus.controls.breakout = {
|
|
2344
|
+
sessionType: 'MAIN',
|
|
2345
|
+
};
|
|
2346
|
+
newLocus.self.state = 'JOINED';
|
|
2347
|
+
newLocus.self.devices = [{
|
|
2348
|
+
intent: {
|
|
2349
|
+
reason: 'ON_HOLD_LOBBY',
|
|
2350
|
+
type: 'WAIT',
|
|
2351
|
+
}
|
|
2352
|
+
}];
|
|
2353
|
+
LoggerProxy.logger.log = sinon.stub();
|
|
2354
|
+
const result = webex.meetings.isNeedHandleLocusDTO(meeting, newLocus);
|
|
2355
|
+
assert.equal(result, true);
|
|
2356
|
+
});
|
|
2333
2357
|
});
|
|
2334
2358
|
|
|
2335
2359
|
describe('#getCorrespondingMeetingByLocus', () => {
|