@webex/calling 3.8.1-next.4 → 3.8.1

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 (34) hide show
  1. package/dist/CallingClient/CallingClient.js +105 -125
  2. package/dist/CallingClient/CallingClient.js.map +1 -1
  3. package/dist/CallingClient/constants.js +2 -3
  4. package/dist/CallingClient/constants.js.map +1 -1
  5. package/dist/CallingClient/registration/register.js +144 -164
  6. package/dist/CallingClient/registration/register.js.map +1 -1
  7. package/dist/CallingClient/registration/register.test.js +9 -29
  8. package/dist/CallingClient/registration/register.test.js.map +1 -1
  9. package/dist/Errors/types.js +0 -2
  10. package/dist/Errors/types.js.map +1 -1
  11. package/dist/Metrics/index.js +2 -9
  12. package/dist/Metrics/index.js.map +1 -1
  13. package/dist/Metrics/index.test.js +4 -10
  14. package/dist/Metrics/index.test.js.map +1 -1
  15. package/dist/Metrics/types.js.map +1 -1
  16. package/dist/common/Utils.js +27 -28
  17. package/dist/common/Utils.js.map +1 -1
  18. package/dist/module/CallingClient/CallingClient.js +2 -2
  19. package/dist/module/CallingClient/constants.js +0 -1
  20. package/dist/module/CallingClient/registration/register.js +11 -14
  21. package/dist/module/Errors/types.js +0 -2
  22. package/dist/module/Metrics/index.js +1 -8
  23. package/dist/module/common/Utils.js +1 -2
  24. package/dist/types/CallingClient/CallingClient.d.ts.map +1 -1
  25. package/dist/types/CallingClient/constants.d.ts +0 -1
  26. package/dist/types/CallingClient/constants.d.ts.map +1 -1
  27. package/dist/types/CallingClient/registration/register.d.ts.map +1 -1
  28. package/dist/types/Errors/types.d.ts +0 -2
  29. package/dist/types/Errors/types.d.ts.map +1 -1
  30. package/dist/types/Metrics/index.d.ts.map +1 -1
  31. package/dist/types/Metrics/types.d.ts +1 -2
  32. package/dist/types/Metrics/types.d.ts.map +1 -1
  33. package/dist/types/common/Utils.d.ts.map +1 -1
  34. package/package.json +4 -4
