@webex/plugin-meetings 3.1.0-next.21 → 3.1.0-next.22

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.
@@ -1141,6 +1141,14 @@ export default class Meeting extends StatelessWebexPlugin {
1141
1141
  * @returns{void}
1142
1142
  */
1143
1143
  private triggerStopReceivingTranscriptionEvent;
1144
+ /**
1145
+ * This is a callback for the LLM event that is triggered when it comes online
1146
+ * This method in turn will trigger an event to the developers that the LLM is connected
1147
+ * @private
1148
+ * @memberof Meeting
1149
+ * @returns {null}
1150
+ */
1151
+ private handleLLMOnline;
1144
1152
  /**
1145
1153
  * Specify joining via audio (option: pstn), video, screenshare
1146
1154
  * @param {JoinOptions} options A configurable options object for joining a meeting
@@ -62,7 +62,7 @@ var Webinar = _webexCore.WebexPlugin.extend({
62
62
  updateCanManageWebcast: function updateCanManageWebcast(canManageWebcast) {
63
63
  this.set('canManageWebcast', canManageWebcast);
64
64
  },
65
- version: "3.1.0-next.21"
65
+ version: "3.1.0-next.22"
66
66
  });
67
67
  var _default = exports.default = Webinar;
68
68
  //# sourceMappingURL=index.js.map
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.1.0-next.21",
46
+ "@webex/plugin-meetings": "3.1.0-next.22",
47
47
  "@webex/plugin-rooms": "3.1.0-next.3",
48
48
  "@webex/test-helper-chai": "3.1.0-next.3",
49
49
  "@webex/test-helper-mocha": "3.1.0-next.3",
@@ -70,7 +70,7 @@
70
70
  "@webex/internal-plugin-metrics": "3.1.0-next.3",
71
71
  "@webex/internal-plugin-support": "3.1.0-next.3",
72
72
  "@webex/internal-plugin-user": "3.1.0-next.3",
73
- "@webex/internal-plugin-voicea": "3.1.0-next.21",
73
+ "@webex/internal-plugin-voicea": "3.1.0-next.22",
74
74
  "@webex/media-helpers": "3.1.0-next.3",
75
75
  "@webex/plugin-people": "3.1.0-next.3",
76
76
  "@webex/plugin-rooms": "3.1.0-next.3",
@@ -91,5 +91,5 @@
91
91
  "//": [
92
92
  "TODO: upgrade jwt-decode when moving to node 18"
93
93
  ],
94
- "version": "3.1.0-next.21"
94
+ "version": "3.1.0-next.22"
95
95
  }
@@ -4953,6 +4953,27 @@ export default class Meeting extends StatelessWebexPlugin {
4953
4953
  );
4954
4954
  }
4955
4955
 
4956
+ /**
4957
+ * This is a callback for the LLM event that is triggered when it comes online
4958
+ * This method in turn will trigger an event to the developers that the LLM is connected
4959
+ * @private
4960
+ * @memberof Meeting
4961
+ * @returns {null}
4962
+ */
4963
+ private handleLLMOnline = (): void => {
4964
+ // @ts-ignore
4965
+ this.webex.internal.llm.off('online', this.handleLLMOnline);
4966
+ Trigger.trigger(
4967
+ this,
4968
+ {
4969
+ file: 'meeting/index',
4970
+ function: 'handleLLMOnline',
4971
+ },
4972
+ EVENT_TRIGGERS.MEETING_TRANSCRIPTION_CONNECTED,
4973
+ undefined
4974
+ );
4975
+ };
4976
+
4956
4977
  /**
4957
4978
  * Specify joining via audio (option: pstn), video, screenshare
4958
4979
  * @param {JoinOptions} options A configurable options object for joining a meeting
@@ -5172,6 +5193,8 @@ export default class Meeting extends StatelessWebexPlugin {
5172
5193
  .then((join) => {
5173
5194
  // @ts-ignore - config coming from registerPlugin
5174
5195
  if (this.config.enableAutomaticLLM) {
5196
+ // @ts-ignore
5197
+ this.webex.internal.llm.on('online', this.handleLLMOnline);
5175
5198
  this.updateLLMConnection()
5176
5199
  .catch((error) => {
5177
5200
  LoggerProxy.logger.error(
@@ -5189,15 +5212,6 @@ export default class Meeting extends StatelessWebexPlugin {
5189
5212
  LoggerProxy.logger.info(
5190
5213
  'Meeting:index#join --> Transcription Socket Connection Success'
5191
5214
  );
5192
- Trigger.trigger(
5193
- this,
5194
- {
5195
- file: 'meeting/index',
5196
- function: 'join',
5197
- },
5198
- EVENT_TRIGGERS.MEETING_TRANSCRIPTION_CONNECTED,
5199
- undefined
5200
- );
5201
5215
  });
5202
5216
  }
5203
5217
 
@@ -1302,6 +1302,31 @@ describe('plugin-meetings', () => {
1302
1302
  );
1303
1303
  });
1304
1304
  });
1305
+
1306
+ describe('#handleLLMOnline', () => {
1307
+ beforeEach(() => {
1308
+ webex.internal.llm.off = sinon.stub();
1309
+ });
1310
+
1311
+ it('turns off llm online, emits transcription connected events', () => {
1312
+ meeting.handleLLMOnline();
1313
+ assert.calledOnceWithExactly(
1314
+ webex.internal.llm.off,
1315
+ 'online',
1316
+ meeting.handleLLMOnline
1317
+ );
1318
+ assert.calledWith(
1319
+ TriggerProxy.trigger,
1320
+ sinon.match.instanceOf(Meeting),
1321
+ {
1322
+ file: 'meeting/index',
1323
+ function: 'handleLLMOnline',
1324
+ },
1325
+ EVENT_TRIGGERS.MEETING_TRANSCRIPTION_CONNECTED
1326
+ );
1327
+ });
1328
+ });
1329
+
1305
1330
  describe('#join', () => {
1306
1331
  let sandbox = null;
1307
1332
  let setCorrelationIdSpy;
@@ -1351,15 +1376,10 @@ describe('plugin-meetings', () => {
1351
1376
  assert.calledOnce(MeetingUtil.joinMeeting);
1352
1377
  assert.calledOnce(meeting.setLocus);
1353
1378
  assert.equal(result, joinMeetingResult);
1354
-
1355
1379
  assert.calledWith(
1356
- TriggerProxy.trigger,
1357
- sinon.match.instanceOf(Meeting),
1358
- {
1359
- file: 'meeting/index',
1360
- function: 'join',
1361
- },
1362
- EVENT_TRIGGERS.MEETING_TRANSCRIPTION_CONNECTED
1380
+ webex.internal.llm.on,
1381
+ 'online',
1382
+ meeting.handleLLMOnline
1363
1383
  );
1364
1384
  });
1365
1385