@webex/calling 3.12.0-mobius-socket.13 → 3.12.0-mobius-socket.14

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.
@@ -23,6 +23,8 @@ var _mobiusSocketMapper = require("./mobiusSocketMapper");
23
23
  var _constants = require("./constants");
24
24
  var _wsFeatureFlag = require("./wsFeatureFlag");
25
25
  var _constants2 = require("../constants");
26
+ var _Metrics = require("../../Metrics");
27
+ var _types = require("../../Metrics/types");
26
28
  function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
27
29
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
28
30
  /**
@@ -71,6 +73,7 @@ var APIRequest = exports.APIRequest = /*#__PURE__*/function () {
71
73
  (0, _defineProperty2.default)(this, "webex", void 0);
72
74
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
73
75
  (0, _defineProperty2.default)(this, "mobiusSocket", void 0);
76
+ (0, _defineProperty2.default)(this, "metricManager", void 0);
74
77
  var logContext = {
75
78
  file: _constants2.REQUEST_FILE,
76
79
  method: _constants2.METHODS.CONSTRUCTOR
@@ -82,6 +85,7 @@ var APIRequest = exports.APIRequest = /*#__PURE__*/function () {
82
85
  this.webex = config.webex;
83
86
  this.isMobiusSocketEnabled = (0, _wsFeatureFlag.isMobiusWssEnabled)(config.webex) || false;
84
87
  this.mobiusSocket = (0, _mobiusSocket.getMobiusSocketInstance)(this.webex);
88
+ this.metricManager = (0, _Metrics.getMetricManager)(this.webex);
85
89
  _Logger.default.info("APIRequest initialized with transport: ".concat(this.isMobiusSocketEnabled ? 'WSS' : 'HTTP'), logContext);
86
90
  }
87
91
 
@@ -106,7 +110,7 @@ var APIRequest = exports.APIRequest = /*#__PURE__*/function () {
106
110
  key: "connectToMobiusSocket",
107
111
  value: (function () {
108
112
  var _connectToMobiusSocket = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee(wssUrl) {
109
- var logContext, _t;
113
+ var logContext, _this$metricManager, _this$metricManager2, _t;
110
114
  return _regenerator.default.wrap(function (_context) {
111
115
  while (1) switch (_context.prev = _context.next) {
112
116
  case 0:
@@ -127,11 +131,13 @@ var APIRequest = exports.APIRequest = /*#__PURE__*/function () {
127
131
  return this.mobiusSocket.connect(wssUrl);
128
132
  case 3:
129
133
  _Logger.default.log('Mobius WebSocket connected successfully', logContext);
134
+ (_this$metricManager = this.metricManager) === null || _this$metricManager === void 0 ? void 0 : _this$metricManager.submitMobiusSocketMetric(_types.METRIC_EVENT.MOBIUS_SOCKET, _types.MOBIUS_SOCKET_ACTION.CONNECT, _types.METRIC_TYPE.BEHAVIORAL, wssUrl);
130
135
  return _context.abrupt("return", wssUrl);
131
136
  case 4:
132
137
  _context.prev = 4;
133
138
  _t = _context["catch"](2);
134
139
  _Logger.default.warn("Mobius WebSocket connection failed: ".concat(String(_t)), logContext);
140
+ (_this$metricManager2 = this.metricManager) === null || _this$metricManager2 === void 0 ? void 0 : _this$metricManager2.submitMobiusSocketMetric(_types.METRIC_EVENT.MOBIUS_SOCKET_ERROR, _types.MOBIUS_SOCKET_ACTION.CONNECT, _types.METRIC_TYPE.BEHAVIORAL, wssUrl, undefined, String(_t));
135
141
  throw normalizeWsError(_t);
136
142
  case 5:
137
143
  case "end":
@@ -152,7 +158,7 @@ var APIRequest = exports.APIRequest = /*#__PURE__*/function () {
152
158
  key: "disconnectFromMobiusSocket",
153
159
  value: (function () {
154
160
  var _disconnectFromMobiusSocket = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee2(options) {
155
- var logContext, _t2;
161
+ var logContext, _this$metricManager3, _this$metricManager4, _t2;
156
162
  return _regenerator.default.wrap(function (_context2) {
157
163
  while (1) switch (_context2.prev = _context2.next) {
158
164
  case 0:
@@ -166,6 +172,7 @@ var APIRequest = exports.APIRequest = /*#__PURE__*/function () {
166
172
  return this.mobiusSocket.disconnect(options);
167
173
  case 2:
168
174
  _Logger.default.log('Mobius WebSocket disconnected successfully', logContext);
175
+ (_this$metricManager3 = this.metricManager) === null || _this$metricManager3 === void 0 ? void 0 : _this$metricManager3.submitMobiusSocketMetric(_types.METRIC_EVENT.MOBIUS_SOCKET, _types.MOBIUS_SOCKET_ACTION.DISCONNECT, _types.METRIC_TYPE.BEHAVIORAL);
169
176
  _context2.next = 4;
170
177
  break;
171
178
  case 3:
@@ -173,6 +180,7 @@ var APIRequest = exports.APIRequest = /*#__PURE__*/function () {
173
180
  _t2 = _context2["catch"](1);
174
181
  // silent error - no need to throw an error
175
182
  _Logger.default.warn("Mobius WebSocket disconnection failed: ".concat(String(_t2)), logContext);
183
+ (_this$metricManager4 = this.metricManager) === null || _this$metricManager4 === void 0 ? void 0 : _this$metricManager4.submitMobiusSocketMetric(_types.METRIC_EVENT.MOBIUS_SOCKET_ERROR, _types.MOBIUS_SOCKET_ACTION.DISCONNECT, _types.METRIC_TYPE.BEHAVIORAL, undefined, undefined, String(_t2));
176
184
  case 4:
177
185
  case "end":
178
186
  return _context2.stop();
@@ -283,6 +291,7 @@ var APIRequest = exports.APIRequest = /*#__PURE__*/function () {
283
291
  }, {
284
292
  key: "registerMobiusSocketListener",
285
293
  value: function registerMobiusSocketListener(cb) {
294
+ var _this$metricManager5;
286
295
  var logContext = {
287
296
  file: _constants2.REQUEST_FILE,
288
297
  method: _constants2.METHODS.REGISTER_MOBIUS_SOCKET_LISTENER
@@ -294,10 +303,12 @@ var APIRequest = exports.APIRequest = /*#__PURE__*/function () {
294
303
  cb(data);
295
304
  });
296
305
  _Logger.default.log('Mobius async event listener attached', logContext);
306
+ (_this$metricManager5 = this.metricManager) === null || _this$metricManager5 === void 0 ? void 0 : _this$metricManager5.submitMobiusSocketMetric(_types.METRIC_EVENT.MOBIUS_SOCKET, _types.MOBIUS_SOCKET_ACTION.LISTENER_REGISTERED, _types.METRIC_TYPE.BEHAVIORAL);
297
307
  }
298
308
  }, {
299
309
  key: "unregisterMobiusSocketListener",
300
310
  value: function unregisterMobiusSocketListener() {
311
+ var _this$metricManager6;
301
312
  var logContext = {
302
313
  file: _constants2.REQUEST_FILE,
303
314
  method: _constants2.METHODS.UNREGISTER_MOBIUS_SOCKET_LISTENER
@@ -305,6 +316,7 @@ var APIRequest = exports.APIRequest = /*#__PURE__*/function () {
305
316
  _Logger.default.info('Detaching Mobius async event listener', logContext);
306
317
  this.mobiusSocket.off('event:async_event');
307
318
  _Logger.default.log('Mobius async event listener detached', logContext);
319
+ (_this$metricManager6 = this.metricManager) === null || _this$metricManager6 === void 0 ? void 0 : _this$metricManager6.submitMobiusSocketMetric(_types.METRIC_EVENT.MOBIUS_SOCKET, _types.MOBIUS_SOCKET_ACTION.LISTENER_UNREGISTERED, _types.METRIC_TYPE.BEHAVIORAL);
308
320
  }
309
321
  }], [{
310
322
  key: "getInstance",
@@ -1 +1 @@
1
- {"version":3,"names":["_uuid","require","_mobiusSocket","_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","_classCallCheck2","logContext","file","REQUEST_FILE","method","METHODS","CONSTRUCTOR","webex","log","error","Error","isMobiusSocketEnabled","isMobiusWssEnabled","mobiusSocket","getMobiusSocketInstance","info","concat","_createClass2","key","value","isSocketEnabled","_connectToMobiusSocket","_asyncToGenerator2","_regenerator","mark","_callee","wssUrl","_t","wrap","_context","prev","next","CONNECT_TO_MOBIUS_SOCKET","isConnected","abrupt","getConnectedWebSocketUrl","connect","warn","String","stop","connectToMobiusSocket","_x","_disconnectFromMobiusSocket","_callee2","options","_t2","_context2","DISCONNECT_FROM_MOBIUS_SOCKET","disconnect","disconnectFromMobiusSocket","_x2","_makeRequest","_callee3","request","socketType","isSupplementaryService","_t3","_t4","_t5","_t6","_t7","_t8","_t9","_t0","_t1","_t10","_t11","_t12","_t13","_t14","_context3","MAKE_REQUEST","uuid","deriveMobiusSocketMessageType","uri","MOBIUS_SOCKET_MESSAGE_TYPE","UNKNOWN","isSupplementaryServiceMessageType","CALLING_USER_AGENT","credentials","getUserToken","sent","call","userAgent","authorization","sendWssRequest","type","makeRequest","_x3","registerMobiusSocketListener","cb","REGISTER_MOBIUS_SOCKET_LISTENER","on","_data$data$eventType","_data$data","trace","eventType","unregisterMobiusSocketListener","UNREGISTER_MOBIUS_SOCKET_LISTENER","off","getInstance","instance","resetInstance","createAPIRequest"],"sources":["request.ts"],"sourcesContent":["import {v4 as uuid} from 'uuid';\nimport {getMobiusSocketInstance} from '../../mobius-socket';\nimport {WebexRequestPayload} from '../../common/types';\nimport {WebexSDK} from '../../SDKConnector/types';\nimport log from '../../Logger';\nimport {APIRequestConfig, APIRequestOptions, MobiusAsyncEvent, 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 const logContext = {\n file: REQUEST_FILE,\n method: METHODS.CONSTRUCTOR,\n };\n\n if (!config.webex) {\n log.error('APIRequest instantiation failed: WebexSDK instance is required', logContext);\n throw new Error('WebexSDK instance is required');\n }\n\n this.webex = config.webex;\n this.isMobiusSocketEnabled = isMobiusWssEnabled(config.webex) || false;\n this.mobiusSocket = getMobiusSocketInstance(this.webex);\n\n log.info(\n `APIRequest initialized with transport: ${this.isMobiusSocketEnabled ? 'WSS' : 'HTTP'}`,\n logContext\n );\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: METHODS.DISCONNECT_FROM_MOBIUS_SOCKET,\n };\n\n log.info('Disconnecting from Mobius WebSocket', logContext);\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 const logContext = {\n file: REQUEST_FILE,\n method: METHODS.MAKE_REQUEST,\n };\n log.info(`Dispatching request via ${this.isMobiusSocketEnabled ? 'WSS' : 'HTTP'} `, logContext);\n\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 log.error(\n `Unknown Mobius Socket message type for uri: ${request.uri}, httpMethod: ${request.method}`,\n logContext\n );\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 ...request.headers,\n userAgent: CALLING_USER_AGENT,\n authorization: `${\n (isSupplementaryService && (await this.webex.credentials.getUserToken())) || ''\n }`,\n },\n data: request.body,\n });\n\n log.log(\n `WSS request succeeded - socketType: ${socketType}, trackingId: ${trackingId}, statusCode: ${wsResponse.statusCode}`,\n logContext\n );\n\n return normalizeWsResponse(wsResponse);\n } catch (err) {\n log.error(\n `WSS request failed - socketType: ${socketType}, trackingId: ${trackingId}, error: ${String(\n err\n )}`,\n logContext\n );\n throw normalizeWsError(err);\n }\n }\n\n return this.webex.request(request) as Promise<WebexRequestPayload>;\n }\n\n public registerMobiusSocketListener(cb: (data?: MobiusAsyncEvent) => void): void {\n const logContext = {\n file: REQUEST_FILE,\n method: METHODS.REGISTER_MOBIUS_SOCKET_LISTENER,\n };\n\n log.info('Attaching Mobius async event listener', logContext);\n\n this.mobiusSocket.on('event:async_event', (data: MobiusAsyncEvent) => {\n log.trace(\n `Mobius async event received - eventType: ${data?.data?.eventType ?? 'unknown'}`,\n logContext\n );\n cb(data);\n });\n\n log.log('Mobius async event listener attached', logContext);\n }\n\n public unregisterMobiusSocketListener(): void {\n const logContext = {\n file: REQUEST_FILE,\n method: METHODS.UNREGISTER_MOBIUS_SOCKET_LISTENER,\n };\n\n log.info('Detaching Mobius async event listener', logContext);\n this.mobiusSocket.off('event:async_event');\n log.log('Mobius async event listener detached', logContext);\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","_mobiusSocket","_Logger","_interopRequireDefault","_mobiusSocketMapper","_constants","_wsFeatureFlag","_constants2","_Metrics","_types","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","_classCallCheck2","logContext","file","REQUEST_FILE","method","METHODS","CONSTRUCTOR","webex","log","error","Error","isMobiusSocketEnabled","isMobiusWssEnabled","mobiusSocket","getMobiusSocketInstance","metricManager","getMetricManager","info","concat","_createClass2","key","value","isSocketEnabled","_connectToMobiusSocket","_asyncToGenerator2","_regenerator","mark","_callee","wssUrl","_this$metricManager","_this$metricManager2","_t","wrap","_context","prev","next","CONNECT_TO_MOBIUS_SOCKET","isConnected","abrupt","getConnectedWebSocketUrl","connect","submitMobiusSocketMetric","METRIC_EVENT","MOBIUS_SOCKET","MOBIUS_SOCKET_ACTION","CONNECT","METRIC_TYPE","BEHAVIORAL","warn","String","MOBIUS_SOCKET_ERROR","stop","connectToMobiusSocket","_x","_disconnectFromMobiusSocket","_callee2","options","_this$metricManager3","_this$metricManager4","_t2","_context2","DISCONNECT_FROM_MOBIUS_SOCKET","disconnect","DISCONNECT","disconnectFromMobiusSocket","_x2","_makeRequest","_callee3","request","socketType","isSupplementaryService","_t3","_t4","_t5","_t6","_t7","_t8","_t9","_t0","_t1","_t10","_t11","_t12","_t13","_t14","_context3","MAKE_REQUEST","uuid","deriveMobiusSocketMessageType","uri","MOBIUS_SOCKET_MESSAGE_TYPE","UNKNOWN","isSupplementaryServiceMessageType","CALLING_USER_AGENT","credentials","getUserToken","sent","call","userAgent","authorization","sendWssRequest","type","makeRequest","_x3","registerMobiusSocketListener","cb","_this$metricManager5","REGISTER_MOBIUS_SOCKET_LISTENER","on","_data$data$eventType","_data$data","trace","eventType","LISTENER_REGISTERED","unregisterMobiusSocketListener","_this$metricManager6","UNREGISTER_MOBIUS_SOCKET_LISTENER","off","LISTENER_UNREGISTERED","getInstance","instance","resetInstance","createAPIRequest"],"sources":["request.ts"],"sourcesContent":["import {v4 as uuid} from 'uuid';\nimport {getMobiusSocketInstance} from '../../mobius-socket';\nimport {WebexRequestPayload} from '../../common/types';\nimport {WebexSDK} from '../../SDKConnector/types';\nimport log from '../../Logger';\nimport {APIRequestConfig, APIRequestOptions, MobiusAsyncEvent, 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';\nimport {getMetricManager} from '../../Metrics';\nimport {IMetricManager, METRIC_EVENT, METRIC_TYPE, MOBIUS_SOCKET_ACTION} from '../../Metrics/types';\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 private metricManager: IMetricManager;\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 const logContext = {\n file: REQUEST_FILE,\n method: METHODS.CONSTRUCTOR,\n };\n\n if (!config.webex) {\n log.error('APIRequest instantiation failed: WebexSDK instance is required', logContext);\n throw new Error('WebexSDK instance is required');\n }\n\n this.webex = config.webex;\n this.isMobiusSocketEnabled = isMobiusWssEnabled(config.webex) || false;\n this.mobiusSocket = getMobiusSocketInstance(this.webex);\n this.metricManager = getMetricManager(this.webex);\n\n log.info(\n `APIRequest initialized with transport: ${this.isMobiusSocketEnabled ? 'WSS' : 'HTTP'}`,\n logContext\n );\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 this.metricManager?.submitMobiusSocketMetric(\n METRIC_EVENT.MOBIUS_SOCKET,\n MOBIUS_SOCKET_ACTION.CONNECT,\n METRIC_TYPE.BEHAVIORAL,\n wssUrl\n );\n\n return wssUrl;\n } catch (err) {\n log.warn(`Mobius WebSocket connection failed: ${String(err)}`, logContext);\n\n this.metricManager?.submitMobiusSocketMetric(\n METRIC_EVENT.MOBIUS_SOCKET_ERROR,\n MOBIUS_SOCKET_ACTION.CONNECT,\n METRIC_TYPE.BEHAVIORAL,\n wssUrl,\n undefined,\n String(err)\n );\n\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: METHODS.DISCONNECT_FROM_MOBIUS_SOCKET,\n };\n\n log.info('Disconnecting from Mobius WebSocket', logContext);\n\n try {\n await this.mobiusSocket.disconnect(options);\n log.log('Mobius WebSocket disconnected successfully', logContext);\n\n this.metricManager?.submitMobiusSocketMetric(\n METRIC_EVENT.MOBIUS_SOCKET,\n MOBIUS_SOCKET_ACTION.DISCONNECT,\n METRIC_TYPE.BEHAVIORAL\n );\n } catch (err) {\n // silent error - no need to throw an error\n log.warn(`Mobius WebSocket disconnection failed: ${String(err)}`, logContext);\n\n this.metricManager?.submitMobiusSocketMetric(\n METRIC_EVENT.MOBIUS_SOCKET_ERROR,\n MOBIUS_SOCKET_ACTION.DISCONNECT,\n METRIC_TYPE.BEHAVIORAL,\n undefined,\n undefined,\n String(err)\n );\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 const logContext = {\n file: REQUEST_FILE,\n method: METHODS.MAKE_REQUEST,\n };\n log.info(`Dispatching request via ${this.isMobiusSocketEnabled ? 'WSS' : 'HTTP'} `, logContext);\n\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 log.error(\n `Unknown Mobius Socket message type for uri: ${request.uri}, httpMethod: ${request.method}`,\n logContext\n );\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 ...request.headers,\n userAgent: CALLING_USER_AGENT,\n authorization: `${\n (isSupplementaryService && (await this.webex.credentials.getUserToken())) || ''\n }`,\n },\n data: request.body,\n });\n\n log.log(\n `WSS request succeeded - socketType: ${socketType}, trackingId: ${trackingId}, statusCode: ${wsResponse.statusCode}`,\n logContext\n );\n\n return normalizeWsResponse(wsResponse);\n } catch (err) {\n log.error(\n `WSS request failed - socketType: ${socketType}, trackingId: ${trackingId}, error: ${String(\n err\n )}`,\n logContext\n );\n throw normalizeWsError(err);\n }\n }\n\n return this.webex.request(request) as Promise<WebexRequestPayload>;\n }\n\n public registerMobiusSocketListener(cb: (data?: MobiusAsyncEvent) => void): void {\n const logContext = {\n file: REQUEST_FILE,\n method: METHODS.REGISTER_MOBIUS_SOCKET_LISTENER,\n };\n\n log.info('Attaching Mobius async event listener', logContext);\n\n this.mobiusSocket.on('event:async_event', (data: MobiusAsyncEvent) => {\n log.trace(\n `Mobius async event received - eventType: ${data?.data?.eventType ?? 'unknown'}`,\n logContext\n );\n cb(data);\n });\n\n log.log('Mobius async event listener attached', logContext);\n\n this.metricManager?.submitMobiusSocketMetric(\n METRIC_EVENT.MOBIUS_SOCKET,\n MOBIUS_SOCKET_ACTION.LISTENER_REGISTERED,\n METRIC_TYPE.BEHAVIORAL\n );\n }\n\n public unregisterMobiusSocketListener(): void {\n const logContext = {\n file: REQUEST_FILE,\n method: METHODS.UNREGISTER_MOBIUS_SOCKET_LISTENER,\n };\n\n log.info('Detaching Mobius async event listener', logContext);\n this.mobiusSocket.off('event:async_event');\n log.log('Mobius async event listener detached', logContext);\n\n this.metricManager?.submitMobiusSocketMetric(\n METRIC_EVENT.MOBIUS_SOCKET,\n MOBIUS_SOCKET_ACTION.LISTENER_UNREGISTERED,\n METRIC_TYPE.BEHAVIORAL\n );\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":[]}
@@ -518,6 +518,66 @@ var MetricManager = /*#__PURE__*/function () {
518
518
  this.webex.internal.metrics.submitClientMetrics(name, data);
519
519
  }
520
520
  }
521
+
522
+ /**
523
+ * @param name - Name of the metric being submitted (MOBIUS_SOCKET or MOBIUS_SOCKET_ERROR).
524
+ * @param metricAction - Type of Mobius WebSocket action.
525
+ * @param type - Type of metric.
526
+ * @param wssUrl - The Mobius WebSocket URL involved in the action.
527
+ * @param trackingId - Tracking ID associated with the operation, if any.
528
+ * @param error - Error string used to populate error details (for MOBIUS_SOCKET_ERROR).
529
+ * @param eventType - Type of async event received over the socket, if applicable.
530
+ */
531
+ }, {
532
+ key: "submitMobiusSocketMetric",
533
+ value: function submitMobiusSocketMetric(name, metricAction, type, wssUrl, trackingId, error, eventType) {
534
+ var _this$deviceInfo39, _this$deviceInfo39$de, _this$deviceInfo40, _this$deviceInfo40$de, _this$deviceInfo41, _this$deviceInfo41$de;
535
+ var data;
536
+ var commonTags = {
537
+ action: metricAction,
538
+ device_id: (_this$deviceInfo39 = this.deviceInfo) === null || _this$deviceInfo39 === void 0 ? void 0 : (_this$deviceInfo39$de = _this$deviceInfo39.device) === null || _this$deviceInfo39$de === void 0 ? void 0 : _this$deviceInfo39$de.deviceId,
539
+ service_indicator: this.serviceIndicator
540
+ };
541
+ var commonFields = {
542
+ device_url: (_this$deviceInfo40 = this.deviceInfo) === null || _this$deviceInfo40 === void 0 ? void 0 : (_this$deviceInfo40$de = _this$deviceInfo40.device) === null || _this$deviceInfo40$de === void 0 ? void 0 : _this$deviceInfo40$de.clientDeviceUri,
543
+ mobius_url: (_this$deviceInfo41 = this.deviceInfo) === null || _this$deviceInfo41 === void 0 ? void 0 : (_this$deviceInfo41$de = _this$deviceInfo41.device) === null || _this$deviceInfo41$de === void 0 ? void 0 : _this$deviceInfo41$de.uri,
544
+ calling_sdk_version: process.env.CALLING_SDK_VERSION || _constants.VERSION,
545
+ wss_url: wssUrl,
546
+ tracking_id: trackingId,
547
+ event_type: eventType
548
+ };
549
+ switch (name) {
550
+ case _types2.METRIC_EVENT.MOBIUS_SOCKET:
551
+ {
552
+ data = {
553
+ tags: commonTags,
554
+ fields: commonFields,
555
+ type: type
556
+ };
557
+ break;
558
+ }
559
+ case _types2.METRIC_EVENT.MOBIUS_SOCKET_ERROR:
560
+ {
561
+ data = {
562
+ tags: commonTags,
563
+ fields: _objectSpread(_objectSpread({}, commonFields), {}, {
564
+ error: error
565
+ }),
566
+ type: type
567
+ };
568
+ break;
569
+ }
570
+ default:
571
+ _Logger.default.warn('Invalid metric name received. Rejecting request to submit metric.', {
572
+ file: _constants.METRIC_FILE,
573
+ method: 'submitMobiusSocketMetric'
574
+ });
575
+ break;
576
+ }
577
+ if (data) {
578
+ this.webex.internal.metrics.submitClientMetrics(name, data);
579
+ }
580
+ }
521
581
  }]);
522
582
  }();
523
583
  /**
@@ -1 +1 @@
1
- {"version":3,"names":["_constants","require","_types","_types2","_Logger","_interopRequireDefault","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","metricManager","MetricManager","webex","indicator","_classCallCheck2","log","info","file","METRIC_FILE","serviceIndicator","_createClass2","key","value","submitConnectionMetrics","name","metricAction","type","downTimestamp","upTimestamp","_this$deviceInfo","_this$deviceInfo$devi","_this$deviceInfo2","_this$deviceInfo2$dev","_this$deviceInfo3","_this$deviceInfo3$dev","metricData","tags","device_id","deviceInfo","device","deviceId","service_indicator","fields","device_url","clientDeviceUri","mobius_url","uri","calling_sdk_version","process","env","CALLING_SDK_VERSION","VERSION","internal","metrics","submitClientMetrics","submitUploadLogsMetric","action","trackingId","feedbackId","correlationId","stack","callId","broadworksCorrelationInfo","_this$deviceInfo4","_this$deviceInfo4$dev","_this$deviceInfo5","_this$deviceInfo5$dev","_this$deviceInfo6","_this$deviceInfo6$dev","data","commonData","correlation_id","tracking_id","feedback_id","call_id","METRIC_EVENT","UPLOAD_LOGS_SUCCESS","UPLOAD_LOGS_FAILED","error","setDeviceInfo","submitRegionInfoMetric","mobiusHost","clientRegion","countryCode","_this$deviceInfo7","_this$deviceInfo7$dev","_this$deviceInfo8","_this$deviceInfo8$dev","_this$deviceInfo9","_this$deviceInfo9$dev","ServiceIndicator","CALLING","mobius_host","client_region","country_code","submitMobiusServersMetric","mobiusServers","_this$deviceInfo0","_this$deviceInfo0$dev","_this$deviceInfo1","_this$deviceInfo1$dev","_this$deviceInfo10","_this$deviceInfo10$de","primary_mobius_servers_region","primary","region","primary_mobius_servers_uris","uris","join","backup_mobius_servers_region","backup","backup_mobius_servers_uris","submitRegistrationMetric","caller","serverType","keepaliveCount","clientError","REGISTRATION","_this$deviceInfo11","_this$deviceInfo11$de","_this$deviceInfo12","_this$deviceInfo12$de","_this$deviceInfo13","_this$deviceInfo13$de","reg_source","server_type","REGISTRATION_ERROR","_this$deviceInfo14","_this$deviceInfo14$de","_this$deviceInfo15","_this$deviceInfo15$de","_this$deviceInfo16","_this$deviceInfo16$de","_errorData","_errorData2","errorData","msg","getError","message","error_type","KEEPALIVE_ERROR","_this$deviceInfo17","_this$deviceInfo17$de","_this$deviceInfo18","_this$deviceInfo18$de","_this$deviceInfo19","_this$deviceInfo19$de","_errorData4","_errorData5","keepalive_count","warn","method","submitCallMetric","callError","CALL","_this$deviceInfo20","_this$deviceInfo20$de","_this$deviceInfo21","_this$deviceInfo21$de","_this$deviceInfo22","_this$deviceInfo22$de","CALL_ERROR","_this$deviceInfo23","_this$deviceInfo23$de","_this$deviceInfo24","_this$deviceInfo24$de","_this$deviceInfo25","_this$deviceInfo25$de","getCallError","submitMediaMetric","localSdp","remoteSdp","MEDIA","_this$deviceInfo26","_this$deviceInfo26$de","_this$deviceInfo27","_this$deviceInfo27$de","_this$deviceInfo28","_this$deviceInfo28$de","local_media_details","remote_media_details","MEDIA_ERROR","_this$deviceInfo29","_this$deviceInfo29$de","_this$deviceInfo30","_this$deviceInfo30$de","_this$deviceInfo31","_this$deviceInfo31$de","submitVoicemailMetric","messageId","voicemailError","statusCode","VOICEMAIL","_this$deviceInfo32","_this$deviceInfo32$de","_this$deviceInfo33","_this$deviceInfo33$de","message_id","VOICEMAIL_ERROR","_this$deviceInfo34","_this$deviceInfo34$de","_this$deviceInfo35","_this$deviceInfo35$de","status_code","submitBNRMetric","BNR_ENABLED","BNR_DISABLED","_this$deviceInfo36","_this$deviceInfo36$de","_this$deviceInfo37","_this$deviceInfo37$de","_this$deviceInfo38","_this$deviceInfo38$de","getMetricManager","exports","_default"],"sources":["index.ts"],"sourcesContent":["import {CallError, CallingClientError} from '../Errors';\nimport {METRIC_FILE, VERSION} from '../CallingClient/constants';\nimport {CallId, CorrelationId, IDeviceInfo, MobiusServers, ServiceIndicator} from '../common/types';\nimport {WebexSDK} from '../SDKConnector/types';\nimport {\n REG_ACTION,\n IMetricManager,\n METRIC_TYPE,\n METRIC_EVENT,\n SERVER_TYPE,\n CONNECTION_ACTION,\n} from './types';\nimport {LineError} from '../Errors/catalog/LineError';\nimport log from '../Logger';\n\nlet metricManager: IMetricManager;\n\n/**\n *\n */\nclass MetricManager implements IMetricManager {\n private webex: WebexSDK;\n\n private deviceInfo?: IDeviceInfo;\n\n private serviceIndicator?: ServiceIndicator;\n\n /**\n * @param webex - Webex object used to send metrics.\n * @param indicator - Service Indicator.\n */\n public constructor(webex: WebexSDK, indicator?: ServiceIndicator) {\n log.info('Initializing metric manager...', {file: METRIC_FILE});\n this.webex = webex;\n this.serviceIndicator = indicator;\n }\n\n public submitConnectionMetrics(\n name: METRIC_EVENT,\n metricAction: CONNECTION_ACTION,\n type: METRIC_TYPE,\n downTimestamp: string,\n upTimestamp: string\n ) {\n const metricData = {\n tags: {\n metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n downTimestamp,\n upTimestamp,\n },\n type,\n };\n\n if (metricData) {\n this.webex.internal.metrics.submitClientMetrics(name, metricData);\n }\n }\n\n public submitUploadLogsMetric(\n name: METRIC_EVENT,\n action: string,\n type: METRIC_TYPE,\n trackingId?: string,\n feedbackId?: string,\n correlationId?: string,\n stack?: string,\n callId?: string,\n broadworksCorrelationInfo?: string\n ) {\n let data;\n\n const commonData = {\n tags: {\n action,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n correlation_id: correlationId,\n broadworksCorrelationInfo,\n tracking_id: trackingId,\n feedback_id: feedbackId,\n call_id: callId,\n },\n type,\n };\n\n switch (name) {\n case METRIC_EVENT.UPLOAD_LOGS_SUCCESS: {\n data = commonData;\n\n break;\n }\n\n case METRIC_EVENT.UPLOAD_LOGS_FAILED: {\n data = {\n ...commonData,\n fields: {\n ...commonData.fields,\n error: stack,\n },\n };\n\n break;\n }\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param deviceInfo - DeviceInfo object.\n */\n public setDeviceInfo(deviceInfo: IDeviceInfo) {\n this.deviceInfo = deviceInfo;\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param region - Region string.\n * @param trackingId - Tracking ID string.\n */\n public submitRegionInfoMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n mobiusHost: string,\n clientRegion: string,\n countryCode: string,\n trackingId?: string\n ) {\n const data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n mobius_host: mobiusHost,\n client_region: clientRegion,\n country_code: countryCode,\n tracking_id: trackingId,\n },\n type,\n };\n\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param mobiusServers - Array of Mobius server objects.\n */\n public submitMobiusServersMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n mobiusServers: MobiusServers,\n trackingId?: string\n ) {\n const data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n primary_mobius_servers_region: mobiusServers.primary.region,\n primary_mobius_servers_uris: mobiusServers.primary.uris.join(','),\n backup_mobius_servers_region: mobiusServers.backup.region,\n backup_mobius_servers_uris: mobiusServers.backup.uris.join(','),\n tracking_id: trackingId,\n },\n type,\n };\n\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param clientError - Error object used to populate error details in metric.\n */\n public submitRegistrationMetric(\n name: METRIC_EVENT,\n metricAction: REG_ACTION,\n type: METRIC_TYPE,\n caller: string,\n serverType: SERVER_TYPE,\n trackingId: string,\n keepaliveCount?: number,\n clientError?: LineError | CallingClientError\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.REGISTRATION: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n reg_source: caller,\n server_type: serverType,\n trackingId,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.REGISTRATION_ERROR: {\n let errorData;\n if (clientError) {\n errorData = {\n msg: clientError.getError().message,\n type: clientError.getError().type,\n };\n }\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n reg_source: caller,\n server_type: serverType,\n trackingId,\n error: errorData?.msg,\n error_type: errorData?.type,\n },\n type,\n };\n\n break;\n }\n\n case METRIC_EVENT.KEEPALIVE_ERROR: {\n let errorData;\n if (clientError) {\n errorData = {\n msg: clientError.getError().message,\n type: clientError.getError().type,\n };\n }\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n reg_source: caller,\n server_type: serverType,\n trackingId,\n keepalive_count: keepaliveCount,\n error: errorData?.msg,\n error_type: errorData?.type,\n },\n type,\n };\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: 'submitRegistrationMetric',\n });\n break;\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param callId - Call ID of the call sending the metric.\n * @param correlationId - Correlation ID of the call sending the metric.\n * @param callError - Error object used to populate error details in metric.\n */\n public submitCallMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId,\n callError?: CallError\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.CALL: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.CALL_ERROR: {\n if (callError) {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n error: callError.getCallError().message,\n error_type: callError.getCallError().type,\n },\n type,\n };\n }\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: 'submitCallMetric',\n });\n break;\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param callId - Call ID of the call sending the metric.\n * @param correlationId - Correlation ID of the call sending the metric.\n * @param localSdp - Local SDP information for media metric.\n * @param remoteSdp - Remote SDP information for media metric.\n * @param callError - Error object used to populate error details in metric.\n */\n public submitMediaMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId,\n localSdp?: string,\n remoteSdp?: string,\n callError?: CallError\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.MEDIA: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n local_media_details: localSdp,\n remote_media_details: remoteSdp,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.MEDIA_ERROR: {\n if (callError) {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n local_media_details: localSdp,\n remote_media_details: remoteSdp,\n error: callError.getCallError().message,\n error_type: callError.getCallError().type,\n },\n type,\n };\n }\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: 'submitMediaMetric',\n });\n break;\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param messageId - Message identifier of a Voicemail message.\n * @param voicemailError - Error string used to populate error details in metric.\n * @param statusCode - Status code used to populate error details in metric.\n */\n public submitVoicemailMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n messageId?: string,\n voicemailError?: string,\n statusCode?: number\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.VOICEMAIL: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n message_id: messageId,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n calling_sdk_version:\n typeof process !== 'undefined' && process.env.CALLING_SDK_VERSION\n ? process.env.CALLING_SDK_VERSION\n : VERSION,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.VOICEMAIL_ERROR: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n message_id: messageId,\n error: voicemailError,\n status_code: statusCode,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n calling_sdk_version:\n typeof process !== 'undefined' && process.env.CALLING_SDK_VERSION\n ? process.env.CALLING_SDK_VERSION\n : VERSION,\n },\n type,\n };\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: 'submitVoicemailMetric',\n });\n break;\n }\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n public submitBNRMetric(\n name: METRIC_EVENT,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId\n ) {\n let data;\n\n if (name === METRIC_EVENT.BNR_ENABLED || name === METRIC_EVENT.BNR_DISABLED) {\n data = {\n tags: {\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n },\n type,\n };\n } else {\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: 'submitBNRMetric',\n });\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n}\n\n/**\n * @param webex - Webex object to communicate with metrics microservice.\n * @param indicator - Service Indicator.\n */\nexport const getMetricManager = (\n webex?: WebexSDK,\n indicator?: ServiceIndicator\n): IMetricManager => {\n if (!metricManager && webex) {\n metricManager = new MetricManager(webex, indicator);\n }\n\n return metricManager;\n};\n\nexport default getMetricManager;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_constants","require","_types","_types2","_Logger","_interopRequireDefault","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","metricManager","MetricManager","webex","indicator","_classCallCheck2","log","info","file","METRIC_FILE","serviceIndicator","_createClass2","key","value","submitConnectionMetrics","name","metricAction","type","downTimestamp","upTimestamp","_this$deviceInfo","_this$deviceInfo$devi","_this$deviceInfo2","_this$deviceInfo2$dev","_this$deviceInfo3","_this$deviceInfo3$dev","metricData","tags","device_id","deviceInfo","device","deviceId","service_indicator","fields","device_url","clientDeviceUri","mobius_url","uri","calling_sdk_version","process","env","CALLING_SDK_VERSION","VERSION","internal","metrics","submitClientMetrics","submitUploadLogsMetric","action","trackingId","feedbackId","correlationId","stack","callId","broadworksCorrelationInfo","_this$deviceInfo4","_this$deviceInfo4$dev","_this$deviceInfo5","_this$deviceInfo5$dev","_this$deviceInfo6","_this$deviceInfo6$dev","data","commonData","correlation_id","tracking_id","feedback_id","call_id","METRIC_EVENT","UPLOAD_LOGS_SUCCESS","UPLOAD_LOGS_FAILED","error","setDeviceInfo","submitRegionInfoMetric","mobiusHost","clientRegion","countryCode","_this$deviceInfo7","_this$deviceInfo7$dev","_this$deviceInfo8","_this$deviceInfo8$dev","_this$deviceInfo9","_this$deviceInfo9$dev","ServiceIndicator","CALLING","mobius_host","client_region","country_code","submitMobiusServersMetric","mobiusServers","_this$deviceInfo0","_this$deviceInfo0$dev","_this$deviceInfo1","_this$deviceInfo1$dev","_this$deviceInfo10","_this$deviceInfo10$de","primary_mobius_servers_region","primary","region","primary_mobius_servers_uris","uris","join","backup_mobius_servers_region","backup","backup_mobius_servers_uris","submitRegistrationMetric","caller","serverType","keepaliveCount","clientError","REGISTRATION","_this$deviceInfo11","_this$deviceInfo11$de","_this$deviceInfo12","_this$deviceInfo12$de","_this$deviceInfo13","_this$deviceInfo13$de","reg_source","server_type","REGISTRATION_ERROR","_this$deviceInfo14","_this$deviceInfo14$de","_this$deviceInfo15","_this$deviceInfo15$de","_this$deviceInfo16","_this$deviceInfo16$de","_errorData","_errorData2","errorData","msg","getError","message","error_type","KEEPALIVE_ERROR","_this$deviceInfo17","_this$deviceInfo17$de","_this$deviceInfo18","_this$deviceInfo18$de","_this$deviceInfo19","_this$deviceInfo19$de","_errorData4","_errorData5","keepalive_count","warn","method","submitCallMetric","callError","CALL","_this$deviceInfo20","_this$deviceInfo20$de","_this$deviceInfo21","_this$deviceInfo21$de","_this$deviceInfo22","_this$deviceInfo22$de","CALL_ERROR","_this$deviceInfo23","_this$deviceInfo23$de","_this$deviceInfo24","_this$deviceInfo24$de","_this$deviceInfo25","_this$deviceInfo25$de","getCallError","submitMediaMetric","localSdp","remoteSdp","MEDIA","_this$deviceInfo26","_this$deviceInfo26$de","_this$deviceInfo27","_this$deviceInfo27$de","_this$deviceInfo28","_this$deviceInfo28$de","local_media_details","remote_media_details","MEDIA_ERROR","_this$deviceInfo29","_this$deviceInfo29$de","_this$deviceInfo30","_this$deviceInfo30$de","_this$deviceInfo31","_this$deviceInfo31$de","submitVoicemailMetric","messageId","voicemailError","statusCode","VOICEMAIL","_this$deviceInfo32","_this$deviceInfo32$de","_this$deviceInfo33","_this$deviceInfo33$de","message_id","VOICEMAIL_ERROR","_this$deviceInfo34","_this$deviceInfo34$de","_this$deviceInfo35","_this$deviceInfo35$de","status_code","submitBNRMetric","BNR_ENABLED","BNR_DISABLED","_this$deviceInfo36","_this$deviceInfo36$de","_this$deviceInfo37","_this$deviceInfo37$de","_this$deviceInfo38","_this$deviceInfo38$de","submitMobiusSocketMetric","wssUrl","eventType","_this$deviceInfo39","_this$deviceInfo39$de","_this$deviceInfo40","_this$deviceInfo40$de","_this$deviceInfo41","_this$deviceInfo41$de","commonTags","commonFields","wss_url","event_type","MOBIUS_SOCKET","MOBIUS_SOCKET_ERROR","getMetricManager","exports","_default"],"sources":["index.ts"],"sourcesContent":["import {CallError, CallingClientError} from '../Errors';\nimport {METRIC_FILE, VERSION} from '../CallingClient/constants';\nimport {CallId, CorrelationId, IDeviceInfo, MobiusServers, ServiceIndicator} from '../common/types';\nimport {WebexSDK} from '../SDKConnector/types';\nimport {\n REG_ACTION,\n IMetricManager,\n METRIC_TYPE,\n METRIC_EVENT,\n SERVER_TYPE,\n CONNECTION_ACTION,\n MOBIUS_SOCKET_ACTION,\n} from './types';\nimport {LineError} from '../Errors/catalog/LineError';\nimport log from '../Logger';\n\nlet metricManager: IMetricManager;\n\n/**\n *\n */\nclass MetricManager implements IMetricManager {\n private webex: WebexSDK;\n\n private deviceInfo?: IDeviceInfo;\n\n private serviceIndicator?: ServiceIndicator;\n\n /**\n * @param webex - Webex object used to send metrics.\n * @param indicator - Service Indicator.\n */\n public constructor(webex: WebexSDK, indicator?: ServiceIndicator) {\n log.info('Initializing metric manager...', {file: METRIC_FILE});\n this.webex = webex;\n this.serviceIndicator = indicator;\n }\n\n public submitConnectionMetrics(\n name: METRIC_EVENT,\n metricAction: CONNECTION_ACTION,\n type: METRIC_TYPE,\n downTimestamp: string,\n upTimestamp: string\n ) {\n const metricData = {\n tags: {\n metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n downTimestamp,\n upTimestamp,\n },\n type,\n };\n\n if (metricData) {\n this.webex.internal.metrics.submitClientMetrics(name, metricData);\n }\n }\n\n public submitUploadLogsMetric(\n name: METRIC_EVENT,\n action: string,\n type: METRIC_TYPE,\n trackingId?: string,\n feedbackId?: string,\n correlationId?: string,\n stack?: string,\n callId?: string,\n broadworksCorrelationInfo?: string\n ) {\n let data;\n\n const commonData = {\n tags: {\n action,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n correlation_id: correlationId,\n broadworksCorrelationInfo,\n tracking_id: trackingId,\n feedback_id: feedbackId,\n call_id: callId,\n },\n type,\n };\n\n switch (name) {\n case METRIC_EVENT.UPLOAD_LOGS_SUCCESS: {\n data = commonData;\n\n break;\n }\n\n case METRIC_EVENT.UPLOAD_LOGS_FAILED: {\n data = {\n ...commonData,\n fields: {\n ...commonData.fields,\n error: stack,\n },\n };\n\n break;\n }\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param deviceInfo - DeviceInfo object.\n */\n public setDeviceInfo(deviceInfo: IDeviceInfo) {\n this.deviceInfo = deviceInfo;\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param region - Region string.\n * @param trackingId - Tracking ID string.\n */\n public submitRegionInfoMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n mobiusHost: string,\n clientRegion: string,\n countryCode: string,\n trackingId?: string\n ) {\n const data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n mobius_host: mobiusHost,\n client_region: clientRegion,\n country_code: countryCode,\n tracking_id: trackingId,\n },\n type,\n };\n\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param mobiusServers - Array of Mobius server objects.\n */\n public submitMobiusServersMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n mobiusServers: MobiusServers,\n trackingId?: string\n ) {\n const data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n primary_mobius_servers_region: mobiusServers.primary.region,\n primary_mobius_servers_uris: mobiusServers.primary.uris.join(','),\n backup_mobius_servers_region: mobiusServers.backup.region,\n backup_mobius_servers_uris: mobiusServers.backup.uris.join(','),\n tracking_id: trackingId,\n },\n type,\n };\n\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param clientError - Error object used to populate error details in metric.\n */\n public submitRegistrationMetric(\n name: METRIC_EVENT,\n metricAction: REG_ACTION,\n type: METRIC_TYPE,\n caller: string,\n serverType: SERVER_TYPE,\n trackingId: string,\n keepaliveCount?: number,\n clientError?: LineError | CallingClientError\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.REGISTRATION: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n reg_source: caller,\n server_type: serverType,\n trackingId,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.REGISTRATION_ERROR: {\n let errorData;\n if (clientError) {\n errorData = {\n msg: clientError.getError().message,\n type: clientError.getError().type,\n };\n }\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n reg_source: caller,\n server_type: serverType,\n trackingId,\n error: errorData?.msg,\n error_type: errorData?.type,\n },\n type,\n };\n\n break;\n }\n\n case METRIC_EVENT.KEEPALIVE_ERROR: {\n let errorData;\n if (clientError) {\n errorData = {\n msg: clientError.getError().message,\n type: clientError.getError().type,\n };\n }\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n reg_source: caller,\n server_type: serverType,\n trackingId,\n keepalive_count: keepaliveCount,\n error: errorData?.msg,\n error_type: errorData?.type,\n },\n type,\n };\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: 'submitRegistrationMetric',\n });\n break;\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param callId - Call ID of the call sending the metric.\n * @param correlationId - Correlation ID of the call sending the metric.\n * @param callError - Error object used to populate error details in metric.\n */\n public submitCallMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId,\n callError?: CallError\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.CALL: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.CALL_ERROR: {\n if (callError) {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n error: callError.getCallError().message,\n error_type: callError.getCallError().type,\n },\n type,\n };\n }\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: 'submitCallMetric',\n });\n break;\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param callId - Call ID of the call sending the metric.\n * @param correlationId - Correlation ID of the call sending the metric.\n * @param localSdp - Local SDP information for media metric.\n * @param remoteSdp - Remote SDP information for media metric.\n * @param callError - Error object used to populate error details in metric.\n */\n public submitMediaMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId,\n localSdp?: string,\n remoteSdp?: string,\n callError?: CallError\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.MEDIA: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n local_media_details: localSdp,\n remote_media_details: remoteSdp,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.MEDIA_ERROR: {\n if (callError) {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n local_media_details: localSdp,\n remote_media_details: remoteSdp,\n error: callError.getCallError().message,\n error_type: callError.getCallError().type,\n },\n type,\n };\n }\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: 'submitMediaMetric',\n });\n break;\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param messageId - Message identifier of a Voicemail message.\n * @param voicemailError - Error string used to populate error details in metric.\n * @param statusCode - Status code used to populate error details in metric.\n */\n public submitVoicemailMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n messageId?: string,\n voicemailError?: string,\n statusCode?: number\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.VOICEMAIL: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n message_id: messageId,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n calling_sdk_version:\n typeof process !== 'undefined' && process.env.CALLING_SDK_VERSION\n ? process.env.CALLING_SDK_VERSION\n : VERSION,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.VOICEMAIL_ERROR: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n message_id: messageId,\n error: voicemailError,\n status_code: statusCode,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n calling_sdk_version:\n typeof process !== 'undefined' && process.env.CALLING_SDK_VERSION\n ? process.env.CALLING_SDK_VERSION\n : VERSION,\n },\n type,\n };\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: 'submitVoicemailMetric',\n });\n break;\n }\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n public submitBNRMetric(\n name: METRIC_EVENT,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId\n ) {\n let data;\n\n if (name === METRIC_EVENT.BNR_ENABLED || name === METRIC_EVENT.BNR_DISABLED) {\n data = {\n tags: {\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n },\n type,\n };\n } else {\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: 'submitBNRMetric',\n });\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param name - Name of the metric being submitted (MOBIUS_SOCKET or MOBIUS_SOCKET_ERROR).\n * @param metricAction - Type of Mobius WebSocket action.\n * @param type - Type of metric.\n * @param wssUrl - The Mobius WebSocket URL involved in the action.\n * @param trackingId - Tracking ID associated with the operation, if any.\n * @param error - Error string used to populate error details (for MOBIUS_SOCKET_ERROR).\n * @param eventType - Type of async event received over the socket, if applicable.\n */\n public submitMobiusSocketMetric(\n name: METRIC_EVENT,\n metricAction: MOBIUS_SOCKET_ACTION,\n type: METRIC_TYPE,\n wssUrl?: string,\n trackingId?: string,\n error?: string,\n eventType?: string\n ) {\n let data;\n\n const commonTags = {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n };\n\n const commonFields = {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n wss_url: wssUrl,\n tracking_id: trackingId,\n event_type: eventType,\n };\n\n switch (name) {\n case METRIC_EVENT.MOBIUS_SOCKET: {\n data = {\n tags: commonTags,\n fields: commonFields,\n type,\n };\n break;\n }\n\n case METRIC_EVENT.MOBIUS_SOCKET_ERROR: {\n data = {\n tags: commonTags,\n fields: {\n ...commonFields,\n error,\n },\n type,\n };\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: 'submitMobiusSocketMetric',\n });\n break;\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n}\n\n/**\n * @param webex - Webex object to communicate with metrics microservice.\n * @param indicator - Service Indicator.\n */\nexport const getMetricManager = (\n webex?: WebexSDK,\n indicator?: ServiceIndicator\n): IMetricManager => {\n if (!metricManager && webex) {\n metricManager = new MetricManager(webex, indicator);\n }\n\n return metricManager;\n};\n\nexport default getMetricManager;\n"],"mappings":"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","ignoreList":[]}
@@ -4,7 +4,7 @@ var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/defi
4
4
  _Object$defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.VOICEMAIL_ACTION = exports.UPLOAD_LOGS_ACTION = exports.TRANSFER_ACTION = exports.REG_ACTION = exports.MOBIUS_SERVER_ACTION = exports.METRIC_TYPE = exports.METRIC_EVENT = exports.CONNECTION_ACTION = void 0;
