@webex/plugin-meetings 3.12.0-next.65 → 3.12.0-next.67

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.
Files changed (40) hide show
  1. package/dist/aiEnableRequest/index.js +1 -1
  2. package/dist/breakouts/breakout.js +1 -1
  3. package/dist/breakouts/index.js +1 -1
  4. package/dist/constants.js +24 -4
  5. package/dist/constants.js.map +1 -1
  6. package/dist/index.js.map +1 -1
  7. package/dist/interceptors/dataChannelAuthToken.js +75 -15
  8. package/dist/interceptors/dataChannelAuthToken.js.map +1 -1
  9. package/dist/interpretation/index.js +1 -1
  10. package/dist/interpretation/index.js.map +1 -1
  11. package/dist/interpretation/interpretation.types.js +7 -0
  12. package/dist/interpretation/interpretation.types.js.map +1 -0
  13. package/dist/interpretation/siLanguage.js +1 -1
  14. package/dist/meeting/index.js +738 -679
  15. package/dist/meeting/index.js.map +1 -1
  16. package/dist/meeting/request.js +5 -2
  17. package/dist/meeting/request.js.map +1 -1
  18. package/dist/meeting/util.js +1 -0
  19. package/dist/meeting/util.js.map +1 -1
  20. package/dist/types/constants.d.ts +7 -1
  21. package/dist/types/index.d.ts +1 -0
  22. package/dist/types/interpretation/interpretation.types.d.ts +10 -0
  23. package/dist/types/meeting/index.d.ts +2 -2
  24. package/dist/types/meeting/request.d.ts +1 -0
  25. package/dist/webinar/index.js +219 -146
  26. package/dist/webinar/index.js.map +1 -1
  27. package/package.json +3 -3
  28. package/src/constants.ts +8 -1
  29. package/src/index.ts +1 -0
  30. package/src/interceptors/dataChannelAuthToken.ts +88 -12
  31. package/src/interpretation/index.ts +2 -1
  32. package/src/interpretation/interpretation.types.ts +11 -0
  33. package/src/meeting/index.ts +111 -49
  34. package/src/meeting/request.ts +11 -0
  35. package/src/meeting/util.ts +1 -0
  36. package/src/webinar/index.ts +114 -16
  37. package/test/unit/spec/interceptors/dataChannelAuthToken.ts +196 -0
  38. package/test/unit/spec/meeting/index.js +139 -23
  39. package/test/unit/spec/meeting/request.js +12 -0
  40. package/test/unit/spec/webinar/index.ts +197 -14
@@ -13,7 +13,6 @@ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs2/
13
13
  var _webexCore = require("@webex/webex-core");
14
14
  var _uuid = _interopRequireDefault(require("uuid"));
15
15
  var _lodash = require("lodash");
16
- var _internalPluginLlm = require("@webex/internal-plugin-llm");
17
16
  var _constants = require("../constants");
18
17
  var _collection = _interopRequireDefault(require("./collection"));
19
18
  var _loggerProxy = _interopRequireDefault(require("../common/logs/logger-proxy"));
@@ -170,24 +169,47 @@ var Webinar = _webexCore.WebexPlugin.extend({
170
169
  cleanupPSDataChannel: function cleanupPSDataChannel() {
171
170
  var _this = this;
172
171
  return (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee() {
173
- var _i, _PS_LLM_EVENTS, _PS_LLM_EVENTS$_i, event, listenerKey;
172
+ var _this$webex$internal$, isOwner, disconnected, _this$webex$internal$2, _this$webex$internal$3, _i, _PS_LLM_EVENTS, _PS_LLM_EVENTS$_i, event, listenerKey, _t;
174
173
  return _regenerator.default.wrap(function (_context) {
175
174
  while (1) switch (_context.prev = _context.next) {
176
175
  case 0:
176
+ _this$webex$internal$ = _this.webex.internal.llm.resolveSessionOwnership(_this.meetingId, _constants.LLM_PRACTICE_SESSION), isOwner = _this$webex$internal$.isOwner;
177
177
  _this.llmListeners = _this.llmListeners || {};
178
178
  if (_this._pendingOnlineListener) {
179
179
  // @ts-ignore - Fix type
180
180
  _this.webex.internal.llm.off('online', _this._pendingOnlineListener);
181
181
  _this._pendingOnlineListener = null;
182
182
  }
183
-
184
- // @ts-ignore - Fix type
185
- _context.next = 1;
183
+ _context.prev = 1;
184
+ _context.next = 2;
186
185
  return _this.webex.internal.llm.disconnectLLM({
187
186
  code: 3050,
188
187
  reason: 'done (permanent)'
189
- }, _constants.LLM_PRACTICE_SESSION);
190
- case 1:
188
+ }, _constants.LLM_PRACTICE_SESSION, _this.meetingId);
189
+ case 2:
190
+ disconnected = _context.sent;
191
+ if (!disconnected) {
192
+ _loggerProxy.default.logger.info("Webinar:index#cleanupPSDataChannel --> skipping disconnect; practice-session LLM is not owned by meeting ".concat(_this.meetingId));
193
+ }
194
+ _context.next = 4;
195
+ break;
196
+ case 3:
197
+ _context.prev = 3;
198
+ _t = _context["catch"](1);
199
+ // disconnectLLM clears ownership only on success; release a stale owner
200
+ // tag here so other meeting instances can reclaim practice-session LLM.
201
+ if (isOwner) {
202
+ // @ts-ignore - Fix type
203
+ (_this$webex$internal$2 = (_this$webex$internal$3 = _this.webex.internal.llm).setOwnerMeetingId) === null || _this$webex$internal$2 === void 0 ? void 0 : _this$webex$internal$2.call(_this$webex$internal$3, undefined, _constants.LLM_PRACTICE_SESSION);
204
+ }
205
+ throw _t;
206
+ case 4:
207
+ _context.prev = 4;
208
+ if (_this._practiceSessionRelayListener) {
209
+ // @ts-ignore - Fix type
210
+ _this.webex.internal.llm.off("event:relay.event:".concat(_constants.LLM_PRACTICE_SESSION), _this._practiceSessionRelayListener);
211
+ }
212
+ _this._practiceSessionRelayListener = null;
191
213
  for (_i = 0, _PS_LLM_EVENTS = PS_LLM_EVENTS; _i < _PS_LLM_EVENTS.length; _i++) {
192
214
  _PS_LLM_EVENTS$_i = _PS_LLM_EVENTS[_i], event = _PS_LLM_EVENTS$_i.event, listenerKey = _PS_LLM_EVENTS$_i.listenerKey;
193
215
  if (_this.llmListeners[listenerKey]) {
@@ -196,11 +218,12 @@ var Webinar = _webexCore.WebexPlugin.extend({
196
218
  _this.llmListeners[listenerKey] = null;
197
219
  }
198
220
  }
199
- case 2:
221
+ return _context.finish(4);
222
+ case 5:
200
223
  case "end":
201
224
  return _context.stop();
202
225
  }
203
- }, _callee);
226
+ }, _callee, null, [[1, 3, 4, 5]]);
204
227
  }))();
