@webex/plugin-meetings 3.12.0-next.1 → 3.12.0-next.2

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.
@@ -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.1"
181
+ version: "3.12.0-next.2"
182
182
  });
183
183
  var _default = exports.default = AIEnableRequest;
184
184
  //# sourceMappingURL=index.js.map
@@ -209,7 +209,7 @@ var Breakout = _webexCore.WebexPlugin.extend({
209
209
  sessionId: this.sessionId
210
210
  });
211
211
  },
212
- version: "3.12.0-next.1"
212
+ version: "3.12.0-next.2"
213
213
  });
214
214
  var _default = exports.default = Breakout;
215
215
  //# sourceMappingURL=breakout.js.map
@@ -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.1"
1112
+ version: "3.12.0-next.2"
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.1"
375
+ version: "3.12.0-next.2"
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.1"
21
+ version: "3.12.0-next.2"
22
22
  });
23
23
  var _default = exports.default = SILanguage;
24
24
  //# sourceMappingURL=siLanguage.js.map
@@ -1550,11 +1550,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
1550
1550
  _this.shareStatus = _constants.SHARE_STATUS.NO_SHARE;
1551
1551
  }
1552
1552
  _this.queuedMediaUpdates = [];
1553
- if (_this.transcription) {
1554
- _this.stopTranscription();
1555
- _this.transcription = undefined;
1556
- }
1553
+ _this.stopTranscription();
1554
+ _this.transcription = undefined;
1557
1555
  _this.annotation.deregisterEvents();
1556
+ _this.clearDataChannelToken();
1558
1557
  _context5.next = 1;
