@webex/calling 3.12.0-next.4 → 3.12.0-next.40
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/CallingClient/CallingClient.js +463 -205
- package/dist/CallingClient/CallingClient.js.map +1 -1
- package/dist/CallingClient/CallingClient.test.js +170 -77
- package/dist/CallingClient/CallingClient.test.js.map +1 -1
- package/dist/CallingClient/calling/call.js +589 -445
- package/dist/CallingClient/calling/call.js.map +1 -1
- package/dist/CallingClient/calling/call.test.js +695 -445
- package/dist/CallingClient/calling/call.test.js.map +1 -1
- package/dist/CallingClient/calling/callManager.js +53 -30
- package/dist/CallingClient/calling/callManager.js.map +1 -1
- package/dist/CallingClient/calling/callManager.test.js +35 -0
- package/dist/CallingClient/calling/callManager.test.js.map +1 -1
- package/dist/CallingClient/calling/types.js +2 -0
- package/dist/CallingClient/calling/types.js.map +1 -1
- package/dist/CallingClient/constants.js +25 -3
- package/dist/CallingClient/constants.js.map +1 -1
- package/dist/CallingClient/line/index.js +4 -1
- package/dist/CallingClient/line/index.js.map +1 -1
- package/dist/CallingClient/line/line.test.js +16 -1
- package/dist/CallingClient/line/line.test.js.map +1 -1
- package/dist/CallingClient/registration/register.js +712 -406
- package/dist/CallingClient/registration/register.js.map +1 -1
- package/dist/CallingClient/registration/register.test.js +202 -21
- package/dist/CallingClient/registration/register.test.js.map +1 -1
- package/dist/CallingClient/registration/types.js.map +1 -1
- package/dist/CallingClient/registration/webWorker.js +41 -104
- package/dist/CallingClient/registration/webWorker.js.map +1 -1
- package/dist/CallingClient/registration/webWorker.test.js +39 -153
- package/dist/CallingClient/registration/webWorker.test.js.map +1 -1
- package/dist/CallingClient/registration/webWorkerStr.js +1 -1
- package/dist/CallingClient/registration/webWorkerStr.js.map +1 -1
- package/dist/CallingClient/utils/constants.js +46 -0
- package/dist/CallingClient/utils/constants.js.map +1 -0
- package/dist/CallingClient/utils/index.js +63 -0
- package/dist/CallingClient/utils/index.js.map +1 -0
- package/dist/CallingClient/utils/mobiusSocketMapper.js +122 -0
- package/dist/CallingClient/utils/mobiusSocketMapper.js.map +1 -0
- package/dist/CallingClient/utils/mobiusSocketMapper.test.js +211 -0
- package/dist/CallingClient/utils/mobiusSocketMapper.test.js.map +1 -0
- package/dist/CallingClient/utils/request.js +354 -0
- package/dist/CallingClient/utils/request.js.map +1 -0
- package/dist/CallingClient/utils/request.test.js +881 -0
- package/dist/CallingClient/utils/request.test.js.map +1 -0
- package/dist/CallingClient/utils/types.js +7 -0
- package/dist/CallingClient/utils/types.js.map +1 -0
- package/dist/CallingClient/utils/wsFeatureFlag.js +70 -0
- package/dist/CallingClient/utils/wsFeatureFlag.js.map +1 -0
- package/dist/CallingClient/utils/wsFeatureFlag.test.js +139 -0
- package/dist/CallingClient/utils/wsFeatureFlag.test.js.map +1 -0
- package/dist/Contacts/ContactsClient.js +13 -11
- package/dist/Contacts/ContactsClient.js.map +1 -1
- package/dist/Contacts/ContactsClient.test.js +3 -8
- package/dist/Contacts/ContactsClient.test.js.map +1 -1
- package/dist/Events/types.js +1 -11
- package/dist/Events/types.js.map +1 -1
- package/dist/Metrics/index.js +63 -2
- package/dist/Metrics/index.js.map +1 -1
- package/dist/Metrics/index.test.js +357 -1
- package/dist/Metrics/index.test.js.map +1 -1
- package/dist/Metrics/types.js +19 -1
- package/dist/Metrics/types.js.map +1 -1
- package/dist/SDKConnector/types.js.map +1 -1
- package/dist/common/Utils.js +138 -44
- package/dist/common/Utils.js.map +1 -1
- package/dist/common/testUtil.js +8 -4
- package/dist/common/testUtil.js.map +1 -1
- package/dist/common/types.js +2 -0
- package/dist/common/types.js.map +1 -1
- package/dist/mobius-socket/config.js +24 -0
- package/dist/mobius-socket/config.js.map +1 -0
- package/dist/mobius-socket/errors.js +143 -0
- package/dist/mobius-socket/errors.js.map +1 -0
- package/dist/mobius-socket/errors.test.js +20 -0
- package/dist/mobius-socket/errors.test.js.map +1 -0
- package/dist/mobius-socket/index.js +57 -0
- package/dist/mobius-socket/index.js.map +1 -0
- package/dist/mobius-socket/mobius-socket-events.test.js +492 -0
- package/dist/mobius-socket/mobius-socket-events.test.js.map +1 -0
- package/dist/mobius-socket/mobius-socket.js +841 -0
- package/dist/mobius-socket/mobius-socket.js.map +1 -0
- package/dist/mobius-socket/mobius-socket.test.js +1845 -0
- package/dist/mobius-socket/mobius-socket.test.js.map +1 -0
- package/dist/mobius-socket/socket/constants.js +55 -0
- package/dist/mobius-socket/socket/constants.js.map +1 -0
- package/dist/mobius-socket/socket/index.js +15 -0
- package/dist/mobius-socket/socket/index.js.map +1 -0
- package/dist/mobius-socket/socket/socket-base.js +604 -0
- package/dist/mobius-socket/socket/socket-base.js.map +1 -0
- package/dist/mobius-socket/socket/socket.js +19 -0
- package/dist/mobius-socket/socket/socket.js.map +1 -0
- package/dist/mobius-socket/socket/socket.shim.js +26 -0
- package/dist/mobius-socket/socket/socket.shim.js.map +1 -0
- package/dist/mobius-socket/socket/types.js +7 -0
- package/dist/mobius-socket/socket/types.js.map +1 -0
- package/dist/mobius-socket/socket.test.js +727 -0
- package/dist/mobius-socket/socket.test.js.map +1 -0
- package/dist/mobius-socket/test/mocha-helpers.js +23 -0
- package/dist/mobius-socket/test/mocha-helpers.js.map +1 -0
- package/dist/mobius-socket/test/promise-tick.js +28 -0
- package/dist/mobius-socket/test/promise-tick.js.map +1 -0
- package/dist/mobius-socket/types.js +7 -0
- package/dist/mobius-socket/types.js.map +1 -0
- package/dist/module/CallingClient/CallingClient.js +141 -10
- package/dist/module/CallingClient/calling/call.js +177 -61
- package/dist/module/CallingClient/calling/callManager.js +27 -7
- package/dist/module/CallingClient/calling/types.js +2 -0
- package/dist/module/CallingClient/constants.js +21 -0
- package/dist/module/CallingClient/line/index.js +2 -2
- package/dist/module/CallingClient/registration/register.js +234 -62
- package/dist/module/CallingClient/registration/webWorker.js +42 -61
- package/dist/module/CallingClient/registration/webWorkerStr.js +47 -82
- package/dist/module/CallingClient/utils/constants.js +30 -0
- package/dist/module/CallingClient/utils/index.js +5 -0
- package/dist/module/CallingClient/utils/mobiusSocketMapper.js +72 -0
- package/dist/module/CallingClient/utils/request.js +165 -0
- package/dist/module/CallingClient/utils/types.js +1 -0
- package/dist/module/CallingClient/utils/wsFeatureFlag.js +41 -0
- package/dist/module/Contacts/ContactsClient.js +1 -1
- package/dist/module/Events/types.js +0 -10
- package/dist/module/Metrics/index.js +48 -1
- package/dist/module/Metrics/types.js +18 -0
- package/dist/module/common/Utils.js +52 -12
- package/dist/module/common/testUtil.js +5 -1
- package/dist/module/common/types.js +2 -0
- package/dist/module/mobius-socket/config.js +15 -0
- package/dist/module/mobius-socket/errors.js +58 -0
- package/dist/module/mobius-socket/index.js +24 -0
- package/dist/module/mobius-socket/mobius-socket.js +589 -0
- package/dist/module/mobius-socket/socket/constants.js +26 -0
- package/dist/module/mobius-socket/socket/index.js +4 -0
- package/dist/module/mobius-socket/socket/socket-base.js +368 -0
- package/dist/module/mobius-socket/socket/socket.js +9 -0
- package/dist/module/mobius-socket/socket/socket.shim.js +12 -0
- package/dist/module/mobius-socket/socket/types.js +1 -0
- package/dist/module/mobius-socket/types.js +1 -0
- package/dist/types/CallingClient/CallingClient.d.ts +7 -0
- package/dist/types/CallingClient/CallingClient.d.ts.map +1 -1
- package/dist/types/CallingClient/calling/call.d.ts +12 -0
- package/dist/types/CallingClient/calling/call.d.ts.map +1 -1
- package/dist/types/CallingClient/calling/callManager.d.ts +3 -2
- package/dist/types/CallingClient/calling/callManager.d.ts.map +1 -1
- package/dist/types/CallingClient/calling/types.d.ts +34 -9
- package/dist/types/CallingClient/calling/types.d.ts.map +1 -1
- package/dist/types/CallingClient/constants.d.ts +21 -0
- package/dist/types/CallingClient/constants.d.ts.map +1 -1
- package/dist/types/CallingClient/line/index.d.ts +1 -1
- package/dist/types/CallingClient/line/index.d.ts.map +1 -1
- package/dist/types/CallingClient/registration/register.d.ts +7 -1
- package/dist/types/CallingClient/registration/register.d.ts.map +1 -1
- package/dist/types/CallingClient/registration/types.d.ts +4 -2
- package/dist/types/CallingClient/registration/types.d.ts.map +1 -1
- package/dist/types/CallingClient/registration/webWorker.d.ts.map +1 -1
- package/dist/types/CallingClient/registration/webWorkerStr.d.ts +1 -1
- package/dist/types/CallingClient/registration/webWorkerStr.d.ts.map +1 -1
- package/dist/types/CallingClient/utils/constants.d.ts +30 -0
- package/dist/types/CallingClient/utils/constants.d.ts.map +1 -0
- package/dist/types/CallingClient/utils/index.d.ts +6 -0
- package/dist/types/CallingClient/utils/index.d.ts.map +1 -0
- package/dist/types/CallingClient/utils/mobiusSocketMapper.d.ts +5 -0
- package/dist/types/CallingClient/utils/mobiusSocketMapper.d.ts.map +1 -0
- package/dist/types/CallingClient/utils/request.d.ts +24 -0
- package/dist/types/CallingClient/utils/request.d.ts.map +1 -0
- package/dist/types/CallingClient/utils/types.d.ts +29 -0
- package/dist/types/CallingClient/utils/types.d.ts.map +1 -0
- package/dist/types/CallingClient/utils/wsFeatureFlag.d.ts +4 -0
- package/dist/types/CallingClient/utils/wsFeatureFlag.d.ts.map +1 -0
- package/dist/types/Events/types.d.ts +4 -11
- package/dist/types/Events/types.d.ts.map +1 -1
- package/dist/types/Metrics/index.d.ts.map +1 -1
- package/dist/types/Metrics/types.d.ts +19 -2
- package/dist/types/Metrics/types.d.ts.map +1 -1
- package/dist/types/SDKConnector/types.d.ts +24 -0
- package/dist/types/SDKConnector/types.d.ts.map +1 -1
- package/dist/types/common/Utils.d.ts +9 -2
- package/dist/types/common/Utils.d.ts.map +1 -1
- package/dist/types/common/testUtil.d.ts +4 -1
- package/dist/types/common/testUtil.d.ts.map +1 -1
- package/dist/types/common/types.d.ts +3 -0
- package/dist/types/common/types.d.ts.map +1 -1
- package/dist/types/mobius-socket/config.d.ts +17 -0
- package/dist/types/mobius-socket/config.d.ts.map +1 -0
- package/dist/types/mobius-socket/errors.d.ts +32 -0
- package/dist/types/mobius-socket/errors.d.ts.map +1 -0
- package/dist/types/mobius-socket/index.d.ts +14 -0
- package/dist/types/mobius-socket/index.d.ts.map +1 -0
- package/dist/types/mobius-socket/mobius-socket.d.ts +48 -0
- package/dist/types/mobius-socket/mobius-socket.d.ts.map +1 -0
- package/dist/types/mobius-socket/socket/constants.d.ts +27 -0
- package/dist/types/mobius-socket/socket/constants.d.ts.map +1 -0
- package/dist/types/mobius-socket/socket/index.d.ts +5 -0
- package/dist/types/mobius-socket/socket/index.d.ts.map +1 -0
- package/dist/types/mobius-socket/socket/socket-base.d.ts +43 -0
- package/dist/types/mobius-socket/socket/socket-base.d.ts.map +1 -0
- package/dist/types/mobius-socket/socket/socket.d.ts +6 -0
- package/dist/types/mobius-socket/socket/socket.d.ts.map +1 -0
- package/dist/types/mobius-socket/socket/socket.shim.d.ts +6 -0
- package/dist/types/mobius-socket/socket/socket.shim.d.ts.map +1 -0
- package/dist/types/mobius-socket/socket/types.d.ts +61 -0
- package/dist/types/mobius-socket/socket/types.d.ts.map +1 -0
- package/dist/types/mobius-socket/types.d.ts +21 -0
- package/dist/types/mobius-socket/types.d.ts.map +1 -0
- package/package.json +20 -5
- package/src/mobius-socket/socket/socket.shim.ts +22 -0
- package/src/mobius-socket/socket/socket.ts +14 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_constants","require","_types","_types2","_Logger","_interopRequireDefault","ownKeys","e","r","t","_Object$keys","_Object$getOwnPropertySymbols","o","filter","_Object$getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","Object","forEach","_defineProperty2","default","_Object$getOwnPropertyDescriptors","_Object$defineProperties","_Object$defineProperty","metricManager","MetricManager","webex","indicator","_classCallCheck2","log","info","file","METRIC_FILE","serviceIndicator","_createClass2","key","value","submitConnectionMetrics","name","metricAction","type","downTimestamp","upTimestamp","_this$deviceInfo","_this$deviceInfo$devi","_this$deviceInfo2","_this$deviceInfo2$dev","_this$deviceInfo3","_this$deviceInfo3$dev","metricData","tags","device_id","deviceInfo","device","deviceId","service_indicator","fields","device_url","clientDeviceUri","mobius_url","uri","calling_sdk_version","process","env","CALLING_SDK_VERSION","VERSION","internal","metrics","submitClientMetrics","submitUploadLogsMetric","action","trackingId","feedbackId","correlationId","stack","callId","broadworksCorrelationInfo","_this$deviceInfo4","_this$deviceInfo4$dev","_this$deviceInfo5","_this$deviceInfo5$dev","_this$deviceInfo6","_this$deviceInfo6$dev","data","commonData","correlation_id","tracking_id","feedback_id","call_id","METRIC_EVENT","UPLOAD_LOGS_SUCCESS","UPLOAD_LOGS_FAILED","error","setDeviceInfo","submitRegionInfoMetric","mobiusHost","clientRegion","countryCode","_this$deviceInfo7","_this$deviceInfo7$dev","_this$deviceInfo8","_this$deviceInfo8$dev","_this$deviceInfo9","_this$deviceInfo9$dev","ServiceIndicator","CALLING","mobius_host","client_region","country_code","submitMobiusServersMetric","mobiusServers","_this$deviceInfo0","_this$deviceInfo0$dev","_this$deviceInfo1","_this$deviceInfo1$dev","_this$deviceInfo10","_this$deviceInfo10$de","primary_mobius_servers_region","primary","region","primary_mobius_servers_uris","uris","join","backup_mobius_servers_region","backup","backup_mobius_servers_uris","submitRegistrationMetric","caller","serverType","keepaliveCount","clientError","REGISTRATION","_this$deviceInfo11","_this$deviceInfo11$de","_this$deviceInfo12","_this$deviceInfo12$de","_this$deviceInfo13","_this$deviceInfo13$de","reg_source","server_type","REGISTRATION_ERROR","_this$deviceInfo14","_this$deviceInfo14$de","_this$deviceInfo15","_this$deviceInfo15$de","_this$deviceInfo16","_this$deviceInfo16$de","_errorData","_errorData2","errorData","msg","getError","message","error_type","KEEPALIVE_ERROR","_this$deviceInfo17","_this$deviceInfo17$de","_this$deviceInfo18","_this$deviceInfo18$de","_this$deviceInfo19","_this$deviceInfo19$de","_errorData4","_errorData5","keepalive_count","warn","method","submitCallMetric","callError","CALL","_this$deviceInfo20","_this$deviceInfo20$de","_this$deviceInfo21","_this$deviceInfo21$de","_this$deviceInfo22","_this$deviceInfo22$de","CALL_ERROR","_this$deviceInfo23","_this$deviceInfo23$de","_this$deviceInfo24","_this$deviceInfo24$de","_this$deviceInfo25","_this$deviceInfo25$de","getCallError","submitMediaMetric","localSdp","remoteSdp","MEDIA","_this$deviceInfo26","_this$deviceInfo26$de","_this$deviceInfo27","_this$deviceInfo27$de","_this$deviceInfo28","_this$deviceInfo28$de","local_media_details","remote_media_details","MEDIA_ERROR","_this$deviceInfo29","_this$deviceInfo29$de","_this$deviceInfo30","_this$deviceInfo30$de","_this$deviceInfo31","_this$deviceInfo31$de","submitVoicemailMetric","messageId","voicemailError","statusCode","VOICEMAIL","_this$deviceInfo32","_this$deviceInfo32$de","_this$deviceInfo33","_this$deviceInfo33$de","message_id","VOICEMAIL_ERROR","_this$deviceInfo34","_this$deviceInfo34$de","_this$deviceInfo35","_this$deviceInfo35$de","status_code","submitBNRMetric","BNR_ENABLED","BNR_DISABLED","_this$deviceInfo36","_this$deviceInfo36$de","_this$deviceInfo37","_this$deviceInfo37$de","_this$deviceInfo38","_this$deviceInfo38$de","getMetricManager","exports","_default"],"sources":["index.ts"],"sourcesContent":["import {CallError, CallingClientError} from '../Errors';\nimport {METRIC_FILE, VERSION} from '../CallingClient/constants';\nimport {CallId, CorrelationId, IDeviceInfo, MobiusServers, ServiceIndicator} from '../common/types';\nimport {WebexSDK} from '../SDKConnector/types';\nimport {\n REG_ACTION,\n IMetricManager,\n METRIC_TYPE,\n METRIC_EVENT,\n SERVER_TYPE,\n CONNECTION_ACTION,\n} from './types';\nimport {LineError} from '../Errors/catalog/LineError';\nimport log from '../Logger';\n\nlet metricManager: IMetricManager;\n\n/**\n *\n */\nclass MetricManager implements IMetricManager {\n private webex: WebexSDK;\n\n private deviceInfo?: IDeviceInfo;\n\n private serviceIndicator?: ServiceIndicator;\n\n /**\n * @param webex - Webex object used to send metrics.\n * @param indicator - Service Indicator.\n */\n public constructor(webex: WebexSDK, indicator?: ServiceIndicator) {\n log.info('Initializing metric manager...', {file: METRIC_FILE});\n this.webex = webex;\n this.serviceIndicator = indicator;\n }\n\n public submitConnectionMetrics(\n name: METRIC_EVENT,\n metricAction: CONNECTION_ACTION,\n type: METRIC_TYPE,\n downTimestamp: string,\n upTimestamp: string\n ) {\n const metricData = {\n tags: {\n metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n downTimestamp,\n upTimestamp,\n },\n type,\n };\n\n if (metricData) {\n this.webex.internal.metrics.submitClientMetrics(name, metricData);\n }\n }\n\n public submitUploadLogsMetric(\n name: METRIC_EVENT,\n action: string,\n type: METRIC_TYPE,\n trackingId?: string,\n feedbackId?: string,\n correlationId?: string,\n stack?: string,\n callId?: string,\n broadworksCorrelationInfo?: string\n ) {\n let data;\n\n const commonData = {\n tags: {\n action,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n correlation_id: correlationId,\n broadworksCorrelationInfo,\n tracking_id: trackingId,\n feedback_id: feedbackId,\n call_id: callId,\n },\n type,\n };\n\n switch (name) {\n case METRIC_EVENT.UPLOAD_LOGS_SUCCESS: {\n data = commonData;\n\n break;\n }\n\n case METRIC_EVENT.UPLOAD_LOGS_FAILED: {\n data = {\n ...commonData,\n fields: {\n ...commonData.fields,\n error: stack,\n },\n };\n\n break;\n }\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param deviceInfo - DeviceInfo object.\n */\n public setDeviceInfo(deviceInfo: IDeviceInfo) {\n this.deviceInfo = deviceInfo;\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param region - Region string.\n * @param trackingId - Tracking ID string.\n */\n public submitRegionInfoMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n mobiusHost: string,\n clientRegion: string,\n countryCode: string,\n trackingId?: string\n ) {\n const data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n mobius_host: mobiusHost,\n client_region: clientRegion,\n country_code: countryCode,\n tracking_id: trackingId,\n },\n type,\n };\n\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param mobiusServers - Array of Mobius server objects.\n */\n public submitMobiusServersMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n mobiusServers: MobiusServers,\n trackingId?: string\n ) {\n const data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n primary_mobius_servers_region: mobiusServers.primary.region,\n primary_mobius_servers_uris: mobiusServers.primary.uris.join(','),\n backup_mobius_servers_region: mobiusServers.backup.region,\n backup_mobius_servers_uris: mobiusServers.backup.uris.join(','),\n tracking_id: trackingId,\n },\n type,\n };\n\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param clientError - Error object used to populate error details in metric.\n */\n public submitRegistrationMetric(\n name: METRIC_EVENT,\n metricAction: REG_ACTION,\n type: METRIC_TYPE,\n caller: string,\n serverType: SERVER_TYPE,\n trackingId: string,\n keepaliveCount?: number,\n clientError?: LineError | CallingClientError\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.REGISTRATION: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n reg_source: caller,\n server_type: serverType,\n trackingId,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.REGISTRATION_ERROR: {\n let errorData;\n if (clientError) {\n errorData = {\n msg: clientError.getError().message,\n type: clientError.getError().type,\n };\n }\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n reg_source: caller,\n server_type: serverType,\n trackingId,\n error: errorData?.msg,\n error_type: errorData?.type,\n },\n type,\n };\n\n break;\n }\n\n case METRIC_EVENT.KEEPALIVE_ERROR: {\n let errorData;\n if (clientError) {\n errorData = {\n msg: clientError.getError().message,\n type: clientError.getError().type,\n };\n }\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n reg_source: caller,\n server_type: serverType,\n trackingId,\n keepalive_count: keepaliveCount,\n error: errorData?.msg,\n error_type: errorData?.type,\n },\n type,\n };\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: 'submitRegistrationMetric',\n });\n break;\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param callId - Call ID of the call sending the metric.\n * @param correlationId - Correlation ID of the call sending the metric.\n * @param callError - Error object used to populate error details in metric.\n */\n public submitCallMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId,\n callError?: CallError\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.CALL: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.CALL_ERROR: {\n if (callError) {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n error: callError.getCallError().message,\n error_type: callError.getCallError().type,\n },\n type,\n };\n }\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: 'submitCallMetric',\n });\n break;\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param callId - Call ID of the call sending the metric.\n * @param correlationId - Correlation ID of the call sending the metric.\n * @param localSdp - Local SDP information for media metric.\n * @param remoteSdp - Remote SDP information for media metric.\n * @param callError - Error object used to populate error details in metric.\n */\n public submitMediaMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId,\n localSdp?: string,\n remoteSdp?: string,\n callError?: CallError\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.MEDIA: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n local_media_details: localSdp,\n remote_media_details: remoteSdp,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.MEDIA_ERROR: {\n if (callError) {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n local_media_details: localSdp,\n remote_media_details: remoteSdp,\n error: callError.getCallError().message,\n error_type: callError.getCallError().type,\n },\n type,\n };\n }\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: 'submitMediaMetric',\n });\n break;\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param messageId - Message identifier of a Voicemail message.\n * @param voicemailError - Error string used to populate error details in metric.\n * @param statusCode - Status code used to populate error details in metric.\n */\n public submitVoicemailMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n messageId?: string,\n voicemailError?: string,\n statusCode?: number\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.VOICEMAIL: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n message_id: messageId,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n calling_sdk_version:\n typeof process !== 'undefined' && process.env.CALLING_SDK_VERSION\n ? process.env.CALLING_SDK_VERSION\n : VERSION,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.VOICEMAIL_ERROR: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n message_id: messageId,\n error: voicemailError,\n status_code: statusCode,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n calling_sdk_version:\n typeof process !== 'undefined' && process.env.CALLING_SDK_VERSION\n ? process.env.CALLING_SDK_VERSION\n : VERSION,\n },\n type,\n };\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: 'submitVoicemailMetric',\n });\n break;\n }\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n public submitBNRMetric(\n name: METRIC_EVENT,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId\n ) {\n let data;\n\n if (name === METRIC_EVENT.BNR_ENABLED || name === METRIC_EVENT.BNR_DISABLED) {\n data = {\n tags: {\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n },\n type,\n };\n } else {\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: 'submitBNRMetric',\n });\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n}\n\n/**\n * @param webex - Webex object to communicate with metrics microservice.\n * @param indicator - Service Indicator.\n */\nexport const getMetricManager = (\n webex?: WebexSDK,\n indicator?: ServiceIndicator\n): IMetricManager => {\n if (!metricManager && webex) {\n metricManager = new MetricManager(webex, indicator);\n }\n\n return metricManager;\n};\n\nexport default getMetricManager;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_constants","require","_types","_types2","_Logger","_interopRequireDefault","ownKeys","e","r","t","_Object$keys","_Object$getOwnPropertySymbols","o","filter","_Object$getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","Object","forEach","_defineProperty2","default","_Object$getOwnPropertyDescriptors","_Object$defineProperties","_Object$defineProperty","metricManager","MetricManager","webex","indicator","_classCallCheck2","log","info","file","METRIC_FILE","serviceIndicator","_createClass2","key","value","submitConnectionMetrics","name","metricAction","type","downTimestamp","upTimestamp","_this$deviceInfo","_this$deviceInfo$devi","_this$deviceInfo2","_this$deviceInfo2$dev","_this$deviceInfo3","_this$deviceInfo3$dev","metricData","tags","device_id","deviceInfo","device","deviceId","service_indicator","fields","device_url","clientDeviceUri","mobius_url","uri","calling_sdk_version","process","env","CALLING_SDK_VERSION","VERSION","internal","metrics","submitClientMetrics","submitUploadLogsMetric","action","trackingId","feedbackId","correlationId","stack","callId","broadworksCorrelationInfo","_this$deviceInfo4","_this$deviceInfo4$dev","_this$deviceInfo5","_this$deviceInfo5$dev","_this$deviceInfo6","_this$deviceInfo6$dev","data","commonData","correlation_id","tracking_id","feedback_id","call_id","METRIC_EVENT","UPLOAD_LOGS_SUCCESS","UPLOAD_LOGS_FAILED","error","setDeviceInfo","submitRegionInfoMetric","mobiusHost","clientRegion","countryCode","_this$deviceInfo7","_this$deviceInfo7$dev","_this$deviceInfo8","_this$deviceInfo8$dev","_this$deviceInfo9","_this$deviceInfo9$dev","ServiceIndicator","CALLING","mobius_host","client_region","country_code","submitMobiusServersMetric","mobiusServers","_this$deviceInfo0","_this$deviceInfo0$dev","_this$deviceInfo1","_this$deviceInfo1$dev","_this$deviceInfo10","_this$deviceInfo10$de","primary_mobius_servers_region","primary","region","primary_mobius_servers_uris","uris","join","backup_mobius_servers_region","backup","backup_mobius_servers_uris","submitRegistrationMetric","caller","serverType","keepaliveCount","clientError","REGISTRATION","_this$deviceInfo11","_this$deviceInfo11$de","_this$deviceInfo12","_this$deviceInfo12$de","_this$deviceInfo13","_this$deviceInfo13$de","reg_source","server_type","REGISTRATION_ERROR","_this$deviceInfo14","_this$deviceInfo14$de","_this$deviceInfo15","_this$deviceInfo15$de","_this$deviceInfo16","_this$deviceInfo16$de","_errorData","_errorData2","errorData","msg","getError","message","error_type","KEEPALIVE_ERROR","_this$deviceInfo17","_this$deviceInfo17$de","_this$deviceInfo18","_this$deviceInfo18$de","_this$deviceInfo19","_this$deviceInfo19$de","_errorData4","_errorData5","keepalive_count","warn","method","submitCallMetric","callError","CALL","_this$deviceInfo20","_this$deviceInfo20$de","_this$deviceInfo21","_this$deviceInfo21$de","_this$deviceInfo22","_this$deviceInfo22$de","CALL_ERROR","_this$deviceInfo23","_this$deviceInfo23$de","_this$deviceInfo24","_this$deviceInfo24$de","_this$deviceInfo25","_this$deviceInfo25$de","getCallError","submitMediaMetric","localSdp","remoteSdp","state","MEDIA","_this$deviceInfo26","_this$deviceInfo26$de","_this$deviceInfo27","_this$deviceInfo27$de","_this$deviceInfo28","_this$deviceInfo28$de","local_media_details","remote_media_details","MEDIA_ERROR","_this$deviceInfo29","_this$deviceInfo29$de","_this$deviceInfo30","_this$deviceInfo30$de","_this$deviceInfo31","_this$deviceInfo31$de","submitVoicemailMetric","messageId","voicemailError","statusCode","VOICEMAIL","_this$deviceInfo32","_this$deviceInfo32$de","_this$deviceInfo33","_this$deviceInfo33$de","message_id","VOICEMAIL_ERROR","_this$deviceInfo34","_this$deviceInfo34$de","_this$deviceInfo35","_this$deviceInfo35$de","status_code","submitBNRMetric","BNR_ENABLED","BNR_DISABLED","_this$deviceInfo36","_this$deviceInfo36$de","_this$deviceInfo37","_this$deviceInfo37$de","_this$deviceInfo38","_this$deviceInfo38$de","submitMobiusSocketMetric","wssUrl","eventType","_this$deviceInfo39","_this$deviceInfo39$de","_this$deviceInfo40","_this$deviceInfo40$de","_this$deviceInfo41","_this$deviceInfo41$de","commonTags","commonFields","wss_url","event_type","MOBIUS_SOCKET","MOBIUS_SOCKET_ERROR","getMetricManager","exports","_default"],"sources":["index.ts"],"sourcesContent":["import {CallError, CallingClientError} from '../Errors';\nimport {METRIC_FILE, VERSION} from '../CallingClient/constants';\nimport {CallId, CorrelationId, IDeviceInfo, MobiusServers, ServiceIndicator} from '../common/types';\nimport {WebexSDK} from '../SDKConnector/types';\nimport {\n REG_ACTION,\n IMetricManager,\n METRIC_TYPE,\n METRIC_EVENT,\n SERVER_TYPE,\n CONNECTION_ACTION,\n MOBIUS_SOCKET_ACTION,\n} from './types';\nimport {LineError} from '../Errors/catalog/LineError';\nimport log from '../Logger';\n\nlet metricManager: IMetricManager;\n\n/**\n *\n */\nclass MetricManager implements IMetricManager {\n private webex: WebexSDK;\n\n private deviceInfo?: IDeviceInfo;\n\n private serviceIndicator?: ServiceIndicator;\n\n /**\n * @param webex - Webex object used to send metrics.\n * @param indicator - Service Indicator.\n */\n public constructor(webex: WebexSDK, indicator?: ServiceIndicator) {\n log.info('Initializing metric manager...', {file: METRIC_FILE});\n this.webex = webex;\n this.serviceIndicator = indicator;\n }\n\n public submitConnectionMetrics(\n name: METRIC_EVENT,\n metricAction: CONNECTION_ACTION,\n type: METRIC_TYPE,\n downTimestamp: string,\n upTimestamp: string\n ) {\n const metricData = {\n tags: {\n metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n downTimestamp,\n upTimestamp,\n },\n type,\n };\n\n if (metricData) {\n this.webex.internal.metrics.submitClientMetrics(name, metricData);\n }\n }\n\n public submitUploadLogsMetric(\n name: METRIC_EVENT,\n action: string,\n type: METRIC_TYPE,\n trackingId?: string,\n feedbackId?: string,\n correlationId?: string,\n stack?: string,\n callId?: string,\n broadworksCorrelationInfo?: string\n ) {\n let data;\n\n const commonData = {\n tags: {\n action,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n correlation_id: correlationId,\n broadworksCorrelationInfo,\n tracking_id: trackingId,\n feedback_id: feedbackId,\n call_id: callId,\n },\n type,\n };\n\n switch (name) {\n case METRIC_EVENT.UPLOAD_LOGS_SUCCESS: {\n data = commonData;\n\n break;\n }\n\n case METRIC_EVENT.UPLOAD_LOGS_FAILED: {\n data = {\n ...commonData,\n fields: {\n ...commonData.fields,\n error: stack,\n },\n };\n\n break;\n }\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param deviceInfo - DeviceInfo object.\n */\n public setDeviceInfo(deviceInfo: IDeviceInfo) {\n this.deviceInfo = deviceInfo;\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param region - Region string.\n * @param trackingId - Tracking ID string.\n */\n public submitRegionInfoMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n mobiusHost: string,\n clientRegion: string,\n countryCode: string,\n trackingId?: string\n ) {\n const data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n mobius_host: mobiusHost,\n client_region: clientRegion,\n country_code: countryCode,\n tracking_id: trackingId,\n },\n type,\n };\n\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param mobiusServers - Array of Mobius server objects.\n */\n public submitMobiusServersMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n mobiusServers: MobiusServers,\n trackingId?: string\n ) {\n const data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n primary_mobius_servers_region: mobiusServers.primary.region,\n primary_mobius_servers_uris: mobiusServers.primary.uris.join(','),\n backup_mobius_servers_region: mobiusServers.backup.region,\n backup_mobius_servers_uris: mobiusServers.backup.uris.join(','),\n tracking_id: trackingId,\n },\n type,\n };\n\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param clientError - Error object used to populate error details in metric.\n */\n public submitRegistrationMetric(\n name: METRIC_EVENT,\n metricAction: REG_ACTION,\n type: METRIC_TYPE,\n caller: string,\n serverType: SERVER_TYPE,\n trackingId: string,\n keepaliveCount?: number,\n clientError?: LineError | CallingClientError\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.REGISTRATION: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n reg_source: caller,\n server_type: serverType,\n trackingId,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.REGISTRATION_ERROR: {\n let errorData;\n if (clientError) {\n errorData = {\n msg: clientError.getError().message,\n type: clientError.getError().type,\n };\n }\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n reg_source: caller,\n server_type: serverType,\n trackingId,\n error: errorData?.msg,\n error_type: errorData?.type,\n },\n type,\n };\n\n break;\n }\n\n case METRIC_EVENT.KEEPALIVE_ERROR: {\n let errorData;\n if (clientError) {\n errorData = {\n msg: clientError.getError().message,\n type: clientError.getError().type,\n };\n }\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n reg_source: caller,\n server_type: serverType,\n trackingId,\n keepalive_count: keepaliveCount,\n error: errorData?.msg,\n error_type: errorData?.type,\n },\n type,\n };\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: 'submitRegistrationMetric',\n });\n break;\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param callId - Call ID of the call sending the metric.\n * @param correlationId - Correlation ID of the call sending the metric.\n * @param callError - Error object used to populate error details in metric.\n */\n public submitCallMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId,\n callError?: CallError\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.CALL: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.CALL_ERROR: {\n if (callError) {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n error: callError.getCallError().message,\n error_type: callError.getCallError().type,\n },\n type,\n };\n }\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: 'submitCallMetric',\n });\n break;\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param callId - Call ID of the call sending the metric.\n * @param correlationId - Correlation ID of the call sending the metric.\n * @param localSdp - Local SDP information for media metric.\n * @param remoteSdp - Remote SDP information for media metric.\n * @param callError - Error object used to populate error details in metric.\n */\n public submitMediaMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId,\n localSdp?: string,\n remoteSdp?: string,\n state?: 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 state,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.MEDIA_ERROR: {\n if (callError) {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n local_media_details: localSdp,\n remote_media_details: remoteSdp,\n error: callError.getCallError().message,\n error_type: callError.getCallError().type,\n },\n type,\n };\n }\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: 'submitMediaMetric',\n });\n break;\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param messageId - Message identifier of a Voicemail message.\n * @param voicemailError - Error string used to populate error details in metric.\n * @param statusCode - Status code used to populate error details in metric.\n */\n public submitVoicemailMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n messageId?: string,\n voicemailError?: string,\n statusCode?: number\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.VOICEMAIL: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n message_id: messageId,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n calling_sdk_version:\n typeof process !== 'undefined' && process.env.CALLING_SDK_VERSION\n ? process.env.CALLING_SDK_VERSION\n : VERSION,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.VOICEMAIL_ERROR: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n message_id: messageId,\n error: voicemailError,\n status_code: statusCode,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n calling_sdk_version:\n typeof process !== 'undefined' && process.env.CALLING_SDK_VERSION\n ? process.env.CALLING_SDK_VERSION\n : VERSION,\n },\n type,\n };\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: 'submitVoicemailMetric',\n });\n break;\n }\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n public submitBNRMetric(\n name: METRIC_EVENT,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId\n ) {\n let data;\n\n if (name === METRIC_EVENT.BNR_ENABLED || name === METRIC_EVENT.BNR_DISABLED) {\n data = {\n tags: {\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n },\n type,\n };\n } else {\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: 'submitBNRMetric',\n });\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param name - Name of the metric being submitted (MOBIUS_SOCKET or MOBIUS_SOCKET_ERROR).\n * @param metricAction - Type of Mobius WebSocket action.\n * @param type - Type of metric.\n * @param wssUrl - The Mobius WebSocket URL involved in the action.\n * @param trackingId - Tracking ID associated with the operation, if any.\n * @param error - Error string used to populate error details (for MOBIUS_SOCKET_ERROR).\n * @param eventType - Type of async event received over the socket, if applicable.\n */\n public submitMobiusSocketMetric(\n name: METRIC_EVENT,\n metricAction: MOBIUS_SOCKET_ACTION,\n type: METRIC_TYPE,\n wssUrl?: string,\n trackingId?: string,\n error?: string,\n eventType?: string\n ) {\n let data;\n\n const commonTags = {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n };\n\n const commonFields = {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n wss_url: wssUrl,\n tracking_id: trackingId,\n event_type: eventType,\n };\n\n switch (name) {\n case METRIC_EVENT.MOBIUS_SOCKET: {\n data = {\n tags: commonTags,\n fields: commonFields,\n type,\n };\n break;\n }\n\n case METRIC_EVENT.MOBIUS_SOCKET_ERROR: {\n data = {\n tags: commonTags,\n fields: {\n ...commonFields,\n error,\n },\n type,\n };\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: 'submitMobiusSocketMetric',\n });\n break;\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n}\n\n/**\n * @param webex - Webex object to communicate with metrics microservice.\n * @param indicator - Service Indicator.\n */\nexport const getMetricManager = (\n webex?: WebexSDK,\n indicator?: ServiceIndicator\n): IMetricManager => {\n if (!metricManager && webex) {\n metricManager = new MetricManager(webex, indicator);\n }\n\n return metricManager;\n};\n\nexport default getMetricManager;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -248,7 +248,7 @@ describe('CALLING: Metric tests', function () {
|
|
|
248
248
|
},
|
|
249
249
|
type: _types.METRIC_TYPE.BEHAVIORAL
|
|
250
250
|
};
|
|
251
|
-
metricManager.submitMediaMetric(_types.METRIC_EVENT.MEDIA_ERROR, mockMediaAction, _types.METRIC_TYPE.BEHAVIORAL, mockCallId, mockCorrelationId, mockSdp, mockSdp, callError);
|
|
251
|
+
metricManager.submitMediaMetric(_types.METRIC_EVENT.MEDIA_ERROR, mockMediaAction, _types.METRIC_TYPE.BEHAVIORAL, mockCallId, mockCorrelationId, mockSdp, mockSdp, undefined, callError);
|
|
252
252
|
expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.MEDIA_ERROR, expectedData);
|
|
253
253
|
});
|
|
254
254
|
it('submit unknown media metric', function () {
|
|
@@ -312,9 +312,13 @@ describe('CALLING: Metric tests', function () {
|
|
|
312
312
|
});
|
|
313
313
|
});
|
|
314
314
|
describe('Voicemail metric tests', function () {
|
|
315
|
+
var originalProcess = global.process;
|
|
315
316
|
beforeAll(function () {
|
|
316
317
|
return metricManager.setDeviceInfo(mockDeviceInfo);
|
|
317
318
|
});
|
|
319
|
+
afterEach(function () {
|
|
320
|
+
global.process = originalProcess;
|
|
321
|
+
});
|
|
318
322
|
it('submit voicemail success metric', function () {
|
|
319
323
|
var expectedData1 = {
|
|
320
324
|
tags: {
|
|
@@ -367,6 +371,44 @@ describe('CALLING: Metric tests', function () {
|
|
|
367
371
|
metricManager.submitVoicemailMetric(_types.METRIC_EVENT.VOICEMAIL_ERROR, _types.VOICEMAIL_ACTION.DELETE, _types.METRIC_TYPE.BEHAVIORAL, 'messageId', errorMessage, 401);
|
|
368
372
|
expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.VOICEMAIL_ERROR, expectedData2);
|
|
369
373
|
});
|
|
374
|
+
it('submit voicemail metric with undefined process object', function () {
|
|
375
|
+
// Mock process as undefined (browser environment)
|
|
376
|
+
global.process = undefined;
|
|
377
|
+
var expectedData = {
|
|
378
|
+
tags: {
|
|
379
|
+
action: _types.VOICEMAIL_ACTION.GET_VOICEMAILS,
|
|
380
|
+
device_id: mockDeviceInfo.device.deviceId
|
|
381
|
+
},
|
|
382
|
+
fields: {
|
|
383
|
+
device_url: mockDeviceInfo.device.clientDeviceUri,
|
|
384
|
+
calling_sdk_version: _constants.VERSION
|
|
385
|
+
},
|
|
386
|
+
type: _types.METRIC_TYPE.BEHAVIORAL
|
|
387
|
+
};
|
|
388
|
+
metricManager.submitVoicemailMetric(_types.METRIC_EVENT.VOICEMAIL, _types.VOICEMAIL_ACTION.GET_VOICEMAILS, _types.METRIC_TYPE.BEHAVIORAL);
|
|
389
|
+
expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.VOICEMAIL, expectedData);
|
|
390
|
+
});
|
|
391
|
+
it('submit voicemail error metric with undefined process object', function () {
|
|
392
|
+
// Mock process as undefined (browser environment)
|
|
393
|
+
global.process = undefined;
|
|
394
|
+
var errorMessage = 'Network error';
|
|
395
|
+
var expectedData = {
|
|
396
|
+
tags: {
|
|
397
|
+
action: _types.VOICEMAIL_ACTION.MARK_READ,
|
|
398
|
+
device_id: mockDeviceInfo.device.deviceId,
|
|
399
|
+
message_id: 'msg-123',
|
|
400
|
+
error: errorMessage,
|
|
401
|
+
status_code: 500
|
|
402
|
+
},
|
|
403
|
+
fields: {
|
|
404
|
+
device_url: mockDeviceInfo.device.clientDeviceUri,
|
|
405
|
+
calling_sdk_version: _constants.VERSION
|
|
406
|
+
},
|
|
407
|
+
type: _types.METRIC_TYPE.BEHAVIORAL
|
|
408
|
+
};
|
|
409
|
+
metricManager.submitVoicemailMetric(_types.METRIC_EVENT.VOICEMAIL_ERROR, _types.VOICEMAIL_ACTION.MARK_READ, _types.METRIC_TYPE.BEHAVIORAL, 'msg-123', errorMessage, 500);
|
|
410
|
+
expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.VOICEMAIL_ERROR, expectedData);
|
|
411
|
+
});
|
|
370
412
|
it('submit unknown voicemail metric', function () {
|
|
371
413
|
var logSpy = jest.spyOn(_Logger.default, 'warn');
|
|
372
414
|
metricManager.submitVoicemailMetric('invalidMetricName', _types.VOICEMAIL_ACTION.GET_VOICEMAILS, _types.METRIC_TYPE.BEHAVIORAL);
|
|
@@ -399,6 +441,320 @@ describe('CALLING: Metric tests', function () {
|
|
|
399
441
|
expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.BNR_ENABLED, expectedData);
|
|
400
442
|
});
|
|
401
443
|
});
|
|
444
|
+
describe('Connection metric tests', function () {
|
|
445
|
+
beforeAll(function () {
|
|
446
|
+
return metricManager.setDeviceInfo(mockDeviceInfo);
|
|
447
|
+
});
|
|
448
|
+
it('submit connection metric for network flap', function () {
|
|
449
|
+
var downTimestamp = '2026-05-04T10:00:00.000Z';
|
|
450
|
+
var upTimestamp = '2026-05-04T10:05:00.000Z';
|
|
451
|
+
var expectedData = {
|
|
452
|
+
tags: {
|
|
453
|
+
metricAction: 'network_flap',
|
|
454
|
+
device_id: mockDeviceInfo.device.deviceId,
|
|
455
|
+
service_indicator: _types3.ServiceIndicator.CALLING
|
|
456
|
+
},
|
|
457
|
+
fields: {
|
|
458
|
+
device_url: mockDeviceInfo.device.clientDeviceUri,
|
|
459
|
+
mobius_url: mockDeviceInfo.device.uri,
|
|
460
|
+
calling_sdk_version: MOCK_VERSION_NUMBER,
|
|
461
|
+
downTimestamp: downTimestamp,
|
|
462
|
+
upTimestamp: upTimestamp
|
|
463
|
+
},
|
|
464
|
+
type: _types.METRIC_TYPE.BEHAVIORAL
|
|
465
|
+
};
|
|
466
|
+
metricManager.submitConnectionMetrics(_types.METRIC_EVENT.CONNECTION_ERROR, _types.CONNECTION_ACTION.NETWORK_FLAP, _types.METRIC_TYPE.BEHAVIORAL, downTimestamp, upTimestamp);
|
|
467
|
+
expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.CONNECTION_ERROR, expectedData);
|
|
468
|
+
});
|
|
469
|
+
it('submit connection metric for mercury down', function () {
|
|
470
|
+
var downTimestamp = '2026-05-04T10:10:00.000Z';
|
|
471
|
+
var upTimestamp = '2026-05-04T10:15:00.000Z';
|
|
472
|
+
var expectedData = {
|
|
473
|
+
tags: {
|
|
474
|
+
metricAction: 'mercury_down',
|
|
475
|
+
device_id: mockDeviceInfo.device.deviceId,
|
|
476
|
+
service_indicator: _types3.ServiceIndicator.CALLING
|
|
477
|
+
},
|
|
478
|
+
fields: {
|
|
479
|
+
device_url: mockDeviceInfo.device.clientDeviceUri,
|
|
480
|
+
mobius_url: mockDeviceInfo.device.uri,
|
|
481
|
+
calling_sdk_version: MOCK_VERSION_NUMBER,
|
|
482
|
+
downTimestamp: downTimestamp,
|
|
483
|
+
upTimestamp: upTimestamp
|
|
484
|
+
},
|
|
485
|
+
type: _types.METRIC_TYPE.OPERATIONAL
|
|
486
|
+
};
|
|
487
|
+
metricManager.submitConnectionMetrics(_types.METRIC_EVENT.CONNECTION_ERROR, _types.CONNECTION_ACTION.MERCURY_DOWN, _types.METRIC_TYPE.OPERATIONAL, downTimestamp, upTimestamp);
|
|
488
|
+
expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.CONNECTION_ERROR, expectedData);
|
|
489
|
+
});
|
|
490
|
+
});
|
|
491
|
+
describe('Region Info metric tests', function () {
|
|
492
|
+
beforeAll(function () {
|
|
493
|
+
return metricManager.setDeviceInfo(mockDeviceInfo);
|
|
494
|
+
});
|
|
495
|
+
it('submit region info metric with all parameters', function () {
|
|
496
|
+
var trackingId = 'track-region-123';
|
|
497
|
+
var mobiusHost = 'mobius-us-east.webex.com';
|
|
498
|
+
var clientRegion = 'US-EAST';
|
|
499
|
+
var countryCode = 'US';
|
|
500
|
+
var expectedData = {
|
|
501
|
+
tags: {
|
|
502
|
+
action: 'region-info',
|
|
503
|
+
device_id: mockDeviceInfo.device.deviceId,
|
|
504
|
+
service_indicator: _types3.ServiceIndicator.CALLING
|
|
505
|
+
},
|
|
506
|
+
fields: {
|
|
507
|
+
device_url: mockDeviceInfo.device.clientDeviceUri,
|
|
508
|
+
mobius_url: mockDeviceInfo.device.uri,
|
|
509
|
+
calling_sdk_version: MOCK_VERSION_NUMBER,
|
|
510
|
+
mobius_host: mobiusHost,
|
|
511
|
+
client_region: clientRegion,
|
|
512
|
+
country_code: countryCode,
|
|
513
|
+
tracking_id: trackingId
|
|
514
|
+
},
|
|
515
|
+
type: _types.METRIC_TYPE.BEHAVIORAL
|
|
516
|
+
};
|
|
517
|
+
metricManager.submitRegionInfoMetric(_types.METRIC_EVENT.MOBIUS_DISCOVERY, 'region-info', _types.METRIC_TYPE.BEHAVIORAL, mobiusHost, clientRegion, countryCode, trackingId);
|
|
518
|
+
expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.MOBIUS_DISCOVERY, expectedData);
|
|
519
|
+
});
|
|
520
|
+
it('submit region info metric without tracking ID', function () {
|
|
521
|
+
var mobiusHost = 'mobius-eu-west.webex.com';
|
|
522
|
+
var clientRegion = 'EU-WEST';
|
|
523
|
+
var countryCode = 'GB';
|
|
524
|
+
var expectedData = {
|
|
525
|
+
tags: {
|
|
526
|
+
action: 'region-info',
|
|
527
|
+
device_id: mockDeviceInfo.device.deviceId,
|
|
528
|
+
service_indicator: _types3.ServiceIndicator.CALLING
|
|
529
|
+
},
|
|
530
|
+
fields: {
|
|
531
|
+
device_url: mockDeviceInfo.device.clientDeviceUri,
|
|
532
|
+
mobius_url: mockDeviceInfo.device.uri,
|
|
533
|
+
calling_sdk_version: MOCK_VERSION_NUMBER,
|
|
534
|
+
mobius_host: mobiusHost,
|
|
535
|
+
client_region: clientRegion,
|
|
536
|
+
country_code: countryCode,
|
|
537
|
+
tracking_id: undefined
|
|
538
|
+
},
|
|
539
|
+
type: _types.METRIC_TYPE.OPERATIONAL
|
|
540
|
+
};
|
|
541
|
+
metricManager.submitRegionInfoMetric(_types.METRIC_EVENT.MOBIUS_DISCOVERY, 'region-info', _types.METRIC_TYPE.OPERATIONAL, mobiusHost, clientRegion, countryCode, undefined);
|
|
542
|
+
expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.MOBIUS_DISCOVERY, expectedData);
|
|
543
|
+
});
|
|
544
|
+
});
|
|
545
|
+
describe('Mobius Servers metric tests', function () {
|
|
546
|
+
beforeAll(function () {
|
|
547
|
+
return metricManager.setDeviceInfo(mockDeviceInfo);
|
|
548
|
+
});
|
|
549
|
+
it('submit mobius servers metric with primary and backup servers', function () {
|
|
550
|
+
var trackingId = 'track-servers-456';
|
|
551
|
+
var mobiusServers = {
|
|
552
|
+
primary: {
|
|
553
|
+
region: 'US-EAST',
|
|
554
|
+
uris: ['wss://mobius-us-east-1.webex.com/api/v1', 'wss://mobius-us-east-2.webex.com/api/v1']
|
|
555
|
+
},
|
|
556
|
+
backup: {
|
|
557
|
+
region: 'US-WEST',
|
|
558
|
+
uris: ['wss://mobius-us-west-1.webex.com/api/v1']
|
|
559
|
+
}
|
|
560
|
+
};
|
|
561
|
+
var expectedData = {
|
|
562
|
+
tags: {
|
|
563
|
+
action: 'mobius-servers',
|
|
564
|
+
device_id: mockDeviceInfo.device.deviceId,
|
|
565
|
+
service_indicator: _types3.ServiceIndicator.CALLING
|
|
566
|
+
},
|
|
567
|
+
fields: {
|
|
568
|
+
device_url: mockDeviceInfo.device.clientDeviceUri,
|
|
569
|
+
mobius_url: mockDeviceInfo.device.uri,
|
|
570
|
+
calling_sdk_version: MOCK_VERSION_NUMBER,
|
|
571
|
+
primary_mobius_servers_region: 'US-EAST',
|
|
572
|
+
primary_mobius_servers_uris: 'wss://mobius-us-east-1.webex.com/api/v1,wss://mobius-us-east-2.webex.com/api/v1',
|
|
573
|
+
backup_mobius_servers_region: 'US-WEST',
|
|
574
|
+
backup_mobius_servers_uris: 'wss://mobius-us-west-1.webex.com/api/v1',
|
|
575
|
+
tracking_id: trackingId
|
|
576
|
+
},
|
|
577
|
+
type: _types.METRIC_TYPE.BEHAVIORAL
|
|
578
|
+
};
|
|
579
|
+
metricManager.submitMobiusServersMetric(_types.METRIC_EVENT.MOBIUS_DISCOVERY, 'mobius-servers', _types.METRIC_TYPE.BEHAVIORAL, mobiusServers, trackingId);
|
|
580
|
+
expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.MOBIUS_DISCOVERY, expectedData);
|
|
581
|
+
});
|
|
582
|
+
it('submit mobius servers metric without tracking ID', function () {
|
|
583
|
+
var mobiusServers = {
|
|
584
|
+
primary: {
|
|
585
|
+
region: 'EU-CENTRAL',
|
|
586
|
+
uris: ['wss://mobius-eu-central.webex.com/api/v1']
|
|
587
|
+
},
|
|
588
|
+
backup: {
|
|
589
|
+
region: 'EU-WEST',
|
|
590
|
+
uris: ['wss://mobius-eu-west.webex.com/api/v1', 'wss://mobius-eu-west-2.webex.com/api/v1']
|
|
591
|
+
}
|
|
592
|
+
};
|
|
593
|
+
var expectedData = {
|
|
594
|
+
tags: {
|
|
595
|
+
action: 'mobius-servers',
|
|
596
|
+
device_id: mockDeviceInfo.device.deviceId,
|
|
597
|
+
service_indicator: _types3.ServiceIndicator.CALLING
|
|
598
|
+
},
|
|
599
|
+
fields: {
|
|
600
|
+
device_url: mockDeviceInfo.device.clientDeviceUri,
|
|
601
|
+
mobius_url: mockDeviceInfo.device.uri,
|
|
602
|
+
calling_sdk_version: MOCK_VERSION_NUMBER,
|
|
603
|
+
primary_mobius_servers_region: 'EU-CENTRAL',
|
|
604
|
+
primary_mobius_servers_uris: 'wss://mobius-eu-central.webex.com/api/v1',
|
|
605
|
+
backup_mobius_servers_region: 'EU-WEST',
|
|
606
|
+
backup_mobius_servers_uris: 'wss://mobius-eu-west.webex.com/api/v1,wss://mobius-eu-west-2.webex.com/api/v1',
|
|
607
|
+
tracking_id: undefined
|
|
608
|
+
},
|
|
609
|
+
type: _types.METRIC_TYPE.OPERATIONAL
|
|
610
|
+
};
|
|
611
|
+
metricManager.submitMobiusServersMetric(_types.METRIC_EVENT.MOBIUS_DISCOVERY, 'mobius-servers', _types.METRIC_TYPE.OPERATIONAL, mobiusServers, undefined);
|
|
612
|
+
expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.MOBIUS_DISCOVERY, expectedData);
|
|
613
|
+
});
|
|
614
|
+
});
|
|
615
|
+
describe('Mobius Socket metric tests', function () {
|
|
616
|
+
beforeAll(function () {
|
|
617
|
+
return metricManager.setDeviceInfo(mockDeviceInfo);
|
|
618
|
+
});
|
|
619
|
+
it('submit mobius socket connect success metric', function () {
|
|
620
|
+
var wssUrl = 'wss://mobius.webex.com/api/v1';
|
|
621
|
+
var trackingId = 'track-socket-123';
|
|
622
|
+
var expectedData = {
|
|
623
|
+
tags: {
|
|
624
|
+
action: 'connect',
|
|
625
|
+
device_id: mockDeviceInfo.device.deviceId,
|
|
626
|
+
service_indicator: _types3.ServiceIndicator.CALLING
|
|
627
|
+
},
|
|
628
|
+
fields: {
|
|
629
|
+
device_url: mockDeviceInfo.device.clientDeviceUri,
|
|
630
|
+
mobius_url: mockDeviceInfo.device.uri,
|
|
631
|
+
calling_sdk_version: MOCK_VERSION_NUMBER,
|
|
632
|
+
wss_url: wssUrl,
|
|
633
|
+
tracking_id: trackingId,
|
|
634
|
+
event_type: undefined
|
|
635
|
+
},
|
|
636
|
+
type: _types.METRIC_TYPE.BEHAVIORAL
|
|
637
|
+
};
|
|
638
|
+
metricManager.submitMobiusSocketMetric(_types.METRIC_EVENT.MOBIUS_SOCKET, _types.MOBIUS_SOCKET_ACTION.CONNECT, _types.METRIC_TYPE.BEHAVIORAL, wssUrl, trackingId);
|
|
639
|
+
expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.MOBIUS_SOCKET, expectedData);
|
|
640
|
+
});
|
|
641
|
+
it('submit mobius socket disconnect success metric', function () {
|
|
642
|
+
var expectedData = {
|
|
643
|
+
tags: {
|
|
644
|
+
action: 'disconnect',
|
|
645
|
+
device_id: mockDeviceInfo.device.deviceId,
|
|
646
|
+
service_indicator: _types3.ServiceIndicator.CALLING
|
|
647
|
+
},
|
|
648
|
+
fields: {
|
|
649
|
+
device_url: mockDeviceInfo.device.clientDeviceUri,
|
|
650
|
+
mobius_url: mockDeviceInfo.device.uri,
|
|
651
|
+
calling_sdk_version: MOCK_VERSION_NUMBER,
|
|
652
|
+
wss_url: undefined,
|
|
653
|
+
tracking_id: undefined,
|
|
654
|
+
event_type: undefined
|
|
655
|
+
},
|
|
656
|
+
type: _types.METRIC_TYPE.BEHAVIORAL
|
|
657
|
+
};
|
|
658
|
+
metricManager.submitMobiusSocketMetric(_types.METRIC_EVENT.MOBIUS_SOCKET, _types.MOBIUS_SOCKET_ACTION.DISCONNECT, _types.METRIC_TYPE.BEHAVIORAL);
|
|
659
|
+
expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.MOBIUS_SOCKET, expectedData);
|
|
660
|
+
});
|
|
661
|
+
it('submit mobius socket listener registered metric', function () {
|
|
662
|
+
var expectedData = {
|
|
663
|
+
tags: {
|
|
664
|
+
action: 'listener_registered',
|
|
665
|
+
device_id: mockDeviceInfo.device.deviceId,
|
|
666
|
+
service_indicator: _types3.ServiceIndicator.CALLING
|
|
667
|
+
},
|
|
668
|
+
fields: {
|
|
669
|
+
device_url: mockDeviceInfo.device.clientDeviceUri,
|
|
670
|
+
mobius_url: mockDeviceInfo.device.uri,
|
|
671
|
+
calling_sdk_version: MOCK_VERSION_NUMBER,
|
|
672
|
+
wss_url: undefined,
|
|
673
|
+
tracking_id: undefined,
|
|
674
|
+
event_type: undefined
|
|
675
|
+
},
|
|
676
|
+
type: _types.METRIC_TYPE.BEHAVIORAL
|
|
677
|
+
};
|
|
678
|
+
metricManager.submitMobiusSocketMetric(_types.METRIC_EVENT.MOBIUS_SOCKET, _types.MOBIUS_SOCKET_ACTION.LISTENER_REGISTERED, _types.METRIC_TYPE.BEHAVIORAL);
|
|
679
|
+
expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.MOBIUS_SOCKET, expectedData);
|
|
680
|
+
});
|
|
681
|
+
it('submit mobius socket listener unregistered metric', function () {
|
|
682
|
+
var expectedData = {
|
|
683
|
+
tags: {
|
|
684
|
+
action: 'listener_unregistered',
|
|
685
|
+
device_id: mockDeviceInfo.device.deviceId,
|
|
686
|
+
service_indicator: _types3.ServiceIndicator.CALLING
|
|
687
|
+
},
|
|
688
|
+
fields: {
|
|
689
|
+
device_url: mockDeviceInfo.device.clientDeviceUri,
|
|
690
|
+
mobius_url: mockDeviceInfo.device.uri,
|
|
691
|
+
calling_sdk_version: MOCK_VERSION_NUMBER,
|
|
692
|
+
wss_url: undefined,
|
|
693
|
+
tracking_id: undefined,
|
|
694
|
+
event_type: undefined
|
|
695
|
+
},
|
|
696
|
+
type: _types.METRIC_TYPE.BEHAVIORAL
|
|
697
|
+
};
|
|
698
|
+
metricManager.submitMobiusSocketMetric(_types.METRIC_EVENT.MOBIUS_SOCKET, _types.MOBIUS_SOCKET_ACTION.LISTENER_UNREGISTERED, _types.METRIC_TYPE.BEHAVIORAL);
|
|
699
|
+
expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.MOBIUS_SOCKET, expectedData);
|
|
700
|
+
});
|
|
701
|
+
it('submit mobius socket error metric with connection failure', function () {
|
|
702
|
+
var wssUrl = 'wss://mobius.webex.com/api/v1';
|
|
703
|
+
var trackingId = 'track-error-456';
|
|
704
|
+
var error = 'WebSocket connection failed: timeout';
|
|
705
|
+
var expectedData = {
|
|
706
|
+
tags: {
|
|
707
|
+
action: 'connect',
|
|
708
|
+
device_id: mockDeviceInfo.device.deviceId,
|
|
709
|
+
service_indicator: _types3.ServiceIndicator.CALLING
|
|
710
|
+
},
|
|
711
|
+
fields: {
|
|
712
|
+
device_url: mockDeviceInfo.device.clientDeviceUri,
|
|
713
|
+
mobius_url: mockDeviceInfo.device.uri,
|
|
714
|
+
calling_sdk_version: MOCK_VERSION_NUMBER,
|
|
715
|
+
wss_url: wssUrl,
|
|
716
|
+
tracking_id: trackingId,
|
|
717
|
+
event_type: undefined,
|
|
718
|
+
error: error
|
|
719
|
+
},
|
|
720
|
+
type: _types.METRIC_TYPE.BEHAVIORAL
|
|
721
|
+
};
|
|
722
|
+
metricManager.submitMobiusSocketMetric(_types.METRIC_EVENT.MOBIUS_SOCKET_ERROR, _types.MOBIUS_SOCKET_ACTION.CONNECT, _types.METRIC_TYPE.BEHAVIORAL, wssUrl, trackingId, error);
|
|
723
|
+
expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.MOBIUS_SOCKET_ERROR, expectedData);
|
|
724
|
+
});
|
|
725
|
+
it('submit mobius socket error metric with registration down event', function () {
|
|
726
|
+
var trackingId = 'track-regdown-789';
|
|
727
|
+
var eventType = 'registration.down';
|
|
728
|
+
var expectedData = {
|
|
729
|
+
tags: {
|
|
730
|
+
action: 'registration_down',
|
|
731
|
+
device_id: mockDeviceInfo.device.deviceId,
|
|
732
|
+
service_indicator: _types3.ServiceIndicator.CALLING
|
|
733
|
+
},
|
|
734
|
+
fields: {
|
|
735
|
+
device_url: mockDeviceInfo.device.clientDeviceUri,
|
|
736
|
+
mobius_url: mockDeviceInfo.device.uri,
|
|
737
|
+
calling_sdk_version: MOCK_VERSION_NUMBER,
|
|
738
|
+
wss_url: undefined,
|
|
739
|
+
tracking_id: trackingId,
|
|
740
|
+
event_type: eventType,
|
|
741
|
+
error: undefined
|
|
742
|
+
},
|
|
743
|
+
type: _types.METRIC_TYPE.BEHAVIORAL
|
|
744
|
+
};
|
|
745
|
+
metricManager.submitMobiusSocketMetric(_types.METRIC_EVENT.MOBIUS_SOCKET_ERROR, _types.MOBIUS_SOCKET_ACTION.REGISTRATION_DOWN, _types.METRIC_TYPE.BEHAVIORAL, undefined, trackingId, undefined, eventType);
|
|
746
|
+
expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.MOBIUS_SOCKET_ERROR, expectedData);
|
|
747
|
+
});
|
|
748
|
+
it('submit unknown mobius socket metric', function () {
|
|
749
|
+
var logSpy = jest.spyOn(_Logger.default, 'warn');
|
|
750
|
+
metricManager.submitMobiusSocketMetric('invalidMetricName', _types.MOBIUS_SOCKET_ACTION.CONNECT, _types.METRIC_TYPE.BEHAVIORAL);
|
|
751
|
+
expect(submitClientMetricSpy).not.toBeCalled();
|
|
752
|
+
expect(logSpy).toBeCalledOnceWith('Invalid metric name received. Rejecting request to submit metric.', {
|
|
753
|
+
file: 'metric',
|
|
754
|
+
method: 'submitMobiusSocketMetric'
|
|
755
|
+
});
|
|
756
|
+
});
|
|
757
|
+
});
|
|
402
758
|
describe('Upload Logs metric tests', function () {
|
|
403
759
|
beforeAll(function () {
|
|
404
760
|
return metricManager.setDeviceInfo(mockDeviceInfo);
|