@webex/internal-plugin-llm 3.0.0-beta.159 → 3.0.0-beta.160

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/llm.js CHANGED
@@ -56,28 +56,14 @@ exports.config = config;
56
56
  var LLMChannel = /*#__PURE__*/function (_ref) {
57
57
  (0, _inherits2.default)(LLMChannel, _ref);
58
58
  var _super = _createSuper(LLMChannel);
59
- /**
60
- * If the LLM plugin has been registered and listening
61
- * @instance
62
- * @type {Boolean}
63
- * @public
64
- */
65
-
66
- /**
67
- * Initializes the LLM Plugin
68
- * @constructor
69
- * @public
70
- */
71
59
  function LLMChannel() {
72
60
  var _this;
73
61
  (0, _classCallCheck2.default)(this, LLMChannel);
74
62
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
75
63
  args[_key] = arguments[_key];
76
64
  }
77
- // eslint-disable-next-line constructor-super
78
65
  _this = _super.call.apply(_super, [this].concat(args));
79
66
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "namespace", _constants.LLM);
80
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "registered", false);
81
67
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "webSocketUrl", void 0);
82
68
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "binding", void 0);
83
69
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "locusUrl", void 0);
@@ -100,13 +86,11 @@ var LLMChannel = /*#__PURE__*/function (_ref) {
100
86
  return _this.register(datachannelUrl).then(function () {
101
87
  if (!locusUrl || !datachannelUrl) return undefined;
102
88
  _this.locusUrl = locusUrl;
103
- _this.connect(_this.webSocketUrl).then(function () {
104
- _this.registered = true;
105
- });
89
+ _this.connect(_this.webSocketUrl);
106
90
  });
107
91
  });
108
92
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "isConnected", function () {
109
- return _this.registered;
93
+ return _this.connected;
110
94
  });
111
95
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "getBinding", function () {
112
96
  return _this.binding;
@@ -116,21 +100,13 @@ var LLMChannel = /*#__PURE__*/function (_ref) {
116
100
  });
117
101
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "disconnectLLM", function () {
118
102
  return _this.disconnect().then(function () {
119
- _this.registered = false;
120
103
  _this.locusUrl = undefined;
121
104
  _this.binding = undefined;
122
105
  _this.webSocketUrl = undefined;
123
106
  });
124
107
  });
125
- _this.registered = false;
126
108
  return _this;
127
109
  }
128
-
129
- /**
130
- * Register to the websocket
131
- * @param {string} llmSocketUrl
132
- * @returns {Promise<void>}
133
- */
134
110
  return (0, _createClass2.default)(LLMChannel);
135
111
  }(_internalPluginMercury.default);
136
112
  exports.default = LLMChannel;