205
228
  },
206
229
  /**
@@ -213,7 +236,7 @@ var Webinar = _webexCore.WebexPlugin.extend({
213
236
  ensurePracticeSessionDatachannelToken: function ensurePracticeSessionDatachannelToken(meeting) {
214
237
  var _this2 = this;
215
238
  return (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee2() {
216
- var isDataChannelTokenEnabled, cachedToken, _refreshResponse$body, refreshResponse, _ref2, datachannelToken, dataChannelTokenType, _t;
239
+ var isDataChannelTokenEnabled, cachedToken, _refreshResponse$body, refreshResponse, _ref2, datachannelToken, dataChannelTokenType, _t2;
217
240
  return _regenerator.default.wrap(function (_context2) {
218
241
  while (1) switch (_context2.prev = _context2.next) {
219
242
  case 0:
@@ -228,7 +251,7 @@ var Webinar = _webexCore.WebexPlugin.extend({
228
251
  return _context2.abrupt("return", undefined);
229
252
  case 2:
230
253
  // @ts-ignore
231
- cachedToken = _this2.webex.internal.llm.getDatachannelToken(_internalPluginLlm.DataChannelTokenType.PracticeSession);
254
+ cachedToken = _this2.webex.internal.llm.getDatachannelToken(_constants.LLM_PRACTICE_SESSION, _this2.meetingId);
232
255
  if (!cachedToken) {
233
256
  _context2.next = 3;
234
257
  break;
@@ -248,12 +271,12 @@ var Webinar = _webexCore.WebexPlugin.extend({
248
271
  return _context2.abrupt("return", undefined);
249
272
  case 5:
250
273
  // @ts-ignore
251
- _this2.webex.internal.llm.setDatachannelToken(datachannelToken, dataChannelTokenType || _internalPluginLlm.DataChannelTokenType.PracticeSession);
274
+ _this2.webex.internal.llm.setDatachannelToken(datachannelToken, dataChannelTokenType || _constants.LLM_PRACTICE_SESSION, _this2.meetingId);
252
275
  return _context2.abrupt("return", datachannelToken);
253
276
  case 6:
254
277
  _context2.prev = 6;
255
- _t = _context2["catch"](3);
256
- _loggerProxy.default.logger.warn("Webinar:index#ensurePracticeSessionDatachannelToken --> failed to proactively refresh practice-session token: ".concat((_t === null || _t === void 0 ? void 0 : _t.message) || String(_t)));
278
+ _t2 = _context2["catch"](3);
279
+ _loggerProxy.default.logger.warn("Webinar:index#ensurePracticeSessionDatachannelToken --> failed to proactively refresh practice-session token: ".concat((_t2 === null || _t2 === void 0 ? void 0 : _t2.message) || String(_t2)));
257
280
  return _context2.abrupt("return", undefined);
258
281
  case 7:
259
282
  case "end":
@@ -270,7 +293,8 @@ var Webinar = _webexCore.WebexPlugin.extend({
270
293
  updatePSDataChannel: function updatePSDataChannel() {
271
294
  var _this3 = this;
272
295
  return (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee3() {
273
- var invocationSequence, meeting, isPracticeSession, _ref3, _ref3$url, url, _ref3$info, _ref3$info2, _ref3$info2$practiceS, practiceSessionDatachannelUrl, practiceSessionDatachannelToken, isCaptionBoxOn, _onDefaultSessionConnected, refreshedPracticeSessionToken, latestPracticeSessionDatachannelUrl, isStillPracticeSession;
296
+ var _this3$webex$internal3, _this3$webex$internal4;
297
+ var invocationSequence, meeting, isPracticeSession, _this3$webex$internal, currentOwner, isOwner, _ref3, _ref3$url, url, _ref3$info, _ref3$info2, _ref3$info2$practiceS, practiceSessionDatachannelUrl, practiceSessionDatachannelToken, isCaptionBoxOn, _onDefaultSessionConnected, refreshedPracticeSessionToken, latestPracticeSessionDatachannelUrl, isStillPracticeSession, _this3$webex$internal2, currentOwnerBeforeConnect, isOwnerBeforeConnect;
274
298
  return _regenerator.default.wrap(function (_context3) {
275
299
  while (1) switch (_context3.prev = _context3.next) {
276
300
  case 0:
@@ -279,6 +303,7 @@ var Webinar = _webexCore.WebexPlugin.extend({
279
303
  invocationSequence = _this3._updatePSDataChannelSequence;
280
304
  meeting = _this3.getValidatedWebinarMeeting();
281
305
  isPracticeSession = (meeting === null || meeting === void 0 ? void 0 : meeting.isJoined()) && _this3.isJoinPracticeSessionDataChannel();
306
+ _this3$webex$internal = _this3.webex.internal.llm.resolveSessionOwnership(_this3.meetingId, _constants.LLM_PRACTICE_SESSION), currentOwner = _this3$webex$internal.currentOwner, isOwner = _this3$webex$internal.isOwner;
282
307
  if (isPracticeSession) {
283
308
  _context3.next = 2;
284
309
  break;
@@ -288,18 +313,25 @@ var Webinar = _webexCore.WebexPlugin.extend({
288
313
  case 1:
289
314
  return _context3.abrupt("return", undefined);
290
315
  case 2:
316
+ if (isOwner) {
317
+ _context3.next = 3;
318
+ break;
319
+ }
320
+ _loggerProxy.default.logger.info("Webinar:index#updatePSDataChannel --> skipping; practice-session LLM owned by meeting ".concat(currentOwner, ", not ").concat(_this3.meetingId));
321
+ return _context3.abrupt("return", undefined);
322
+ case 3:
291
323
  // @ts-ignore - Fix type
292
324
  _ref3 = (meeting === null || meeting === void 0 ? void 0 : meeting.locusInfo) || {}, _ref3$url = _ref3.url, url = _ref3$url === void 0 ? undefined : _ref3$url, _ref3$info = _ref3.info, _ref3$info2 = _ref3$info === void 0 ? {} : _ref3$info, _ref3$info2$practiceS = _ref3$info2.practiceSessionDatachannelUrl, practiceSessionDatachannelUrl = _ref3$info2$practiceS === void 0 ? undefined : _ref3$info2$practiceS; // @ts-ignore
293
- practiceSessionDatachannelToken = _this3.webex.internal.llm.getDatachannelToken(_internalPluginLlm.DataChannelTokenType.PracticeSession);
325
+ practiceSessionDatachannelToken = _this3.webex.internal.llm.getDatachannelToken(_constants.LLM_PRACTICE_SESSION, _this3.meetingId);
294
326
  isCaptionBoxOn = _this3.webex.internal.voicea.getIsCaptionBoxOn();
295
327
  if (practiceSessionDatachannelUrl) {
296
- _context3.next = 3;
328
+ _context3.next = 4;
297
329
  break;
298
330
  }
299
331
  return _context3.abrupt("return", undefined);
300
- case 3:
332
+ case 4:
301
333
  if (!_this3.webex.internal.llm.isConnected(_constants.LLM_PRACTICE_SESSION)) {
302
- _context3.next = 5;
334
+ _context3.next = 6;
303
335
  break;
304
336
  }
305
337
  if (!(
@@ -307,14 +339,14 @@ var Webinar = _webexCore.WebexPlugin.extend({
307
339
  url === _this3.webex.internal.llm.getLocusUrl(_constants.LLM_PRACTICE_SESSION) &&
308
340
  // @ts-ignore - Fix type
309
341
  practiceSessionDatachannelUrl === _this3.webex.internal.llm.getDatachannelUrl(_constants.LLM_PRACTICE_SESSION))) {
310
- _context3.next = 4;
342
+ _context3.next = 5;
311
343
  break;
312
344
  }
313
345
  return _context3.abrupt("return", undefined);
314
- case 4:
315
- _context3.next = 5;
316
- return _this3.cleanupPSDataChannel();
317
346
  case 5:
347
+ _context3.next = 6;
348
+ return _this3.cleanupPSDataChannel();
349
+ case 6:
318
350
  // Ensure the default session data channel is connected before connecting the practice session.
319
351
  // Subscribe before checking isConnected() to avoid a race where the 'online' event fires
320
352
  // between the check and the subscription — Mercury does not replay missed events.
@@ -332,38 +364,67 @@ var Webinar = _webexCore.WebexPlugin.extend({
332
364
 
333
365
  // @ts-ignore - Fix type
334
366
  if (_this3.webex.internal.llm.isConnected()) {
335
- _context3.next = 6;
367
+ _context3.next = 7;
336
368
  break;
337
369
  }
338
370
  _loggerProxy.default.logger.info('Webinar:index#updatePSDataChannel --> default session not yet connected, deferring practice session connect.');
339
371
  return _context3.abrupt("return", undefined);
340
- case 6:
372
+ case 7:
341
373
  // Default session is already connected — cancel the pending listener and proceed
342
374
  if (_this3._pendingOnlineListener) {
343
375
  // @ts-ignore - Fix type
344
376
  _this3.webex.internal.llm.off('online', _this3._pendingOnlineListener);
345
377
  _this3._pendingOnlineListener = null;
346
378
  }
347
- _context3.next = 7;
379
+ _context3.next = 8;
348
380
  return _this3.ensurePracticeSessionDatachannelToken(meeting);
349
- case 7:
381
+ case 8:
350
382
  refreshedPracticeSessionToken = _context3.sent;
351
383
  latestPracticeSessionDatachannelUrl = (0, _lodash.get)(meeting, 'locusInfo.info.practiceSessionDatachannelUrl');
352
384
  isStillPracticeSession = (meeting === null || meeting === void 0 ? void 0 : meeting.isJoined()) && _this3.isJoinPracticeSessionDataChannel(); // Skip stale invocations after async refresh to avoid reconnecting a session
353
385
  // that was already updated/cleaned by a newer state transition.
354
386
  if (!(invocationSequence !== _this3._updatePSDataChannelSequence || !isStillPracticeSession || !latestPracticeSessionDatachannelUrl || latestPracticeSessionDatachannelUrl !== practiceSessionDatachannelUrl)) {
355
- _context3.next = 8;
387
+ _context3.next = 9;
356
388
  break;
357
389
  }
358
390
  return _context3.abrupt("return", undefined);
359
- case 8:
391
+ case 9:
360
392
  if (refreshedPracticeSessionToken) {
361
393
  practiceSessionDatachannelToken = refreshedPracticeSessionToken;
362
394
  }
395
+ _this3$webex$internal2 = _this3.webex.internal.llm.resolveSessionOwnership(_this3.meetingId, _constants.LLM_PRACTICE_SESSION), currentOwnerBeforeConnect = _this3$webex$internal2.currentOwner, isOwnerBeforeConnect = _this3$webex$internal2.isOwner;
396
+ if (isOwnerBeforeConnect) {
397
+ _context3.next = 10;
398
+ break;
399
+ }
400
+ _loggerProxy.default.logger.info("Webinar:index#updatePSDataChannel --> skipping pre-connect owner write; practice-session LLM owned by meeting ".concat(currentOwnerBeforeConnect, ", not ").concat(_this3.meetingId));
401
+ return _context3.abrupt("return", undefined);
402
+ case 10:
403
+ // Ensure refresh for practice datachannel requests is routed to this
404
+ // meeting only when we are actually about to connect the practice session.
405
+ // This avoids claiming ownership in flows that return early (e.g. missing
406
+ // practiceSessionDatachannelUrl or waiting for default session online).
407
+ // @ts-ignore - Fix type
408
+ _this3.webex.internal.llm.setRefreshHandler(function () {
409
+ return meeting.refreshDataChannelToken();
410
+ }, _constants.LLM_PRACTICE_SESSION, _this3.meetingId);
411
+ // @ts-ignore - Fix type
412
+ (_this3$webex$internal3 = (_this3$webex$internal4 = _this3.webex.internal.llm).setOwnerMeetingId) === null || _this3$webex$internal3 === void 0 ? void 0 : _this3$webex$internal3.call(_this3$webex$internal4, _this3.meetingId, _constants.LLM_PRACTICE_SESSION);
363
413
 
364
414
  // @ts-ignore - Fix type
365
415
  return _context3.abrupt("return", _this3.webex.internal.llm.registerAndConnect(url, practiceSessionDatachannelUrl, practiceSessionDatachannelToken, _constants.LLM_PRACTICE_SESSION).then(function (registerAndConnectResult) {
366
- var _this3$webex$internal, _this3$webex$internal2;
416
+ var _this3$webex$internal8, _this3$webex$internal9;
417
+ var _this3$webex$internal5 = _this3.webex.internal.llm.resolveSessionOwnership(_this3.meetingId, _constants.LLM_PRACTICE_SESSION),
418
+ currentOwnerAfterConnect = _this3$webex$internal5.currentOwner,
419
+ isOwnerAfterConnect = _this3$webex$internal5.isOwner;
420
+ if (_this3.meetingId && isOwnerAfterConnect) {
421
+ var _this3$webex$internal6, _this3$webex$internal7;
422
+ // @ts-ignore - Fix type
423
+ (_this3$webex$internal6 = (_this3$webex$internal7 = _this3.webex.internal.llm).setOwnerMeetingId) === null || _this3$webex$internal6 === void 0 ? void 0 : _this3$webex$internal6.call(_this3$webex$internal7, _this3.meetingId, _constants.LLM_PRACTICE_SESSION);
424
+ } else {
425
+ _loggerProxy.default.logger.info("Webinar:index#updatePSDataChannel --> skipping post-connect owner write; practice-session LLM owned by meeting ".concat(currentOwnerAfterConnect, ", not ").concat(_this3.meetingId));
426
+ }
427
+
367
428
  // Track the exact listener references so cleanupPSDataChannel can
368
429
  // unsubscribe deterministically, even if the meeting can no longer
369
430
  // be resolved at cleanup time.
@@ -381,7 +442,7 @@ var Webinar = _webexCore.WebexPlugin.extend({
381
442
  _this3.webex.internal.llm.on(event, _this3.llmListeners[listenerKey]);
382
443
  }
383
444
  // @ts-ignore - Fix type
384
- (_this3$webex$internal = _this3.webex.internal.voicea) === null || _this3$webex$internal === void 0 ? void 0 : (_this3$webex$internal2 = _this3$webex$internal.announce) === null || _this3$webex$internal2 === void 0 ? void 0 : _this3$webex$internal2.call(_this3$webex$internal);
445
+ (_this3$webex$internal8 = _this3.webex.internal.voicea) === null || _this3$webex$internal8 === void 0 ? void 0 : (_this3$webex$internal9 = _this3$webex$internal8.announce) === null || _this3$webex$internal9 === void 0 ? void 0 : _this3$webex$internal9.call(_this3$webex$internal8);
385
446
  if (isCaptionBoxOn) {
386
447
  _this3.webex.internal.voicea.updateSubchannelSubscriptions({
387
448
  subscribe: ['transcription']
@@ -389,8 +450,20 @@ var Webinar = _webexCore.WebexPlugin.extend({
389
450
  }
390
451
  _loggerProxy.default.logger.info("Webinar:index#updatePSDataChannel --> enabled to receive relay events for default session for ".concat(_constants.LLM_PRACTICE_SESSION, "!"));
391
452
  return _promise.default.resolve(registerAndConnectResult);
453
+ }).catch(function (error) {
454
+ var _this3$webex$internal0 = _this3.webex.internal.llm.resolveSessionOwnership(_this3.meetingId, _constants.LLM_PRACTICE_SESSION),
455
+ currentOwnerAfterRegisterFailure = _this3$webex$internal0.currentOwner,
456
+ isOwnerAfterRegisterFailure = _this3$webex$internal0.isOwner;
457
+ if (isOwnerAfterRegisterFailure) {
458
+ var _this3$webex$internal1, _this3$webex$internal10;
459
+ // @ts-ignore - Fix type
460
+ (_this3$webex$internal1 = (_this3$webex$internal10 = _this3.webex.internal.llm).setOwnerMeetingId) === null || _this3$webex$internal1 === void 0 ? void 0 : _this3$webex$internal1.call(_this3$webex$internal10, undefined, _constants.LLM_PRACTICE_SESSION);
461
+ } else {
462
+ _loggerProxy.default.logger.info("Webinar:index#updatePSDataChannel --> skipping failure owner release; practice-session LLM owned by meeting ".concat(currentOwnerAfterRegisterFailure, ", not ").concat(_this3.meetingId));
463
+ }
464
+ throw error;
392
465
  }));
393
- case 9:
466
+ case 11:
394
467
  case "end":
395
468
  return _context3.stop();
396
469
  }
@@ -438,7 +511,7 @@ var Webinar = _webexCore.WebexPlugin.extend({
438
511
  startWebcast: function startWebcast(meeting, layout) {
439
512
  var _this4 = this;
440
513
  return (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee4() {
441
- var _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
514
+ var _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t0;
442
515
  return _regenerator.default.wrap(function (_context4) {
443
516
  while (1) switch (_context4.prev = _context4.next) {
444
517
  case 0:
@@ -449,20 +522,20 @@ var Webinar = _webexCore.WebexPlugin.extend({
449
522
  _loggerProxy.default.logger.error("Meeting:webinar#startWebcast failed --> meeting parameter : ".concat(meeting));
450
523
  throw new Error('Meeting parameter does not meet expectations');
451
524
  case 1:
452
- _t2 = _this4;
453
- _t3 = _constants.HTTP_VERBS.PUT;
454
- _t4 = "".concat(_this4.webcastInstanceUrl, "/streaming");
455
- _t5 = _defineProperty2.default;
525
+ _t3 = _this4;
526
+ _t4 = _constants.HTTP_VERBS.PUT;
527
+ _t5 = "".concat(_this4.webcastInstanceUrl, "/streaming");
528
+ _t6 = _defineProperty2.default;
456
529
  _context4.next = 2;
457
530
  return _this4.webex.credentials.getUserToken();
458
531
  case 2:
459
- _t6 = _context4.sent;
460
- _t7 = "".concat(_webexCore.config.trackingIdPrefix, "_").concat(_uuid.default.v4().toString());
461
- _t8 = _t5({
462
- authorization: _t6,
463
- trackingId: _t7
532
+ _t7 = _context4.sent;
533
+ _t8 = "".concat(_webexCore.config.trackingIdPrefix, "_").concat(_uuid.default.v4().toString());
534
+ _t9 = _t6({
535
+ authorization: _t7,
536
+ trackingId: _t8
464
537
  }, _constants.HEADERS.CONTENT_TYPE, _constants.HEADERS.CONTENT_TYPE_VALUE.APPLICATION_JSON);
465
- _t9 = {
538
+ _t0 = {
466
539
  action: 'start',
467
540
  meetingInfo: {
468
541
  locusId: meeting.locusId,
@@ -470,11 +543,11 @@ var Webinar = _webexCore.WebexPlugin.extend({
470
543
  },
471
544
  layout: layout
472
545
  };
473
- return _context4.abrupt("return", _t2.request.call(_t2, {
474
- method: _t3,
475
- uri: _t4,
476
- headers: _t8,
477
- body: _t9
546
+ return _context4.abrupt("return", _t3.request.call(_t3, {
547
+ method: _t4,
548
+ uri: _t5,
549
+ headers: _t9,
550
+ body: _t0
478
551
  }).catch(function (error) {
479
552
  _loggerProxy.default.logger.error('Meeting:webinar#startWebcast failed', error);
480
553
  throw error;
@@ -493,31 +566,31 @@ var Webinar = _webexCore.WebexPlugin.extend({
493
566
  stopWebcast: function stopWebcast() {
494
567
  var _this5 = this;
495
568
  return (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee5() {
496
- var _t0, _t1, _t10, _t11, _t12, _t13, _t14, _t15;
569
+ var _t1, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
497
570
  return _regenerator.default.wrap(function (_context5) {
498
571
  while (1) switch (_context5.prev = _context5.next) {
499
572
  case 0:
500
- _t0 = _this5;
501
- _t1 = _constants.HTTP_VERBS.PUT;
502
- _t10 = "".concat(_this5.webcastInstanceUrl, "/streaming");
503
- _t11 = _defineProperty2.default;
573
+ _t1 = _this5;
574
+ _t10 = _constants.HTTP_VERBS.PUT;
575
+ _t11 = "".concat(_this5.webcastInstanceUrl, "/streaming");
576
+ _t12 = _defineProperty2.default;
504
577
  _context5.next = 1;
505
578
  return _this5.webex.credentials.getUserToken();
506
579
  case 1:
507
- _t12 = _context5.sent;
508
- _t13 = "".concat(_webexCore.config.trackingIdPrefix, "_").concat(_uuid.default.v4().toString());
509
- _t14 = _t11({
510
- authorization: _t12,
511
- trackingId: _t13
580
+ _t13 = _context5.sent;
581
+ _t14 = "".concat(_webexCore.config.trackingIdPrefix, "_").concat(_uuid.default.v4().toString());
582
+ _t15 = _t12({
583
+ authorization: _t13,
584
+ trackingId: _t14
512
585
  }, _constants.HEADERS.CONTENT_TYPE, _constants.HEADERS.CONTENT_TYPE_VALUE.APPLICATION_JSON);
513
- _t15 = {
586
+ _t16 = {
514
587
  action: 'stop'
515
588
  };
516
- return _context5.abrupt("return", _t0.request.call(_t0, {
517
- method: _t1,
518
- uri: _t10,
519
- headers: _t14,
520
- body: _t15
589
+ return _context5.abrupt("return", _t1.request.call(_t1, {
590
+ method: _t10,
591
+ uri: _t11,
592
+ headers: _t15,
593
+ body: _t16
521
594
  }).catch(function (error) {
522
595
  _loggerProxy.default.logger.error('Meeting:webinar#stopWebcast failed', error);
523
596
  throw error;
@@ -536,26 +609,26 @@ var Webinar = _webexCore.WebexPlugin.extend({
536
609
  queryWebcastLayout: function queryWebcastLayout() {
537
610
  var _this6 = this;
538
611
  return (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee6() {
539
- var _t16, _t17, _t18, _t19, _t20, _t21;
612
+ var _t17, _t18, _t19, _t20, _t21, _t22;
540
613
  return _regenerator.default.wrap(function (_context6) {
541
614
  while (1) switch (_context6.prev = _context6.next) {
542
615
  case 0:
543
- _t16 = _this6;
544
- _t17 = _constants.HTTP_VERBS.GET;
545
- _t18 = "".concat(_this6.webcastInstanceUrl, "/layout");
616
+ _t17 = _this6;
617
+ _t18 = _constants.HTTP_VERBS.GET;
618
+ _t19 = "".concat(_this6.webcastInstanceUrl, "/layout");
546
619
  _context6.next = 1;
547
620
  return _this6.webex.credentials.getUserToken();
548
621
  case 1:
549
- _t19 = _context6.sent;
550
- _t20 = "".concat(_webexCore.config.trackingIdPrefix, "_").concat(_uuid.default.v4().toString());
551
- _t21 = {
552
- authorization: _t19,
553
- trackingId: _t20
622
+ _t20 = _context6.sent;
623
+ _t21 = "".concat(_webexCore.config.trackingIdPrefix, "_").concat(_uuid.default.v4().toString());
624
+ _t22 = {
625
+ authorization: _t20,
626
+ trackingId: _t21
554
627
  };
555
- return _context6.abrupt("return", _t16.request.call(_t16, {
556
- method: _t17,
557
- uri: _t18,
558
- headers: _t21
628
+ return _context6.abrupt("return", _t17.request.call(_t17, {
629
+ method: _t18,
630
+ uri: _t19,
631
+ headers: _t22
559
632
  }).catch(function (error) {
560
633
  _loggerProxy.default.logger.error('Meeting:webinar#queryWebcastLayout failed', error);
561
634
  throw error;
@@ -575,34 +648,34 @@ var Webinar = _webexCore.WebexPlugin.extend({
575
648
  updateWebcastLayout: function updateWebcastLayout(layout) {
576
649
  var _this7 = this;
577
650
  return (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee7() {
578
- var _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29;
651
+ var _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30;
579
652
  return _regenerator.default.wrap(function (_context7) {
580
653
  while (1) switch (_context7.prev = _context7.next) {
581
654
  case 0:
582
- _t22 = _this7;
583
- _t23 = _constants.HTTP_VERBS.PUT;
584
- _t24 = "".concat(_this7.webcastInstanceUrl, "/layout");
585
- _t25 = _defineProperty2.default;
655
+ _t23 = _this7;
656
+ _t24 = _constants.HTTP_VERBS.PUT;
657
+ _t25 = "".concat(_this7.webcastInstanceUrl, "/layout");
658
+ _t26 = _defineProperty2.default;
586
659
  _context7.next = 1;
587
660
  return _this7.webex.credentials.getUserToken();
588
661
  case 1:
589
- _t26 = _context7.sent;
590
- _t27 = "".concat(_webexCore.config.trackingIdPrefix, "_").concat(_uuid.default.v4().toString());
591
- _t28 = _t25({
592
- authorization: _t26,
593
- trackingId: _t27
662
+ _t27 = _context7.sent;
663
+ _t28 = "".concat(_webexCore.config.trackingIdPrefix, "_").concat(_uuid.default.v4().toString());
664
+ _t29 = _t26({
665
+ authorization: _t27,
666
+ trackingId: _t28
594
667
  }, _constants.HEADERS.CONTENT_TYPE, _constants.HEADERS.CONTENT_TYPE_VALUE.APPLICATION_JSON);
595
- _t29 = {
668
+ _t30 = {
596
669
  videoLayout: layout.videoLayout,
597
670
  contentLayout: layout.contentLayout,
598
671
  syncStageLayout: layout.syncStageLayout,
599
672
  syncStageInMeeting: layout.syncStageInMeeting
600
673
  };
601
- return _context7.abrupt("return", _t22.request.call(_t22, {
602
- method: _t23,
603
- uri: _t24,
604
- headers: _t28,
605
- body: _t29
674
+ return _context7.abrupt("return", _t23.request.call(_t23, {
675
+ method: _t24,
676
+ uri: _t25,
677
+ headers: _t29,
678
+ body: _t30
606
679
  }).catch(function (error) {
607
680
  _loggerProxy.default.logger.error('Meeting:webinar#updateWebcastLayout failed', error);
608
681
  throw error;
@@ -621,26 +694,26 @@ var Webinar = _webexCore.WebexPlugin.extend({
621
694
  viewAllWebcastAttendees: function viewAllWebcastAttendees() {
622
695
  var _this8 = this;
623
696
  return (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee8() {
624
- var _t30, _t31, _t32, _t33, _t34, _t35;
697
+ var _t31, _t32, _t33, _t34, _t35, _t36;
625
698
  return _regenerator.default.wrap(function (_context8) {
626
699
  while (1) switch (_context8.prev = _context8.next) {
627
700
  case 0:
628
- _t30 = _this8;
629
- _t31 = _constants.HTTP_VERBS.GET;
630
- _t32 = "".concat(_this8.webcastInstanceUrl, "/attendees");
701
+ _t31 = _this8;
702
+ _t32 = _constants.HTTP_VERBS.GET;
703
+ _t33 = "".concat(_this8.webcastInstanceUrl, "/attendees");
631
704
  _context8.next = 1;
632
705
  return _this8.webex.credentials.getUserToken();
633
706
  case 1:
634
- _t33 = _context8.sent;
635
- _t34 = "".concat(_webexCore.config.trackingIdPrefix, "_").concat(_uuid.default.v4().toString());
636
- _t35 = {
637
- authorization: _t33,
638
- trackingId: _t34
707
+ _t34 = _context8.sent;
708
+ _t35 = "".concat(_webexCore.config.trackingIdPrefix, "_").concat(_uuid.default.v4().toString());
709
+ _t36 = {
710
+ authorization: _t34,
711
+ trackingId: _t35
639
712
  };
640
- return _context8.abrupt("return", _t30.request.call(_t30, {
641
- method: _t31,
642
- uri: _t32,
643
- headers: _t35
713
+ return _context8.abrupt("return", _t31.request.call(_t31, {
714
+ method: _t32,
715
+ uri: _t33,
716
+ headers: _t36
644
717
  }).catch(function (error) {
645
718
  _loggerProxy.default.logger.error('Meeting:webinar#viewAllWebcastAttendees failed', error);
646
719
  throw error;
@@ -661,27 +734,27 @@ var Webinar = _webexCore.WebexPlugin.extend({
661
734
  var _arguments = arguments,
662
735
  _this9 = this;
663
736
  return (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee9() {
664
- var queryString, _t36, _t37, _t38, _t39, _t40, _t41;
737
+ var queryString, _t37, _t38, _t39, _t40, _t41, _t42;
665
738
  return _regenerator.default.wrap(function (_context9) {
666
739
  while (1) switch (_context9.prev = _context9.next) {
667
740
  case 0:
668
741
  queryString = _arguments.length > 0 && _arguments[0] !== undefined ? _arguments[0] : '';
669
- _t36 = _this9;
670
- _t37 = _constants.HTTP_VERBS.GET;
671
- _t38 = "".concat(_this9.webcastInstanceUrl, "/attendees?keyword=").concat(encodeURIComponent(queryString));
742
+ _t37 = _this9;
743
+ _t38 = _constants.HTTP_VERBS.GET;
744
+ _t39 = "".concat(_this9.webcastInstanceUrl, "/attendees?keyword=").concat(encodeURIComponent(queryString));
672
745
  _context9.next = 1;
673
746
  return _this9.webex.credentials.getUserToken();
674
747
  case 1:
675
- _t39 = _context9.sent;
676
- _t40 = "".concat(_webexCore.config.trackingIdPrefix, "_").concat(_uuid.default.v4().toString());
677
- _t41 = {
678
- authorization: _t39,
679
- trackingId: _t40
748
+ _t40 = _context9.sent;
749
+ _t41 = "".concat(_webexCore.config.trackingIdPrefix, "_").concat(_uuid.default.v4().toString());
750
+ _t42 = {
751
+ authorization: _t40,
752
+ trackingId: _t41
680
753
  };
681
- return _context9.abrupt("return", _t36.request.call(_t36, {
682
- method: _t37,
683
- uri: _t38,
684
- headers: _t41
754
+ return _context9.abrupt("return", _t37.request.call(_t37, {
755
+ method: _t38,
756
+ uri: _t39,
757
+ headers: _t42
685
758
  }).catch(function (error) {
686
759
  _loggerProxy.default.logger.error('Meeting:webinar#searchWebcastAttendees failed', error);
687
760
  throw error;
@@ -701,26 +774,26 @@ var Webinar = _webexCore.WebexPlugin.extend({
701
774
  expelWebcastAttendee: function expelWebcastAttendee(participantId) {
702
775
  var _this0 = this;
703
776
  return (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee0() {
704
- var _t42, _t43, _t44, _t45, _t46, _t47;
777
+ var _t43, _t44, _t45, _t46, _t47, _t48;
705
778
  return _regenerator.default.wrap(function (_context0) {
706
779
  while (1) switch (_context0.prev = _context0.next) {
707
780
  case 0:
708
- _t42 = _this0;
709
- _t43 = _constants.HTTP_VERBS.DELETE;
710
- _t44 = "".concat(_this0.webcastInstanceUrl, "/attendees/").concat(participantId);
781
+ _t43 = _this0;
782
+ _t44 = _constants.HTTP_VERBS.DELETE;
783
+ _t45 = "".concat(_this0.webcastInstanceUrl, "/attendees/").concat(participantId);
711
784
  _context0.next = 1;
712
785
  return _this0.webex.credentials.getUserToken();
713
786
  case 1:
714
- _t45 = _context0.sent;
715
- _t46 = "".concat(_webexCore.config.trackingIdPrefix, "_").concat(_uuid.default.v4().toString());
716
- _t47 = {
717
- authorization: _t45,
718
- trackingId: _t46
787
+ _t46 = _context0.sent;
788
+ _t47 = "".concat(_webexCore.config.trackingIdPrefix, "_").concat(_uuid.default.v4().toString());
789
+ _t48 = {
790
+ authorization: _t46,
791
+ trackingId: _t47
719
792
  };
720
- return _context0.abrupt("return", _t42.request.call(_t42, {
721
- method: _t43,
722
- uri: _t44,
723
- headers: _t47
793
+ return _context0.abrupt("return", _t43.request.call(_t43, {
794
+ method: _t44,
795
+ uri: _t45,
796
+ headers: _t48
724
797
  }).catch(function (error) {
725
798
  _loggerProxy.default.logger.error('Meeting:webinar#expelWebcastAttendee failed', error);
726
799
  throw error;
@@ -744,7 +817,7 @@ var Webinar = _webexCore.WebexPlugin.extend({
744
817
  var _this1 = this;
745
818
  return (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee1() {
746
819
  var _payload$limit, _meeting$locusInfo3, _meeting$locusInfo3$l, _meeting$locusInfo3$l2, _meeting$locusInfo3$l3;
747
- var meeting, rawParams, attendeeSearchUrl, _t48, _t49, _t50, _t51, _t52, _t53;
820
+ var meeting, rawParams, attendeeSearchUrl, _t49, _t50, _t51, _t52, _t53, _t54;
748
821
  return _regenerator.default.wrap(function (_context1) {
749
822
  while (1) switch (_context1.prev = _context1.next) {
750
823
  case 0:
@@ -769,22 +842,22 @@ var Webinar = _webexCore.WebexPlugin.extend({
769
842
  _loggerProxy.default.logger.error('Meeting:webinar5k#searchLargeScaleWebinarAttendees failed --> attendee search url unavailable');
770
843
  throw new Error('Meeting:webinar5k#Attendee search url is not available');
771
844
  case 2:
772
- _t48 = _this1;
773
- _t49 = _constants.HTTP_VERBS.GET;
774
- _t50 = "".concat(attendeeSearchUrl, "?").concat(new URLSearchParams((0, _utils.sanitizeParams)(rawParams)).toString());
845
+ _t49 = _this1;
846
+ _t50 = _constants.HTTP_VERBS.GET;
847
+ _t51 = "".concat(attendeeSearchUrl, "?").concat(new URLSearchParams((0, _utils.sanitizeParams)(rawParams)).toString());
775
848
  _context1.next = 3;
776
849
  return _this1.webex.credentials.getUserToken();
777
850
  case 3:
778
- _t51 = _context1.sent;
779
- _t52 = "".concat(_webexCore.config.trackingIdPrefix, "_").concat(_uuid.default.v4().toString());
780
- _t53 = {
781
- authorization: _t51,
782
- trackingId: _t52
851
+ _t52 = _context1.sent;
852
+ _t53 = "".concat(_webexCore.config.trackingIdPrefix, "_").concat(_uuid.default.v4().toString());
853
+ _t54 = {
854
+ authorization: _t52,
855
+ trackingId: _t53
783
856
  };
784
- return _context1.abrupt("return", _t48.request.call(_t48, {
785
- method: _t49,
786
- uri: _t50,
787
- headers: _t53
857
+ return _context1.abrupt("return", _t49.request.call(_t49, {
858
+ method: _t50,
859
+ uri: _t51,
860
+ headers: _t54
788
861
  }).catch(function (error) {
789
862
  _loggerProxy.default.logger.error('Meeting:webinar5k#searchLargeScaleWebinarAttendees failed', error);
790
863
  throw error;
@@ -796,7 +869,7 @@ var Webinar = _webexCore.WebexPlugin.extend({
796
869
  }, _callee1);
797
870
  }))();
798
871
  },
799
- version: "3.12.0-next.65"
872
+ version: "3.12.0-next.67"
800
873
  });
801
874
  var _default = exports.default = Webinar;
802
875
  //# sourceMappingURL=index.js.map