@webex/plugin-meetings 3.12.0-next.33 → 3.12.0-next.35
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/aiEnableRequest/index.js +1 -1
- package/dist/breakouts/breakout.js +6 -2
- package/dist/breakouts/breakout.js.map +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/webinar/index.js +1 -1
- package/package.json +20 -20
- package/src/breakouts/breakout.ts +2 -1
- package/test/unit/spec/breakouts/breakout.ts +7 -3
|
@@ -178,7 +178,7 @@ var AIEnableRequest = _webexCore.WebexPlugin.extend({
|
|
|
178
178
|
method: _constants.HTTP_VERBS.PUT
|
|
179
179
|
});
|
|
180
180
|
},
|
|
181
|
-
version: "3.12.0-next.
|
|
181
|
+
version: "3.12.0-next.35"
|
|
182
182
|
});
|
|
183
183
|
var _default = exports.default = AIEnableRequest;
|
|
184
184
|
//# sourceMappingURL=index.js.map
|
|
@@ -192,7 +192,11 @@ var Breakout = _webexCore.WebexPlugin.extend({
|
|
|
192
192
|
return;
|
|
193
193
|
}
|
|
194
194
|
this.breakoutRosterLocus = locus;
|
|
195
|
-
|
|
195
|
+
// The roster via breakout roster event is full roster, use replace strategy to update the members
|
|
196
|
+
this.members.locusParticipantsUpdate({
|
|
197
|
+
participants: locus.participants,
|
|
198
|
+
isReplace: true
|
|
199
|
+
});
|
|
196
200
|
},
|
|
197
201
|
/**
|
|
198
202
|
* Broadcast message to this breakout session's participants
|
|
@@ -209,7 +213,7 @@ var Breakout = _webexCore.WebexPlugin.extend({
|
|
|
209
213
|
sessionId: this.sessionId
|
|
210
214
|
});
|
|
211
215
|
},
|
|
212
|
-
version: "3.12.0-next.
|
|
216
|
+
version: "3.12.0-next.35"
|
|
213
217
|
});
|
|
214
218
|
var _default = exports.default = Breakout;
|
|
215
219
|
//# sourceMappingURL=breakout.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_webexCore","require","_uuid","_interopRequireDefault","_constants","_members","_request","_events","Breakout","WebexPlugin","extend","idAttribute","namespace","MEETINGS","breakoutRequest","BreakoutRequest","props","active","allowed","assigned","assignedCurrent","requested","current","name","sessionId","sessionType","groupId","url","requestedLastModifiedTime","derived","isMain","cache","deps","fn","initialize","webex","breakoutRosterLocus","join","_this","_asyncToGenerator2","default","_regenerator","mark","_callee","breakoutMoveId","deviceUrl","meetingId","meeting","result","wrap","_context","prev","next","uuid","v4","internal","device","collection","parent","meetings","getMeetingByType","_ID_","breakoutEvent","onBreakoutMoveRequest","currentSession","newMetrics","submitClientEvent","bind","request","method","HTTP_VERBS","POST","uri","concat","body","sent","onBreakoutMoveResponse","abrupt","stop","leave","Error","mainSession","breakouts","filter","breakout","askForHelp","initMembers","members","Members","isNeedHandleRoster","locus","_this$breakoutRosterL","_this$breakoutRosterL2","_this$breakoutRosterL3","_locus$sequence","_locus$sequence$entri","sequence","entries","length","prevSequence","currentSequence","parseRoster","locusParticipantsUpdate","broadcast","message","options","version","_default","exports"],"sources":["breakout.ts"],"sourcesContent":["/*!\n * Copyright (c) 2015-2023 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {WebexPlugin} from '@webex/webex-core';\n\nimport uuid from 'uuid';\nimport {_ID_, HTTP_VERBS, MEETINGS} from '../constants';\nimport Members from '../members';\nimport BreakoutRequest from './request';\nimport breakoutEvent from './events';\n/**\n * @class\n */\nconst Breakout = WebexPlugin.extend({\n idAttribute: 'sessionId',\n\n namespace: MEETINGS,\n\n breakoutRequest: BreakoutRequest,\n props: {\n active: ['boolean', false, false], // this session is active\n allowed: ['boolean', false, false], // allowed to join this session\n assigned: ['boolean', false, false], // assigned to this session, but not necessarily joined yet\n assignedCurrent: ['boolean', false, false], // assigned AND current session\n requested: ['boolean', false, false], // requested by the host to join this session\n current: ['boolean', false, false], // the current joined session\n name: 'string',\n sessionId: 'string',\n sessionType: 'string',\n groupId: 'string',\n url: 'string', // where to send requests to\n requestedLastModifiedTime: 'string',\n },\n\n derived: {\n isMain: {\n cache: false, // fix issue: sometimes the derived will not change even if the deps changed\n deps: ['sessionType'],\n /**\n * If the breakout has no name, assume it is the main session\n * @returns {boolean}\n */\n fn() {\n return this.sessionType === 'MAIN';\n },\n },\n },\n /**\n * initializer for the Breakout class\n * @returns {void}\n */\n initialize() {\n // @ts-ignore\n this.breakoutRequest = new BreakoutRequest({webex: this.webex});\n this.breakoutRosterLocus = null;\n },\n\n /**\n * Joins the breakout session\n * @returns {Promise}\n */\n async join() {\n const breakoutMoveId = uuid.v4();\n const deviceUrl = this.webex.internal.device.url;\n const {meetingId} = this.collection.parent;\n const meeting = this.webex.meetings.getMeetingByType(_ID_, meetingId);\n breakoutEvent.onBreakoutMoveRequest(\n {currentSession: this, meeting, breakoutMoveId},\n // @ts-ignore\n this.webex.internal.newMetrics.submitClientEvent.bind(this.webex.internal.newMetrics)\n );\n const result = await this.request({\n method: HTTP_VERBS.POST,\n uri: `${this.url}/move`,\n body: {\n breakoutMoveId,\n deviceUrl,\n groupId: this.groupId,\n sessionId: this.sessionId,\n },\n });\n breakoutEvent.onBreakoutMoveResponse(\n {currentSession: this, meeting, breakoutMoveId},\n // @ts-ignore\n this.webex.internal.newMetrics.submitClientEvent.bind(this.webex.internal.newMetrics)\n );\n\n return result;\n },\n\n /**\n * Leaves the breakout session to return to the main session\n * @returns {Promise}\n * @throws {Error} if an attempt is made to leave the main session or if the main session cannot be found\n */\n leave() {\n if (this.isMain) {\n throw new Error('Cannot leave the main session');\n }\n\n const mainSession = this.parent.breakouts.filter((breakout) => breakout.isMain)[0];\n\n if (!mainSession) {\n throw new Error('Cannot leave, no main session found');\n }\n\n return mainSession.join();\n },\n\n /**\n * Sends a help request for the current breakout\n * @returns {Promise}\n */\n askForHelp() {\n return this.request({\n method: HTTP_VERBS.POST,\n uri: `${this.url}/help`,\n body: {\n groupId: this.groupId,\n sessionId: this.sessionId,\n },\n });\n },\n\n /**\n * inits the members object\n * @returns {void}\n */\n initMembers() {\n const {meetingId} = this.collection.parent;\n const meeting = this.webex.meetings.getMeetingByType(_ID_, meetingId);\n this.members = new Members(\n {\n meeting,\n },\n {parent: this.webex}\n );\n },\n\n /**\n * check sequence and determine whether to update the new roster or not\n * @param {Object} locus Locus object\n * @returns {Boolean}\n */\n isNeedHandleRoster(locus: any) {\n if (!this.breakoutRosterLocus?.sequence?.entries?.length || !locus?.sequence?.entries?.length) {\n return true;\n }\n const prevSequence = this.breakoutRosterLocus.sequence.entries[0];\n const currentSequence = locus.sequence.entries[0];\n\n return currentSequence > prevSequence;\n },\n /**\n * Parses the participants from the locus object\n * @param {Object} locus Locus object\n * @returns {void}\n */\n parseRoster(locus) {\n if (!this.members) {\n this.initMembers();\n }\n if (!this.isNeedHandleRoster(locus)) {\n return;\n }\n this.breakoutRosterLocus = locus;\n this.members.locusParticipantsUpdate(locus);\n },\n\n /**\n * Broadcast message to this breakout session's participants\n * @param {String} message\n * @param {Object} options\n * @returns {Promise}\n */\n broadcast(message, options) {\n return this.breakoutRequest.broadcast({\n url: this.url,\n message,\n options,\n groupId: this.groupId,\n sessionId: this.sessionId,\n });\n },\n});\n\nexport default Breakout;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_webexCore","require","_uuid","_interopRequireDefault","_constants","_members","_request","_events","Breakout","WebexPlugin","extend","idAttribute","namespace","MEETINGS","breakoutRequest","BreakoutRequest","props","active","allowed","assigned","assignedCurrent","requested","current","name","sessionId","sessionType","groupId","url","requestedLastModifiedTime","derived","isMain","cache","deps","fn","initialize","webex","breakoutRosterLocus","join","_this","_asyncToGenerator2","default","_regenerator","mark","_callee","breakoutMoveId","deviceUrl","meetingId","meeting","result","wrap","_context","prev","next","uuid","v4","internal","device","collection","parent","meetings","getMeetingByType","_ID_","breakoutEvent","onBreakoutMoveRequest","currentSession","newMetrics","submitClientEvent","bind","request","method","HTTP_VERBS","POST","uri","concat","body","sent","onBreakoutMoveResponse","abrupt","stop","leave","Error","mainSession","breakouts","filter","breakout","askForHelp","initMembers","members","Members","isNeedHandleRoster","locus","_this$breakoutRosterL","_this$breakoutRosterL2","_this$breakoutRosterL3","_locus$sequence","_locus$sequence$entri","sequence","entries","length","prevSequence","currentSequence","parseRoster","locusParticipantsUpdate","participants","isReplace","broadcast","message","options","version","_default","exports"],"sources":["breakout.ts"],"sourcesContent":["/*!\n * Copyright (c) 2015-2023 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {WebexPlugin} from '@webex/webex-core';\n\nimport uuid from 'uuid';\nimport {_ID_, HTTP_VERBS, MEETINGS} from '../constants';\nimport Members from '../members';\nimport BreakoutRequest from './request';\nimport breakoutEvent from './events';\n/**\n * @class\n */\nconst Breakout = WebexPlugin.extend({\n idAttribute: 'sessionId',\n\n namespace: MEETINGS,\n\n breakoutRequest: BreakoutRequest,\n props: {\n active: ['boolean', false, false], // this session is active\n allowed: ['boolean', false, false], // allowed to join this session\n assigned: ['boolean', false, false], // assigned to this session, but not necessarily joined yet\n assignedCurrent: ['boolean', false, false], // assigned AND current session\n requested: ['boolean', false, false], // requested by the host to join this session\n current: ['boolean', false, false], // the current joined session\n name: 'string',\n sessionId: 'string',\n sessionType: 'string',\n groupId: 'string',\n url: 'string', // where to send requests to\n requestedLastModifiedTime: 'string',\n },\n\n derived: {\n isMain: {\n cache: false, // fix issue: sometimes the derived will not change even if the deps changed\n deps: ['sessionType'],\n /**\n * If the breakout has no name, assume it is the main session\n * @returns {boolean}\n */\n fn() {\n return this.sessionType === 'MAIN';\n },\n },\n },\n /**\n * initializer for the Breakout class\n * @returns {void}\n */\n initialize() {\n // @ts-ignore\n this.breakoutRequest = new BreakoutRequest({webex: this.webex});\n this.breakoutRosterLocus = null;\n },\n\n /**\n * Joins the breakout session\n * @returns {Promise}\n */\n async join() {\n const breakoutMoveId = uuid.v4();\n const deviceUrl = this.webex.internal.device.url;\n const {meetingId} = this.collection.parent;\n const meeting = this.webex.meetings.getMeetingByType(_ID_, meetingId);\n breakoutEvent.onBreakoutMoveRequest(\n {currentSession: this, meeting, breakoutMoveId},\n // @ts-ignore\n this.webex.internal.newMetrics.submitClientEvent.bind(this.webex.internal.newMetrics)\n );\n const result = await this.request({\n method: HTTP_VERBS.POST,\n uri: `${this.url}/move`,\n body: {\n breakoutMoveId,\n deviceUrl,\n groupId: this.groupId,\n sessionId: this.sessionId,\n },\n });\n breakoutEvent.onBreakoutMoveResponse(\n {currentSession: this, meeting, breakoutMoveId},\n // @ts-ignore\n this.webex.internal.newMetrics.submitClientEvent.bind(this.webex.internal.newMetrics)\n );\n\n return result;\n },\n\n /**\n * Leaves the breakout session to return to the main session\n * @returns {Promise}\n * @throws {Error} if an attempt is made to leave the main session or if the main session cannot be found\n */\n leave() {\n if (this.isMain) {\n throw new Error('Cannot leave the main session');\n }\n\n const mainSession = this.parent.breakouts.filter((breakout) => breakout.isMain)[0];\n\n if (!mainSession) {\n throw new Error('Cannot leave, no main session found');\n }\n\n return mainSession.join();\n },\n\n /**\n * Sends a help request for the current breakout\n * @returns {Promise}\n */\n askForHelp() {\n return this.request({\n method: HTTP_VERBS.POST,\n uri: `${this.url}/help`,\n body: {\n groupId: this.groupId,\n sessionId: this.sessionId,\n },\n });\n },\n\n /**\n * inits the members object\n * @returns {void}\n */\n initMembers() {\n const {meetingId} = this.collection.parent;\n const meeting = this.webex.meetings.getMeetingByType(_ID_, meetingId);\n this.members = new Members(\n {\n meeting,\n },\n {parent: this.webex}\n );\n },\n\n /**\n * check sequence and determine whether to update the new roster or not\n * @param {Object} locus Locus object\n * @returns {Boolean}\n */\n isNeedHandleRoster(locus: any) {\n if (!this.breakoutRosterLocus?.sequence?.entries?.length || !locus?.sequence?.entries?.length) {\n return true;\n }\n const prevSequence = this.breakoutRosterLocus.sequence.entries[0];\n const currentSequence = locus.sequence.entries[0];\n\n return currentSequence > prevSequence;\n },\n /**\n * Parses the participants from the locus object\n * @param {Object} locus Locus object\n * @returns {void}\n */\n parseRoster(locus) {\n if (!this.members) {\n this.initMembers();\n }\n if (!this.isNeedHandleRoster(locus)) {\n return;\n }\n this.breakoutRosterLocus = locus;\n // The roster via breakout roster event is full roster, use replace strategy to update the members\n this.members.locusParticipantsUpdate({participants: locus.participants, isReplace: true});\n },\n\n /**\n * Broadcast message to this breakout session's participants\n * @param {String} message\n * @param {Object} options\n * @returns {Promise}\n */\n broadcast(message, options) {\n return this.breakoutRequest.broadcast({\n url: this.url,\n message,\n options,\n groupId: this.groupId,\n sessionId: this.sessionId,\n });\n },\n});\n\nexport default Breakout;\n"],"mappings":"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","ignoreList":[]}
|
package/dist/breakouts/index.js
CHANGED
|
@@ -1109,7 +1109,7 @@ var Breakouts = _webexCore.WebexPlugin.extend({
|
|
|
1109
1109
|
this.trigger(_constants.BREAKOUTS.EVENTS.ASK_RETURN_TO_MAIN);
|
|
1110
1110
|
}
|
|
1111
1111
|
},
|
|
1112
|
-
version: "3.12.0-next.
|
|
1112
|
+
version: "3.12.0-next.35"
|
|
1113
1113
|
});
|
|
1114
1114
|
var _default = exports.default = Breakouts;
|
|
1115
1115
|
//# sourceMappingURL=index.js.map
|
|
@@ -372,7 +372,7 @@ var SimultaneousInterpretation = _webexCore.WebexPlugin.extend({
|
|
|
372
372
|
throw error;
|
|
373
373
|
});
|
|
374
374
|
},
|
|
375
|
-
version: "3.12.0-next.
|
|
375
|
+
version: "3.12.0-next.35"
|
|
376
376
|
});
|
|
377
377
|
var _default = exports.default = SimultaneousInterpretation;
|
|
378
378
|
//# sourceMappingURL=index.js.map
|
|
@@ -18,7 +18,7 @@ var SILanguage = _webexCore.WebexPlugin.extend({
|
|
|
18
18
|
languageCode: 'number',
|
|
19
19
|
languageName: 'string'
|
|
20
20
|
},
|
|
21
|
-
version: "3.12.0-next.
|
|
21
|
+
version: "3.12.0-next.35"
|
|
22
22
|
});
|
|
23
23
|
var _default = exports.default = SILanguage;
|
|
24
24
|
//# sourceMappingURL=siLanguage.js.map
|
package/dist/webinar/index.js
CHANGED
package/package.json
CHANGED
|
@@ -44,12 +44,12 @@
|
|
|
44
44
|
"@webex/event-dictionary-ts": "^1.0.2138",
|
|
45
45
|
"@webex/jest-config-legacy": "0.0.0",
|
|
46
46
|
"@webex/legacy-tools": "0.0.0",
|
|
47
|
-
"@webex/plugin-rooms": "3.12.0-next.
|
|
48
|
-
"@webex/test-helper-chai": "3.
|
|
49
|
-
"@webex/test-helper-mocha": "3.
|
|
50
|
-
"@webex/test-helper-mock-webex": "3.
|
|
51
|
-
"@webex/test-helper-retry": "3.
|
|
52
|
-
"@webex/test-helper-test-users": "3.
|
|
47
|
+
"@webex/plugin-rooms": "3.12.0-next.15",
|
|
48
|
+
"@webex/test-helper-chai": "3.12.0-next.1",
|
|
49
|
+
"@webex/test-helper-mocha": "3.12.0-next.1",
|
|
50
|
+
"@webex/test-helper-mock-webex": "3.12.0-next.1",
|
|
51
|
+
"@webex/test-helper-retry": "3.12.0-next.1",
|
|
52
|
+
"@webex/test-helper-test-users": "3.12.0-next.1",
|
|
53
53
|
"chai": "^4.3.4",
|
|
54
54
|
"chai-as-promised": "^7.1.1",
|
|
55
55
|
"eslint": "^8.24.0",
|
|
@@ -61,22 +61,22 @@
|
|
|
61
61
|
"typescript": "^4.7.4"
|
|
62
62
|
},
|
|
63
63
|
"dependencies": {
|
|
64
|
-
"@webex/common": "3.
|
|
64
|
+
"@webex/common": "3.12.0-next.1",
|
|
65
65
|
"@webex/internal-media-core": "2.23.3",
|
|
66
|
-
"@webex/internal-plugin-conversation": "3.12.0-next.
|
|
67
|
-
"@webex/internal-plugin-device": "3.12.0-next.
|
|
68
|
-
"@webex/internal-plugin-llm": "3.12.0-next.
|
|
69
|
-
"@webex/internal-plugin-mercury": "3.12.0-next.
|
|
70
|
-
"@webex/internal-plugin-metrics": "3.12.0-next.
|
|
71
|
-
"@webex/internal-plugin-support": "3.12.0-next.
|
|
72
|
-
"@webex/internal-plugin-user": "3.12.0-next.
|
|
73
|
-
"@webex/internal-plugin-voicea": "3.12.0-next.
|
|
74
|
-
"@webex/media-helpers": "3.12.0-next.
|
|
75
|
-
"@webex/plugin-people": "3.12.0-next.
|
|
76
|
-
"@webex/plugin-rooms": "3.12.0-next.
|
|
66
|
+
"@webex/internal-plugin-conversation": "3.12.0-next.15",
|
|
67
|
+
"@webex/internal-plugin-device": "3.12.0-next.13",
|
|
68
|
+
"@webex/internal-plugin-llm": "3.12.0-next.15",
|
|
69
|
+
"@webex/internal-plugin-mercury": "3.12.0-next.14",
|
|
70
|
+
"@webex/internal-plugin-metrics": "3.12.0-next.13",
|
|
71
|
+
"@webex/internal-plugin-support": "3.12.0-next.15",
|
|
72
|
+
"@webex/internal-plugin-user": "3.12.0-next.14",
|
|
73
|
+
"@webex/internal-plugin-voicea": "3.12.0-next.15",
|
|
74
|
+
"@webex/media-helpers": "3.12.0-next.2",
|
|
75
|
+
"@webex/plugin-people": "3.12.0-next.14",
|
|
76
|
+
"@webex/plugin-rooms": "3.12.0-next.15",
|
|
77
77
|
"@webex/ts-sdp": "^1.8.1",
|
|
78
78
|
"@webex/web-capabilities": "^1.10.0",
|
|
79
|
-
"@webex/webex-core": "3.12.0-next.
|
|
79
|
+
"@webex/webex-core": "3.12.0-next.13",
|
|
80
80
|
"ampersand-collection": "^2.0.2",
|
|
81
81
|
"bowser": "^2.11.0",
|
|
82
82
|
"btoa": "^1.2.1",
|
|
@@ -94,5 +94,5 @@
|
|
|
94
94
|
"//": [
|
|
95
95
|
"TODO: upgrade jwt-decode when moving to node 18"
|
|
96
96
|
],
|
|
97
|
-
"version": "3.12.0-next.
|
|
97
|
+
"version": "3.12.0-next.35"
|
|
98
98
|
}
|
|
@@ -165,7 +165,8 @@ const Breakout = WebexPlugin.extend({
|
|
|
165
165
|
return;
|
|
166
166
|
}
|
|
167
167
|
this.breakoutRosterLocus = locus;
|
|
168
|
-
|
|
168
|
+
// The roster via breakout roster event is full roster, use replace strategy to update the members
|
|
169
|
+
this.members.locusParticipantsUpdate({participants: locus.participants, isReplace: true});
|
|
169
170
|
},
|
|
170
171
|
|
|
171
172
|
/**
|
|
@@ -217,10 +217,14 @@ describe('plugin-meetings', () => {
|
|
|
217
217
|
locusParticipantsUpdate: sinon.stub(),
|
|
218
218
|
};
|
|
219
219
|
|
|
220
|
-
const locusData = {
|
|
220
|
+
const locusData = {participants: [{id: 'participant-1'}], sequence: {entries: [123]}};
|
|
221
221
|
const result = breakout.parseRoster(locusData);
|
|
222
222
|
|
|
223
|
-
assert.calledOnceWithExactly(breakout.members.locusParticipantsUpdate,
|
|
223
|
+
assert.calledOnceWithExactly(breakout.members.locusParticipantsUpdate, {
|
|
224
|
+
participants: [{id: 'participant-1'}],
|
|
225
|
+
isReplace: true,
|
|
226
|
+
});
|
|
227
|
+
assert.equal(breakout.breakoutRosterLocus, locusData);
|
|
224
228
|
assert.equal(result, undefined);
|
|
225
229
|
});
|
|
226
230
|
it('not call locusParticipantsUpdate if sequence is expired', () => {
|
|
@@ -228,7 +232,7 @@ describe('plugin-meetings', () => {
|
|
|
228
232
|
locusParticipantsUpdate: sinon.stub(),
|
|
229
233
|
};
|
|
230
234
|
breakout.isNeedHandleRoster = sinon.stub().returns(false);
|
|
231
|
-
const locusData = {
|
|
235
|
+
const locusData = {participants: [{id: 'participant-1'}], sequence: {entries: [123]}};
|
|
232
236
|
breakout.parseRoster(locusData);
|
|
233
237
|
|
|
234
238
|
assert.notCalled(breakout.members.locusParticipantsUpdate);
|