package/dist/llm.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["config","llm","pingInterval","process","env","MERCURY_PING_INTERVAL","pongTimeout","MERCURY_PONG_TIMEOUT","backoffTimeMax","MERCURY_BACKOFF_TIME_MAX","backoffTimeReset","MERCURY_BACKOFF_TIME_RESET","forceCloseDelay","MERCURY_FORCE_CLOSE_DELAY","LLMChannel","args","LLM","llmSocketUrl","request","method","url","body","deviceUrl","webex","internal","device","then","res","webSocketUrl","binding","catch","error","logger","locusUrl","datachannelUrl","register","undefined","connect","registered","disconnect","Mercury"],"sources":["llm.ts"],"sourcesContent":["/* eslint-disable consistent-return */\n\nimport Mercury from '@webex/internal-plugin-mercury';\n\nimport {LLM} from './constants';\n// eslint-disable-next-line no-unused-vars\nimport {ILLMChannel} from './llm.types';\n\nexport const config = {\n llm: {\n /**\n * Milliseconds between pings sent up the socket\n * @type {number}\n */\n pingInterval: process.env.MERCURY_PING_INTERVAL || 15000,\n /**\n * Milliseconds to wait for a pong before declaring the connection dead\n * @type {number}\n */\n pongTimeout: process.env.MERCURY_PONG_TIMEOUT || 14000,\n /**\n * Maximum milliseconds between connection attempts\n * @type {Number}\n */\n backoffTimeMax: process.env.MERCURY_BACKOFF_TIME_MAX || 32000,\n /**\n * Initial milliseconds between connection attempts\n * @type {Number}\n */\n backoffTimeReset: process.env.MERCURY_BACKOFF_TIME_RESET || 1000,\n /**\n * Milliseconds to wait for a close frame before declaring the socket dead and\n * discarding it\n * @type {[type]}\n */\n forceCloseDelay: process.env.MERCURY_FORCE_CLOSE_DELAY || 2000,\n },\n};\n\n/**\n * LLMChannel to provide socket connections\n */\nexport default class LLMChannel extends (Mercury as any) implements ILLMChannel {\n namespace = LLM;\n\n /**\n * If the LLM plugin has been registered and listening\n * @instance\n * @type {Boolean}\n * @public\n */\n private registered = false;\n\n private webSocketUrl?: string;\n\n private binding?: string;\n\n private locusUrl?: string;\n\n /**\n * Initializes the LLM Plugin\n * @constructor\n * @public\n */\n constructor(...args) {\n // eslint-disable-next-line constructor-super\n super(...args);\n\n this.registered = false;\n }\n\n /**\n * Register to the websocket\n * @param {string} llmSocketUrl\n * @returns {Promise<void>}\n */\n private register = (llmSocketUrl: string): Promise<void> =>\n this.request({\n method: 'POST',\n url: llmSocketUrl,\n body: {deviceUrl: this.webex.internal.device.url},\n })\n .then((res: {body: {webSocketUrl: string; binding: string}}) => {\n this.webSocketUrl = res.body.webSocketUrl;\n this.binding = res.body.binding;\n })\n .catch((error: any) => {\n this.logger.error(`Error connecting to websocket: ${error}`);\n throw error;\n });\n\n /**\n * Register and connect to the websocket\n * @param {string} locusUrl\n * @param {string} datachannelUrl\n * @returns {Promise<void>}\n */\n public registerAndConnect = (locusUrl: string, datachannelUrl: string): Promise<void> =>\n this.register(datachannelUrl).then(() => {\n if (!locusUrl || !datachannelUrl) return undefined;\n this.locusUrl = locusUrl;\n this.connect(this.webSocketUrl).then(() => {\n this.registered = true;\n });\n });\n\n /**\n * Tells if LLM socket is connected\n * @returns {boolean} isRegistered\n */\n public isConnected = (): boolean => this.registered;\n\n /**\n * Tells if LLM socket is connected\n * @returns {bool} isRegistered\n */\n public getBinding = (): string => this.binding;\n\n /**\n * Get Locus URL for the connection\n * @returns {string} locus Url\n */\n public getLocusUrl = (): string => this.locusUrl;\n\n /**\n * Disconnects websocket connection\n * @returns {Promise<void>}\n */\n public disconnectLLM = (): Promise<void> =>\n this.disconnect().then(() => {\n this.registered = false;\n this.locusUrl = undefined;\n this.binding = undefined;\n this.webSocketUrl = undefined;\n });\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAEA;AAEA;AAAgC;AAAA;AAIzB,IAAMA,MAAM,GAAG;EACpBC,GAAG,EAAE;IACH;AACJ;AACA;AACA;IACIC,YAAY,EAAEC,OAAO,CAACC,GAAG,CAACC,qBAAqB,IAAI,KAAK;IACxD;AACJ;AACA;AACA;IACIC,WAAW,EAAEH,OAAO,CAACC,GAAG,CAACG,oBAAoB,IAAI,KAAK;IACtD;AACJ;AACA;AACA;IACIC,cAAc,EAAEL,OAAO,CAACC,GAAG,CAACK,wBAAwB,IAAI,KAAK;IAC7D;AACJ;AACA;AACA;IACIC,gBAAgB,EAAEP,OAAO,CAACC,GAAG,CAACO,0BAA0B,IAAI,IAAI;IAChE;AACJ;AACA;AACA;AACA;IACIC,eAAe,EAAET,OAAO,CAACC,GAAG,CAACS,yBAAyB,IAAI;EAC5D;AACF,CAAC;;AAED;AACA;AACA;AAFA;AAAA,IAGqBC,UAAU;EAAA;EAAA;EAG7B;AACF;AACA;AACA;AACA;AACA;;EASE;AACF;AACA;AACA;AACA;EACE,sBAAqB;IAAA;IAAA;IAAA,kCAANC,IAAI;MAAJA,IAAI;IAAA;IACjB;IACA,gDAASA,IAAI;IAAE,wFAvBLC,cAAG;IAAA,yFAQM,KAAK;IAAA;IAAA;IAAA;IAAA,uFAyBP,UAACC,YAAoB;MAAA,OACtC,MAAKC,OAAO,CAAC;QACXC,MAAM,EAAE,MAAM;QACdC,GAAG,EAAEH,YAAY;QACjBI,IAAI,EAAE;UAACC,SAAS,EAAE,MAAKC,KAAK,CAACC,QAAQ,CAACC,MAAM,CAACL;QAAG;MAClD,CAAC,CAAC,CACCM,IAAI,CAAC,UAACC,GAAoD,EAAK;QAC9D,MAAKC,YAAY,GAAGD,GAAG,CAACN,IAAI,CAACO,YAAY;QACzC,MAAKC,OAAO,GAAGF,GAAG,CAACN,IAAI,CAACQ,OAAO;MACjC,CAAC,CAAC,CACDC,KAAK,CAAC,UAACC,KAAU,EAAK;QACrB,MAAKC,MAAM,CAACD,KAAK,0CAAmCA,KAAK,EAAG;QAC5D,MAAMA,KAAK;MACb,CAAC,CAAC;IAAA;IAAA,iGAQsB,UAACE,QAAgB,EAAEC,cAAsB;MAAA,OACnE,MAAKC,QAAQ,CAACD,cAAc,CAAC,CAACR,IAAI,CAAC,YAAM;QACvC,IAAI,CAACO,QAAQ,IAAI,CAACC,cAAc,EAAE,OAAOE,SAAS;QAClD,MAAKH,QAAQ,GAAGA,QAAQ;QACxB,MAAKI,OAAO,CAAC,MAAKT,YAAY,CAAC,CAACF,IAAI,CAAC,YAAM;UACzC,MAAKY,UAAU,GAAG,IAAI;QACxB,CAAC,CAAC;MACJ,CAAC,CAAC;IAAA;IAAA,0FAMiB;MAAA,OAAe,MAAKA,UAAU;IAAA;IAAA,yFAM/B;MAAA,OAAc,MAAKT,OAAO;IAAA;IAAA,0FAMzB;MAAA,OAAc,MAAKI,QAAQ;IAAA;IAAA,4FAMzB;MAAA,OACrB,MAAKM,UAAU,EAAE,CAACb,IAAI,CAAC,YAAM;QAC3B,MAAKY,UAAU,GAAG,KAAK;QACvB,MAAKL,QAAQ,GAAGG,SAAS;QACzB,MAAKP,OAAO,GAAGO,SAAS;QACxB,MAAKR,YAAY,GAAGQ,SAAS;MAC/B,CAAC,CAAC;IAAA;IAlEF,MAAKE,UAAU,GAAG,KAAK;IAAC;EAC1B;;EAEA;AACF;AACA;AACA;AACA;EAJE;AAAA,EA7BuCE,8BAAO;AAAA"}
1
+ {"version":3,"names":["config","llm","pingInterval","process","env","MERCURY_PING_INTERVAL","pongTimeout","MERCURY_PONG_TIMEOUT","backoffTimeMax","MERCURY_BACKOFF_TIME_MAX","backoffTimeReset","MERCURY_BACKOFF_TIME_RESET","forceCloseDelay","MERCURY_FORCE_CLOSE_DELAY","LLMChannel","LLM","llmSocketUrl","request","method","url","body","deviceUrl","webex","internal","device","then","res","webSocketUrl","binding","catch","error","logger","locusUrl","datachannelUrl","register","undefined","connect","connected","disconnect","Mercury"],"sources":["llm.ts"],"sourcesContent":["/* eslint-disable consistent-return */\n\nimport Mercury from '@webex/internal-plugin-mercury';\n\nimport {LLM} from './constants';\n// eslint-disable-next-line no-unused-vars\nimport {ILLMChannel} from './llm.types';\n\nexport const config = {\n llm: {\n /**\n * Milliseconds between pings sent up the socket\n * @type {number}\n */\n pingInterval: process.env.MERCURY_PING_INTERVAL || 15000,\n /**\n * Milliseconds to wait for a pong before declaring the connection dead\n * @type {number}\n */\n pongTimeout: process.env.MERCURY_PONG_TIMEOUT || 14000,\n /**\n * Maximum milliseconds between connection attempts\n * @type {Number}\n */\n backoffTimeMax: process.env.MERCURY_BACKOFF_TIME_MAX || 32000,\n /**\n * Initial milliseconds between connection attempts\n * @type {Number}\n */\n backoffTimeReset: process.env.MERCURY_BACKOFF_TIME_RESET || 1000,\n /**\n * Milliseconds to wait for a close frame before declaring the socket dead and\n * discarding it\n * @type {[type]}\n */\n forceCloseDelay: process.env.MERCURY_FORCE_CLOSE_DELAY || 2000,\n },\n};\n\n/**\n * LLMChannel to provide socket connections\n */\nexport default class LLMChannel extends (Mercury as any) implements ILLMChannel {\n namespace = LLM;\n\n /**\n * If the LLM plugin has been registered and listening\n * @instance\n * @type {Boolean}\n * @public\n */\n\n private webSocketUrl?: string;\n\n private binding?: string;\n\n private locusUrl?: string;\n\n /**\n * Register to the websocket\n * @param {string} llmSocketUrl\n * @returns {Promise<void>}\n */\n private register = (llmSocketUrl: string): Promise<void> =>\n this.request({\n method: 'POST',\n url: llmSocketUrl,\n body: {deviceUrl: this.webex.internal.device.url},\n })\n .then((res: {body: {webSocketUrl: string; binding: string}}) => {\n this.webSocketUrl = res.body.webSocketUrl;\n this.binding = res.body.binding;\n })\n .catch((error: any) => {\n this.logger.error(`Error connecting to websocket: ${error}`);\n throw error;\n });\n\n /**\n * Register and connect to the websocket\n * @param {string} locusUrl\n * @param {string} datachannelUrl\n * @returns {Promise<void>}\n */\n public registerAndConnect = (locusUrl: string, datachannelUrl: string): Promise<void> =>\n this.register(datachannelUrl).then(() => {\n if (!locusUrl || !datachannelUrl) return undefined;\n this.locusUrl = locusUrl;\n this.connect(this.webSocketUrl);\n });\n\n /**\n * Tells if LLM socket is connected\n * @returns {boolean} connected\n */\n public isConnected = (): boolean => this.connected;\n\n /**\n * Tells if LLM socket is binding\n * @returns {string} binding\n */\n public getBinding = (): string => this.binding;\n\n /**\n * Get Locus URL for the connection\n * @returns {string} locus Url\n */\n public getLocusUrl = (): string => this.locusUrl;\n\n /**\n * Disconnects websocket connection\n * @returns {Promise<void>}\n */\n public disconnectLLM = (): Promise<void> =>\n this.disconnect().then(() => {\n this.locusUrl = undefined;\n this.binding = undefined;\n this.webSocketUrl = undefined;\n });\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAEA;AAEA;AAAgC;AAAA;AAIzB,IAAMA,MAAM,GAAG;EACpBC,GAAG,EAAE;IACH;AACJ;AACA;AACA;IACIC,YAAY,EAAEC,OAAO,CAACC,GAAG,CAACC,qBAAqB,IAAI,KAAK;IACxD;AACJ;AACA;AACA;IACIC,WAAW,EAAEH,OAAO,CAACC,GAAG,CAACG,oBAAoB,IAAI,KAAK;IACtD;AACJ;AACA;AACA;IACIC,cAAc,EAAEL,OAAO,CAACC,GAAG,CAACK,wBAAwB,IAAI,KAAK;IAC7D;AACJ;AACA;AACA;IACIC,gBAAgB,EAAEP,OAAO,CAACC,GAAG,CAACO,0BAA0B,IAAI,IAAI;IAChE;AACJ;AACA;AACA;AACA;IACIC,eAAe,EAAET,OAAO,CAACC,GAAG,CAACS,yBAAyB,IAAI;EAC5D;AACF,CAAC;;AAED;AACA;AACA;AAFA;AAAA,IAGqBC,UAAU;EAAA;EAAA;EAAA;IAAA;IAAA;IAAA;MAAA;IAAA;IAAA;IAAA,wFACjBC,cAAG;IAAA;IAAA;IAAA;IAAA,uFAoBI,UAACC,YAAoB;MAAA,OACtC,MAAKC,OAAO,CAAC;QACXC,MAAM,EAAE,MAAM;QACdC,GAAG,EAAEH,YAAY;QACjBI,IAAI,EAAE;UAACC,SAAS,EAAE,MAAKC,KAAK,CAACC,QAAQ,CAACC,MAAM,CAACL;QAAG;MAClD,CAAC,CAAC,CACCM,IAAI,CAAC,UAACC,GAAoD,EAAK;QAC9D,MAAKC,YAAY,GAAGD,GAAG,CAACN,IAAI,CAACO,YAAY;QACzC,MAAKC,OAAO,GAAGF,GAAG,CAACN,IAAI,CAACQ,OAAO;MACjC,CAAC,CAAC,CACDC,KAAK,CAAC,UAACC,KAAU,EAAK;QACrB,MAAKC,MAAM,CAACD,KAAK,0CAAmCA,KAAK,EAAG;QAC5D,MAAMA,KAAK;MACb,CAAC,CAAC;IAAA;IAAA,iGAQsB,UAACE,QAAgB,EAAEC,cAAsB;MAAA,OACnE,MAAKC,QAAQ,CAACD,cAAc,CAAC,CAACR,IAAI,CAAC,YAAM;QACvC,IAAI,CAACO,QAAQ,IAAI,CAACC,cAAc,EAAE,OAAOE,SAAS;QAClD,MAAKH,QAAQ,GAAGA,QAAQ;QACxB,MAAKI,OAAO,CAAC,MAAKT,YAAY,CAAC;MACjC,CAAC,CAAC;IAAA;IAAA,0FAMiB;MAAA,OAAe,MAAKU,SAAS;IAAA;IAAA,yFAM9B;MAAA,OAAc,MAAKT,OAAO;IAAA;IAAA,0FAMzB;MAAA,OAAc,MAAKI,QAAQ;IAAA;IAAA,4FAMzB;MAAA,OACrB,MAAKM,UAAU,EAAE,CAACb,IAAI,CAAC,YAAM;QAC3B,MAAKO,QAAQ,GAAGG,SAAS;QACzB,MAAKP,OAAO,GAAGO,SAAS;QACxB,MAAKR,YAAY,GAAGQ,SAAS;MAC/B,CAAC,CAAC;IAAA;IAAA;EAAA;EAAA;AAAA,EA5EmCI,8BAAO;AAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webex/internal-plugin-llm",
3
- "version": "3.0.0-beta.159",
3
+ "version": "3.0.0-beta.160",
4
4
  "description": "",
5
5
  "license": "Cisco EULA (https://www.cisco.com/c/en/us/products/end-user-license-agreement.html)",
6
6
  "main": "dist/index.js",
@@ -14,8 +14,8 @@
14
14
  "node": ">=16"
15
15
  },
16
16
  "dependencies": {
17
- "@webex/internal-plugin-llm": "3.0.0-beta.159",
18
- "@webex/internal-plugin-mercury": "3.0.0-beta.159"
17
+ "@webex/internal-plugin-llm": "3.0.0-beta.160",
18
+ "@webex/internal-plugin-mercury": "3.0.0-beta.160"
19
19
  },
20
20
  "browserify": {
21
21
  "transform": [
@@ -24,8 +24,8 @@
24
24
  ]
25
25
  },
26
26
  "devDependencies": {
27
- "@webex/test-helper-chai": "3.0.0-beta.159",
28
- "@webex/test-helper-mock-webex": "3.0.0-beta.159",
27
+ "@webex/test-helper-chai": "3.0.0-beta.160",
28
+ "@webex/test-helper-mock-webex": "3.0.0-beta.160",
29
29
  "sinon": "^9.2.4"
30
30
  }
31
31
  }
