@webex/calling 3.12.0-mobius-socket.2 → 3.12.0-mobius-socket.4

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 (42) hide show
  1. package/dist/CallingClient/CallingClient.js +5 -2
  2. package/dist/CallingClient/CallingClient.js.map +1 -1
  3. package/dist/CallingClient/registration/register.js +360 -303
  4. package/dist/CallingClient/registration/register.js.map +1 -1
  5. package/dist/CallingClient/registration/register.test.js +2 -8
  6. package/dist/CallingClient/registration/register.test.js.map +1 -1
  7. package/dist/CallingClient/registration/webWorker.js +41 -106
  8. package/dist/CallingClient/registration/webWorker.js.map +1 -1
  9. package/dist/CallingClient/registration/webWorker.test.js +39 -153
  10. package/dist/CallingClient/registration/webWorker.test.js.map +1 -1
  11. package/dist/CallingClient/registration/webWorkerStr.js +1 -1
  12. package/dist/CallingClient/registration/webWorkerStr.js.map +1 -1
  13. package/dist/CallingClient/utils/mobiusSocketMapper.js +4 -0
  14. package/dist/CallingClient/utils/mobiusSocketMapper.js.map +1 -1
  15. package/dist/CallingClient/utils/request.js +48 -24
  16. package/dist/CallingClient/utils/request.js.map +1 -1
  17. package/dist/common/Utils.js +0 -3
  18. package/dist/common/Utils.js.map +1 -1
  19. package/dist/common/types.js +2 -0
  20. package/dist/common/types.js.map +1 -1
  21. package/dist/module/CallingClient/CallingClient.js +2 -1
  22. package/dist/module/CallingClient/registration/register.js +43 -6
  23. package/dist/module/CallingClient/registration/webWorker.js +42 -61
  24. package/dist/module/CallingClient/registration/webWorkerStr.js +47 -82
  25. package/dist/module/CallingClient/utils/mobiusSocketMapper.js +5 -0
  26. package/dist/module/CallingClient/utils/request.js +7 -4
  27. package/dist/module/common/Utils.js +0 -1
  28. package/dist/module/common/types.js +2 -0
  29. package/dist/types/CallingClient/CallingClient.d.ts.map +1 -1
  30. package/dist/types/CallingClient/registration/register.d.ts +1 -0
  31. package/dist/types/CallingClient/registration/register.d.ts.map +1 -1
  32. package/dist/types/CallingClient/registration/webWorker.d.ts.map +1 -1
  33. package/dist/types/CallingClient/registration/webWorkerStr.d.ts +1 -1
  34. package/dist/types/CallingClient/registration/webWorkerStr.d.ts.map +1 -1
  35. package/dist/types/CallingClient/utils/mobiusSocketMapper.d.ts +1 -0
  36. package/dist/types/CallingClient/utils/mobiusSocketMapper.d.ts.map +1 -1
  37. package/dist/types/CallingClient/utils/request.d.ts +1 -1
  38. package/dist/types/CallingClient/utils/request.d.ts.map +1 -1
  39. package/dist/types/common/Utils.d.ts.map +1 -1
  40. package/dist/types/common/types.d.ts +2 -0
  41. package/dist/types/common/types.d.ts.map +1 -1
  42. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"names":["_types","require","_constants","deriveMobiusSocketMessageType","uri","httpMethodType","MOBIUS_SOCKET_MESSAGE_TYPE","UNKNOWN","includes","CALL_HOLD","CALL_RESUME","CALL_TRANSFER","CALL_MEDIA","CALL_STATUS","match","HTTP_METHODS","PATCH","CALL_STATE","DELETE","CALL_DELETE","endsWith","CALL_SETUP","DEVICE_STATUS","REGISTER","UNREGISTER","GET","DEVICE_GET","DEVICE_LIST"],"sources":["mobiusSocketMapper.ts"],"sourcesContent":["import {HTTP_METHODS} from '../../common/types';\nimport {MOBIUS_SOCKET_MESSAGE_TYPE} from './constants';\n\n/**\n * Derives the Mobius Socket message type from the URI and HTTP method.\n * Uses both the URI path pattern and the HTTP method to disambiguate operations\n * that share the same endpoint (e.g., PATCH vs DELETE on calls/{callId}).\n *\n * @param uri - The request URI\n * @param httpMethodType - The HTTP method used for the request\n * @returns The socket message type based on the URI pattern and HTTP method\n *\n * @example\n * deriveMobiusSocketMessageType('/api/v1/calling/web/device', HTTP_METHODS.POST)\n * // returns 'register'\n *\n * deriveMobiusSocketMessageType('/api/v1/calling/web/devices/abc123/calls/xyz789', HTTP_METHODS.PATCH)\n * // returns 'call_state'\n *\n * deriveMobiusSocketMessageType('/api/v1/calling/web/devices/abc123/calls/xyz789', HTTP_METHODS.DELETE)\n * // returns 'call_delete'\n */\n// eslint-disable-next-line import/prefer-default-export\nexport function deriveMobiusSocketMessageType(\n uri?: string,\n httpMethodType?: HTTP_METHODS\n): MOBIUS_SOCKET_MESSAGE_TYPE {\n if (!uri) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN;\n }\n\n // --- Supplementary services: .../services/{service}/{action} ---\n if (uri.includes('/services')) {\n if (uri.includes('/callhold/hold')) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.CALL_HOLD;\n }\n if (uri.includes('/callhold/resume')) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.CALL_RESUME;\n }\n if (uri.includes('/calltransfer/commit')) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.CALL_TRANSFER;\n }\n\n return MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN;\n }\n\n // --- Call sub-resource actions (checked before bare calls/{callId}) ---\n\n // Call media: .../calls/{callId}/media\n if (uri.includes('/calls/') && uri.includes('/media')) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.CALL_MEDIA;\n }\n\n // Call status: .../calls/{callId}/status\n if (uri.includes('/calls/') && uri.includes('/status')) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.CALL_STATUS;\n }\n\n // Call state or delete: .../calls/{callId} (PATCH → state, DELETE → delete)\n if (uri.match(/\\/calls\\/[^/]+$/)) {\n if (httpMethodType === HTTP_METHODS.PATCH) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.CALL_STATE;\n }\n if (httpMethodType === HTTP_METHODS.DELETE) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.CALL_DELETE;\n }\n\n return MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN;\n }\n\n // Call setup: .../devices/{deviceId}/call (singular)\n if (uri.endsWith('/call')) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.CALL_SETUP;\n }\n\n // --- Device-level operations ---\n\n // Device keepalive: .../devices/{deviceId}/status (no /calls/ in path)\n if (uri.includes('/devices/') && uri.endsWith('/status')) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.DEVICE_STATUS;\n }\n\n // Device registration: .../calling/web/device (singular)\n if (uri.endsWith('/device')) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.REGISTER;\n }\n\n // Device unregister or get: .../devices/{deviceId} (DELETE → unregister, GET → device_get)\n if (uri.match(/\\/devices\\/[^/?]+$/) && !uri.includes('/calls')) {\n if (httpMethodType === HTTP_METHODS.DELETE) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.UNREGISTER;\n }\n if (httpMethodType === HTTP_METHODS.GET) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.DEVICE_GET;\n }\n\n return MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN;\n }\n\n // Device list: .../devices or .../devices?userid=...\n if (uri.includes('/devices') && !uri.match(/\\/devices\\/[^/?]+/)) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.DEVICE_LIST;\n }\n\n return MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN;\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASE,6BAA6BA,CAC3CC,GAAY,EACZC,cAA6B,EACD;EAC5B,IAAI,CAACD,GAAG,EAAE;IACR,OAAOE,qCAA0B,CAACC,OAAO;EAC3C;;EAEA;EACA,IAAIH,GAAG,CAACI,QAAQ,CAAC,WAAW,CAAC,EAAE;IAC7B,IAAIJ,GAAG,CAACI,QAAQ,CAAC,gBAAgB,CAAC,EAAE;MAClC,OAAOF,qCAA0B,CAACG,SAAS;IAC7C;IACA,IAAIL,GAAG,CAACI,QAAQ,CAAC,kBAAkB,CAAC,EAAE;MACpC,OAAOF,qCAA0B,CAACI,WAAW;IAC/C;IACA,IAAIN,GAAG,CAACI,QAAQ,CAAC,sBAAsB,CAAC,EAAE;MACxC,OAAOF,qCAA0B,CAACK,aAAa;IACjD;IAEA,OAAOL,qCAA0B,CAACC,OAAO;EAC3C;;EAEA;;EAEA;EACA,IAAIH,GAAG,CAACI,QAAQ,CAAC,SAAS,CAAC,IAAIJ,GAAG,CAACI,QAAQ,CAAC,QAAQ,CAAC,EAAE;IACrD,OAAOF,qCAA0B,CAACM,UAAU;EAC9C;;EAEA;EACA,IAAIR,GAAG,CAACI,QAAQ,CAAC,SAAS,CAAC,IAAIJ,GAAG,CAACI,QAAQ,CAAC,SAAS,CAAC,EAAE;IACtD,OAAOF,qCAA0B,CAACO,WAAW;EAC/C;;EAEA;EACA,IAAIT,GAAG,CAACU,KAAK,CAAC,iBAAiB,CAAC,EAAE;IAChC,IAAIT,cAAc,KAAKU,mBAAY,CAACC,KAAK,EAAE;MACzC,OAAOV,qCAA0B,CAACW,UAAU;IAC9C;IACA,IAAIZ,cAAc,KAAKU,mBAAY,CAACG,MAAM,EAAE;MAC1C,OAAOZ,qCAA0B,CAACa,WAAW;IAC/C;IAEA,OAAOb,qCAA0B,CAACC,OAAO;EAC3C;;EAEA;EACA,IAAIH,GAAG,CAACgB,QAAQ,CAAC,OAAO,CAAC,EAAE;IACzB,OAAOd,qCAA0B,CAACe,UAAU;EAC9C;;EAEA;;EAEA;EACA,IAAIjB,GAAG,CAACI,QAAQ,CAAC,WAAW,CAAC,IAAIJ,GAAG,CAACgB,QAAQ,CAAC,SAAS,CAAC,EAAE;IACxD,OAAOd,qCAA0B,CAACgB,aAAa;EACjD;;EAEA;EACA,IAAIlB,GAAG,CAACgB,QAAQ,CAAC,SAAS,CAAC,EAAE;IAC3B,OAAOd,qCAA0B,CAACiB,QAAQ;EAC5C;;EAEA;EACA,IAAInB,GAAG,CAACU,KAAK,CAAC,oBAAoB,CAAC,IAAI,CAACV,GAAG,CAACI,QAAQ,CAAC,QAAQ,CAAC,EAAE;IAC9D,IAAIH,cAAc,KAAKU,mBAAY,CAACG,MAAM,EAAE;MAC1C,OAAOZ,qCAA0B,CAACkB,UAAU;IAC9C;IACA,IAAInB,cAAc,KAAKU,mBAAY,CAACU,GAAG,EAAE;MACvC,OAAOnB,qCAA0B,CAACoB,UAAU;IAC9C;IAEA,OAAOpB,qCAA0B,CAACC,OAAO;EAC3C;;EAEA;EACA,IAAIH,GAAG,CAACI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAACJ,GAAG,CAACU,KAAK,CAAC,mBAAmB,CAAC,EAAE;IAC/D,OAAOR,qCAA0B,CAACqB,WAAW;EAC/C;EAEA,OAAOrB,qCAA0B,CAACC,OAAO;AAC3C","ignoreList":[]}