@@ -105,7 +105,7 @@ var MetricManager = /*#__PURE__*/function () {
105
105
  */
106
106
  }, {
107
107
  key: "submitRegistrationMetric",
108
- value: function submitRegistrationMetric(name, metricAction, type, caller, serverType, trackingId, keepaliveCount, clientError) {
108
+ value: function submitRegistrationMetric(name, metricAction, type, clientError) {
109
109
  var data;
110
110
  switch (name) {
111
111
  case _types.METRIC_EVENT.REGISTRATION:
@@ -120,10 +120,7 @@ var MetricManager = /*#__PURE__*/function () {
120
120
  fields: {
121
121
  device_url: (_this$deviceInfo8 = this.deviceInfo) === null || _this$deviceInfo8 === void 0 ? void 0 : (_this$deviceInfo8$dev = _this$deviceInfo8.device) === null || _this$deviceInfo8$dev === void 0 ? void 0 : _this$deviceInfo8$dev.clientDeviceUri,
122
122
  mobius_url: (_this$deviceInfo9 = this.deviceInfo) === null || _this$deviceInfo9 === void 0 ? void 0 : (_this$deviceInfo9$dev = _this$deviceInfo9.device) === null || _this$deviceInfo9$dev === void 0 ? void 0 : _this$deviceInfo9$dev.uri,
123
- calling_sdk_version: process.env.CALLING_SDK_VERSION || _constants.VERSION,
124
- reg_source: caller,
125
- server_type: serverType,
126
- trackingId: trackingId
123
+ calling_sdk_version: process.env.CALLING_SDK_VERSION || _constants.VERSION
127
124
  },
128
125
  type: type
129
126
  };
@@ -143,10 +140,6 @@ var MetricManager = /*#__PURE__*/function () {
143
140
  device_url: (_this$deviceInfo11 = this.deviceInfo) === null || _this$deviceInfo11 === void 0 ? void 0 : (_this$deviceInfo11$de = _this$deviceInfo11.device) === null || _this$deviceInfo11$de === void 0 ? void 0 : _this$deviceInfo11$de.clientDeviceUri,
144
141
  mobius_url: (_this$deviceInfo12 = this.deviceInfo) === null || _this$deviceInfo12 === void 0 ? void 0 : (_this$deviceInfo12$de = _this$deviceInfo12.device) === null || _this$deviceInfo12$de === void 0 ? void 0 : _this$deviceInfo12$de.uri,
145
142
  calling_sdk_version: process.env.CALLING_SDK_VERSION || _constants.VERSION,
146
- reg_source: caller,
147
- server_type: serverType,
148
- trackingId: trackingId,
149
- keepalive_count: keepaliveCount,
150
143
  error: clientError.getError().message,
151
144
  error_type: clientError.getError().type
152
145
  },
@@ -1 +1 @@
1
- {"version":3,"names":["_constants","require","_types","_Logger","_interopRequireDefault","metricManager","MetricManager","webex","indicator","_classCallCheck2","default","_defineProperty2","log","info","file","METRIC_FILE","serviceIndicator","_createClass2","key","value","submitUploadLogsMetric","name","action","type","trackingId","feedbackId","correlationId","stack","callId","data","METRIC_EVENT","UPLOAD_LOGS_SUCCESS","_this$deviceInfo","_this$deviceInfo$devi","_this$deviceInfo2","_this$deviceInfo2$dev","_this$deviceInfo3","_this$deviceInfo3$dev","tags","device_id","deviceInfo","device","deviceId","service_indicator","fields","device_url","clientDeviceUri","mobius_url","uri","calling_sdk_version","process","env","CALLING_SDK_VERSION","VERSION","correlation_id","tracking_id","feedback_id","call_id","UPLOAD_LOGS_FAILED","_this$deviceInfo4","_this$deviceInfo4$dev","_this$deviceInfo5","_this$deviceInfo5$dev","_this$deviceInfo6","_this$deviceInfo6$dev","error","internal","metrics","submitClientMetrics","setDeviceInfo","submitRegistrationMetric","metricAction","caller","serverType","keepaliveCount","clientError","REGISTRATION","_this$deviceInfo7","_this$deviceInfo7$dev","_this$deviceInfo8","_this$deviceInfo8$dev","_this$deviceInfo9","_this$deviceInfo9$dev","reg_source","server_type","REGISTRATION_ERROR","_this$deviceInfo10","_this$deviceInfo10$de","_this$deviceInfo11","_this$deviceInfo11$de","_this$deviceInfo12","_this$deviceInfo12$de","keepalive_count","getError","message","error_type","warn","method","submitCallMetric","callError","CALL","_this$deviceInfo13","_this$deviceInfo13$de","_this$deviceInfo14","_this$deviceInfo14$de","_this$deviceInfo15","_this$deviceInfo15$de","CALL_ERROR","_this$deviceInfo16","_this$deviceInfo16$de","_this$deviceInfo17","_this$deviceInfo17$de","_this$deviceInfo18","_this$deviceInfo18$de","getCallError","submitMediaMetric","localSdp","remoteSdp","MEDIA","_this$deviceInfo19","_this$deviceInfo19$de","_this$deviceInfo20","_this$deviceInfo20$de","_this$deviceInfo21","_this$deviceInfo21$de","local_media_details","remote_media_details","MEDIA_ERROR","_this$deviceInfo22","_this$deviceInfo22$de","_this$deviceInfo23","_this$deviceInfo23$de","_this$deviceInfo24","_this$deviceInfo24$de","submitVoicemailMetric","messageId","voicemailError","statusCode","VOICEMAIL","_this$deviceInfo25","_this$deviceInfo25$de","_this$deviceInfo26","_this$deviceInfo26$de","message_id","VOICEMAIL_ERROR","_this$deviceInfo27","_this$deviceInfo27$de","_this$deviceInfo28","_this$deviceInfo28$de","status_code","submitBNRMetric","BNR_ENABLED","BNR_DISABLED","_this$deviceInfo29","_this$deviceInfo29$de","_this$deviceInfo30","_this$deviceInfo30$de","_this$deviceInfo31","_this$deviceInfo31$de","getMetricManager","exports","_default"],"sources":["index.ts"],"sourcesContent":["import {CallError, CallingClientError} from '../Errors';\nimport {METRIC_FILE, VERSION} from '../CallingClient/constants';\nimport {CallId, CorrelationId, IDeviceInfo, ServiceIndicator} from '../common/types';\nimport {WebexSDK} from '../SDKConnector/types';\nimport {REG_ACTION, IMetricManager, METRIC_TYPE, METRIC_EVENT, SERVER_TYPE} 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 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 ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.UPLOAD_LOGS_SUCCESS: {\n data = {\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 tracking_id: trackingId,\n feedback_id: feedbackId,\n call_id: callId,\n },\n type,\n };\n break;\n }\n case METRIC_EVENT.UPLOAD_LOGS_FAILED: {\n data = {\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 tracking_id: trackingId,\n feedback_id: feedbackId,\n error: stack,\n call_id: callId,\n },\n type,\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 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 if (clientError) {\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: clientError.getError().message,\n error_type: clientError.getError().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: this.submitRegistrationMetric.name,\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: this.submitCallMetric.name,\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: this.submitMediaMetric.name,\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: this.submitVoicemailMetric.name,\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: this.submitBNRMetric.name,\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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"}
1
+ {"version":3,"names":["_constants","require","_types","_Logger","_interopRequireDefault","metricManager","MetricManager","webex","indicator","_classCallCheck2","default","_defineProperty2","log","info","file","METRIC_FILE","serviceIndicator","_createClass2","key","value","submitUploadLogsMetric","name","action","type","trackingId","feedbackId","correlationId","stack","callId","data","METRIC_EVENT","UPLOAD_LOGS_SUCCESS","_this$deviceInfo","_this$deviceInfo$devi","_this$deviceInfo2","_this$deviceInfo2$dev","_this$deviceInfo3","_this$deviceInfo3$dev","tags","device_id","deviceInfo","device","deviceId","service_indicator","fields","device_url","clientDeviceUri","mobius_url","uri","calling_sdk_version","process","env","CALLING_SDK_VERSION","VERSION","correlation_id","tracking_id","feedback_id","call_id","UPLOAD_LOGS_FAILED","_this$deviceInfo4","_this$deviceInfo4$dev","_this$deviceInfo5","_this$deviceInfo5$dev","_this$deviceInfo6","_this$deviceInfo6$dev","error","internal","metrics","submitClientMetrics","setDeviceInfo","submitRegistrationMetric","metricAction","clientError","REGISTRATION","_this$deviceInfo7","_this$deviceInfo7$dev","_this$deviceInfo8","_this$deviceInfo8$dev","_this$deviceInfo9","_this$deviceInfo9$dev","REGISTRATION_ERROR","_this$deviceInfo10","_this$deviceInfo10$de","_this$deviceInfo11","_this$deviceInfo11$de","_this$deviceInfo12","_this$deviceInfo12$de","getError","message","error_type","warn","method","submitCallMetric","callError","CALL","_this$deviceInfo13","_this$deviceInfo13$de","_this$deviceInfo14","_this$deviceInfo14$de","_this$deviceInfo15","_this$deviceInfo15$de","CALL_ERROR","_this$deviceInfo16","_this$deviceInfo16$de","_this$deviceInfo17","_this$deviceInfo17$de","_this$deviceInfo18","_this$deviceInfo18$de","getCallError","submitMediaMetric","localSdp","remoteSdp","MEDIA","_this$deviceInfo19","_this$deviceInfo19$de","_this$deviceInfo20","_this$deviceInfo20$de","_this$deviceInfo21","_this$deviceInfo21$de","local_media_details","remote_media_details","MEDIA_ERROR","_this$deviceInfo22","_this$deviceInfo22$de","_this$deviceInfo23","_this$deviceInfo23$de","_this$deviceInfo24","_this$deviceInfo24$de","submitVoicemailMetric","messageId","voicemailError","statusCode","VOICEMAIL","_this$deviceInfo25","_this$deviceInfo25$de","_this$deviceInfo26","_this$deviceInfo26$de","message_id","VOICEMAIL_ERROR","_this$deviceInfo27","_this$deviceInfo27$de","_this$deviceInfo28","_this$deviceInfo28$de","status_code","submitBNRMetric","BNR_ENABLED","BNR_DISABLED","_this$deviceInfo29","_this$deviceInfo29$de","_this$deviceInfo30","_this$deviceInfo30$de","_this$deviceInfo31","_this$deviceInfo31$de","getMetricManager","exports","_default"],"sources":["index.ts"],"sourcesContent":["import {CallError, CallingClientError} from '../Errors';\nimport {METRIC_FILE, VERSION} from '../CallingClient/constants';\nimport {CallId, CorrelationId, IDeviceInfo, ServiceIndicator} from '../common/types';\nimport {WebexSDK} from '../SDKConnector/types';\nimport {REG_ACTION, IMetricManager, METRIC_TYPE, METRIC_EVENT} 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 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 ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.UPLOAD_LOGS_SUCCESS: {\n data = {\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 tracking_id: trackingId,\n feedback_id: feedbackId,\n call_id: callId,\n },\n type,\n };\n break;\n }\n case METRIC_EVENT.UPLOAD_LOGS_FAILED: {\n data = {\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 tracking_id: trackingId,\n feedback_id: feedbackId,\n error: stack,\n call_id: callId,\n },\n type,\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 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 clientError: LineError | CallingClientError | undefined\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 },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.REGISTRATION_ERROR: {\n if (clientError) {\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 error: clientError.getError().message,\n error_type: clientError.getError().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: this.submitRegistrationMetric.name,\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: this.submitCallMetric.name,\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: this.submitMediaMetric.name,\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: this.submitVoicemailMetric.name,\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: this.submitBNRMetric.name,\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":";;;;;;;;;;;AACA,IAAAA,UAAA,GAAAC,OAAA;AAGA,IAAAC,MAAA,GAAAD,OAAA;AAEA,IAAAE,OAAA,GAAAC,sBAAA,CAAAH,OAAA;AAEA,IAAII,aAA6B;;AAEjC;AACA;AACA;AAFA,IAGMC,aAAa;EAOjB;AACF;AACA;AACA;EACE,SAAAA,cAAmBC,KAAe,EAAEC,SAA4B,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA,QAAAJ,aAAA;IAAA,IAAAK,gBAAA,CAAAD,OAAA;IAAA,IAAAC,gBAAA,CAAAD,OAAA;IAAA,IAAAC,gBAAA,CAAAD,OAAA;IAChEE,eAAG,CAACC,IAAI,CAAC,gCAAgC,EAAE;MAACC,IAAI,EAAEC;IAAW,CAAC,CAAC;IAC/D,IAAI,CAACR,KAAK,GAAGA,KAAK;IAClB,IAAI,CAACS,gBAAgB,GAAGR,SAAS;EACnC;EAAC,IAAAS,aAAA,CAAAP,OAAA,EAAAJ,aAAA;IAAAY,GAAA;IAAAC,KAAA,EAED,SAAAC,uBACEC,IAAkB,EAClBC,MAAc,EACdC,IAAiB,EACjBC,UAAmB,EACnBC,UAAmB,EACnBC,aAAsB,EACtBC,KAAc,EACdC,MAAe,EACf;MACA,IAAIC,IAAI;MAER,QAAQR,IAAI;QACV,KAAKS,mBAAY,CAACC,mBAAmB;UAAE;YAAA,IAAAC,gBAAA,EAAAC,qBAAA,EAAAC,iBAAA,EAAAC,qBAAA,EAAAC,iBAAA,EAAAC,qBAAA;YACrCR,IAAI,GAAG;cACLS,IAAI,EAAE;gBACJhB,MAAM,EAANA,MAAM;gBACNiB,SAAS,GAAAP,gBAAA,GAAE,IAAI,CAACQ,UAAU,cAAAR,gBAAA,wBAAAC,qBAAA,GAAfD,gBAAA,CAAiBS,MAAM,cAAAR,qBAAA,uBAAvBA,qBAAA,CAAyBS,QAAQ;gBAC5CC,iBAAiB,EAAE,IAAI,CAAC3B;cAC1B,CAAC;cACD4B,MAAM,EAAE;gBACNC,UAAU,GAAAX,iBAAA,GAAE,IAAI,CAACM,UAAU,cAAAN,iBAAA,wBAAAC,qBAAA,GAAfD,iBAAA,CAAiBO,MAAM,cAAAN,qBAAA,uBAAvBA,qBAAA,CAAyBW,eAAe;gBACpDC,UAAU,GAAAX,iBAAA,GAAE,IAAI,CAACI,UAAU,cAAAJ,iBAAA,wBAAAC,qBAAA,GAAfD,iBAAA,CAAiBK,MAAM,cAAAJ,qBAAA,uBAAvBA,qBAAA,CAAyBW,GAAG;gBACxCC,mBAAmB,EAAEC,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAIC,kBAAO;gBAC/DC,cAAc,EAAE5B,aAAa;gBAC7B6B,WAAW,EAAE/B,UAAU;gBACvBgC,WAAW,EAAE/B,UAAU;gBACvBgC,OAAO,EAAE7B;cACX,CAAC;cACDL,IAAI,EAAJA;YACF,CAAC;YACD;UACF;QACA,KAAKO,mBAAY,CAAC4B,kBAAkB;UAAE;YAAA,IAAAC,iBAAA,EAAAC,qBAAA,EAAAC,iBAAA,EAAAC,qBAAA,EAAAC,iBAAA,EAAAC,qBAAA;YACpCnC,IAAI,GAAG;cACLS,IAAI,EAAE;gBACJhB,MAAM,EAANA,MAAM;gBACNiB,SAAS,GAAAoB,iBAAA,GAAE,IAAI,CAACnB,UAAU,cAAAmB,iBAAA,wBAAAC,qBAAA,GAAfD,iBAAA,CAAiBlB,MAAM,cAAAmB,qBAAA,uBAAvBA,qBAAA,CAAyBlB,QAAQ;gBAC5CC,iBAAiB,EAAE,IAAI,CAAC3B;cAC1B,CAAC;cACD4B,MAAM,EAAE;gBACNC,UAAU,GAAAgB,iBAAA,GAAE,IAAI,CAACrB,UAAU,cAAAqB,iBAAA,wBAAAC,qBAAA,GAAfD,iBAAA,CAAiBpB,MAAM,cAAAqB,qBAAA,uBAAvBA,qBAAA,CAAyBhB,eAAe;gBACpDC,UAAU,GAAAgB,iBAAA,GAAE,IAAI,CAACvB,UAAU,cAAAuB,iBAAA,wBAAAC,qBAAA,GAAfD,iBAAA,CAAiBtB,MAAM,cAAAuB,qBAAA,uBAAvBA,qBAAA,CAAyBhB,GAAG;gBACxCC,mBAAmB,EAAEC,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAIC,kBAAO;gBAC/DC,cAAc,EAAE5B,aAAa;gBAC7B6B,WAAW,EAAE/B,UAAU;gBACvBgC,WAAW,EAAE/B,UAAU;gBACvBwC,KAAK,EAAEtC,KAAK;gBACZ8B,OAAO,EAAE7B;cACX,CAAC;cACDL,IAAI,EAAJA;YACF,CAAC;UACH;MACF;MACA,IAAIM,IAAI,EAAE;QACR,IAAI,CAACtB,KAAK,CAAC2D,QAAQ,CAACC,OAAO,CAACC,mBAAmB,CAAC/C,IAAI,EAAEQ,IAAI,CAAC;MAC7D;IACF;;IAEA;AACF;AACA;EAFE;IAAAX,GAAA;IAAAC,KAAA,EAGA,SAAAkD,cAAqB7B,UAAuB,EAAE;MAC5C,IAAI,CAACA,UAAU,GAAGA,UAAU;IAC9B;;IAEA;AACF;AACA;AACA;AACA;AACA;EALE;IAAAtB,GAAA;IAAAC,KAAA,EAMA,SAAAmD,yBACEjD,IAAkB,EAClBkD,YAAwB,EACxBhD,IAAiB,EACjBiD,WAAuD,EACvD;MACA,IAAI3C,IAAI;MAER,QAAQR,IAAI;QACV,KAAKS,mBAAY,CAAC2C,YAAY;UAAE;YAAA,IAAAC,iBAAA,EAAAC,qBAAA,EAAAC,iBAAA,EAAAC,qBAAA,EAAAC,iBAAA,EAAAC,qBAAA;YAC9BlD,IAAI,GAAG;cACLS,IAAI,EAAE;gBACJhB,MAAM,EAAEiD,YAAY;gBACpBhC,SAAS,GAAAmC,iBAAA,GAAE,IAAI,CAAClC,UAAU,cAAAkC,iBAAA,wBAAAC,qBAAA,GAAfD,iBAAA,CAAiBjC,MAAM,cAAAkC,qBAAA,uBAAvBA,qBAAA,CAAyBjC,QAAQ;gBAC5CC,iBAAiB,EAAE,IAAI,CAAC3B;cAC1B,CAAC;cACD4B,MAAM,EAAE;gBACNC,UAAU,GAAA+B,iBAAA,GAAE,IAAI,CAACpC,UAAU,cAAAoC,iBAAA,wBAAAC,qBAAA,GAAfD,iBAAA,CAAiBnC,MAAM,cAAAoC,qBAAA,uBAAvBA,qBAAA,CAAyB/B,eAAe;gBACpDC,UAAU,GAAA+B,iBAAA,GAAE,IAAI,CAACtC,UAAU,cAAAsC,iBAAA,wBAAAC,qBAAA,GAAfD,iBAAA,CAAiBrC,MAAM,cAAAsC,qBAAA,uBAAvBA,qBAAA,CAAyB/B,GAAG;gBACxCC,mBAAmB,EAAEC,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAIC;cAC1D,CAAC;cACD9B,IAAI,EAAJA;YACF,CAAC;YACD;UACF;QAEA,KAAKO,mBAAY,CAACkD,kBAAkB;UAAE;YACpC,IAAIR,WAAW,EAAE;cAAA,IAAAS,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA;cACfzD,IAAI,GAAG;gBACLS,IAAI,EAAE;kBACJhB,MAAM,EAAEiD,YAAY;kBACpBhC,SAAS,GAAA0C,kBAAA,GAAE,IAAI,CAACzC,UAAU,cAAAyC,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiBxC,MAAM,cAAAyC,qBAAA,uBAAvBA,qBAAA,CAAyBxC,QAAQ;kBAC5CC,iBAAiB,EAAE,IAAI,CAAC3B;gBAC1B,CAAC;gBACD4B,MAAM,EAAE;kBACNC,UAAU,GAAAsC,kBAAA,GAAE,IAAI,CAAC3C,UAAU,cAAA2C,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB1C,MAAM,cAAA2C,qBAAA,uBAAvBA,qBAAA,CAAyBtC,eAAe;kBACpDC,UAAU,GAAAsC,kBAAA,GAAE,IAAI,CAAC7C,UAAU,cAAA6C,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB5C,MAAM,cAAA6C,qBAAA,uBAAvBA,qBAAA,CAAyBtC,GAAG;kBACxCC,mBAAmB,EAAEC,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAIC,kBAAO;kBAC/DY,KAAK,EAAEO,WAAW,CAACe,QAAQ,CAAC,CAAC,CAACC,OAAO;kBACrCC,UAAU,EAAEjB,WAAW,CAACe,QAAQ,CAAC,CAAC,CAAChE;gBACrC,CAAC;gBACDA,IAAI,EAAJA;cACF,CAAC;YACH;YACA;UACF;QAEA;UACEX,eAAG,CAAC8E,IAAI,CAAC,mEAAmE,EAAE;YAC5E5E,IAAI,EAAEC,sBAAW;YACjB4E,MAAM,EAAE,IAAI,CAACrB,wBAAwB,CAACjD;UACxC,CAAC,CAAC;UACF;MACJ;MAEA,IAAIQ,IAAI,EAAE;QACR,IAAI,CAACtB,KAAK,CAAC2D,QAAQ,CAACC,OAAO,CAACC,mBAAmB,CAAC/C,IAAI,EAAEQ,IAAI,CAAC;MAC7D;IACF;;IAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EAPE;IAAAX,GAAA;IAAAC,KAAA,EAQA,SAAAyE,iBACEvE,IAAkB,EAClBkD,YAAoB,EACpBhD,IAAiB,EACjBK,MAAc,EACdF,aAA4B,EAC5BmE,SAAqB,EACrB;MACA,IAAIhE,IAAI;MAER,QAAQR,IAAI;QACV,KAAKS,mBAAY,CAACgE,IAAI;UAAE;YAAA,IAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA;YACtBvE,IAAI,GAAG;cACLS,IAAI,EAAE;gBACJhB,MAAM,EAAEiD,YAAY;gBACpBhC,SAAS,GAAAwD,kBAAA,GAAE,IAAI,CAACvD,UAAU,cAAAuD,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiBtD,MAAM,cAAAuD,qBAAA,uBAAvBA,qBAAA,CAAyBtD,QAAQ;gBAC5CC,iBAAiB,EAAE,IAAI,CAAC3B;cAC1B,CAAC;cACD4B,MAAM,EAAE;gBACNC,UAAU,GAAAoD,kBAAA,GAAE,IAAI,CAACzD,UAAU,cAAAyD,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiBxD,MAAM,cAAAyD,qBAAA,uBAAvBA,qBAAA,CAAyBpD,eAAe;gBACpDC,UAAU,GAAAoD,kBAAA,GAAE,IAAI,CAAC3D,UAAU,cAAA2D,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB1D,MAAM,cAAA2D,qBAAA,uBAAvBA,qBAAA,CAAyBpD,GAAG;gBACxCC,mBAAmB,EAAEC,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAIC,kBAAO;gBAC/DI,OAAO,EAAE7B,MAAM;gBACf0B,cAAc,EAAE5B;cAClB,CAAC;cACDH,IAAI,EAAJA;YACF,CAAC;YACD;UACF;QAEA,KAAKO,mBAAY,CAACuE,UAAU;UAAE;YAC5B,IAAIR,SAAS,EAAE;cAAA,IAAAS,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA;cACb9E,IAAI,GAAG;gBACLS,IAAI,EAAE;kBACJhB,MAAM,EAAEiD,YAAY;kBACpBhC,SAAS,GAAA+D,kBAAA,GAAE,IAAI,CAAC9D,UAAU,cAAA8D,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB7D,MAAM,cAAA8D,qBAAA,uBAAvBA,qBAAA,CAAyB7D,QAAQ;kBAC5CC,iBAAiB,EAAE,IAAI,CAAC3B;gBAC1B,CAAC;gBACD4B,MAAM,EAAE;kBACNC,UAAU,GAAA2D,kBAAA,GAAE,IAAI,CAAChE,UAAU,cAAAgE,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB/D,MAAM,cAAAgE,qBAAA,uBAAvBA,qBAAA,CAAyB3D,eAAe;kBACpDC,UAAU,GAAA2D,kBAAA,GAAE,IAAI,CAAClE,UAAU,cAAAkE,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiBjE,MAAM,cAAAkE,qBAAA,uBAAvBA,qBAAA,CAAyB3D,GAAG;kBACxCC,mBAAmB,EAAEC,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAIC,kBAAO;kBAC/DI,OAAO,EAAE7B,MAAM;kBACf0B,cAAc,EAAE5B,aAAa;kBAC7BuC,KAAK,EAAE4B,SAAS,CAACe,YAAY,CAAC,CAAC,CAACpB,OAAO;kBACvCC,UAAU,EAAEI,SAAS,CAACe,YAAY,CAAC,CAAC,CAACrF;gBACvC,CAAC;gBACDA,IAAI,EAAJA;cACF,CAAC;YACH;YACA;UACF;QAEA;UACEX,eAAG,CAAC8E,IAAI,CAAC,mEAAmE,EAAE;YAC5E5E,IAAI,EAAEC,sBAAW;YACjB4E,MAAM,EAAE,IAAI,CAACC,gBAAgB,CAACvE;UAChC,CAAC,CAAC;UACF;MACJ;MAEA,IAAIQ,IAAI,EAAE;QACR,IAAI,CAACtB,KAAK,CAAC2D,QAAQ,CAACC,OAAO,CAACC,mBAAmB,CAAC/C,IAAI,EAAEQ,IAAI,CAAC;MAC7D;IACF;;IAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EATE;IAAAX,GAAA;IAAAC,KAAA,EAUA,SAAA0F,kBACExF,IAAkB,EAClBkD,YAAoB,EACpBhD,IAAiB,EACjBK,MAAc,EACdF,aAA4B,EAC5BoF,QAAiB,EACjBC,SAAkB,EAClBlB,SAAqB,EACrB;MACA,IAAIhE,IAAI;MAER,QAAQR,IAAI;QACV,KAAKS,mBAAY,CAACkF,KAAK;UAAE;YAAA,IAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA;YACvBzF,IAAI,GAAG;cACLS,IAAI,EAAE;gBACJhB,MAAM,EAAEiD,YAAY;gBACpBhC,SAAS,GAAA0E,kBAAA,GAAE,IAAI,CAACzE,UAAU,cAAAyE,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiBxE,MAAM,cAAAyE,qBAAA,uBAAvBA,qBAAA,CAAyBxE,QAAQ;gBAC5CC,iBAAiB,EAAE,IAAI,CAAC3B;cAC1B,CAAC;cACD4B,MAAM,EAAE;gBACNC,UAAU,GAAAsE,kBAAA,GAAE,IAAI,CAAC3E,UAAU,cAAA2E,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB1E,MAAM,cAAA2E,qBAAA,uBAAvBA,qBAAA,CAAyBtE,eAAe;gBACpDC,UAAU,GAAAsE,kBAAA,GAAE,IAAI,CAAC7E,UAAU,cAAA6E,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB5E,MAAM,cAAA6E,qBAAA,uBAAvBA,qBAAA,CAAyBtE,GAAG;gBACxCC,mBAAmB,EAAEC,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAIC,kBAAO;gBAC/DI,OAAO,EAAE7B,MAAM;gBACf0B,cAAc,EAAE5B,aAAa;gBAC7B6F,mBAAmB,EAAET,QAAQ;gBAC7BU,oBAAoB,EAAET;cACxB,CAAC;cACDxF,IAAI,EAAJA;YACF,CAAC;YACD;UACF;QAEA,KAAKO,mBAAY,CAAC2F,WAAW;UAAE;YAC7B,IAAI5B,SAAS,EAAE;cAAA,IAAA6B,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA;cACblG,IAAI,GAAG;gBACLS,IAAI,EAAE;kBACJhB,MAAM,EAAEiD,YAAY;kBACpBhC,SAAS,GAAAmF,kBAAA,GAAE,IAAI,CAAClF,UAAU,cAAAkF,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiBjF,MAAM,cAAAkF,qBAAA,uBAAvBA,qBAAA,CAAyBjF,QAAQ;kBAC5CC,iBAAiB,EAAE,IAAI,CAAC3B;gBAC1B,CAAC;gBACD4B,MAAM,EAAE;kBACNC,UAAU,GAAA+E,kBAAA,GAAE,IAAI,CAACpF,UAAU,cAAAoF,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiBnF,MAAM,cAAAoF,qBAAA,uBAAvBA,qBAAA,CAAyB/E,eAAe;kBACpDC,UAAU,GAAA+E,kBAAA,GAAE,IAAI,CAACtF,UAAU,cAAAsF,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiBrF,MAAM,cAAAsF,qBAAA,uBAAvBA,qBAAA,CAAyB/E,GAAG;kBACxCC,mBAAmB,EAAEC,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAIC,kBAAO;kBAC/DI,OAAO,EAAE7B,MAAM;kBACf0B,cAAc,EAAE5B,aAAa;kBAC7B6F,mBAAmB,EAAET,QAAQ;kBAC7BU,oBAAoB,EAAET,SAAS;kBAC/B9C,KAAK,EAAE4B,SAAS,CAACe,YAAY,CAAC,CAAC,CAACpB,OAAO;kBACvCC,UAAU,EAAEI,SAAS,CAACe,YAAY,CAAC,CAAC,CAACrF;gBACvC,CAAC;gBACDA,IAAI,EAAJA;cACF,CAAC;YACH;YACA;UACF;QAEA;UACEX,eAAG,CAAC8E,IAAI,CAAC,mEAAmE,EAAE;YAC5E5E,IAAI,EAAEC,sBAAW;YACjB4E,MAAM,EAAE,IAAI,CAACkB,iBAAiB,CAACxF;UACjC,CAAC,CAAC;UACF;MACJ;MAEA,IAAIQ,IAAI,EAAE;QACR,IAAI,CAACtB,KAAK,CAAC2D,QAAQ,CAACC,OAAO,CAACC,mBAAmB,CAAC/C,IAAI,EAAEQ,IAAI,CAAC;MAC7D;IACF;;IAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EAPE;IAAAX,GAAA;IAAAC,KAAA,EAQA,SAAA6G,sBACE3G,IAAkB,EAClBkD,YAAoB,EACpBhD,IAAiB,EACjB0G,SAAkB,EAClBC,cAAuB,EACvBC,UAAmB,EACnB;MACA,IAAItG,IAAI;MAER,QAAQR,IAAI;QACV,KAAKS,mBAAY,CAACsG,SAAS;UAAE;YAAA,IAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA;YAC3B3G,IAAI,GAAG;cACLS,IAAI,EAAE;gBACJhB,MAAM,EAAEiD,YAAY;gBACpBhC,SAAS,GAAA8F,kBAAA,GAAE,IAAI,CAAC7F,UAAU,cAAA6F,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB5F,MAAM,cAAA6F,qBAAA,uBAAvBA,qBAAA,CAAyB5F,QAAQ;gBAC5C+F,UAAU,EAAER;cACd,CAAC;cACDrF,MAAM,EAAE;gBACNC,UAAU,GAAA0F,kBAAA,GAAE,IAAI,CAAC/F,UAAU,cAAA+F,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB9F,MAAM,cAAA+F,qBAAA,uBAAvBA,qBAAA,CAAyB1F,eAAe;gBACpDG,mBAAmB,EACjB,OAAOC,OAAO,KAAK,WAAW,IAAIA,OAAO,CAACC,GAAG,CAACC,mBAAmB,GAC7DF,OAAO,CAACC,GAAG,CAACC,mBAAmB,GAC/BC;cACR,CAAC;cACD9B,IAAI,EAAJA;YACF,CAAC;YACD;UACF;QAEA,KAAKO,mBAAY,CAAC4G,eAAe;UAAE;YAAA,IAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA;YACjCjH,IAAI,GAAG;cACLS,IAAI,EAAE;gBACJhB,MAAM,EAAEiD,YAAY;gBACpBhC,SAAS,GAAAoG,kBAAA,GAAE,IAAI,CAACnG,UAAU,cAAAmG,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiBlG,MAAM,cAAAmG,qBAAA,uBAAvBA,qBAAA,CAAyBlG,QAAQ;gBAC5C+F,UAAU,EAAER,SAAS;gBACrBhE,KAAK,EAAEiE,cAAc;gBACrBa,WAAW,EAAEZ;cACf,CAAC;cACDvF,MAAM,EAAE;gBACNC,UAAU,GAAAgG,kBAAA,GAAE,IAAI,CAACrG,UAAU,cAAAqG,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiBpG,MAAM,cAAAqG,qBAAA,uBAAvBA,qBAAA,CAAyBhG,eAAe;gBACpDG,mBAAmB,EACjB,OAAOC,OAAO,KAAK,WAAW,IAAIA,OAAO,CAACC,GAAG,CAACC,mBAAmB,GAC7DF,OAAO,CAACC,GAAG,CAACC,mBAAmB,GAC/BC;cACR,CAAC;cACD9B,IAAI,EAAJA;YACF,CAAC;YACD;UACF;QAEA;UACEX,eAAG,CAAC8E,IAAI,CAAC,mEAAmE,EAAE;YAC5E5E,IAAI,EAAEC,sBAAW;YACjB4E,MAAM,EAAE,IAAI,CAACqC,qBAAqB,CAAC3G;UACrC,CAAC,CAAC;UACF;MACJ;MACA,IAAIQ,IAAI,EAAE;QACR,IAAI,CAACtB,KAAK,CAAC2D,QAAQ,CAACC,OAAO,CAACC,mBAAmB,CAAC/C,IAAI,EAAEQ,IAAI,CAAC;MAC7D;IACF;EAAC;IAAAX,GAAA;IAAAC,KAAA,EAED,SAAA6H,gBACE3H,IAAkB,EAClBE,IAAiB,EACjBK,MAAc,EACdF,aAA4B,EAC5B;MACA,IAAIG,IAAI;MAER,IAAIR,IAAI,KAAKS,mBAAY,CAACmH,WAAW,IAAI5H,IAAI,KAAKS,mBAAY,CAACoH,YAAY,EAAE;QAAA,IAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA;QAC3E3H,IAAI,GAAG;UACLS,IAAI,EAAE;YACJC,SAAS,GAAA4G,kBAAA,GAAE,IAAI,CAAC3G,UAAU,cAAA2G,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB1G,MAAM,cAAA2G,qBAAA,uBAAvBA,qBAAA,CAAyB1G,QAAQ;YAC5CC,iBAAiB,EAAE,IAAI,CAAC3B;UAC1B,CAAC;UACD4B,MAAM,EAAE;YACNC,UAAU,GAAAwG,kBAAA,GAAE,IAAI,CAAC7G,UAAU,cAAA6G,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB5G,MAAM,cAAA6G,qBAAA,uBAAvBA,qBAAA,CAAyBxG,eAAe;YACpDC,UAAU,GAAAwG,kBAAA,GAAE,IAAI,CAAC/G,UAAU,cAAA+G,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB9G,MAAM,cAAA+G,qBAAA,uBAAvBA,qBAAA,CAAyBxG,GAAG;YACxCC,mBAAmB,EAAEC,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAIC,kBAAO;YAC/DI,OAAO,EAAE7B,MAAM;YACf0B,cAAc,EAAE5B;UAClB,CAAC;UACDH,IAAI,EAAJA;QACF,CAAC;MACH,CAAC,MAAM;QACLX,eAAG,CAAC8E,IAAI,CAAC,mEAAmE,EAAE;UAC5E5E,IAAI,EAAEC,sBAAW;UACjB4E,MAAM,EAAE,IAAI,CAACqD,eAAe,CAAC3H;QAC/B,CAAC,CAAC;MACJ;MAEA,IAAIQ,IAAI,EAAE;QACR,IAAI,CAACtB,KAAK,CAAC2D,QAAQ,CAACC,OAAO,CAACC,mBAAmB,CAAC/C,IAAI,EAAEQ,IAAI,CAAC;MAC7D;IACF;EAAC;EAAA,OAAAvB,aAAA;AAAA;AAGH;AACA;AACA;AACA;AACO,IAAMmJ,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA,GAAG,SAAnBA,gBAAgBA,CAC3BlJ,KAAgB,EAChBC,SAA4B,EACT;EACnB,IAAI,CAACH,aAAa,IAAIE,KAAK,EAAE;IAC3BF,aAAa,GAAG,IAAIC,aAAa,CAACC,KAAK,EAAEC,SAAS,CAAC;EACrD;EAEA,OAAOH,aAAa;AACtB,CAAC;AAAC,IAAAsJ,QAAA,GAAAD,OAAA,CAAAhJ,OAAA,GAEa+I,gBAAgB"}
@@ -58,14 +58,11 @@ describe('CALLING: Metric tests', function () {
58
58
  fields: {
59
59
  device_url: mockDeviceInfo.device.clientDeviceUri,
60
60
  mobius_url: mockDeviceInfo.device.uri,
61
- calling_sdk_version: MOCK_VERSION_NUMBER,
62
- reg_source: _constants.REGISTRATION_UTIL,
63
- server_type: 'PRIMARY',
64
- trackingId: 'webex-js-sdk_06bafdd0-2f9b-4cd7-b438-9c0d95ecec9b_15'
61
+ calling_sdk_version: MOCK_VERSION_NUMBER
65
62
  },
66
63
  type: _types.METRIC_TYPE.BEHAVIORAL
67
64
  };
68
- metricManager.submitRegistrationMetric(_types.METRIC_EVENT.REGISTRATION, _types.REG_ACTION.REGISTER, _types.METRIC_TYPE.BEHAVIORAL, _constants.REGISTRATION_UTIL, 'PRIMARY', 'webex-js-sdk_06bafdd0-2f9b-4cd7-b438-9c0d95ecec9b_15', undefined, undefined);
65
+ metricManager.submitRegistrationMetric(_types.METRIC_EVENT.REGISTRATION, _types.REG_ACTION.REGISTER, _types.METRIC_TYPE.BEHAVIORAL, undefined);
69
66
  expect(mockSubmitClientMetric).toBeCalledOnceWith(_types.METRIC_EVENT.REGISTRATION, expectedData);
70
67
  });
71
68
  it('submit registration failure metric', function () {
@@ -86,20 +83,17 @@ describe('CALLING: Metric tests', function () {
86
83
  device_url: mockDeviceInfo.device.clientDeviceUri,
87
84
  mobius_url: mockDeviceInfo.device.uri,
88
85
  calling_sdk_version: MOCK_VERSION_NUMBER,
89
- reg_source: _constants.REGISTRATION_UTIL,
90
- server_type: 'BACKUP',
91
- trackingId: 'webex-js-sdk_06bafdd0-2f9b-4cd7-b438-9c0d95ecec9b_15',
92
86
  error: clientError.getError().message,
93
87
  error_type: clientError.getError().type
94
88
  },
95
89
  type: _types.METRIC_TYPE.BEHAVIORAL
96
90
  };
97
- metricManager.submitRegistrationMetric(_types.METRIC_EVENT.REGISTRATION_ERROR, _types.REG_ACTION.REGISTER, _types.METRIC_TYPE.BEHAVIORAL, _constants.REGISTRATION_UTIL, 'BACKUP', 'webex-js-sdk_06bafdd0-2f9b-4cd7-b438-9c0d95ecec9b_15', undefined, clientError);
91
+ metricManager.submitRegistrationMetric(_types.METRIC_EVENT.REGISTRATION_ERROR, _types.REG_ACTION.REGISTER, _types.METRIC_TYPE.BEHAVIORAL, clientError);
98
92
  expect(mockSubmitClientMetric).toBeCalledOnceWith(_types.METRIC_EVENT.REGISTRATION_ERROR, expectedData);
99
93
  });
100
94
  it('submit unknown registration metric', function () {
101
95
  var logSpy = jest.spyOn(_Logger.default, 'warn');
102
- metricManager.submitRegistrationMetric('invalidMetricName', _types.REG_ACTION.REGISTER, _types.METRIC_TYPE.OPERATIONAL, _constants.REGISTRATION_UTIL, 'PRIMARY', undefined, undefined, undefined);
96
+ metricManager.submitRegistrationMetric('invalidMetricName', _types.REG_ACTION.REGISTER, _types.METRIC_TYPE.OPERATIONAL, undefined);
103
97
  expect(mockSubmitClientMetric).not.toBeCalled();
104
98
  expect(logSpy).toBeCalledOnceWith('Invalid metric name received. Rejecting request to submit metric.', {
105
99
  file: 'metric',
@@ -1 +1 @@
1
- {"version":3,"names":["_testUtil","require","_index","_types","_constants","_CallingDeviceError","_types2","_types3","_Logger","_interopRequireDefault","_CallError","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","webex","getTestUtilsWebex","describe","metricManager","getMetricManager","ServiceIndicator","CALLING","mockDeviceInfo","getMockDeviceInfo","mockSubmitClientMetric","jest","fn","MOCK_VERSION_NUMBER","originalEnv","process","env","internal","metrics","submitClientMetrics","mockCallId","mockCorrelationId","mockCallAction","mockMediaAction","beforeEach","mockClear","CALLING_SDK_VERSION","it","expect","not","toBeNull","toBeUndefined","setDeviceInfo","toEqual","expectedData","tags","action","REG_ACTION","REGISTER","device_id","device","deviceId","service_indicator","fields","device_url","clientDeviceUri","mobius_url","uri","calling_sdk_version","reg_source","REGISTRATION_UTIL","server_type","trackingId","type","METRIC_TYPE","BEHAVIORAL","submitRegistrationMetric","METRIC_EVENT","REGISTRATION","undefined","toBeCalledOnceWith","clientError","createClientError","ERROR_TYPE","DEFAULT","RegistrationStatus","INACTIVE","err","context","message","SERVICE_UNAVAILABLE","setError","error","getError","error_type","REGISTRATION_ERROR","logSpy","spyOn","log","OPERATIONAL","toBeCalled","file","method","beforeAll","call_id","correlation_id","submitCallMetric","CALL","callError","createCallError","ERROR_LAYER","CALL_CONTROL","FORBIDDEN_ERROR","setCallError","getCallError","CALL_ERROR","mockSdp","local_media_details","remote_media_details","submitMediaMetric","MEDIA","MEDIA_ERROR","submitBNRMetric","BNR_ENABLED","BNR_DISABLED","expectedData1","VOICEMAIL_ACTION","GET_VOICEMAILS","submitVoicemailMetric","VOICEMAIL","expectedData2","message_id","DELETE","errorMessage","status_code","VOICEMAIL_ERROR","VERSION"],"sources":["index.test.ts"],"sourcesContent":["/* eslint-disable dot-notation */\nimport {getMockDeviceInfo, getTestUtilsWebex} from '../common/testUtil';\nimport {getMetricManager} from './index';\nimport {METRIC_TYPE, METRIC_EVENT, REG_ACTION, VOICEMAIL_ACTION} from './types';\nimport {REGISTRATION_UTIL, VERSION} from '../CallingClient/constants';\nimport {createClientError} from '../Errors/catalog/CallingDeviceError';\nimport {CallErrorObject, ErrorObject, ERROR_LAYER, ERROR_TYPE} from '../Errors/types';\nimport {RegistrationStatus, ServiceIndicator} from '../common/types';\nimport log from '../Logger';\nimport {createCallError} from '../Errors/catalog/CallError';\n\nconst webex = getTestUtilsWebex();\n\ndescribe('CALLING: Metric tests', () => {\n const metricManager = getMetricManager(webex, ServiceIndicator.CALLING);\n const mockDeviceInfo = getMockDeviceInfo();\n const mockSubmitClientMetric = jest.fn();\n const MOCK_VERSION_NUMBER = '1.0.0';\n const originalEnv = process.env;\n\n webex.internal.metrics.submitClientMetrics = mockSubmitClientMetric;\n\n const mockCallId = '123456';\n const mockCorrelationId = '0931237';\n const mockCallAction = 'S_SEND_CALL_SETUP';\n const mockMediaAction = 'S_SEND_ROAP_OFFER';\n\n beforeEach(() => {\n mockSubmitClientMetric.mockClear();\n process.env = {\n ...originalEnv,\n CALLING_SDK_VERSION: MOCK_VERSION_NUMBER,\n };\n });\n\n it('initialize metric manager', () => {\n expect(metricManager).not.toBeNull();\n expect(metricManager['deviceInfo']).toBeUndefined();\n });\n\n it('update deviceInfo in metric manager', () => {\n expect(metricManager['deviceInfo']).toBeUndefined();\n metricManager.setDeviceInfo(mockDeviceInfo);\n expect(metricManager['deviceInfo']).toEqual(mockDeviceInfo);\n });\n\n describe('CallingClient metric tests', () => {\n it('submit registration success metric', () => {\n metricManager.setDeviceInfo(mockDeviceInfo);\n\n const expectedData = {\n tags: {\n action: REG_ACTION.REGISTER,\n device_id: mockDeviceInfo.device.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n mobius_url: mockDeviceInfo.device.uri,\n calling_sdk_version: MOCK_VERSION_NUMBER,\n reg_source: REGISTRATION_UTIL,\n server_type: 'PRIMARY',\n trackingId: 'webex-js-sdk_06bafdd0-2f9b-4cd7-b438-9c0d95ecec9b_15',\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitRegistrationMetric(\n METRIC_EVENT.REGISTRATION,\n REG_ACTION.REGISTER,\n METRIC_TYPE.BEHAVIORAL,\n REGISTRATION_UTIL,\n 'PRIMARY',\n 'webex-js-sdk_06bafdd0-2f9b-4cd7-b438-9c0d95ecec9b_15',\n undefined,\n undefined\n );\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.REGISTRATION, expectedData);\n });\n\n it('submit registration failure metric', () => {\n metricManager.setDeviceInfo(mockDeviceInfo);\n\n const clientError = createClientError(\n '',\n {},\n ERROR_TYPE.DEFAULT,\n RegistrationStatus.INACTIVE\n );\n const err = <ErrorObject>{};\n\n err.context = {};\n err.message = 'Unknown Error';\n err.type = ERROR_TYPE.SERVICE_UNAVAILABLE;\n\n clientError.setError(err);\n\n const expectedData = {\n tags: {\n action: REG_ACTION.REGISTER,\n device_id: mockDeviceInfo.device.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n mobius_url: mockDeviceInfo.device.uri,\n calling_sdk_version: MOCK_VERSION_NUMBER,\n reg_source: REGISTRATION_UTIL,\n server_type: 'BACKUP',\n trackingId: 'webex-js-sdk_06bafdd0-2f9b-4cd7-b438-9c0d95ecec9b_15',\n error: clientError.getError().message,\n error_type: clientError.getError().type,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitRegistrationMetric(\n METRIC_EVENT.REGISTRATION_ERROR,\n REG_ACTION.REGISTER,\n METRIC_TYPE.BEHAVIORAL,\n REGISTRATION_UTIL,\n 'BACKUP',\n 'webex-js-sdk_06bafdd0-2f9b-4cd7-b438-9c0d95ecec9b_15',\n undefined,\n clientError\n );\n expect(mockSubmitClientMetric).toBeCalledOnceWith(\n METRIC_EVENT.REGISTRATION_ERROR,\n expectedData\n );\n });\n\n it('submit unknown registration metric', () => {\n const logSpy = jest.spyOn(log, 'warn');\n\n metricManager.submitRegistrationMetric(\n 'invalidMetricName' as unknown as METRIC_EVENT,\n REG_ACTION.REGISTER,\n METRIC_TYPE.OPERATIONAL,\n REGISTRATION_UTIL,\n 'PRIMARY',\n undefined,\n undefined,\n undefined\n );\n\n expect(mockSubmitClientMetric).not.toBeCalled();\n expect(logSpy).toBeCalledOnceWith(\n 'Invalid metric name received. Rejecting request to submit metric.',\n {\n file: 'metric',\n method: 'submitRegistrationMetric',\n }\n );\n });\n });\n\n describe('Call Metric tests', () => {\n beforeAll(() => {\n metricManager.setDeviceInfo(mockDeviceInfo);\n });\n\n it('submit call success metric', () => {\n const expectedData = {\n tags: {\n action: mockCallAction,\n device_id: mockDeviceInfo.device.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n mobius_url: mockDeviceInfo.device.uri,\n calling_sdk_version: MOCK_VERSION_NUMBER,\n call_id: mockCallId,\n correlation_id: mockCorrelationId,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitCallMetric(\n METRIC_EVENT.CALL,\n mockCallAction,\n METRIC_TYPE.BEHAVIORAL,\n mockCallId,\n mockCorrelationId\n );\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.CALL, expectedData);\n });\n\n it('submit call failure metric', () => {\n const callError = createCallError(\n '',\n {},\n ERROR_TYPE.DEFAULT,\n mockCorrelationId,\n ERROR_LAYER.CALL_CONTROL\n );\n\n const err = <CallErrorObject>{};\n\n err.context = {};\n err.message =\n 'An invalid status update has been received for the call. Wait a moment and try again.';\n err.type = ERROR_TYPE.FORBIDDEN_ERROR;\n\n callError.setCallError(err);\n\n const expectedData = {\n tags: {\n action: mockCallAction,\n device_id: mockDeviceInfo.device.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n mobius_url: mockDeviceInfo.device.uri,\n calling_sdk_version: MOCK_VERSION_NUMBER,\n call_id: mockCallId,\n correlation_id: mockCorrelationId,\n error: callError.getCallError().message,\n error_type: callError.getCallError().type,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitCallMetric(\n METRIC_EVENT.CALL_ERROR,\n mockCallAction,\n METRIC_TYPE.BEHAVIORAL,\n mockCallId,\n mockCorrelationId,\n callError\n );\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.CALL_ERROR, expectedData);\n });\n\n it('submit unknown call metric', () => {\n const logSpy = jest.spyOn(log, 'warn');\n\n metricManager.submitCallMetric(\n 'invalidMetricName' as unknown as METRIC_EVENT,\n mockCallAction,\n METRIC_TYPE.OPERATIONAL,\n mockCallId,\n mockCorrelationId\n );\n\n expect(mockSubmitClientMetric).not.toBeCalled();\n expect(logSpy).toBeCalledOnceWith(\n 'Invalid metric name received. Rejecting request to submit metric.',\n {\n file: 'metric',\n method: 'submitCallMetric',\n }\n );\n });\n });\n\n describe('Media Metric tests', () => {\n const mockSdp = 'sdpInformation';\n\n beforeAll(() => {\n metricManager.setDeviceInfo(mockDeviceInfo);\n });\n\n it('submit media success metric', () => {\n const expectedData = {\n tags: {\n action: mockMediaAction,\n device_id: mockDeviceInfo.device.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n mobius_url: mockDeviceInfo.device.uri,\n calling_sdk_version: MOCK_VERSION_NUMBER,\n call_id: mockCallId,\n correlation_id: mockCorrelationId,\n local_media_details: mockSdp,\n remote_media_details: mockSdp,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitMediaMetric(\n METRIC_EVENT.MEDIA,\n mockMediaAction,\n METRIC_TYPE.BEHAVIORAL,\n mockCallId,\n mockCorrelationId,\n mockSdp,\n mockSdp\n );\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.MEDIA, expectedData);\n });\n\n it('submit media failure metric', () => {\n const callError = createCallError(\n '',\n {},\n ERROR_TYPE.DEFAULT,\n mockCorrelationId,\n ERROR_LAYER.MEDIA\n );\n\n const err = <CallErrorObject>{};\n\n err.context = {};\n err.message =\n 'An error occurred while parsing the provided information. Wait a moment and try again.';\n err.type = ERROR_TYPE.SERVICE_UNAVAILABLE;\n\n callError.setCallError(err);\n\n const expectedData = {\n tags: {\n action: mockMediaAction,\n device_id: mockDeviceInfo.device.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n mobius_url: mockDeviceInfo.device.uri,\n calling_sdk_version: MOCK_VERSION_NUMBER,\n call_id: mockCallId,\n correlation_id: mockCorrelationId,\n local_media_details: mockSdp,\n remote_media_details: mockSdp,\n error: callError.getCallError().message,\n error_type: callError.getCallError().type,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitMediaMetric(\n METRIC_EVENT.MEDIA_ERROR,\n mockMediaAction,\n METRIC_TYPE.BEHAVIORAL,\n mockCallId,\n mockCorrelationId,\n mockSdp,\n mockSdp,\n callError\n );\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.MEDIA_ERROR, expectedData);\n });\n\n it('submit unknown media metric', () => {\n const logSpy = jest.spyOn(log, 'warn');\n\n metricManager.submitMediaMetric(\n 'invalidMetricName' as unknown as METRIC_EVENT,\n mockMediaAction,\n METRIC_TYPE.OPERATIONAL,\n mockCallId,\n mockCorrelationId,\n mockSdp,\n mockSdp\n );\n\n expect(mockSubmitClientMetric).not.toBeCalled();\n expect(logSpy).toBeCalledOnceWith(\n 'Invalid metric name received. Rejecting request to submit metric.',\n {\n file: 'metric',\n method: 'submitMediaMetric',\n }\n );\n });\n });\n\n describe('BNR metric tests', () => {\n beforeAll(() => {\n metricManager.setDeviceInfo(mockDeviceInfo);\n });\n\n it('submit bnr enabled metric', () => {\n const expectedData = {\n tags: {\n device_id: mockDeviceInfo.device.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n mobius_url: mockDeviceInfo.device.uri,\n calling_sdk_version: MOCK_VERSION_NUMBER,\n call_id: mockCallId,\n correlation_id: mockCorrelationId,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitBNRMetric(\n METRIC_EVENT.BNR_ENABLED,\n METRIC_TYPE.BEHAVIORAL,\n mockCallId,\n mockCorrelationId\n );\n\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.BNR_ENABLED, expectedData);\n });\n\n it('submit bnr disabled metric', () => {\n const expectedData = {\n tags: {\n device_id: mockDeviceInfo.device.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n mobius_url: mockDeviceInfo.device.uri,\n calling_sdk_version: MOCK_VERSION_NUMBER,\n call_id: mockCallId,\n correlation_id: mockCorrelationId,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitBNRMetric(\n METRIC_EVENT.BNR_DISABLED,\n METRIC_TYPE.BEHAVIORAL,\n mockCallId,\n mockCorrelationId\n );\n\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.BNR_DISABLED, expectedData);\n });\n\n it('submit unknown bnr metric', () => {\n const logSpy = jest.spyOn(log, 'warn');\n\n metricManager.submitBNRMetric(\n 'invalidMetricName' as unknown as METRIC_EVENT,\n METRIC_TYPE.BEHAVIORAL,\n mockCallId,\n mockCorrelationId\n );\n\n expect(mockSubmitClientMetric).not.toBeCalled();\n expect(logSpy).toBeCalledOnceWith(\n 'Invalid metric name received. Rejecting request to submit metric.',\n {\n file: 'metric',\n method: 'submitBNRMetric',\n }\n );\n });\n });\n\n describe('Voicemail metric tests', () => {\n beforeAll(() => metricManager.setDeviceInfo(mockDeviceInfo));\n\n it('submit voicemail success metric', () => {\n const expectedData1 = {\n tags: {\n action: VOICEMAIL_ACTION.GET_VOICEMAILS,\n device_id: mockDeviceInfo.device.deviceId,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n calling_sdk_version: MOCK_VERSION_NUMBER,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitVoicemailMetric(\n METRIC_EVENT.VOICEMAIL,\n VOICEMAIL_ACTION.GET_VOICEMAILS,\n METRIC_TYPE.BEHAVIORAL\n );\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.VOICEMAIL, expectedData1);\n\n mockSubmitClientMetric.mockClear();\n\n const expectedData2 = {\n ...expectedData1,\n tags: {...expectedData1.tags, message_id: 'messageId', action: VOICEMAIL_ACTION.DELETE},\n };\n\n metricManager.submitVoicemailMetric(\n METRIC_EVENT.VOICEMAIL,\n VOICEMAIL_ACTION.DELETE,\n METRIC_TYPE.BEHAVIORAL,\n 'messageId'\n );\n\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.VOICEMAIL, expectedData2);\n });\n\n it('submit voicemail failure metric', () => {\n const errorMessage = 'User is not authenticated';\n const expectedData1 = {\n tags: {\n action: VOICEMAIL_ACTION.GET_VOICEMAILS,\n device_id: mockDeviceInfo.device.deviceId,\n message_id: undefined,\n error: errorMessage,\n status_code: 401,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n calling_sdk_version: MOCK_VERSION_NUMBER,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitVoicemailMetric(\n METRIC_EVENT.VOICEMAIL_ERROR,\n VOICEMAIL_ACTION.GET_VOICEMAILS,\n METRIC_TYPE.BEHAVIORAL,\n undefined,\n errorMessage,\n 401\n );\n expect(mockSubmitClientMetric).toBeCalledOnceWith(\n METRIC_EVENT.VOICEMAIL_ERROR,\n expectedData1\n );\n\n mockSubmitClientMetric.mockClear();\n\n const expectedData2 = {\n ...expectedData1,\n tags: {...expectedData1.tags, message_id: 'messageId', action: VOICEMAIL_ACTION.DELETE},\n };\n\n metricManager.submitVoicemailMetric(\n METRIC_EVENT.VOICEMAIL_ERROR,\n VOICEMAIL_ACTION.DELETE,\n METRIC_TYPE.BEHAVIORAL,\n 'messageId',\n errorMessage,\n 401\n );\n\n expect(mockSubmitClientMetric).toBeCalledOnceWith(\n METRIC_EVENT.VOICEMAIL_ERROR,\n expectedData2\n );\n });\n\n it('submit unknown voicemail metric', () => {\n const logSpy = jest.spyOn(log, 'warn');\n\n metricManager.submitVoicemailMetric(\n 'invalidMetricName' as unknown as METRIC_EVENT,\n VOICEMAIL_ACTION.GET_VOICEMAILS,\n METRIC_TYPE.BEHAVIORAL\n );\n\n expect(mockSubmitClientMetric).not.toBeCalled();\n expect(logSpy).toBeCalledOnceWith(\n 'Invalid metric name received. Rejecting request to submit metric.',\n {\n file: 'metric',\n method: 'submitVoicemailMetric',\n }\n );\n });\n });\n\n describe('Calling_Sdk_Version fallback test', () => {\n it('submit metric with fallback version', () => {\n process.env = {};\n metricManager.setDeviceInfo(mockDeviceInfo);\n const expectedData = {\n tags: {\n device_id: mockDeviceInfo.device.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n mobius_url: mockDeviceInfo.device.uri,\n calling_sdk_version: VERSION,\n call_id: mockCallId,\n correlation_id: mockCorrelationId,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitBNRMetric(\n METRIC_EVENT.BNR_ENABLED,\n METRIC_TYPE.BEHAVIORAL,\n mockCallId,\n mockCorrelationId\n );\n\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.BNR_ENABLED, expectedData);\n });\n });\n});\n"],"mappings":";;;;;;;;;;AACA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,mBAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AACA,IAAAM,OAAA,GAAAN,OAAA;AACA,IAAAO,OAAA,GAAAC,sBAAA,CAAAR,OAAA;AACA,IAAAS,UAAA,GAAAT,OAAA;AAA4D,SAAAU,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAC,YAAA,CAAAH,CAAA,OAAAI,6BAAA,QAAAC,CAAA,GAAAD,6BAAA,CAAAJ,CAAA,GAAAC,CAAA,KAAAI,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAL,CAAA,WAAAM,gCAAA,CAAAP,CAAA,EAAAC,CAAA,EAAAO,UAAA,OAAAN,CAAA,CAAAO,IAAA,CAAAC,KAAA,CAAAR,CAAA,EAAAG,CAAA,YAAAH,CAAA;AAAA,SAAAS,cAAAX,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAW,SAAA,CAAAC,MAAA,EAAAZ,CAAA,UAAAC,CAAA,WAAAU,SAAA,CAAAX,CAAA,IAAAW,SAAA,CAAAX,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAe,MAAA,CAAAZ,CAAA,OAAAa,OAAA,WAAAd,CAAA,QAAAe,gBAAA,CAAAC,OAAA,EAAAjB,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAiB,iCAAA,GAAAC,wBAAA,CAAAnB,CAAA,EAAAkB,iCAAA,CAAAhB,CAAA,KAAAH,OAAA,CAAAe,MAAA,CAAAZ,CAAA,GAAAa,OAAA,WAAAd,CAAA,IAAAmB,sBAAA,CAAApB,CAAA,EAAAC,CAAA,EAAAM,gCAAA,CAAAL,CAAA,EAAAD,CAAA,iBAAAD,CAAA,IAT5D;AAWA,IAAMqB,KAAK,GAAG,IAAAC,2BAAiB,EAAC,CAAC;AAEjCC,QAAQ,CAAC,uBAAuB,EAAE,YAAM;EACtC,IAAMC,aAAa,GAAG,IAAAC,uBAAgB,EAACJ,KAAK,EAAEK,wBAAgB,CAACC,OAAO,CAAC;EACvE,IAAMC,cAAc,GAAG,IAAAC,2BAAiB,EAAC,CAAC;EAC1C,IAAMC,sBAAsB,GAAGC,IAAI,CAACC,EAAE,CAAC,CAAC;EACxC,IAAMC,mBAAmB,GAAG,OAAO;EACnC,IAAMC,WAAW,GAAGC,OAAO,CAACC,GAAG;EAE/Bf,KAAK,CAACgB,QAAQ,CAACC,OAAO,CAACC,mBAAmB,GAAGT,sBAAsB;EAEnE,IAAMU,UAAU,GAAG,QAAQ;EAC3B,IAAMC,iBAAiB,GAAG,SAAS;EACnC,IAAMC,cAAc,GAAG,mBAAmB;EAC1C,IAAMC,eAAe,GAAG,mBAAmB;EAE3CC,UAAU,CAAC,YAAM;IACfd,sBAAsB,CAACe,SAAS,CAAC,CAAC;IAClCV,OAAO,CAACC,GAAG,GAAAzB,aAAA,CAAAA,aAAA,KACNuB,WAAW;MACdY,mBAAmB,EAAEb;IAAmB,EACzC;EACH,CAAC,CAAC;EAEFc,EAAE,CAAC,2BAA2B,EAAE,YAAM;IACpCC,MAAM,CAACxB,aAAa,CAAC,CAACyB,GAAG,CAACC,QAAQ,CAAC,CAAC;IACpCF,MAAM,CAACxB,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC2B,aAAa,CAAC,CAAC;EACrD,CAAC,CAAC;EAEFJ,EAAE,CAAC,qCAAqC,EAAE,YAAM;IAC9CC,MAAM,CAACxB,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC2B,aAAa,CAAC,CAAC;IACnD3B,aAAa,CAAC4B,aAAa,CAACxB,cAAc,CAAC;IAC3CoB,MAAM,CAACxB,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC6B,OAAO,CAACzB,cAAc,CAAC;EAC7D,CAAC,CAAC;EAEFL,QAAQ,CAAC,4BAA4B,EAAE,YAAM;IAC3CwB,EAAE,CAAC,oCAAoC,EAAE,YAAM;MAC7CvB,aAAa,CAAC4B,aAAa,CAACxB,cAAc,CAAC;MAE3C,IAAM0B,YAAY,GAAG;QACnBC,IAAI,EAAE;UACJC,MAAM,EAAEC,iBAAU,CAACC,QAAQ;UAC3BC,SAAS,EAAE/B,cAAc,CAACgC,MAAM,CAACC,QAAQ;UACzCC,iBAAiB,EAAEpC,wBAAgB,CAACC;QACtC,CAAC;QACDoC,MAAM,EAAE;UACNC,UAAU,EAAEpC,cAAc,CAACgC,MAAM,CAACK,eAAe;UACjDC,UAAU,EAAEtC,cAAc,CAACgC,MAAM,CAACO,GAAG;UACrCC,mBAAmB,EAAEnC,mBAAmB;UACxCoC,UAAU,EAAEC,4BAAiB;UAC7BC,WAAW,EAAE,SAAS;UACtBC,UAAU,EAAE;QACd,CAAC;QACDC,IAAI,EAAEC,kBAAW,CAACC;MACpB,CAAC;MAEDnD,aAAa,CAACoD,wBAAwB,CACpCC,mBAAY,CAACC,YAAY,EACzBrB,iBAAU,CAACC,QAAQ,EACnBgB,kBAAW,CAACC,UAAU,EACtBL,4BAAiB,EACjB,SAAS,EACT,sDAAsD,EACtDS,SAAS,EACTA,SACF,CAAC;MACD/B,MAAM,CAAClB,sBAAsB,CAAC,CAACkD,kBAAkB,CAACH,mBAAY,CAACC,YAAY,EAAExB,YAAY,CAAC;IAC5F,CAAC,CAAC;IAEFP,EAAE,CAAC,oCAAoC,EAAE,YAAM;MAC7CvB,aAAa,CAAC4B,aAAa,CAACxB,cAAc,CAAC;MAE3C,IAAMqD,WAAW,GAAG,IAAAC,qCAAiB,EACnC,EAAE,EACF,CAAC,CAAC,EACFC,kBAAU,CAACC,OAAO,EAClBC,0BAAkB,CAACC,QACrB,CAAC;MACD,IAAMC,GAAG,GAAgB,CAAC,CAAC;MAE3BA,GAAG,CAACC,OAAO,GAAG,CAAC,CAAC;MAChBD,GAAG,CAACE,OAAO,GAAG,eAAe;MAC7BF,GAAG,CAACd,IAAI,GAAGU,kBAAU,CAACO,mBAAmB;MAEzCT,WAAW,CAACU,QAAQ,CAACJ,GAAG,CAAC;MAEzB,IAAMjC,YAAY,GAAG;QACnBC,IAAI,EAAE;UACJC,MAAM,EAAEC,iBAAU,CAACC,QAAQ;UAC3BC,SAAS,EAAE/B,cAAc,CAACgC,MAAM,CAACC,QAAQ;UACzCC,iBAAiB,EAAEpC,wBAAgB,CAACC;QACtC,CAAC;QACDoC,MAAM,EAAE;UACNC,UAAU,EAAEpC,cAAc,CAACgC,MAAM,CAACK,eAAe;UACjDC,UAAU,EAAEtC,cAAc,CAACgC,MAAM,CAACO,GAAG;UACrCC,mBAAmB,EAAEnC,mBAAmB;UACxCoC,UAAU,EAAEC,4BAAiB;UAC7BC,WAAW,EAAE,QAAQ;UACrBC,UAAU,EAAE,sDAAsD;UAClEoB,KAAK,EAAEX,WAAW,CAACY,QAAQ,CAAC,CAAC,CAACJ,OAAO;UACrCK,UAAU,EAAEb,WAAW,CAACY,QAAQ,CAAC,CAAC,CAACpB;QACrC,CAAC;QACDA,IAAI,EAAEC,kBAAW,CAACC;MACpB,CAAC;MAEDnD,aAAa,CAACoD,wBAAwB,CACpCC,mBAAY,CAACkB,kBAAkB,EAC/BtC,iBAAU,CAACC,QAAQ,EACnBgB,kBAAW,CAACC,UAAU,EACtBL,4BAAiB,EACjB,QAAQ,EACR,sDAAsD,EACtDS,SAAS,EACTE,WACF,CAAC;MACDjC,MAAM,CAAClB,sBAAsB,CAAC,CAACkD,kBAAkB,CAC/CH,mBAAY,CAACkB,kBAAkB,EAC/BzC,YACF,CAAC;IACH,CAAC,CAAC;IAEFP,EAAE,CAAC,oCAAoC,EAAE,YAAM;MAC7C,IAAMiD,MAAM,GAAGjE,IAAI,CAACkE,KAAK,CAACC,eAAG,EAAE,MAAM,CAAC;MAEtC1E,aAAa,CAACoD,wBAAwB,CACpC,mBAAmB,EACnBnB,iBAAU,CAACC,QAAQ,EACnBgB,kBAAW,CAACyB,WAAW,EACvB7B,4BAAiB,EACjB,SAAS,EACTS,SAAS,EACTA,SAAS,EACTA,SACF,CAAC;MAED/B,MAAM,CAAClB,sBAAsB,CAAC,CAACmB,GAAG,CAACmD,UAAU,CAAC,CAAC;MAC/CpD,MAAM,CAACgD,MAAM,CAAC,CAAChB,kBAAkB,CAC/B,mEAAmE,EACnE;QACEqB,IAAI,EAAE,QAAQ;QACdC,MAAM,EAAE;MACV,CACF,CAAC;IACH,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF/E,QAAQ,CAAC,mBAAmB,EAAE,YAAM;IAClCgF,SAAS,CAAC,YAAM;MACd/E,aAAa,CAAC4B,aAAa,CAACxB,cAAc,CAAC;IAC7C,CAAC,CAAC;IAEFmB,EAAE,CAAC,4BAA4B,EAAE,YAAM;MACrC,IAAMO,YAAY,GAAG;QACnBC,IAAI,EAAE;UACJC,MAAM,EAAEd,cAAc;UACtBiB,SAAS,EAAE/B,cAAc,CAACgC,MAAM,CAACC,QAAQ;UACzCC,iBAAiB,EAAEpC,wBAAgB,CAACC;QACtC,CAAC;QACDoC,MAAM,EAAE;UACNC,UAAU,EAAEpC,cAAc,CAACgC,MAAM,CAACK,eAAe;UACjDC,UAAU,EAAEtC,cAAc,CAACgC,MAAM,CAACO,GAAG;UACrCC,mBAAmB,EAAEnC,mBAAmB;UACxCuE,OAAO,EAAEhE,UAAU;UACnBiE,cAAc,EAAEhE;QAClB,CAAC;QACDgC,IAAI,EAAEC,kBAAW,CAACC;MACpB,CAAC;MAEDnD,aAAa,CAACkF,gBAAgB,CAC5B7B,mBAAY,CAAC8B,IAAI,EACjBjE,cAAc,EACdgC,kBAAW,CAACC,UAAU,EACtBnC,UAAU,EACVC,iBACF,CAAC;MACDO,MAAM,CAAClB,sBAAsB,CAAC,CAACkD,kBAAkB,CAACH,mBAAY,CAAC8B,IAAI,EAAErD,YAAY,CAAC;IACpF,CAAC,CAAC;IAEFP,EAAE,CAAC,4BAA4B,EAAE,YAAM;MACrC,IAAM6D,SAAS,GAAG,IAAAC,0BAAe,EAC/B,EAAE,EACF,CAAC,CAAC,EACF1B,kBAAU,CAACC,OAAO,EAClB3C,iBAAiB,EACjBqE,mBAAW,CAACC,YACd,CAAC;MAED,IAAMxB,GAAG,GAAoB,CAAC,CAAC;MAE/BA,GAAG,CAACC,OAAO,GAAG,CAAC,CAAC;MAChBD,GAAG,CAACE,OAAO,GACT,uFAAuF;MACzFF,GAAG,CAACd,IAAI,GAAGU,kBAAU,CAAC6B,eAAe;MAErCJ,SAAS,CAACK,YAAY,CAAC1B,GAAG,CAAC;MAE3B,IAAMjC,YAAY,GAAG;QACnBC,IAAI,EAAE;UACJC,MAAM,EAAEd,cAAc;UACtBiB,SAAS,EAAE/B,cAAc,CAACgC,MAAM,CAACC,QAAQ;UACzCC,iBAAiB,EAAEpC,wBAAgB,CAACC;QACtC,CAAC;QACDoC,MAAM,EAAE;UACNC,UAAU,EAAEpC,cAAc,CAACgC,MAAM,CAACK,eAAe;UACjDC,UAAU,EAAEtC,cAAc,CAACgC,MAAM,CAACO,GAAG;UACrCC,mBAAmB,EAAEnC,mBAAmB;UACxCuE,OAAO,EAAEhE,UAAU;UACnBiE,cAAc,EAAEhE,iBAAiB;UACjCmD,KAAK,EAAEgB,SAAS,CAACM,YAAY,CAAC,CAAC,CAACzB,OAAO;UACvCK,UAAU,EAAEc,SAAS,CAACM,YAAY,CAAC,CAAC,CAACzC;QACvC,CAAC;QACDA,IAAI,EAAEC,kBAAW,CAACC;MACpB,CAAC;MAEDnD,aAAa,CAACkF,gBAAgB,CAC5B7B,mBAAY,CAACsC,UAAU,EACvBzE,cAAc,EACdgC,kBAAW,CAACC,UAAU,EACtBnC,UAAU,EACVC,iBAAiB,EACjBmE,SACF,CAAC;MACD5D,MAAM,CAAClB,sBAAsB,CAAC,CAACkD,kBAAkB,CAACH,mBAAY,CAACsC,UAAU,EAAE7D,YAAY,CAAC;IAC1F,CAAC,CAAC;IAEFP,EAAE,CAAC,4BAA4B,EAAE,YAAM;MACrC,IAAMiD,MAAM,GAAGjE,IAAI,CAACkE,KAAK,CAACC,eAAG,EAAE,MAAM,CAAC;MAEtC1E,aAAa,CAACkF,gBAAgB,CAC5B,mBAAmB,EACnBhE,cAAc,EACdgC,kBAAW,CAACyB,WAAW,EACvB3D,UAAU,EACVC,iBACF,CAAC;MAEDO,MAAM,CAAClB,sBAAsB,CAAC,CAACmB,GAAG,CAACmD,UAAU,CAAC,CAAC;MAC/CpD,MAAM,CAACgD,MAAM,CAAC,CAAChB,kBAAkB,CAC/B,mEAAmE,EACnE;QACEqB,IAAI,EAAE,QAAQ;QACdC,MAAM,EAAE;MACV,CACF,CAAC;IACH,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF/E,QAAQ,CAAC,oBAAoB,EAAE,YAAM;IACnC,IAAM6F,OAAO,GAAG,gBAAgB;IAEhCb,SAAS,CAAC,YAAM;MACd/E,aAAa,CAAC4B,aAAa,CAACxB,cAAc,CAAC;IAC7C,CAAC,CAAC;IAEFmB,EAAE,CAAC,6BAA6B,EAAE,YAAM;MACtC,IAAMO,YAAY,GAAG;QACnBC,IAAI,EAAE;UACJC,MAAM,EAAEb,eAAe;UACvBgB,SAAS,EAAE/B,cAAc,CAACgC,MAAM,CAACC,QAAQ;UACzCC,iBAAiB,EAAEpC,wBAAgB,CAACC;QACtC,CAAC;QACDoC,MAAM,EAAE;UACNC,UAAU,EAAEpC,cAAc,CAACgC,MAAM,CAACK,eAAe;UACjDC,UAAU,EAAEtC,cAAc,CAACgC,MAAM,CAACO,GAAG;UACrCC,mBAAmB,EAAEnC,mBAAmB;UACxCuE,OAAO,EAAEhE,UAAU;UACnBiE,cAAc,EAAEhE,iBAAiB;UACjC4E,mBAAmB,EAAED,OAAO;UAC5BE,oBAAoB,EAAEF;QACxB,CAAC;QACD3C,IAAI,EAAEC,kBAAW,CAACC;MACpB,CAAC;MAEDnD,aAAa,CAAC+F,iBAAiB,CAC7B1C,mBAAY,CAAC2C,KAAK,EAClB7E,eAAe,EACf+B,kBAAW,CAACC,UAAU,EACtBnC,UAAU,EACVC,iBAAiB,EACjB2E,OAAO,EACPA,OACF,CAAC;MACDpE,MAAM,CAAClB,sBAAsB,CAAC,CAACkD,kBAAkB,CAACH,mBAAY,CAAC2C,KAAK,EAAElE,YAAY,CAAC;IACrF,CAAC,CAAC;IAEFP,EAAE,CAAC,6BAA6B,EAAE,YAAM;MACtC,IAAM6D,SAAS,GAAG,IAAAC,0BAAe,EAC/B,EAAE,EACF,CAAC,CAAC,EACF1B,kBAAU,CAACC,OAAO,EAClB3C,iBAAiB,EACjBqE,mBAAW,CAACU,KACd,CAAC;MAED,IAAMjC,GAAG,GAAoB,CAAC,CAAC;MAE/BA,GAAG,CAACC,OAAO,GAAG,CAAC,CAAC;MAChBD,GAAG,CAACE,OAAO,GACT,wFAAwF;MAC1FF,GAAG,CAACd,IAAI,GAAGU,kBAAU,CAACO,mBAAmB;MAEzCkB,SAAS,CAACK,YAAY,CAAC1B,GAAG,CAAC;MAE3B,IAAMjC,YAAY,GAAG;QACnBC,IAAI,EAAE;UACJC,MAAM,EAAEb,eAAe;UACvBgB,SAAS,EAAE/B,cAAc,CAACgC,MAAM,CAACC,QAAQ;UACzCC,iBAAiB,EAAEpC,wBAAgB,CAACC;QACtC,CAAC;QACDoC,MAAM,EAAE;UACNC,UAAU,EAAEpC,cAAc,CAACgC,MAAM,CAACK,eAAe;UACjDC,UAAU,EAAEtC,cAAc,CAACgC,MAAM,CAACO,GAAG;UACrCC,mBAAmB,EAAEnC,mBAAmB;UACxCuE,OAAO,EAAEhE,UAAU;UACnBiE,cAAc,EAAEhE,iBAAiB;UACjC4E,mBAAmB,EAAED,OAAO;UAC5BE,oBAAoB,EAAEF,OAAO;UAC7BxB,KAAK,EAAEgB,SAAS,CAACM,YAAY,CAAC,CAAC,CAACzB,OAAO;UACvCK,UAAU,EAAEc,SAAS,CAACM,YAAY,CAAC,CAAC,CAACzC;QACvC,CAAC;QACDA,IAAI,EAAEC,kBAAW,CAACC;MACpB,CAAC;MAEDnD,aAAa,CAAC+F,iBAAiB,CAC7B1C,mBAAY,CAAC4C,WAAW,EACxB9E,eAAe,EACf+B,kBAAW,CAACC,UAAU,EACtBnC,UAAU,EACVC,iBAAiB,EACjB2E,OAAO,EACPA,OAAO,EACPR,SACF,CAAC;MACD5D,MAAM,CAAClB,sBAAsB,CAAC,CAACkD,kBAAkB,CAACH,mBAAY,CAAC4C,WAAW,EAAEnE,YAAY,CAAC;IAC3F,CAAC,CAAC;IAEFP,EAAE,CAAC,6BAA6B,EAAE,YAAM;MACtC,IAAMiD,MAAM,GAAGjE,IAAI,CAACkE,KAAK,CAACC,eAAG,EAAE,MAAM,CAAC;MAEtC1E,aAAa,CAAC+F,iBAAiB,CAC7B,mBAAmB,EACnB5E,eAAe,EACf+B,kBAAW,CAACyB,WAAW,EACvB3D,UAAU,EACVC,iBAAiB,EACjB2E,OAAO,EACPA,OACF,CAAC;MAEDpE,MAAM,CAAClB,sBAAsB,CAAC,CAACmB,GAAG,CAACmD,UAAU,CAAC,CAAC;MAC/CpD,MAAM,CAACgD,MAAM,CAAC,CAAChB,kBAAkB,CAC/B,mEAAmE,EACnE;QACEqB,IAAI,EAAE,QAAQ;QACdC,MAAM,EAAE;MACV,CACF,CAAC;IACH,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF/E,QAAQ,CAAC,kBAAkB,EAAE,YAAM;IACjCgF,SAAS,CAAC,YAAM;MACd/E,aAAa,CAAC4B,aAAa,CAACxB,cAAc,CAAC;IAC7C,CAAC,CAAC;IAEFmB,EAAE,CAAC,2BAA2B,EAAE,YAAM;MACpC,IAAMO,YAAY,GAAG;QACnBC,IAAI,EAAE;UACJI,SAAS,EAAE/B,cAAc,CAACgC,MAAM,CAACC,QAAQ;UACzCC,iBAAiB,EAAEpC,wBAAgB,CAACC;QACtC,CAAC;QACDoC,MAAM,EAAE;UACNC,UAAU,EAAEpC,cAAc,CAACgC,MAAM,CAACK,eAAe;UACjDC,UAAU,EAAEtC,cAAc,CAACgC,MAAM,CAACO,GAAG;UACrCC,mBAAmB,EAAEnC,mBAAmB;UACxCuE,OAAO,EAAEhE,UAAU;UACnBiE,cAAc,EAAEhE;QAClB,CAAC;QACDgC,IAAI,EAAEC,kBAAW,CAACC;MACpB,CAAC;MAEDnD,aAAa,CAACkG,eAAe,CAC3B7C,mBAAY,CAAC8C,WAAW,EACxBjD,kBAAW,CAACC,UAAU,EACtBnC,UAAU,EACVC,iBACF,CAAC;MAEDO,MAAM,CAAClB,sBAAsB,CAAC,CAACkD,kBAAkB,CAACH,mBAAY,CAAC8C,WAAW,EAAErE,YAAY,CAAC;IAC3F,CAAC,CAAC;IAEFP,EAAE,CAAC,4BAA4B,EAAE,YAAM;MACrC,IAAMO,YAAY,GAAG;QACnBC,IAAI,EAAE;UACJI,SAAS,EAAE/B,cAAc,CAACgC,MAAM,CAACC,QAAQ;UACzCC,iBAAiB,EAAEpC,wBAAgB,CAACC;QACtC,CAAC;QACDoC,MAAM,EAAE;UACNC,UAAU,EAAEpC,cAAc,CAACgC,MAAM,CAACK,eAAe;UACjDC,UAAU,EAAEtC,cAAc,CAACgC,MAAM,CAACO,GAAG;UACrCC,mBAAmB,EAAEnC,mBAAmB;UACxCuE,OAAO,EAAEhE,UAAU;UACnBiE,cAAc,EAAEhE;QAClB,CAAC;QACDgC,IAAI,EAAEC,kBAAW,CAACC;MACpB,CAAC;MAEDnD,aAAa,CAACkG,eAAe,CAC3B7C,mBAAY,CAAC+C,YAAY,EACzBlD,kBAAW,CAACC,UAAU,EACtBnC,UAAU,EACVC,iBACF,CAAC;MAEDO,MAAM,CAAClB,sBAAsB,CAAC,CAACkD,kBAAkB,CAACH,mBAAY,CAAC+C,YAAY,EAAEtE,YAAY,CAAC;IAC5F,CAAC,CAAC;IAEFP,EAAE,CAAC,2BAA2B,EAAE,YAAM;MACpC,IAAMiD,MAAM,GAAGjE,IAAI,CAACkE,KAAK,CAACC,eAAG,EAAE,MAAM,CAAC;MAEtC1E,aAAa,CAACkG,eAAe,CAC3B,mBAAmB,EACnBhD,kBAAW,CAACC,UAAU,EACtBnC,UAAU,EACVC,iBACF,CAAC;MAEDO,MAAM,CAAClB,sBAAsB,CAAC,CAACmB,GAAG,CAACmD,UAAU,CAAC,CAAC;MAC/CpD,MAAM,CAACgD,MAAM,CAAC,CAAChB,kBAAkB,CAC/B,mEAAmE,EACnE;QACEqB,IAAI,EAAE,QAAQ;QACdC,MAAM,EAAE;MACV,CACF,CAAC;IACH,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF/E,QAAQ,CAAC,wBAAwB,EAAE,YAAM;IACvCgF,SAAS,CAAC;MAAA,OAAM/E,aAAa,CAAC4B,aAAa,CAACxB,cAAc,CAAC;IAAA,EAAC;IAE5DmB,EAAE,CAAC,iCAAiC,EAAE,YAAM;MAC1C,IAAM8E,aAAa,GAAG;QACpBtE,IAAI,EAAE;UACJC,MAAM,EAAEsE,uBAAgB,CAACC,cAAc;UACvCpE,SAAS,EAAE/B,cAAc,CAACgC,MAAM,CAACC;QACnC,CAAC;QACDE,MAAM,EAAE;UACNC,UAAU,EAAEpC,cAAc,CAACgC,MAAM,CAACK,eAAe;UACjDG,mBAAmB,EAAEnC;QACvB,CAAC;QACDwC,IAAI,EAAEC,kBAAW,CAACC;MACpB,CAAC;MAEDnD,aAAa,CAACwG,qBAAqB,CACjCnD,mBAAY,CAACoD,SAAS,EACtBH,uBAAgB,CAACC,cAAc,EAC/BrD,kBAAW,CAACC,UACd,CAAC;MACD3B,MAAM,CAAClB,sBAAsB,CAAC,CAACkD,kBAAkB,CAACH,mBAAY,CAACoD,SAAS,EAAEJ,aAAa,CAAC;MAExF/F,sBAAsB,CAACe,SAAS,CAAC,CAAC;MAElC,IAAMqF,aAAa,GAAAvH,aAAA,CAAAA,aAAA,KACdkH,aAAa;QAChBtE,IAAI,EAAA5C,aAAA,CAAAA,aAAA,KAAMkH,aAAa,CAACtE,IAAI;UAAE4E,UAAU,EAAE,WAAW;UAAE3E,MAAM,EAAEsE,uBAAgB,CAACM;QAAM;MAAC,EACxF;MAED5G,aAAa,CAACwG,qBAAqB,CACjCnD,mBAAY,CAACoD,SAAS,EACtBH,uBAAgB,CAACM,MAAM,EACvB1D,kBAAW,CAACC,UAAU,EACtB,WACF,CAAC;MAED3B,MAAM,CAAClB,sBAAsB,CAAC,CAACkD,kBAAkB,CAACH,mBAAY,CAACoD,SAAS,EAAEC,aAAa,CAAC;IAC1F,CAAC,CAAC;IAEFnF,EAAE,CAAC,iCAAiC,EAAE,YAAM;MAC1C,IAAMsF,YAAY,GAAG,2BAA2B;MAChD,IAAMR,aAAa,GAAG;QACpBtE,IAAI,EAAE;UACJC,MAAM,EAAEsE,uBAAgB,CAACC,cAAc;UACvCpE,SAAS,EAAE/B,cAAc,CAACgC,MAAM,CAACC,QAAQ;UACzCsE,UAAU,EAAEpD,SAAS;UACrBa,KAAK,EAAEyC,YAAY;UACnBC,WAAW,EAAE;QACf,CAAC;QACDvE,MAAM,EAAE;UACNC,UAAU,EAAEpC,cAAc,CAACgC,MAAM,CAACK,eAAe;UACjDG,mBAAmB,EAAEnC;QACvB,CAAC;QACDwC,IAAI,EAAEC,kBAAW,CAACC;MACpB,CAAC;MAEDnD,aAAa,CAACwG,qBAAqB,CACjCnD,mBAAY,CAAC0D,eAAe,EAC5BT,uBAAgB,CAACC,cAAc,EAC/BrD,kBAAW,CAACC,UAAU,EACtBI,SAAS,EACTsD,YAAY,EACZ,GACF,CAAC;MACDrF,MAAM,CAAClB,sBAAsB,CAAC,CAACkD,kBAAkB,CAC/CH,mBAAY,CAAC0D,eAAe,EAC5BV,aACF,CAAC;MAED/F,sBAAsB,CAACe,SAAS,CAAC,CAAC;MAElC,IAAMqF,aAAa,GAAAvH,aAAA,CAAAA,aAAA,KACdkH,aAAa;QAChBtE,IAAI,EAAA5C,aAAA,CAAAA,aAAA,KAAMkH,aAAa,CAACtE,IAAI;UAAE4E,UAAU,EAAE,WAAW;UAAE3E,MAAM,EAAEsE,uBAAgB,CAACM;QAAM;MAAC,EACxF;MAED5G,aAAa,CAACwG,qBAAqB,CACjCnD,mBAAY,CAAC0D,eAAe,EAC5BT,uBAAgB,CAACM,MAAM,EACvB1D,kBAAW,CAACC,UAAU,EACtB,WAAW,EACX0D,YAAY,EACZ,GACF,CAAC;MAEDrF,MAAM,CAAClB,sBAAsB,CAAC,CAACkD,kBAAkB,CAC/CH,mBAAY,CAAC0D,eAAe,EAC5BL,aACF,CAAC;IACH,CAAC,CAAC;IAEFnF,EAAE,CAAC,iCAAiC,EAAE,YAAM;MAC1C,IAAMiD,MAAM,GAAGjE,IAAI,CAACkE,KAAK,CAACC,eAAG,EAAE,MAAM,CAAC;MAEtC1E,aAAa,CAACwG,qBAAqB,CACjC,mBAAmB,EACnBF,uBAAgB,CAACC,cAAc,EAC/BrD,kBAAW,CAACC,UACd,CAAC;MAED3B,MAAM,CAAClB,sBAAsB,CAAC,CAACmB,GAAG,CAACmD,UAAU,CAAC,CAAC;MAC/CpD,MAAM,CAACgD,MAAM,CAAC,CAAChB,kBAAkB,CAC/B,mEAAmE,EACnE;QACEqB,IAAI,EAAE,QAAQ;QACdC,MAAM,EAAE;MACV,CACF,CAAC;IACH,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF/E,QAAQ,CAAC,mCAAmC,EAAE,YAAM;IAClDwB,EAAE,CAAC,qCAAqC,EAAE,YAAM;MAC9CZ,OAAO,CAACC,GAAG,GAAG,CAAC,CAAC;MAChBZ,aAAa,CAAC4B,aAAa,CAACxB,cAAc,CAAC;MAC3C,IAAM0B,YAAY,GAAG;QACnBC,IAAI,EAAE;UACJI,SAAS,EAAE/B,cAAc,CAACgC,MAAM,CAACC,QAAQ;UACzCC,iBAAiB,EAAEpC,wBAAgB,CAACC;QACtC,CAAC;QACDoC,MAAM,EAAE;UACNC,UAAU,EAAEpC,cAAc,CAACgC,MAAM,CAACK,eAAe;UACjDC,UAAU,EAAEtC,cAAc,CAACgC,MAAM,CAACO,GAAG;UACrCC,mBAAmB,EAAEoE,kBAAO;UAC5BhC,OAAO,EAAEhE,UAAU;UACnBiE,cAAc,EAAEhE;QAClB,CAAC;QACDgC,IAAI,EAAEC,kBAAW,CAACC;MACpB,CAAC;MAEDnD,aAAa,CAACkG,eAAe,CAC3B7C,mBAAY,CAAC8C,WAAW,EACxBjD,kBAAW,CAACC,UAAU,EACtBnC,UAAU,EACVC,iBACF,CAAC;MAEDO,MAAM,CAAClB,sBAAsB,CAAC,CAACkD,kBAAkB,CAACH,mBAAY,CAAC8C,WAAW,EAAErE,YAAY,CAAC;IAC3F,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"names":["_testUtil","require","_index","_types","_constants","_CallingDeviceError","_types2","_types3","_Logger","_interopRequireDefault","_CallError","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","webex","getTestUtilsWebex","describe","metricManager","getMetricManager","ServiceIndicator","CALLING","mockDeviceInfo","getMockDeviceInfo","mockSubmitClientMetric","jest","fn","MOCK_VERSION_NUMBER","originalEnv","process","env","internal","metrics","submitClientMetrics","mockCallId","mockCorrelationId","mockCallAction","mockMediaAction","beforeEach","mockClear","CALLING_SDK_VERSION","it","expect","not","toBeNull","toBeUndefined","setDeviceInfo","toEqual","expectedData","tags","action","REG_ACTION","REGISTER","device_id","device","deviceId","service_indicator","fields","device_url","clientDeviceUri","mobius_url","uri","calling_sdk_version","type","METRIC_TYPE","BEHAVIORAL","submitRegistrationMetric","METRIC_EVENT","REGISTRATION","undefined","toBeCalledOnceWith","clientError","createClientError","ERROR_TYPE","DEFAULT","RegistrationStatus","INACTIVE","err","context","message","SERVICE_UNAVAILABLE","setError","error","getError","error_type","REGISTRATION_ERROR","logSpy","spyOn","log","OPERATIONAL","toBeCalled","file","method","beforeAll","call_id","correlation_id","submitCallMetric","CALL","callError","createCallError","ERROR_LAYER","CALL_CONTROL","FORBIDDEN_ERROR","setCallError","getCallError","CALL_ERROR","mockSdp","local_media_details","remote_media_details","submitMediaMetric","MEDIA","MEDIA_ERROR","submitBNRMetric","BNR_ENABLED","BNR_DISABLED","expectedData1","VOICEMAIL_ACTION","GET_VOICEMAILS","submitVoicemailMetric","VOICEMAIL","expectedData2","message_id","DELETE","errorMessage","status_code","VOICEMAIL_ERROR","VERSION"],"sources":["index.test.ts"],"sourcesContent":["/* eslint-disable dot-notation */\nimport {getMockDeviceInfo, getTestUtilsWebex} from '../common/testUtil';\nimport {getMetricManager} from './index';\nimport {METRIC_TYPE, METRIC_EVENT, REG_ACTION, VOICEMAIL_ACTION} from './types';\nimport {VERSION} from '../CallingClient/constants';\nimport {createClientError} from '../Errors/catalog/CallingDeviceError';\nimport {CallErrorObject, ErrorObject, ERROR_LAYER, ERROR_TYPE} from '../Errors/types';\nimport {RegistrationStatus, ServiceIndicator} from '../common/types';\nimport log from '../Logger';\nimport {createCallError} from '../Errors/catalog/CallError';\n\nconst webex = getTestUtilsWebex();\n\ndescribe('CALLING: Metric tests', () => {\n const metricManager = getMetricManager(webex, ServiceIndicator.CALLING);\n const mockDeviceInfo = getMockDeviceInfo();\n const mockSubmitClientMetric = jest.fn();\n const MOCK_VERSION_NUMBER = '1.0.0';\n const originalEnv = process.env;\n\n webex.internal.metrics.submitClientMetrics = mockSubmitClientMetric;\n\n const mockCallId = '123456';\n const mockCorrelationId = '0931237';\n const mockCallAction = 'S_SEND_CALL_SETUP';\n const mockMediaAction = 'S_SEND_ROAP_OFFER';\n\n beforeEach(() => {\n mockSubmitClientMetric.mockClear();\n process.env = {\n ...originalEnv,\n CALLING_SDK_VERSION: MOCK_VERSION_NUMBER,\n };\n });\n\n it('initialize metric manager', () => {\n expect(metricManager).not.toBeNull();\n expect(metricManager['deviceInfo']).toBeUndefined();\n });\n\n it('update deviceInfo in metric manager', () => {\n expect(metricManager['deviceInfo']).toBeUndefined();\n metricManager.setDeviceInfo(mockDeviceInfo);\n expect(metricManager['deviceInfo']).toEqual(mockDeviceInfo);\n });\n\n describe('CallingClient metric tests', () => {\n it('submit registration success metric', () => {\n metricManager.setDeviceInfo(mockDeviceInfo);\n\n const expectedData = {\n tags: {\n action: REG_ACTION.REGISTER,\n device_id: mockDeviceInfo.device.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n mobius_url: mockDeviceInfo.device.uri,\n calling_sdk_version: MOCK_VERSION_NUMBER,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitRegistrationMetric(\n METRIC_EVENT.REGISTRATION,\n REG_ACTION.REGISTER,\n METRIC_TYPE.BEHAVIORAL,\n undefined\n );\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.REGISTRATION, expectedData);\n });\n\n it('submit registration failure metric', () => {\n metricManager.setDeviceInfo(mockDeviceInfo);\n\n const clientError = createClientError(\n '',\n {},\n ERROR_TYPE.DEFAULT,\n RegistrationStatus.INACTIVE\n );\n const err = <ErrorObject>{};\n\n err.context = {};\n err.message = 'Unknown Error';\n err.type = ERROR_TYPE.SERVICE_UNAVAILABLE;\n\n clientError.setError(err);\n\n const expectedData = {\n tags: {\n action: REG_ACTION.REGISTER,\n device_id: mockDeviceInfo.device.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n mobius_url: mockDeviceInfo.device.uri,\n calling_sdk_version: MOCK_VERSION_NUMBER,\n error: clientError.getError().message,\n error_type: clientError.getError().type,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitRegistrationMetric(\n METRIC_EVENT.REGISTRATION_ERROR,\n REG_ACTION.REGISTER,\n METRIC_TYPE.BEHAVIORAL,\n clientError\n );\n expect(mockSubmitClientMetric).toBeCalledOnceWith(\n METRIC_EVENT.REGISTRATION_ERROR,\n expectedData\n );\n });\n\n it('submit unknown registration metric', () => {\n const logSpy = jest.spyOn(log, 'warn');\n\n metricManager.submitRegistrationMetric(\n 'invalidMetricName' as unknown as METRIC_EVENT,\n REG_ACTION.REGISTER,\n METRIC_TYPE.OPERATIONAL,\n undefined\n );\n\n expect(mockSubmitClientMetric).not.toBeCalled();\n expect(logSpy).toBeCalledOnceWith(\n 'Invalid metric name received. Rejecting request to submit metric.',\n {\n file: 'metric',\n method: 'submitRegistrationMetric',\n }\n );\n });\n });\n\n describe('Call Metric tests', () => {\n beforeAll(() => {\n metricManager.setDeviceInfo(mockDeviceInfo);\n });\n\n it('submit call success metric', () => {\n const expectedData = {\n tags: {\n action: mockCallAction,\n device_id: mockDeviceInfo.device.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n mobius_url: mockDeviceInfo.device.uri,\n calling_sdk_version: MOCK_VERSION_NUMBER,\n call_id: mockCallId,\n correlation_id: mockCorrelationId,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitCallMetric(\n METRIC_EVENT.CALL,\n mockCallAction,\n METRIC_TYPE.BEHAVIORAL,\n mockCallId,\n mockCorrelationId\n );\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.CALL, expectedData);\n });\n\n it('submit call failure metric', () => {\n const callError = createCallError(\n '',\n {},\n ERROR_TYPE.DEFAULT,\n mockCorrelationId,\n ERROR_LAYER.CALL_CONTROL\n );\n\n const err = <CallErrorObject>{};\n\n err.context = {};\n err.message =\n 'An invalid status update has been received for the call. Wait a moment and try again.';\n err.type = ERROR_TYPE.FORBIDDEN_ERROR;\n\n callError.setCallError(err);\n\n const expectedData = {\n tags: {\n action: mockCallAction,\n device_id: mockDeviceInfo.device.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n mobius_url: mockDeviceInfo.device.uri,\n calling_sdk_version: MOCK_VERSION_NUMBER,\n call_id: mockCallId,\n correlation_id: mockCorrelationId,\n error: callError.getCallError().message,\n error_type: callError.getCallError().type,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitCallMetric(\n METRIC_EVENT.CALL_ERROR,\n mockCallAction,\n METRIC_TYPE.BEHAVIORAL,\n mockCallId,\n mockCorrelationId,\n callError\n );\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.CALL_ERROR, expectedData);\n });\n\n it('submit unknown call metric', () => {\n const logSpy = jest.spyOn(log, 'warn');\n\n metricManager.submitCallMetric(\n 'invalidMetricName' as unknown as METRIC_EVENT,\n mockCallAction,\n METRIC_TYPE.OPERATIONAL,\n mockCallId,\n mockCorrelationId\n );\n\n expect(mockSubmitClientMetric).not.toBeCalled();\n expect(logSpy).toBeCalledOnceWith(\n 'Invalid metric name received. Rejecting request to submit metric.',\n {\n file: 'metric',\n method: 'submitCallMetric',\n }\n );\n });\n });\n\n describe('Media Metric tests', () => {\n const mockSdp = 'sdpInformation';\n\n beforeAll(() => {\n metricManager.setDeviceInfo(mockDeviceInfo);\n });\n\n it('submit media success metric', () => {\n const expectedData = {\n tags: {\n action: mockMediaAction,\n device_id: mockDeviceInfo.device.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n mobius_url: mockDeviceInfo.device.uri,\n calling_sdk_version: MOCK_VERSION_NUMBER,\n call_id: mockCallId,\n correlation_id: mockCorrelationId,\n local_media_details: mockSdp,\n remote_media_details: mockSdp,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitMediaMetric(\n METRIC_EVENT.MEDIA,\n mockMediaAction,\n METRIC_TYPE.BEHAVIORAL,\n mockCallId,\n mockCorrelationId,\n mockSdp,\n mockSdp\n );\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.MEDIA, expectedData);\n });\n\n it('submit media failure metric', () => {\n const callError = createCallError(\n '',\n {},\n ERROR_TYPE.DEFAULT,\n mockCorrelationId,\n ERROR_LAYER.MEDIA\n );\n\n const err = <CallErrorObject>{};\n\n err.context = {};\n err.message =\n 'An error occurred while parsing the provided information. Wait a moment and try again.';\n err.type = ERROR_TYPE.SERVICE_UNAVAILABLE;\n\n callError.setCallError(err);\n\n const expectedData = {\n tags: {\n action: mockMediaAction,\n device_id: mockDeviceInfo.device.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n mobius_url: mockDeviceInfo.device.uri,\n calling_sdk_version: MOCK_VERSION_NUMBER,\n call_id: mockCallId,\n correlation_id: mockCorrelationId,\n local_media_details: mockSdp,\n remote_media_details: mockSdp,\n error: callError.getCallError().message,\n error_type: callError.getCallError().type,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitMediaMetric(\n METRIC_EVENT.MEDIA_ERROR,\n mockMediaAction,\n METRIC_TYPE.BEHAVIORAL,\n mockCallId,\n mockCorrelationId,\n mockSdp,\n mockSdp,\n callError\n );\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.MEDIA_ERROR, expectedData);\n });\n\n it('submit unknown media metric', () => {\n const logSpy = jest.spyOn(log, 'warn');\n\n metricManager.submitMediaMetric(\n 'invalidMetricName' as unknown as METRIC_EVENT,\n mockMediaAction,\n METRIC_TYPE.OPERATIONAL,\n mockCallId,\n mockCorrelationId,\n mockSdp,\n mockSdp\n );\n\n expect(mockSubmitClientMetric).not.toBeCalled();\n expect(logSpy).toBeCalledOnceWith(\n 'Invalid metric name received. Rejecting request to submit metric.',\n {\n file: 'metric',\n method: 'submitMediaMetric',\n }\n );\n });\n });\n\n describe('BNR metric tests', () => {\n beforeAll(() => {\n metricManager.setDeviceInfo(mockDeviceInfo);\n });\n\n it('submit bnr enabled metric', () => {\n const expectedData = {\n tags: {\n device_id: mockDeviceInfo.device.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n mobius_url: mockDeviceInfo.device.uri,\n calling_sdk_version: MOCK_VERSION_NUMBER,\n call_id: mockCallId,\n correlation_id: mockCorrelationId,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitBNRMetric(\n METRIC_EVENT.BNR_ENABLED,\n METRIC_TYPE.BEHAVIORAL,\n mockCallId,\n mockCorrelationId\n );\n\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.BNR_ENABLED, expectedData);\n });\n\n it('submit bnr disabled metric', () => {\n const expectedData = {\n tags: {\n device_id: mockDeviceInfo.device.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n mobius_url: mockDeviceInfo.device.uri,\n calling_sdk_version: MOCK_VERSION_NUMBER,\n call_id: mockCallId,\n correlation_id: mockCorrelationId,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitBNRMetric(\n METRIC_EVENT.BNR_DISABLED,\n METRIC_TYPE.BEHAVIORAL,\n mockCallId,\n mockCorrelationId\n );\n\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.BNR_DISABLED, expectedData);\n });\n\n it('submit unknown bnr metric', () => {\n const logSpy = jest.spyOn(log, 'warn');\n\n metricManager.submitBNRMetric(\n 'invalidMetricName' as unknown as METRIC_EVENT,\n METRIC_TYPE.BEHAVIORAL,\n mockCallId,\n mockCorrelationId\n );\n\n expect(mockSubmitClientMetric).not.toBeCalled();\n expect(logSpy).toBeCalledOnceWith(\n 'Invalid metric name received. Rejecting request to submit metric.',\n {\n file: 'metric',\n method: 'submitBNRMetric',\n }\n );\n });\n });\n\n describe('Voicemail metric tests', () => {\n beforeAll(() => metricManager.setDeviceInfo(mockDeviceInfo));\n\n it('submit voicemail success metric', () => {\n const expectedData1 = {\n tags: {\n action: VOICEMAIL_ACTION.GET_VOICEMAILS,\n device_id: mockDeviceInfo.device.deviceId,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n calling_sdk_version: MOCK_VERSION_NUMBER,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitVoicemailMetric(\n METRIC_EVENT.VOICEMAIL,\n VOICEMAIL_ACTION.GET_VOICEMAILS,\n METRIC_TYPE.BEHAVIORAL\n );\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.VOICEMAIL, expectedData1);\n\n mockSubmitClientMetric.mockClear();\n\n const expectedData2 = {\n ...expectedData1,\n tags: {...expectedData1.tags, message_id: 'messageId', action: VOICEMAIL_ACTION.DELETE},\n };\n\n metricManager.submitVoicemailMetric(\n METRIC_EVENT.VOICEMAIL,\n VOICEMAIL_ACTION.DELETE,\n METRIC_TYPE.BEHAVIORAL,\n 'messageId'\n );\n\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.VOICEMAIL, expectedData2);\n });\n\n it('submit voicemail failure metric', () => {\n const errorMessage = 'User is not authenticated';\n const expectedData1 = {\n tags: {\n action: VOICEMAIL_ACTION.GET_VOICEMAILS,\n device_id: mockDeviceInfo.device.deviceId,\n message_id: undefined,\n error: errorMessage,\n status_code: 401,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n calling_sdk_version: MOCK_VERSION_NUMBER,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitVoicemailMetric(\n METRIC_EVENT.VOICEMAIL_ERROR,\n VOICEMAIL_ACTION.GET_VOICEMAILS,\n METRIC_TYPE.BEHAVIORAL,\n undefined,\n errorMessage,\n 401\n );\n expect(mockSubmitClientMetric).toBeCalledOnceWith(\n METRIC_EVENT.VOICEMAIL_ERROR,\n expectedData1\n );\n\n mockSubmitClientMetric.mockClear();\n\n const expectedData2 = {\n ...expectedData1,\n tags: {...expectedData1.tags, message_id: 'messageId', action: VOICEMAIL_ACTION.DELETE},\n };\n\n metricManager.submitVoicemailMetric(\n METRIC_EVENT.VOICEMAIL_ERROR,\n VOICEMAIL_ACTION.DELETE,\n METRIC_TYPE.BEHAVIORAL,\n 'messageId',\n errorMessage,\n 401\n );\n\n expect(mockSubmitClientMetric).toBeCalledOnceWith(\n METRIC_EVENT.VOICEMAIL_ERROR,\n expectedData2\n );\n });\n\n it('submit unknown voicemail metric', () => {\n const logSpy = jest.spyOn(log, 'warn');\n\n metricManager.submitVoicemailMetric(\n 'invalidMetricName' as unknown as METRIC_EVENT,\n VOICEMAIL_ACTION.GET_VOICEMAILS,\n METRIC_TYPE.BEHAVIORAL\n );\n\n expect(mockSubmitClientMetric).not.toBeCalled();\n expect(logSpy).toBeCalledOnceWith(\n 'Invalid metric name received. Rejecting request to submit metric.',\n {\n file: 'metric',\n method: 'submitVoicemailMetric',\n }\n );\n });\n });\n\n describe('Calling_Sdk_Version fallback test', () => {\n it('submit metric with fallback version', () => {\n process.env = {};\n metricManager.setDeviceInfo(mockDeviceInfo);\n const expectedData = {\n tags: {\n device_id: mockDeviceInfo.device.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n mobius_url: mockDeviceInfo.device.uri,\n calling_sdk_version: VERSION,\n call_id: mockCallId,\n correlation_id: mockCorrelationId,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitBNRMetric(\n METRIC_EVENT.BNR_ENABLED,\n METRIC_TYPE.BEHAVIORAL,\n mockCallId,\n mockCorrelationId\n );\n\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.BNR_ENABLED, expectedData);\n });\n });\n});\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"names":["METRIC_TYPE","exports","METRIC_EVENT","REG_ACTION","TRANSFER_ACTION","VOICEMAIL_ACTION","UPLOAD_LOGS_ACTION"],"sources":["types.ts"],"sourcesContent":["import {LineError} from '../Errors/catalog/LineError';\nimport {CallError, CallingClientError} from '../Errors';\nimport {CallId, CorrelationId, IDeviceInfo} 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 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 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}\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 interface IMetricManager {\n setDeviceInfo: (deviceInfo: IDeviceInfo) => void;\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 submitBNRMetric: (\n name: METRIC_EVENT,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId\n ) => void;\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 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 submitVoicemailMetric: (\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n messageId?: string,\n voicemailError?: string,\n statusCode?: number\n ) => void;\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 ) => 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;EAAA,OAAZA,YAAY;AAAA;AAAA,IAeZC,UAAU,GAAAF,OAAA,CAAAE,UAAA,0BAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAA,OAAVA,UAAU;AAAA;AAAA,IAMVC,eAAe,GAAAH,OAAA,CAAAG,eAAA,0BAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAAA,IAKfC,gBAAgB,GAAAJ,OAAA,CAAAI,gBAAA,0BAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAA,OAAhBA,gBAAgB;AAAA;AAYrB,IAAMC,kBAAkB,GAAAL,OAAA,CAAAK,kBAAA,GAAG,aAAa"}
1
+ {"version":3,"names":["METRIC_TYPE","exports","METRIC_EVENT","REG_ACTION","TRANSFER_ACTION","VOICEMAIL_ACTION","UPLOAD_LOGS_ACTION"],"sources":["types.ts"],"sourcesContent":["import {LineError} from '../Errors/catalog/LineError';\nimport {CallError, CallingClientError} from '../Errors';\nimport {CallId, CorrelationId, IDeviceInfo} 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 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 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}\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 const UPLOAD_LOGS_ACTION = 'upload_logs';\n\nexport interface IMetricManager {\n setDeviceInfo: (deviceInfo: IDeviceInfo) => void;\n submitRegistrationMetric: (\n name: METRIC_EVENT,\n metricAction: REG_ACTION,\n type: METRIC_TYPE,\n error: LineError | CallingClientError | undefined\n ) => void;\n submitBNRMetric: (\n name: METRIC_EVENT,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId\n ) => void;\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 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 submitVoicemailMetric: (\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n messageId?: string,\n voicemailError?: string,\n statusCode?: number\n ) => void;\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 ) => 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;EAAA,OAAZA,YAAY;AAAA;AAAA,IAeZC,UAAU,GAAAF,OAAA,CAAAE,UAAA,0BAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAA,OAAVA,UAAU;AAAA;AAAA,IAMVC,eAAe,GAAAH,OAAA,CAAAG,eAAA,0BAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAAA,IAKfC,gBAAgB,GAAAJ,OAAA,CAAAI,gBAAA,0BAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAA,OAAhBA,gBAAgB;AAAA;AAUrB,IAAMC,kBAAkB,GAAAL,OAAA,CAAAK,kBAAA,GAAG,aAAa"}
@@ -239,102 +239,101 @@ function _handleRegistrationErrors() {
239
239
  finalError = false;
240
240
  _Logger.default.warn("Status code: -> ".concat(errorCode), loggerContext);
241
241
  _context.t0 = errorCode;
242
- _context.next = _context.t0 === _types2.ERROR_CODE.BAD_REQUEST ? 7 : _context.t0 === _types2.ERROR_CODE.UNAUTHORIZED ? 12 : _context.t0 === _types2.ERROR_CODE.DEVICE_NOT_FOUND ? 17 : _context.t0 === _types2.ERROR_CODE.TOO_MANY_REQUESTS ? 22 : _context.t0 === _types2.ERROR_CODE.INTERNAL_SERVER_ERROR ? 27 : _context.t0 === _types2.ERROR_CODE.SERVICE_UNAVAILABLE ? 31 : _context.t0 === _types2.ERROR_CODE.FORBIDDEN ? 35 : 70;
242
+ _context.next = _context.t0 === _types2.ERROR_CODE.BAD_REQUEST ? 7 : _context.t0 === _types2.ERROR_CODE.UNAUTHORIZED ? 12 : _context.t0 === _types2.ERROR_CODE.DEVICE_NOT_FOUND ? 17 : _context.t0 === _types2.ERROR_CODE.TOO_MANY_REQUESTS ? 22 : _context.t0 === _types2.ERROR_CODE.INTERNAL_SERVER_ERROR ? 26 : _context.t0 === _types2.ERROR_CODE.SERVICE_UNAVAILABLE ? 30 : _context.t0 === _types2.ERROR_CODE.FORBIDDEN ? 34 : 69;
243
243
  break;
244
244
  case 7:
245
245
  finalError = true;
246
246
  _Logger.default.warn("400 Bad Request", loggerContext);
247
- updateLineErrorContext(loggerContext, _types2.ERROR_TYPE.BAD_REQUEST, 'Invalid input. Please verify the required parameters, sign out and then sign back in with the valid data', _types3.RegistrationStatus.INACTIVE, lineError);
247
+ updateLineErrorContext(loggerContext, _types2.ERROR_TYPE.SERVER_ERROR, 'Invalid input. Please verify the required parameters, sign out and then sign back in with the valid data', _types3.RegistrationStatus.INACTIVE, lineError);
248
248
  emitterCb(lineError, finalError);
249
- return _context.abrupt("break", 73);
249
+ return _context.abrupt("break", 72);
250
250
  case 12:
251
251
  // Return it to the Caller
252
252
  finalError = true;
253
253
  _Logger.default.warn("401 Unauthorized", loggerContext);
254
254
  updateLineErrorContext(loggerContext, _types2.ERROR_TYPE.TOKEN_ERROR, 'User is unauthorized due to an expired token. Sign out, then sign back in.', _types3.RegistrationStatus.INACTIVE, lineError);
255
255
  emitterCb(lineError, finalError);
256
- return _context.abrupt("break", 73);
256
+ return _context.abrupt("break", 72);
257
257
  case 17:
258
258
  finalError = true;
259
259
  _Logger.default.warn("404 Device Not Found", loggerContext);
260
260
  updateLineErrorContext(loggerContext, _types2.ERROR_TYPE.NOT_FOUND, 'Webex Calling is unable to find your device. Sign out, then sign back in', _types3.RegistrationStatus.INACTIVE, lineError);
261
261
  emitterCb(lineError, finalError);
262
- return _context.abrupt("break", 73);
262
+ return _context.abrupt("break", 72);
263
263
  case 22:
264
264
  _Logger.default.warn("429 Too Many Requests", loggerContext);
265
- updateLineErrorContext(loggerContext, _types2.ERROR_TYPE.TOO_MANY_REQUESTS, 'Server is handling too many request at the time. Wait a moment and try again', _types3.RegistrationStatus.INACTIVE, lineError);
266
265
  caller = loggerContext.method || 'handleErrors';
267
266
  if (retry429Cb && err.headers) {
268
267
  retryAfter = Number(err.headers['retry-after']);
269
268
  retry429Cb(retryAfter, caller);
270
269
  }
271
- return _context.abrupt("break", 73);
272
- case 27:
270
+ return _context.abrupt("break", 72);
271
+ case 26:
273
272
  _Logger.default.warn("500 Internal Server Error", loggerContext);
274
273
  updateLineErrorContext(loggerContext, _types2.ERROR_TYPE.SERVER_ERROR, 'An unknown error occurred while placing the request. Wait a moment and try again.', _types3.RegistrationStatus.INACTIVE, lineError);
275
274
  emitterCb(lineError, finalError);
276
- return _context.abrupt("break", 73);
277
- case 31:
275
+ return _context.abrupt("break", 72);
276
+ case 30:
278
277
  _Logger.default.warn("503 Service Unavailable", loggerContext);
279
278
  updateLineErrorContext(loggerContext, _types2.ERROR_TYPE.SERVICE_UNAVAILABLE, 'An error occurred on the server while processing the request. Wait a moment and try again.', _types3.RegistrationStatus.INACTIVE, lineError);
280
279
  emitterCb(lineError, finalError);
281
- return _context.abrupt("break", 73);
282
- case 35:
280
+ return _context.abrupt("break", 72);
281
+ case 34:
283
282
  _Logger.default.warn("403 Forbidden", loggerContext);
284
283
  errorBody = err.body;
285
284
  if (errorBody) {
286
- _context.next = 42;
285
+ _context.next = 41;
287
286
  break;
288
287
  }
289
288
  _Logger.default.warn('Error response has no body, throwing default error', loggerContext);
290
289
  updateLineErrorContext(loggerContext, _types2.ERROR_TYPE.FORBIDDEN_ERROR, 'An unauthorized action has been received. This action has been blocked. Please contact the administrator if this persists.', _types3.RegistrationStatus.INACTIVE, lineError);
291
290
  emitterCb(lineError, finalError);
292
291
  return _context.abrupt("return", finalError);
293
- case 42:
292
+ case 41:
294
293
  code = Number(errorBody.errorCode);
295
294
  _Logger.default.warn("Error code found : ".concat(code), loggerContext);
296
295
  _context.t1 = code;
297
- _context.next = _context.t1 === _types2.DEVICE_ERROR_CODE.DEVICE_LIMIT_EXCEEDED ? 47 : _context.t1 === _types2.DEVICE_ERROR_CODE.DEVICE_CREATION_DISABLED ? 54 : _context.t1 === _types2.DEVICE_ERROR_CODE.DEVICE_CREATION_FAILED ? 60 : 65;
296
+ _context.next = _context.t1 === _types2.DEVICE_ERROR_CODE.DEVICE_LIMIT_EXCEEDED ? 46 : _context.t1 === _types2.DEVICE_ERROR_CODE.DEVICE_CREATION_DISABLED ? 53 : _context.t1 === _types2.DEVICE_ERROR_CODE.DEVICE_CREATION_FAILED ? 59 : 64;
298
297
  break;
299
- case 47:
298
+ case 46:
300
299
  errorMessage = 'User device limit exceeded';
301
300
  _Logger.default.warn(errorMessage, loggerContext);
302
301
  if (!restoreRegCb) {
303
- _context.next = 53;
302
+ _context.next = 52;
304
303
  break;
305
304
  }
306
305
  _caller = loggerContext.method || 'handleErrors';
307
- _context.next = 53;
306
+ _context.next = 52;
308
307
  return restoreRegCb(errorBody, _caller);
308
+ case 52:
309
+ return _context.abrupt("break", 68);
309
310
  case 53:
310
- return _context.abrupt("break", 69);
311
- case 54:
312
311
  _errorMessage = 'User is not configured for WebRTC calling. Please contact the administrator to resolve this issue.';
313
312
  finalError = true;
314
313
  updateLineErrorContext(loggerContext, _types2.ERROR_TYPE.FORBIDDEN_ERROR, _errorMessage, _types3.RegistrationStatus.INACTIVE, lineError);
315
314
  _Logger.default.warn(_errorMessage, loggerContext);
316
315
  emitterCb(lineError, true);
317
- return _context.abrupt("break", 69);
318
- case 60:
316
+ return _context.abrupt("break", 68);
317
+ case 59:
319
318
  _errorMessage2 = 'An unknown error occurred while provisioning the device. Wait a moment and try again.';
320
319
  updateLineErrorContext(loggerContext, _types2.ERROR_TYPE.FORBIDDEN_ERROR, _errorMessage2, _types3.RegistrationStatus.INACTIVE, lineError);
321
320
  _Logger.default.warn(_errorMessage2, loggerContext);
322
321
  emitterCb(lineError, finalError);
323
- return _context.abrupt("break", 69);
324
- case 65:
322
+ return _context.abrupt("break", 68);
323
+ case 64:
325
324
  _errorMessage3 = 'An unknown error occurred. Wait a moment and try again. Please contact the administrator if the problem persists.';
326
325
  updateLineErrorContext(loggerContext, _types2.ERROR_TYPE.FORBIDDEN_ERROR, _errorMessage3, _types3.RegistrationStatus.INACTIVE, lineError);
327
326
  _Logger.default.warn(_errorMessage3, loggerContext);
328
327
  emitterCb(lineError, finalError);
328
+ case 68:
329
+ return _context.abrupt("break", 72);
329
330
  case 69:
330
- return _context.abrupt("break", 73);
331
- case 70:
332
331
  updateLineErrorContext(loggerContext, _types2.ERROR_TYPE.DEFAULT, 'Unknown error', _types3.RegistrationStatus.INACTIVE, lineError);
333
332
  _Logger.default.warn("Unknown Error", loggerContext);
334
333
  emitterCb(lineError, finalError);
335
- case 73:
334
+ case 72:
336
335
  return _context.abrupt("return", finalError);
337
- case 74:
336
+ case 73:
338
337
  case "end":
339
338
  return _context.stop();
340
339
  }