1559
1558
  return _this.cleanupLLMConneciton({
1560
1559
  throwOnError: false
@@ -6411,24 +6410,22 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6411
6410
  * @returns {void}
6412
6411
  */
6413
6412
  function stopTranscription() {
6414
- if (this.transcription) {
6415
- // @ts-ignore
6416
- this.webex.internal.voicea.off(_internalPluginVoicea.EVENT_TRIGGERS.VOICEA_ANNOUNCEMENT, this.voiceaListenerCallbacks[_internalPluginVoicea.EVENT_TRIGGERS.VOICEA_ANNOUNCEMENT]);
6413
+ // @ts-ignore
6414
+ this.webex.internal.voicea.off(_internalPluginVoicea.EVENT_TRIGGERS.VOICEA_ANNOUNCEMENT, this.voiceaListenerCallbacks[_internalPluginVoicea.EVENT_TRIGGERS.VOICEA_ANNOUNCEMENT]);
6417
6415
 
6418
- // @ts-ignore
6419
- this.webex.internal.voicea.off(_internalPluginVoicea.EVENT_TRIGGERS.CAPTIONS_TURNED_ON, this.voiceaListenerCallbacks[_internalPluginVoicea.EVENT_TRIGGERS.CAPTIONS_TURNED_ON]);
6416
+ // @ts-ignore
6417
+ this.webex.internal.voicea.off(_internalPluginVoicea.EVENT_TRIGGERS.CAPTIONS_TURNED_ON, this.voiceaListenerCallbacks[_internalPluginVoicea.EVENT_TRIGGERS.CAPTIONS_TURNED_ON]);
6420
6418
 
6421
- // @ts-ignore
6422
- this.webex.internal.voicea.off(_internalPluginVoicea.EVENT_TRIGGERS.EVA_COMMAND, this.voiceaListenerCallbacks[_internalPluginVoicea.EVENT_TRIGGERS.EVA_COMMAND]);
6419
+ // @ts-ignore
6420
+ this.webex.internal.voicea.off(_internalPluginVoicea.EVENT_TRIGGERS.EVA_COMMAND, this.voiceaListenerCallbacks[_internalPluginVoicea.EVENT_TRIGGERS.EVA_COMMAND]);
6423
6421
 
6424
- // @ts-ignore
6425
- this.webex.internal.voicea.off(_internalPluginVoicea.EVENT_TRIGGERS.NEW_CAPTION, this.voiceaListenerCallbacks[_internalPluginVoicea.EVENT_TRIGGERS.NEW_CAPTION]);
6422
+ // @ts-ignore
6423
+ this.webex.internal.voicea.off(_internalPluginVoicea.EVENT_TRIGGERS.NEW_CAPTION, this.voiceaListenerCallbacks[_internalPluginVoicea.EVENT_TRIGGERS.NEW_CAPTION]);
6426
6424
 
6427
- // @ts-ignore
6428
- this.webex.internal.voicea.deregisterEvents();
6429
- this.areVoiceaEventsSetup = false;
6430
- this.triggerStopReceivingTranscriptionEvent();
6431
- }
6425
+ // @ts-ignore
6426
+ this.webex.internal.voicea.deregisterEvents();
6427
+ this.areVoiceaEventsSetup = false;
6428
+ this.triggerStopReceivingTranscriptionEvent();
6432
6429
  }
6433
6430
 
6434
6431
  /**
@@ -6646,6 +6643,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6646
6643
  _this34.deferJoin = undefined;
6647
6644
  return _promise.default.reject(error);
6648
6645
  }).then(function (join) {
6646
+ _this34.saveDataChannelToken(join);
6649
6647
  // @ts-ignore - config coming from registerPlugin
6650
6648
  if (_this34.config.enableAutomaticLLM) {
6651
6649
  // @ts-ignore
@@ -6717,32 +6715,58 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6717
6715
  }
6718
6716
  }
6719
6717
  }, {
6720
- key: "updateLLMConnection",
6721
- value: (
6718
+ key: "clearDataChannelToken",
6719
+ value:
6720
+ /**
6721
+ * Clears all data channel tokens stored in LLM.
6722
+ * Called during meeting cleanup to ensure stale tokens are not reused.
6723
+ * @returns {void}
6724
+ */
6725
+ function clearDataChannelToken() {
6726
+ // @ts-ignore
6727
+ this.webex.internal.llm.resetDatachannelTokens();
6728
+ }
6729
+
6730
+ /**
6731
+ * Saves the data channel tokens from the join response into LLM so that
6732
+ * updateLLMConnection / updatePSDataChannel don't need to fetch them from locusInfo.
6733
+ * @param {Object} join - The parsed join response (from MeetingUtil.parseLocusJoin)
6734
+ * @returns {void}
6735
+ */
6736
+ }, {
6737
+ key: "saveDataChannelToken",
6738
+ value: function saveDataChannelToken(join) {
6739
+ var _join$locus, _join$locus$self, _join$locus2, _join$locus2$self;
6740
+ var datachannelToken = join === null || join === void 0 ? void 0 : (_join$locus = join.locus) === null || _join$locus === void 0 ? void 0 : (_join$locus$self = _join$locus.self) === null || _join$locus$self === void 0 ? void 0 : _join$locus$self.datachannelToken;
6741
+ var practiceSessionDatachannelToken = join === null || join === void 0 ? void 0 : (_join$locus2 = join.locus) === null || _join$locus2 === void 0 ? void 0 : (_join$locus2$self = _join$locus2.self) === null || _join$locus2$self === void 0 ? void 0 : _join$locus2$self.practiceSessionDatachannelToken;
6742
+ if (datachannelToken) {
6743
+ // @ts-ignore
6744
+ this.webex.internal.llm.setDatachannelToken(datachannelToken, _internalPluginLlm.DataChannelTokenType.Default);
6745
+ }
6746
+ if (practiceSessionDatachannelToken) {
6747
+ // @ts-ignore
6748
+ this.webex.internal.llm.setDatachannelToken(practiceSessionDatachannelToken, _internalPluginLlm.DataChannelTokenType.PracticeSession);
6749
+ }
6750
+ }
6751
+
6722
6752
  /**
6723
6753
  * Connects to low latency mercury and reconnects if the address has changed
6724
6754
  * It will also disconnect if called when the meeting has ended
6725
- * @param {String} datachannelUrl
6726
6755
  * @returns {Promise}
6727
6756
  */
6728
- function () {
6757
+ }, {
6758
+ key: "updateLLMConnection",
6759
+ value: (function () {
6729
6760
  var _updateLLMConnection = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee20() {
6730
6761
  var _this36 = this;
6731
- var _ref40, _ref40$url, url, _ref40$info, _ref40$info2, _ref40$info2$datachan, datachannelUrl, _ref40$self, _ref40$self2, _ref40$self2$datachan, datachannelToken, isJoined, currentToken, finalToken, dataChannelUrl;
6762
+ var _ref40, _ref40$url, url, _ref40$info, _ref40$info2, _ref40$info2$datachan, datachannelUrl, isJoined, datachannelToken, dataChannelUrl;
6732
6763
  return _regenerator.default.wrap(function (_context20) {
6733
6764
  while (1) switch (_context20.prev = _context20.next) {
6734
6765
  case 0:
6735
6766
  // @ts-ignore - Fix type
6736
- _ref40 = this.locusInfo || {}, _ref40$url = _ref40.url, url = _ref40$url === void 0 ? undefined : _ref40$url, _ref40$info = _ref40.info, _ref40$info2 = _ref40$info === void 0 ? {} : _ref40$info, _ref40$info2$datachan = _ref40$info2.datachannelUrl, datachannelUrl = _ref40$info2$datachan === void 0 ? undefined : _ref40$info2$datachan, _ref40$self = _ref40.self, _ref40$self2 = _ref40$self === void 0 ? {} : _ref40$self, _ref40$self2$datachan = _ref40$self2.datachannelToken, datachannelToken = _ref40$self2$datachan === void 0 ? undefined : _ref40$self2$datachan;
6767
+ _ref40 = this.locusInfo || {}, _ref40$url = _ref40.url, url = _ref40$url === void 0 ? undefined : _ref40$url, _ref40$info = _ref40.info, _ref40$info2 = _ref40$info === void 0 ? {} : _ref40$info, _ref40$info2$datachan = _ref40$info2.datachannelUrl, datachannelUrl = _ref40$info2$datachan === void 0 ? undefined : _ref40$info2$datachan;
6737
6768
  isJoined = this.isJoined(); // @ts-ignore
6738
- currentToken = this.webex.internal.llm.getDatachannelToken(_internalPluginLlm.DataChannelTokenType.Default);
6739
- finalToken = currentToken !== null && currentToken !== void 0 ? currentToken : datachannelToken;
6740
- if (!currentToken && datachannelToken) {
6741
- // @ts-ignore
6742
- this.webex.internal.llm.setDatachannelToken(datachannelToken, _internalPluginLlm.DataChannelTokenType.Default);
6743
- }
6744
-
6745
- // webinar panelist should use new data channel in practice session
6769
+ datachannelToken = this.webex.internal.llm.getDatachannelToken(_internalPluginLlm.DataChannelTokenType.Default);
6746
6770
  dataChannelUrl = datachannelUrl; // @ts-ignore - Fix type
6747
6771
  if (!this.webex.internal.llm.isConnected()) {
6748
6772
  _context20.next = 2;
@@ -6769,7 +6793,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
6769
6793
  }
6770
6794
  return _context20.abrupt("return", undefined);
6771
6795
  case 3:
6772
- return _context20.abrupt("return", this.webex.internal.llm.registerAndConnect(url, dataChannelUrl, finalToken).then(function (registerAndConnectResult) {
6796
+ return _context20.abrupt("return", this.webex.internal.llm.registerAndConnect(url, dataChannelUrl, datachannelToken).then(function (registerAndConnectResult) {
6773
6797
  // @ts-ignore - Fix type
6774
6798
  _this36.webex.internal.llm.off('event:relay.event', _this36.processRelayEvent);
6775
6799
  // @ts-ignore - Fix type