1
+ {"version":3,"names":["_types","require","_constants","deriveMobiusSocketMessageType","uri","httpMethodType","MOBIUS_SOCKET_MESSAGE_TYPE","UNKNOWN","includes","CALL_HOLD","CALL_RESUME","CALL_TRANSFER","CALL_MEDIA","CALL_STATUS","match","HTTP_METHODS","PATCH","CALL_STATE","DELETE","CALL_DELETE","endsWith","CALL_SETUP","DEVICE_STATUS","REGISTER","UNREGISTER","GET","DEVICE_GET","DEVICE_LIST","isSupplementaryServiceMessageType","exports","type"],"sources":["mobiusSocketMapper.ts"],"sourcesContent":["import {HTTP_METHODS} from '../../common/types';\nimport {MOBIUS_SOCKET_MESSAGE_TYPE} from './constants';\n\n/**\n * Derives the Mobius Socket message type from the URI and HTTP method.\n * Uses both the URI path pattern and the HTTP method to disambiguate operations\n * that share the same endpoint (e.g., PATCH vs DELETE on calls/{callId}).\n *\n * @param uri - The request URI\n * @param httpMethodType - The HTTP method used for the request\n * @returns The socket message type based on the URI pattern and HTTP method\n *\n * @example\n * deriveMobiusSocketMessageType('/api/v1/calling/web/device', HTTP_METHODS.POST)\n * // returns 'register'\n *\n * deriveMobiusSocketMessageType('/api/v1/calling/web/devices/abc123/calls/xyz789', HTTP_METHODS.PATCH)\n * // returns 'call_state'\n *\n * deriveMobiusSocketMessageType('/api/v1/calling/web/devices/abc123/calls/xyz789', HTTP_METHODS.DELETE)\n * // returns 'call_delete'\n */\n// eslint-disable-next-line import/prefer-default-export\nexport function deriveMobiusSocketMessageType(\n uri?: string,\n httpMethodType?: HTTP_METHODS\n): MOBIUS_SOCKET_MESSAGE_TYPE {\n if (!uri) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN;\n }\n\n // --- Supplementary services: .../services/{service}/{action} ---\n if (uri.includes('/services')) {\n if (uri.includes('/callhold/hold')) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.CALL_HOLD;\n }\n if (uri.includes('/callhold/resume')) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.CALL_RESUME;\n }\n if (uri.includes('/calltransfer/commit')) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.CALL_TRANSFER;\n }\n\n return MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN;\n }\n\n // --- Call sub-resource actions (checked before bare calls/{callId}) ---\n\n // Call media: .../calls/{callId}/media\n if (uri.includes('/calls/') && uri.includes('/media')) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.CALL_MEDIA;\n }\n\n // Call status: .../calls/{callId}/status\n if (uri.includes('/calls/') && uri.includes('/status')) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.CALL_STATUS;\n }\n\n // Call state or delete: .../calls/{callId} (PATCH → state, DELETE → delete)\n if (uri.match(/\\/calls\\/[^/]+$/)) {\n if (httpMethodType === HTTP_METHODS.PATCH) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.CALL_STATE;\n }\n if (httpMethodType === HTTP_METHODS.DELETE) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.CALL_DELETE;\n }\n\n return MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN;\n }\n\n // Call setup: .../devices/{deviceId}/call (singular)\n if (uri.endsWith('/call')) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.CALL_SETUP;\n }\n\n // --- Device-level operations ---\n\n // Device keepalive: .../devices/{deviceId}/status (no /calls/ in path)\n if (uri.includes('/devices/') && uri.endsWith('/status')) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.DEVICE_STATUS;\n }\n\n // Device registration: .../calling/web/device (singular)\n if (uri.endsWith('/device')) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.REGISTER;\n }\n\n // Device unregister or get: .../devices/{deviceId} (DELETE → unregister, GET → device_get)\n if (uri.match(/\\/devices\\/[^/?]+$/) && !uri.includes('/calls')) {\n if (httpMethodType === HTTP_METHODS.DELETE) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.UNREGISTER;\n }\n if (httpMethodType === HTTP_METHODS.GET) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.DEVICE_GET;\n }\n\n return MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN;\n }\n\n // Device list: .../devices or .../devices?userid=...\n if (uri.includes('/devices') && !uri.match(/\\/devices\\/[^/?]+/)) {\n return MOBIUS_SOCKET_MESSAGE_TYPE.DEVICE_LIST;\n }\n\n return MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN;\n}\n\nexport const isSupplementaryServiceMessageType = (type: MOBIUS_SOCKET_MESSAGE_TYPE): boolean =>\n [\n MOBIUS_SOCKET_MESSAGE_TYPE.CALL_HOLD,\n MOBIUS_SOCKET_MESSAGE_TYPE.CALL_RESUME,\n MOBIUS_SOCKET_MESSAGE_TYPE.CALL_TRANSFER,\n ].includes(type);\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASE,6BAA6BA,CAC3CC,GAAY,EACZC,cAA6B,EACD;EAC5B,IAAI,CAACD,GAAG,EAAE;IACR,OAAOE,qCAA0B,CAACC,OAAO;EAC3C;;EAEA;EACA,IAAIH,GAAG,CAACI,QAAQ,CAAC,WAAW,CAAC,EAAE;IAC7B,IAAIJ,GAAG,CAACI,QAAQ,CAAC,gBAAgB,CAAC,EAAE;MAClC,OAAOF,qCAA0B,CAACG,SAAS;IAC7C;IACA,IAAIL,GAAG,CAACI,QAAQ,CAAC,kBAAkB,CAAC,EAAE;MACpC,OAAOF,qCAA0B,CAACI,WAAW;IAC/C;IACA,IAAIN,GAAG,CAACI,QAAQ,CAAC,sBAAsB,CAAC,EAAE;MACxC,OAAOF,qCAA0B,CAACK,aAAa;IACjD;IAEA,OAAOL,qCAA0B,CAACC,OAAO;EAC3C;;EAEA;;EAEA;EACA,IAAIH,GAAG,CAACI,QAAQ,CAAC,SAAS,CAAC,IAAIJ,GAAG,CAACI,QAAQ,CAAC,QAAQ,CAAC,EAAE;IACrD,OAAOF,qCAA0B,CAACM,UAAU;EAC9C;;EAEA;EACA,IAAIR,GAAG,CAACI,QAAQ,CAAC,SAAS,CAAC,IAAIJ,GAAG,CAACI,QAAQ,CAAC,SAAS,CAAC,EAAE;IACtD,OAAOF,qCAA0B,CAACO,WAAW;EAC/C;;EAEA;EACA,IAAIT,GAAG,CAACU,KAAK,CAAC,iBAAiB,CAAC,EAAE;IAChC,IAAIT,cAAc,KAAKU,mBAAY,CAACC,KAAK,EAAE;MACzC,OAAOV,qCAA0B,CAACW,UAAU;IAC9C;IACA,IAAIZ,cAAc,KAAKU,mBAAY,CAACG,MAAM,EAAE;MAC1C,OAAOZ,qCAA0B,CAACa,WAAW;IAC/C;IAEA,OAAOb,qCAA0B,CAACC,OAAO;EAC3C;;EAEA;EACA,IAAIH,GAAG,CAACgB,QAAQ,CAAC,OAAO,CAAC,EAAE;IACzB,OAAOd,qCAA0B,CAACe,UAAU;EAC9C;;EAEA;;EAEA;EACA,IAAIjB,GAAG,CAACI,QAAQ,CAAC,WAAW,CAAC,IAAIJ,GAAG,CAACgB,QAAQ,CAAC,SAAS,CAAC,EAAE;IACxD,OAAOd,qCAA0B,CAACgB,aAAa;EACjD;;EAEA;EACA,IAAIlB,GAAG,CAACgB,QAAQ,CAAC,SAAS,CAAC,EAAE;IAC3B,OAAOd,qCAA0B,CAACiB,QAAQ;EAC5C;;EAEA;EACA,IAAInB,GAAG,CAACU,KAAK,CAAC,oBAAoB,CAAC,IAAI,CAACV,GAAG,CAACI,QAAQ,CAAC,QAAQ,CAAC,EAAE;IAC9D,IAAIH,cAAc,KAAKU,mBAAY,CAACG,MAAM,EAAE;MAC1C,OAAOZ,qCAA0B,CAACkB,UAAU;IAC9C;IACA,IAAInB,cAAc,KAAKU,mBAAY,CAACU,GAAG,EAAE;MACvC,OAAOnB,qCAA0B,CAACoB,UAAU;IAC9C;IAEA,OAAOpB,qCAA0B,CAACC,OAAO;EAC3C;;EAEA;EACA,IAAIH,GAAG,CAACI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAACJ,GAAG,CAACU,KAAK,CAAC,mBAAmB,CAAC,EAAE;IAC/D,OAAOR,qCAA0B,CAACqB,WAAW;EAC/C;EAEA,OAAOrB,qCAA0B,CAACC,OAAO;AAC3C;AAEO,IAAMqB,iCAAiC,GAAAC,OAAA,CAAAD,iCAAA,GAAG,SAApCA,iCAAiCA,CAAIE,IAAgC;EAAA,OAChF,CACExB,qCAA0B,CAACG,SAAS,EACpCH,qCAA0B,CAACI,WAAW,EACtCJ,qCAA0B,CAACK,aAAa,CACzC,CAACH,QAAQ,CAACsB,IAAI,CAAC;AAAA","ignoreList":[]}
@@ -114,7 +114,7 @@ var APIRequest = exports.APIRequest = /*#__PURE__*/function () {
114
114
  break;
115
115
  }
116
116
  _Logger.default.info('Mobius WebSocket already connected', logContext);
117
- return _context.abrupt("return");
117
+ return _context.abrupt("return", this.mobiusSocket.getConnectedWebSocketUrl());
118
118
  case 1:
119
119
  _Logger.default.info('Mobius WebSocket not connected, initiating connection', logContext);
120
120
  _context.prev = 2;
@@ -122,8 +122,7 @@ var APIRequest = exports.APIRequest = /*#__PURE__*/function () {
122
122
  return this.mobiusSocket.connect(wssUrl);
123
123
  case 3:
124
124
  _Logger.default.log('Mobius WebSocket connected successfully', logContext);
125
- _context.next = 5;
126
- break;
125
+ return _context.abrupt("return", wssUrl);
127
126
  case 4:
128
127
  _context.prev = 4;
129
128
  _t = _context["catch"](2);
@@ -191,12 +190,12 @@ var APIRequest = exports.APIRequest = /*#__PURE__*/function () {
191
190
  key: "makeRequest",
192
191
  value: (function () {
193
192
  var _makeRequest = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee3(request) {
194
- var trackingId, socketType, wsResponse, _t3;
193
+ var trackingId, socketType, isSupplementaryService, wsResponse, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t0, _t1, _t10, _t11;
195
194
  return _regenerator.default.wrap(function (_context3) {
196
195
  while (1) switch (_context3.prev = _context3.next) {
197
196
  case 0:
198
197
  if (!this.isMobiusSocketEnabled) {
199
- _context3.next = 4;
198
+ _context3.next = 8;
200
199
  break;
201
200
  }
202
201
  trackingId = "webex-js-sdk_".concat((0, _uuid.v4)());
@@ -207,32 +206,57 @@ var APIRequest = exports.APIRequest = /*#__PURE__*/function () {
207
206
  }
208
207
  throw new Error("Unknown Mobius Socket message type: ".concat(socketType));
209
208
  case 1:
210
- _context3.prev = 1;
211
- _context3.next = 2;
212
- return this.mobiusSocket.sendWssRequest({
213
- type: socketType,
214
- trackingId: trackingId,
215
- metadata: {
216
- // userAgent: CALLING_USER_AGENT,
217
- userAgent: 'mobius-ws-test-ui' // TODO: Confirm if this needs to be hardcoded
218
- },
219
- // TODO: Add auth token to metadata for call transfer etc
220
- data: request.body
209
+ isSupplementaryService = (0, _mobiusSocketMapper.isSupplementaryServiceMessageType)(socketType);
210
+ _context3.prev = 2;
211
+ _t3 = this.mobiusSocket;
212
+ _t4 = socketType;
213
+ _t5 = trackingId;
214
+ _t6 = _constants2.CALLING_USER_AGENT;
215
+ _t7 = "";
216
+ _t9 = isSupplementaryService;
217
+ if (!_t9) {
218
+ _context3.next = 4;
219
+ break;
220
+ }
221
+ _context3.next = 3;
222
+ return this.webex.credentials.getUserToken();
223
+ case 3:
224
+ _t9 = _context3.sent;
225
+ case 4:
226
+ _t8 = _t9;
227
+ if (_t8) {
228
+ _context3.next = 5;
229
+ break;
230
+ }
231
+ _t8 = '';
232
+ case 5:
233
+ _t0 = _t7.concat.call(_t7, _t8);
234
+ _t1 = {
235
+ userAgent: _t6,
236
+ authorization: _t0
237
+ };
238
+ _t10 = request.body;
239
+ _context3.next = 6;
240
+ return _t3.sendWssRequest.call(_t3, {
241
+ type: _t4,
242
+ trackingId: _t5,
243
+ metadata: _t1,
244
+ data: _t10
221
245
  });
222
- case 2:
246
+ case 6:
223
247
  wsResponse = _context3.sent;
224
248
  return _context3.abrupt("return", normalizeWsResponse(wsResponse));
225
- case 3:
226
- _context3.prev = 3;
227
- _t3 = _context3["catch"](1);
228
- throw normalizeWsError(_t3);
229
- case 4:
249
+ case 7:
250
+ _context3.prev = 7;
251
+ _t11 = _context3["catch"](2);
252
+ throw normalizeWsError(_t11);
253
+ case 8:
230
254
  return _context3.abrupt("return", this.webex.request(request));
231
- case 5:
255
+ case 9:
232
256
  case "end":
233
257
  return _context3.stop();
234
258
  }
235
- }, _callee3, this, [[1, 3]]);
259
+ }, _callee3, this, [[2, 7]]);
236
260
  }));
237
261
  function makeRequest(_x3) {
238
262
  return _makeRequest.apply(this, arguments);
@@ -1 +1 @@
1
- {"version":3,"names":["_uuid","require","_internalPluginMobiusSocket","_Logger","_interopRequireDefault","_mobiusSocketMapper","_constants","_wsFeatureFlag","_constants2","ownKeys","e","r","t","_Object$keys","_Object$getOwnPropertySymbols","o","filter","_Object$getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","Object","forEach","_defineProperty2","default","_Object$getOwnPropertyDescriptors","_Object$defineProperties","_Object$defineProperty","normalizeWsResponse","wsResponse","_ref","_ref2","statusCode","body","data","undefined","headers","trackingid","trackingId","metadata","normalizeWsError","err","_ref3","_wsErr$response","_ref4","_wsErr$trackingId","_wsErr$response2","_ref5","_wsErr$response3","wsErr","response","APIRequest","exports","config","_config$isMobiusSocke","_classCallCheck2","webex","Error","isMobiusSocketEnabled","isMobiusWssEnabled","mobiusSocket","getMobiusSocketInstance","_createClass2","key","value","isSocketEnabled","_connectToMobiusSocket","_asyncToGenerator2","_regenerator","mark","_callee","wssUrl","logContext","_t","wrap","_context","prev","next","file","REQUEST_FILE","method","METHODS","CONNECT_TO_MOBIUS_SOCKET","isConnected","log","info","abrupt","connect","warn","concat","String","stop","connectToMobiusSocket","_x","_disconnectFromMobiusSocket","_callee2","options","_t2","_context2","disconnect","disconnectFromMobiusSocket","_x2","_makeRequest","_callee3","request","socketType","_t3","_context3","uuid","deriveMobiusSocketMessageType","uri","MOBIUS_SOCKET_MESSAGE_TYPE","UNKNOWN","sendWssRequest","type","userAgent","sent","makeRequest","_x3","getInstance","instance","resetInstance","createAPIRequest"],"sources":["request.ts"],"sourcesContent":["import {v4 as uuid} from 'uuid';\n// @ts-ignore - JS module without type declarations\nimport {getMobiusSocketInstance} from '@webex/internal-plugin-mobius-socket';\nimport {WebexRequestPayload} from '../../common/types';\nimport {WebexSDK} from '../../SDKConnector/types';\nimport log from '../../Logger';\nimport {APIRequestConfig, APIRequestOptions, MobiusSocketResponse} from './types';\nimport {deriveMobiusSocketMessageType} from './mobiusSocketMapper';\nimport {MOBIUS_SOCKET_MESSAGE_TYPE} from './constants';\nimport {isMobiusWssEnabled} from './wsFeatureFlag';\nimport {METHODS, REQUEST_FILE} from '../constants';\n\n/**\n * Converts a MobiusSocketResponse into the WebexRequestPayload shape that\n * all callers (registration, call, keepalive error-handlers) expect.\n */\nfunction normalizeWsResponse(wsResponse: MobiusSocketResponse): WebexRequestPayload {\n return {\n statusCode: wsResponse.statusCode,\n body: (wsResponse.data as object) ?? undefined,\n headers: {\n trackingid: wsResponse.trackingId,\n ...((wsResponse.metadata as Record<string, string>) ?? {}),\n },\n };\n}\n\n/**\n * Converts a MobiusSocketResponseError rejection into a WebexRequestPayload-shaped\n * error so handleRegistrationErrors / handleCallErrors can process it identically.\n */\nfunction normalizeWsError(err: unknown): WebexRequestPayload {\n const wsErr = err as {\n statusCode?: number;\n statusMessage?: string;\n response?: MobiusSocketResponse;\n trackingId?: string;\n };\n\n return {\n statusCode: wsErr.statusCode,\n body: (wsErr.response?.data as object) ?? undefined,\n headers: {\n trackingid: wsErr.trackingId ?? wsErr.response?.trackingId ?? '',\n ...((wsErr.response?.metadata as Record<string, string>) ?? {}),\n },\n };\n}\n\n/**\n * APIRequest routes Mobius traffic over HTTP (`webex.request`) or the Mobius WebSocket path\n * (`mobiusSocketRequest`). `isMobiusSocketEnabled` is set in the constructor from WDM\n * `webrtc-calling-over-ws` and/or SDK config (interim until WDM is fully in prod).\n */\nexport class APIRequest {\n // eslint-disable-next-line no-use-before-define\n private static instance: APIRequest | undefined;\n private isMobiusSocketEnabled: boolean;\n private webex: WebexSDK;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private mobiusSocket: any;\n\n static getInstance(config: APIRequestConfig): APIRequest {\n if (!APIRequest.instance) {\n APIRequest.instance = new APIRequest(config);\n }\n\n return APIRequest.instance;\n }\n\n static resetInstance(): void {\n APIRequest.instance = undefined;\n }\n\n /**\n * @param config - Webex instance plus optional SDK Mobius-socket override\n */\n constructor(config: APIRequestConfig) {\n if (!config.webex) {\n throw new Error('WebexSDK instance is required');\n }\n\n this.webex = config.webex;\n this.isMobiusSocketEnabled =\n isMobiusWssEnabled(config.webex) || (config.isMobiusSocketEnabled ?? false);\n this.mobiusSocket = getMobiusSocketInstance(this.webex);\n }\n\n /**\n * Whether the Mobius WebSocket transport is active for this instance.\n */\n public isSocketEnabled(): boolean {\n return this.isMobiusSocketEnabled;\n }\n\n /**\n * Ensures the Mobius WebSocket is connected before sending API requests.\n * If the socket is already connected, resolves immediately. Otherwise,\n * initiates a new connection to the provided WebSocket URL.\n * On failure, throws a normalized WebexRequestPayload-shaped error.\n *\n * @param wssUrl - The Mobius WebSocket URL to connect to.\n */\n public async connectToMobiusSocket(wssUrl: string): Promise<void> {\n const logContext = {\n file: REQUEST_FILE,\n method: METHODS.CONNECT_TO_MOBIUS_SOCKET,\n };\n\n if (this.mobiusSocket.isConnected()) {\n log.info('Mobius WebSocket already connected', logContext);\n\n return;\n }\n\n log.info('Mobius WebSocket not connected, initiating connection', logContext);\n\n try {\n await this.mobiusSocket.connect(wssUrl);\n log.log('Mobius WebSocket connected successfully', logContext);\n } catch (err) {\n log.warn(`Mobius WebSocket connection failed: ${String(err)}`, logContext);\n throw normalizeWsError(err);\n }\n }\n\n /**\n * Disconnects the default session from the Mobius WebSocket.\n */\n public async disconnectFromMobiusSocket(options?: {code: number; reason: string}): Promise<void> {\n const logContext = {\n file: REQUEST_FILE,\n method: 'disconnectFromMobiusSocket',\n };\n\n try {\n await this.mobiusSocket.disconnect(options);\n log.log('Mobius WebSocket disconnected successfully', logContext);\n } catch (err) {\n // silent error - no need to throw an error\n log.warn(`Mobius WebSocket disconnection failed: ${String(err)}`, logContext);\n }\n }\n\n /**\n * Makes a request using HTTP or WebSocket transport per the flag set in the constructor.\n * When using WebSocket, the response is normalized to the WebexRequestPayload shape\n * so callers do not need to know which transport was used.\n * @param request - Request options (uri, method, body, headers, service)\n * @returns Promise resolving to WebexRequestPayload\n */\n public async makeRequest(request: APIRequestOptions): Promise<WebexRequestPayload> {\n if (this.isMobiusSocketEnabled) {\n const trackingId = `webex-js-sdk_${uuid()}`;\n const socketType = deriveMobiusSocketMessageType(request.uri, request.method);\n\n if (socketType === MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN) {\n throw new Error(`Unknown Mobius Socket message type: ${socketType}`);\n }\n\n try {\n const wsResponse: MobiusSocketResponse = await this.mobiusSocket.sendWssRequest({\n type: socketType,\n trackingId,\n metadata: {\n // userAgent: CALLING_USER_AGENT,\n userAgent: 'mobius-ws-test-ui', // TODO: Confirm if this needs to be hardcoded\n }, // TODO: Add auth token to metadata for call transfer etc\n data: request.body,\n });\n\n return normalizeWsResponse(wsResponse);\n } catch (err) {\n throw normalizeWsError(err);\n }\n }\n\n return this.webex.request(request) as Promise<WebexRequestPayload>;\n }\n}\n\n/**\n * Factory function to create a singleton APIRequest instance\n * @param config - Configuration object for APIRequest\n * @returns APIRequest instance\n */\nexport const createAPIRequest = (config: APIRequestConfig): APIRequest =>\n APIRequest.getInstance(config);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_uuid","require","_internalPluginMobiusSocket","_Logger","_interopRequireDefault","_mobiusSocketMapper","_constants","_wsFeatureFlag","_constants2","ownKeys","e","r","t","_Object$keys","_Object$getOwnPropertySymbols","o","filter","_Object$getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","Object","forEach","_defineProperty2","default","_Object$getOwnPropertyDescriptors","_Object$defineProperties","_Object$defineProperty","normalizeWsResponse","wsResponse","_ref","_ref2","statusCode","body","data","undefined","headers","trackingid","trackingId","metadata","normalizeWsError","err","_ref3","_wsErr$response","_ref4","_wsErr$trackingId","_wsErr$response2","_ref5","_wsErr$response3","wsErr","response","APIRequest","exports","config","_config$isMobiusSocke","_classCallCheck2","webex","Error","isMobiusSocketEnabled","isMobiusWssEnabled","mobiusSocket","getMobiusSocketInstance","_createClass2","key","value","isSocketEnabled","_connectToMobiusSocket","_asyncToGenerator2","_regenerator","mark","_callee","wssUrl","logContext","_t","wrap","_context","prev","next","file","REQUEST_FILE","method","METHODS","CONNECT_TO_MOBIUS_SOCKET","isConnected","log","info","abrupt","getConnectedWebSocketUrl","connect","warn","concat","String","stop","connectToMobiusSocket","_x","_disconnectFromMobiusSocket","_callee2","options","_t2","_context2","disconnect","disconnectFromMobiusSocket","_x2","_makeRequest","_callee3","request","socketType","isSupplementaryService","_t3","_t4","_t5","_t6","_t7","_t8","_t9","_t0","_t1","_t10","_t11","_context3","uuid","deriveMobiusSocketMessageType","uri","MOBIUS_SOCKET_MESSAGE_TYPE","UNKNOWN","isSupplementaryServiceMessageType","CALLING_USER_AGENT","credentials","getUserToken","sent","call","userAgent","authorization","sendWssRequest","type","makeRequest","_x3","getInstance","instance","resetInstance","createAPIRequest"],"sources":["request.ts"],"sourcesContent":["import {v4 as uuid} from 'uuid';\n// @ts-ignore - JS module without type declarations\nimport {getMobiusSocketInstance} from '@webex/internal-plugin-mobius-socket';\nimport {WebexRequestPayload} from '../../common/types';\nimport {WebexSDK} from '../../SDKConnector/types';\nimport log from '../../Logger';\nimport {APIRequestConfig, APIRequestOptions, MobiusSocketResponse} from './types';\nimport {\n deriveMobiusSocketMessageType,\n isSupplementaryServiceMessageType,\n} from './mobiusSocketMapper';\nimport {MOBIUS_SOCKET_MESSAGE_TYPE} from './constants';\nimport {isMobiusWssEnabled} from './wsFeatureFlag';\nimport {CALLING_USER_AGENT, METHODS, REQUEST_FILE} from '../constants';\n\n/**\n * Converts a MobiusSocketResponse into the WebexRequestPayload shape that\n * all callers (registration, call, keepalive error-handlers) expect.\n */\nfunction normalizeWsResponse(wsResponse: MobiusSocketResponse): WebexRequestPayload {\n return {\n statusCode: wsResponse.statusCode,\n body: (wsResponse.data as object) ?? undefined,\n headers: {\n trackingid: wsResponse.trackingId,\n ...((wsResponse.metadata as Record<string, string>) ?? {}),\n },\n };\n}\n\n/**\n * Converts a MobiusSocketResponseError rejection into a WebexRequestPayload-shaped\n * error so handleRegistrationErrors / handleCallErrors can process it identically.\n */\nfunction normalizeWsError(err: unknown): WebexRequestPayload {\n const wsErr = err as {\n statusCode?: number;\n statusMessage?: string;\n response?: MobiusSocketResponse;\n trackingId?: string;\n };\n\n return {\n statusCode: wsErr.statusCode,\n body: (wsErr.response?.data as object) ?? undefined,\n headers: {\n trackingid: wsErr.trackingId ?? wsErr.response?.trackingId ?? '',\n ...((wsErr.response?.metadata as Record<string, string>) ?? {}),\n },\n };\n}\n\n/**\n * APIRequest routes Mobius traffic over HTTP (`webex.request`) or the Mobius WebSocket path\n * (`mobiusSocketRequest`). `isMobiusSocketEnabled` is set in the constructor from WDM\n * `webrtc-calling-over-ws` and/or SDK config (interim until WDM is fully in prod).\n */\nexport class APIRequest {\n // eslint-disable-next-line no-use-before-define\n private static instance: APIRequest | undefined;\n private isMobiusSocketEnabled: boolean;\n private webex: WebexSDK;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private mobiusSocket: any;\n\n static getInstance(config: APIRequestConfig): APIRequest {\n if (!APIRequest.instance) {\n APIRequest.instance = new APIRequest(config);\n }\n\n return APIRequest.instance;\n }\n\n static resetInstance(): void {\n APIRequest.instance = undefined;\n }\n\n /**\n * @param config - Webex instance plus optional SDK Mobius-socket override\n */\n constructor(config: APIRequestConfig) {\n if (!config.webex) {\n throw new Error('WebexSDK instance is required');\n }\n\n this.webex = config.webex;\n this.isMobiusSocketEnabled =\n isMobiusWssEnabled(config.webex) || (config.isMobiusSocketEnabled ?? false);\n this.mobiusSocket = getMobiusSocketInstance(this.webex);\n }\n\n /**\n * Whether the Mobius WebSocket transport is active for this instance.\n */\n public isSocketEnabled(): boolean {\n return this.isMobiusSocketEnabled;\n }\n\n /**\n * Ensures the Mobius WebSocket is connected before sending API requests.\n * If the socket is already connected, resolves immediately. Otherwise,\n * initiates a new connection to the provided WebSocket URL.\n * On failure, throws a normalized WebexRequestPayload-shaped error.\n *\n * @param wssUrl - The Mobius WebSocket URL to connect to.\n */\n public async connectToMobiusSocket(wssUrl: string): Promise<string | undefined> {\n const logContext = {\n file: REQUEST_FILE,\n method: METHODS.CONNECT_TO_MOBIUS_SOCKET,\n };\n\n if (this.mobiusSocket.isConnected()) {\n log.info('Mobius WebSocket already connected', logContext);\n\n return this.mobiusSocket.getConnectedWebSocketUrl();\n }\n\n log.info('Mobius WebSocket not connected, initiating connection', logContext);\n\n try {\n await this.mobiusSocket.connect(wssUrl);\n log.log('Mobius WebSocket connected successfully', logContext);\n\n return wssUrl;\n } catch (err) {\n log.warn(`Mobius WebSocket connection failed: ${String(err)}`, logContext);\n throw normalizeWsError(err);\n }\n }\n\n /**\n * Disconnects the default session from the Mobius WebSocket.\n */\n public async disconnectFromMobiusSocket(options?: {code: number; reason: string}): Promise<void> {\n const logContext = {\n file: REQUEST_FILE,\n method: 'disconnectFromMobiusSocket',\n };\n\n try {\n await this.mobiusSocket.disconnect(options);\n log.log('Mobius WebSocket disconnected successfully', logContext);\n } catch (err) {\n // silent error - no need to throw an error\n log.warn(`Mobius WebSocket disconnection failed: ${String(err)}`, logContext);\n }\n }\n\n /**\n * Makes a request using HTTP or WebSocket transport per the flag set in the constructor.\n * When using WebSocket, the response is normalized to the WebexRequestPayload shape\n * so callers do not need to know which transport was used.\n * @param request - Request options (uri, method, body, headers, service)\n * @returns Promise resolving to WebexRequestPayload\n */\n public async makeRequest(request: APIRequestOptions): Promise<WebexRequestPayload> {\n if (this.isMobiusSocketEnabled) {\n const trackingId = `webex-js-sdk_${uuid()}`;\n const socketType = deriveMobiusSocketMessageType(request.uri, request.method);\n\n if (socketType === MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN) {\n throw new Error(`Unknown Mobius Socket message type: ${socketType}`);\n }\n\n const isSupplementaryService = isSupplementaryServiceMessageType(socketType);\n\n try {\n const wsResponse: MobiusSocketResponse = await this.mobiusSocket.sendWssRequest({\n type: socketType,\n trackingId,\n metadata: {\n userAgent: CALLING_USER_AGENT,\n authorization: `${\n (isSupplementaryService && (await this.webex.credentials.getUserToken())) || ''\n }`,\n },\n data: request.body,\n });\n\n return normalizeWsResponse(wsResponse);\n } catch (err) {\n throw normalizeWsError(err);\n }\n }\n\n return this.webex.request(request) as Promise<WebexRequestPayload>;\n }\n}\n\n/**\n * Factory function to create a singleton APIRequest instance\n * @param config - Configuration object for APIRequest\n * @returns APIRequest instance\n */\nexport const createAPIRequest = (config: APIRequestConfig): APIRequest =>\n APIRequest.getInstance(config);\n"],"mappings":"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","ignoreList":[]}
@@ -179,9 +179,6 @@ function filterMobiusUris(mobiusServers, defaultMobiusUrl) {
179
179
  backupWss.push(wssArrayBackup[_i3]);
180
180
  }
181
181
  }
182
-
183
- // TODO (Remove this later): Hardcoding the wss urls for now with test server url
184
- primaryWss.push('wss://mobius.aload-calling1.ciscospark.com/v1/calling/web');
185
182
  return {
186
183
  primary: primaryUris,
187
184
  backup: backupUris,