package/src/llm.ts CHANGED
@@ -49,7 +49,6 @@ export default class LLMChannel extends (Mercury as any) implements ILLMChannel
49
49
  * @type {Boolean}
50
50
  * @public
51
51
  */
52
- private registered = false;
53
52
 
54
53
  private webSocketUrl?: string;
55
54
 
@@ -57,18 +56,6 @@ export default class LLMChannel extends (Mercury as any) implements ILLMChannel
57
56
 
58
57
  private locusUrl?: string;
59
58
 
60
- /**
61
- * Initializes the LLM Plugin
62
- * @constructor
63
- * @public
64
- */
65
- constructor(...args) {
66
- // eslint-disable-next-line constructor-super
67
- super(...args);
68
-
69
- this.registered = false;
70
- }
71
-
72
59
  /**
73
60
  * Register to the websocket
74
61
  * @param {string} llmSocketUrl
@@ -99,20 +86,18 @@ export default class LLMChannel extends (Mercury as any) implements ILLMChannel
99
86
  this.register(datachannelUrl).then(() => {
100
87
  if (!locusUrl || !datachannelUrl) return undefined;
101
88
  this.locusUrl = locusUrl;
102
- this.connect(this.webSocketUrl).then(() => {
103
- this.registered = true;
104
- });
89
+ this.connect(this.webSocketUrl);
105
90
  });
106
91
 
107
92
  /**
108
93
  * Tells if LLM socket is connected
109
- * @returns {boolean} isRegistered
94
+ * @returns {boolean} connected
110
95
  */
111
- public isConnected = (): boolean => this.registered;
96
+ public isConnected = (): boolean => this.connected;
112
97
 
113
98
  /**
114
- * Tells if LLM socket is connected
115
- * @returns {bool} isRegistered
99
+ * Tells if LLM socket is binding
100
+ * @returns {string} binding
116
101
  */
117
102
  public getBinding = (): string => this.binding;
118
103
 
@@ -128,7 +113,6 @@ export default class LLMChannel extends (Mercury as any) implements ILLMChannel
128
113
  */
129
114
  public disconnectLLM = (): Promise<void> =>
130
115
  this.disconnect().then(() => {
131
- this.registered = false;
132
116
  this.locusUrl = undefined;
133
117
  this.binding = undefined;
134
118
  this.webSocketUrl = undefined;
@@ -20,7 +20,9 @@ describe('plugin-llm', () => {
20
20
  });
21
21
 
22
22
  llmService = webex.internal.llm;
23
- llmService.connect = sinon.stub().resolves(true);
23
+ llmService.connect = sinon.stub().callsFake(() => {
24
+ llmService.connected = true;
25
+ });
24
26
  llmService.disconnect = sinon.stub().resolves(true);
25
27
  llmService.request = sinon.stub().resolves({
26
28
  headers: {},