7
+ exports.VOICEMAIL_ACTION = exports.UPLOAD_LOGS_ACTION = exports.TRANSFER_ACTION = exports.REG_ACTION = exports.MOBIUS_SOCKET_ACTION = exports.MOBIUS_SERVER_ACTION = exports.METRIC_TYPE = exports.METRIC_EVENT = exports.CONNECTION_ACTION = void 0;
8
8
  var METRIC_TYPE = exports.METRIC_TYPE = /*#__PURE__*/function (METRIC_TYPE) {
9
9
  METRIC_TYPE["OPERATIONAL"] = "operational";
10
10
  METRIC_TYPE["BEHAVIORAL"] = "behavioral";
@@ -26,6 +26,8 @@ var METRIC_EVENT = exports.METRIC_EVENT = /*#__PURE__*/function (METRIC_EVENT) {
26
26
  METRIC_EVENT["UPLOAD_LOGS_SUCCESS"] = "web-calling-sdk-upload-logs-success";
27
27
  METRIC_EVENT["UPLOAD_LOGS_FAILED"] = "web-calling-sdk-upload-logs-failed";
28
28
  METRIC_EVENT["MOBIUS_DISCOVERY"] = "web-calling-sdk-mobius-discovery";
29
+ METRIC_EVENT["MOBIUS_SOCKET"] = "web-calling-sdk-mobius-socket";
30
+ METRIC_EVENT["MOBIUS_SOCKET_ERROR"] = "web-calling-sdk-mobius-socket-error";
29
31
  return METRIC_EVENT;
30
32
  }({});
31
33
  var MOBIUS_SERVER_ACTION = exports.MOBIUS_SERVER_ACTION = /*#__PURE__*/function (MOBIUS_SERVER_ACTION) {
@@ -39,6 +41,14 @@ var REG_ACTION = exports.REG_ACTION = /*#__PURE__*/function (REG_ACTION) {
39
41
  REG_ACTION["KEEPALIVE_FAILURE"] = "keepaliveFailure";
40
42
  return REG_ACTION;
41
43
  }({});
44
+ var MOBIUS_SOCKET_ACTION = exports.MOBIUS_SOCKET_ACTION = /*#__PURE__*/function (MOBIUS_SOCKET_ACTION) {
45
+ MOBIUS_SOCKET_ACTION["CONNECT"] = "connect";
46
+ MOBIUS_SOCKET_ACTION["DISCONNECT"] = "disconnect";
47
+ MOBIUS_SOCKET_ACTION["LISTENER_REGISTERED"] = "listener_registered";
48
+ MOBIUS_SOCKET_ACTION["LISTENER_UNREGISTERED"] = "listener_unregistered";
49
+ MOBIUS_SOCKET_ACTION["REGISTRATION_DOWN"] = "registration_down";
50
+ return MOBIUS_SOCKET_ACTION;
51
+ }({});
42
52
  var TRANSFER_ACTION = exports.TRANSFER_ACTION = /*#__PURE__*/function (TRANSFER_ACTION) {
43
53
  TRANSFER_ACTION["BLIND"] = "TRANSFER_BLIND";
44
54
  TRANSFER_ACTION["CONSULT"] = "TRANSFER_CONSULT";
@@ -1 +1 @@
1
- {"version":3,"names":["METRIC_TYPE","exports","METRIC_EVENT","MOBIUS_SERVER_ACTION","REG_ACTION","TRANSFER_ACTION","VOICEMAIL_ACTION","UPLOAD_LOGS_ACTION","CONNECTION_ACTION"],"sources":["types.ts"],"sourcesContent":["import {LineError} from '../Errors/catalog/LineError';\nimport {CallError, CallingClientError} from '../Errors';\nimport {CallId, CorrelationId, IDeviceInfo, MobiusServers} from '../common/types';\n\nexport enum METRIC_TYPE {\n OPERATIONAL = 'operational',\n BEHAVIORAL = 'behavioral',\n}\n\nexport enum METRIC_EVENT {\n BNR_ENABLED = 'web-calling-sdk-bnr-enabled',\n BNR_DISABLED = 'web-calling-sdk-bnr-disabled',\n CALL = 'web-calling-sdk-callcontrol',\n CALL_ERROR = 'web-calling-sdk-callcontrol-error',\n CONNECTION_ERROR = 'web-calling-sdk-connection',\n MEDIA = 'web-calling-sdk-media',\n MEDIA_ERROR = 'web-calling-sdk-media-error',\n REGISTRATION = 'web-calling-sdk-registration',\n REGISTRATION_ERROR = 'web-calling-sdk-registration-error',\n KEEPALIVE_ERROR = 'web-calling-sdk-keepalive-error',\n VOICEMAIL = 'web-calling-sdk-voicemail',\n VOICEMAIL_ERROR = 'web-calling-sdk-voicemail-error',\n UPLOAD_LOGS_SUCCESS = 'web-calling-sdk-upload-logs-success',\n UPLOAD_LOGS_FAILED = 'web-calling-sdk-upload-logs-failed',\n MOBIUS_DISCOVERY = 'web-calling-sdk-mobius-discovery',\n}\n\nexport enum MOBIUS_SERVER_ACTION {\n REGION_INFO = 'region-info',\n MOBIUS_SERVERS = 'mobius-servers',\n}\n\nexport enum REG_ACTION {\n REGISTER = 'register',\n DEREGISTER = 'deregister',\n KEEPALIVE_FAILURE = 'keepaliveFailure',\n}\n\nexport enum TRANSFER_ACTION {\n BLIND = 'TRANSFER_BLIND',\n CONSULT = 'TRANSFER_CONSULT',\n}\n\nexport enum VOICEMAIL_ACTION {\n GET_VOICEMAILS = 'get_voicemails',\n GET_VOICEMAIL_CONTENT = 'get_voicemail_content',\n GET_VOICEMAIL_SUMMARY = 'get_voicemail_summary',\n MARK_READ = 'mark_read',\n MARK_UNREAD = 'mark_unread',\n DELETE = 'delete',\n TRANSCRIPT = 'transcript',\n}\n\nexport type SERVER_TYPE = 'PRIMARY' | 'BACKUP' | 'UNKNOWN';\n\nexport const UPLOAD_LOGS_ACTION = 'upload_logs';\n\nexport enum CONNECTION_ACTION {\n NETWORK_FLAP = 'network_flap',\n MERCURY_DOWN = 'mercury_down',\n MERCURY_UP = 'mercury_up',\n}\n\nexport interface IMetricManager {\n setDeviceInfo: (deviceInfo: IDeviceInfo) => void;\n\n submitRegistrationMetric: (\n name: METRIC_EVENT,\n metricAction: REG_ACTION,\n type: METRIC_TYPE,\n caller: string,\n serverType: SERVER_TYPE,\n trackingId: string,\n keepaliveCount?: number,\n error?: LineError | CallingClientError\n ) => void;\n\n submitBNRMetric: (\n name: METRIC_EVENT,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId\n ) => void;\n\n submitCallMetric: (\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId,\n callError?: CallError\n ) => void;\n\n submitMediaMetric: (\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId,\n localSdp?: string,\n remoteSdp?: string,\n callError?: CallError\n ) => void;\n\n submitConnectionMetrics: (\n name: METRIC_EVENT,\n metricAction: CONNECTION_ACTION,\n type: METRIC_TYPE,\n downTimestamp: string,\n upTimestamp: string\n ) => void;\n\n submitVoicemailMetric: (\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n messageId?: string,\n voicemailError?: string,\n statusCode?: number\n ) => void;\n\n submitUploadLogsMetric: (\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n trackingId?: string,\n feedbackId?: string,\n correlationId?: string,\n stack?: string,\n callId?: string,\n broadworksCorrelationInfo?: string\n ) => void;\n\n submitRegionInfoMetric: (\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n mobiusHost: string,\n clientRegion: string,\n countryCode: string,\n trackingId: string\n ) => void;\n\n submitMobiusServersMetric: (\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n mobiusServers: MobiusServers,\n trackingId: string\n ) => void;\n}\n"],"mappings":";;;;;;;IAIYA,WAAW,GAAAC,OAAA,CAAAD,WAAA,0BAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAA,OAAXA,WAAW;AAAA;AAAA,IAKXE,YAAY,GAAAD,OAAA,CAAAC,YAAA,0BAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAA,OAAZA,YAAY;AAAA;AAAA,IAkBZC,oBAAoB,GAAAF,OAAA,CAAAE,oBAAA,0BAApBA,oBAAoB;EAApBA,oBAAoB;EAApBA,oBAAoB;EAAA,OAApBA,oBAAoB;AAAA;AAAA,IAKpBC,UAAU,GAAAH,OAAA,CAAAG,UAAA,0BAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAA,OAAVA,UAAU;AAAA;AAAA,IAMVC,eAAe,GAAAJ,OAAA,CAAAI,eAAA,0BAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAAA,IAKfC,gBAAgB,GAAAL,OAAA,CAAAK,gBAAA,0BAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAA,OAAhBA,gBAAgB;AAAA;AAYrB,IAAMC,kBAAkB,GAAAN,OAAA,CAAAM,kBAAA,GAAG,aAAa;AAAC,IAEpCC,iBAAiB,GAAAP,OAAA,CAAAO,iBAAA,0BAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAA,OAAjBA,iBAAiB;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["METRIC_TYPE","exports","METRIC_EVENT","MOBIUS_SERVER_ACTION","REG_ACTION","MOBIUS_SOCKET_ACTION","TRANSFER_ACTION","VOICEMAIL_ACTION","UPLOAD_LOGS_ACTION","CONNECTION_ACTION"],"sources":["types.ts"],"sourcesContent":["import {LineError} from '../Errors/catalog/LineError';\nimport {CallError, CallingClientError} from '../Errors';\nimport {CallId, CorrelationId, IDeviceInfo, MobiusServers} from '../common/types';\n\nexport enum METRIC_TYPE {\n OPERATIONAL = 'operational',\n BEHAVIORAL = 'behavioral',\n}\n\nexport enum METRIC_EVENT {\n BNR_ENABLED = 'web-calling-sdk-bnr-enabled',\n BNR_DISABLED = 'web-calling-sdk-bnr-disabled',\n CALL = 'web-calling-sdk-callcontrol',\n CALL_ERROR = 'web-calling-sdk-callcontrol-error',\n CONNECTION_ERROR = 'web-calling-sdk-connection',\n MEDIA = 'web-calling-sdk-media',\n MEDIA_ERROR = 'web-calling-sdk-media-error',\n REGISTRATION = 'web-calling-sdk-registration',\n REGISTRATION_ERROR = 'web-calling-sdk-registration-error',\n KEEPALIVE_ERROR = 'web-calling-sdk-keepalive-error',\n VOICEMAIL = 'web-calling-sdk-voicemail',\n VOICEMAIL_ERROR = 'web-calling-sdk-voicemail-error',\n UPLOAD_LOGS_SUCCESS = 'web-calling-sdk-upload-logs-success',\n UPLOAD_LOGS_FAILED = 'web-calling-sdk-upload-logs-failed',\n MOBIUS_DISCOVERY = 'web-calling-sdk-mobius-discovery',\n MOBIUS_SOCKET = 'web-calling-sdk-mobius-socket',\n MOBIUS_SOCKET_ERROR = 'web-calling-sdk-mobius-socket-error',\n}\n\nexport enum MOBIUS_SERVER_ACTION {\n REGION_INFO = 'region-info',\n MOBIUS_SERVERS = 'mobius-servers',\n}\n\nexport enum REG_ACTION {\n REGISTER = 'register',\n DEREGISTER = 'deregister',\n KEEPALIVE_FAILURE = 'keepaliveFailure',\n}\n\nexport enum MOBIUS_SOCKET_ACTION {\n CONNECT = 'connect',\n DISCONNECT = 'disconnect',\n LISTENER_REGISTERED = 'listener_registered',\n LISTENER_UNREGISTERED = 'listener_unregistered',\n REGISTRATION_DOWN = 'registration_down',\n}\n\nexport enum TRANSFER_ACTION {\n BLIND = 'TRANSFER_BLIND',\n CONSULT = 'TRANSFER_CONSULT',\n}\n\nexport enum VOICEMAIL_ACTION {\n GET_VOICEMAILS = 'get_voicemails',\n GET_VOICEMAIL_CONTENT = 'get_voicemail_content',\n GET_VOICEMAIL_SUMMARY = 'get_voicemail_summary',\n MARK_READ = 'mark_read',\n MARK_UNREAD = 'mark_unread',\n DELETE = 'delete',\n TRANSCRIPT = 'transcript',\n}\n\nexport type SERVER_TYPE = 'PRIMARY' | 'BACKUP' | 'UNKNOWN';\n\nexport const UPLOAD_LOGS_ACTION = 'upload_logs';\n\nexport enum CONNECTION_ACTION {\n NETWORK_FLAP = 'network_flap',\n MERCURY_DOWN = 'mercury_down',\n MERCURY_UP = 'mercury_up',\n}\n\nexport interface IMetricManager {\n setDeviceInfo: (deviceInfo: IDeviceInfo) => void;\n\n submitRegistrationMetric: (\n name: METRIC_EVENT,\n metricAction: REG_ACTION,\n type: METRIC_TYPE,\n caller: string,\n serverType: SERVER_TYPE,\n trackingId: string,\n keepaliveCount?: number,\n error?: LineError | CallingClientError\n ) => void;\n\n submitBNRMetric: (\n name: METRIC_EVENT,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId\n ) => void;\n\n submitCallMetric: (\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId,\n callError?: CallError\n ) => void;\n\n submitMediaMetric: (\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId,\n localSdp?: string,\n remoteSdp?: string,\n callError?: CallError\n ) => void;\n\n submitConnectionMetrics: (\n name: METRIC_EVENT,\n metricAction: CONNECTION_ACTION,\n type: METRIC_TYPE,\n downTimestamp: string,\n upTimestamp: string\n ) => void;\n\n submitVoicemailMetric: (\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n messageId?: string,\n voicemailError?: string,\n statusCode?: number\n ) => void;\n\n submitUploadLogsMetric: (\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n trackingId?: string,\n feedbackId?: string,\n correlationId?: string,\n stack?: string,\n callId?: string,\n broadworksCorrelationInfo?: string\n ) => void;\n\n submitRegionInfoMetric: (\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n mobiusHost: string,\n clientRegion: string,\n countryCode: string,\n trackingId: string\n ) => void;\n\n submitMobiusServersMetric: (\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n mobiusServers: MobiusServers,\n trackingId: string\n ) => void;\n\n submitMobiusSocketMetric: (\n name: METRIC_EVENT,\n metricAction: MOBIUS_SOCKET_ACTION,\n type: METRIC_TYPE,\n wssUrl?: string,\n trackingId?: string,\n error?: string,\n eventType?: string\n ) => void;\n}\n"],"mappings":";;;;;;;IAIYA,WAAW,GAAAC,OAAA,CAAAD,WAAA,0BAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAA,OAAXA,WAAW;AAAA;AAAA,IAKXE,YAAY,GAAAD,OAAA,CAAAC,YAAA,0BAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAA,OAAZA,YAAY;AAAA;AAAA,IAoBZC,oBAAoB,GAAAF,OAAA,CAAAE,oBAAA,0BAApBA,oBAAoB;EAApBA,oBAAoB;EAApBA,oBAAoB;EAAA,OAApBA,oBAAoB;AAAA;AAAA,IAKpBC,UAAU,GAAAH,OAAA,CAAAG,UAAA,0BAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAA,OAAVA,UAAU;AAAA;AAAA,IAMVC,oBAAoB,GAAAJ,OAAA,CAAAI,oBAAA,0BAApBA,oBAAoB;EAApBA,oBAAoB;EAApBA,oBAAoB;EAApBA,oBAAoB;EAApBA,oBAAoB;EAApBA,oBAAoB;EAAA,OAApBA,oBAAoB;AAAA;AAAA,IAQpBC,eAAe,GAAAL,OAAA,CAAAK,eAAA,0BAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAAA,IAKfC,gBAAgB,GAAAN,OAAA,CAAAM,gBAAA,0BAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAA,OAAhBA,gBAAgB;AAAA;AAYrB,IAAMC,kBAAkB,GAAAP,OAAA,CAAAO,kBAAA,GAAG,aAAa;AAAC,IAEpCC,iBAAiB,GAAAR,OAAA,CAAAQ,iBAAA,0BAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAA,OAAjBA,iBAAiB;AAAA","ignoreList":[]}
@@ -12,7 +12,7 @@ import log from '../Logger';
12
12
  import { getCallManager } from './calling/callManager';
13
13
  import { CALLING_CLIENT_FILE, CALLS_CLEARED_HANDLER_UTIL, CALLING_USER_AGENT, CISCO_DEVICE_URL, DISCOVERY_URL, GET_MOBIUS_SERVERS_UTIL, SPARK_USER_AGENT, URL_ENDPOINT, API_V1, METHODS, NETWORK_FLAP_TIMEOUT, DEVICES_ENDPOINT_RESOURCE, } from './constants';
14
14
  import Line from './line';
15
- import { METRIC_EVENT, REG_ACTION, METRIC_TYPE, CONNECTION_ACTION, MOBIUS_SERVER_ACTION, } from '../Metrics/types';
15
+ import { METRIC_EVENT, REG_ACTION, METRIC_TYPE, CONNECTION_ACTION, MOBIUS_SERVER_ACTION, MOBIUS_SOCKET_ACTION, } from '../Metrics/types';
16
16
  import { getMetricManager } from '../Metrics';
17
17
  import windowsChromiumIceWarmup from './windowsChromiumIceWarmupUtils';
18
18
  import { APIRequest } from './utils/request';
@@ -430,6 +430,7 @@ export class CallingClient extends Eventing {
430
430
  }
431
431
  if (eventType === MobiusEventType.REGISTRATION_DOWN) {
432
432
  log.warn('Received REGISTRATION_DOWN event from Mobius; teardown handling pending (TODO)', loggerContext);
433
+ this.metricManager.submitMobiusSocketMetric(METRIC_EVENT.MOBIUS_SOCKET_ERROR, MOBIUS_SOCKET_ACTION.REGISTRATION_DOWN, METRIC_TYPE.BEHAVIORAL, undefined, event?.trackingId, undefined, eventType);
433
434
  return;
434
435
  }
435
436
  this.callManager.dequeueWsEvents(event);
@@ -60,6 +60,11 @@ export class Registration {
60
60
  this.backupMobiusUris = [];
61
61
  this.apiRequest = APIRequest.getInstance({ webex: this.webex });
62
62
  }
63
+ getServerType(url) {
64
+ return ((this.primaryMobiusUris.includes(url) && 'PRIMARY') ||
65
+ (this.backupMobiusUris?.includes(url) && 'BACKUP') ||
66
+ 'UNKNOWN');
67
+ }
63
68
  getFailoverCacheKey() {
64
69
  return `${FAILOVER_CACHE_PREFIX}.${this.userId || 'unknown'}`;
65
70
  }
@@ -614,9 +619,7 @@ export class Registration {
614
619
  return abort;
615
620
  }
616
621
  for (const url of servers) {
617
- const serverType = (this.primaryMobiusUris.includes(url) && 'PRIMARY') ||
618
- (this.backupMobiusUris?.includes(url) && 'BACKUP') ||
619
- 'UNKNOWN';
622
+ const serverType = this.getServerType(url);
620
623
  try {
621
624
  abort = false;
622
625
  this.registrationStatus = RegistrationStatus.INACTIVE;