@webex/calling 3.9.0 → 3.10.0

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 (184) hide show
  1. package/dist/CallHistory/CallHistory.js +51 -46
  2. package/dist/CallHistory/CallHistory.js.map +1 -1
  3. package/dist/CallHistory/CallHistory.test.js +146 -147
  4. package/dist/CallHistory/CallHistory.test.js.map +1 -1
  5. package/dist/CallHistory/callHistoryFixtures.js.map +1 -1
  6. package/dist/CallHistory/constants.js.map +1 -1
  7. package/dist/CallHistory/types.js.map +1 -1
  8. package/dist/CallSettings/CallSettings.js +8 -8
  9. package/dist/CallSettings/CallSettings.js.map +1 -1
  10. package/dist/CallSettings/CallSettings.test.js +1 -1
  11. package/dist/CallSettings/CallSettings.test.js.map +1 -1
  12. package/dist/CallSettings/UcmBackendConnector.js +12 -11
  13. package/dist/CallSettings/UcmBackendConnector.js.map +1 -1
  14. package/dist/CallSettings/UcmBackendConnector.test.js +9 -10
  15. package/dist/CallSettings/UcmBackendConnector.test.js.map +1 -1
  16. package/dist/CallSettings/WxCallBackendConnector.js +66 -59
  17. package/dist/CallSettings/WxCallBackendConnector.js.map +1 -1
  18. package/dist/CallSettings/WxCallBackendConnector.test.js +108 -109
  19. package/dist/CallSettings/WxCallBackendConnector.test.js.map +1 -1
  20. package/dist/CallSettings/constants.js.map +1 -1
  21. package/dist/CallSettings/testFixtures.js.map +1 -1
  22. package/dist/CallSettings/types.js.map +1 -1
  23. package/dist/CallingClient/CallingClient.js +457 -201
  24. package/dist/CallingClient/CallingClient.js.map +1 -1
  25. package/dist/CallingClient/CallingClient.test.js +458 -315
  26. package/dist/CallingClient/CallingClient.test.js.map +1 -1
  27. package/dist/CallingClient/callRecordFixtures.js.map +1 -1
  28. package/dist/CallingClient/calling/CallerId/index.js +2 -2
  29. package/dist/CallingClient/calling/CallerId/index.js.map +1 -1
  30. package/dist/CallingClient/calling/CallerId/index.test.js +8 -7
  31. package/dist/CallingClient/calling/CallerId/index.test.js.map +1 -1
  32. package/dist/CallingClient/calling/CallerId/types.js.map +1 -1
  33. package/dist/CallingClient/calling/call.js +369 -333
  34. package/dist/CallingClient/calling/call.js.map +1 -1
  35. package/dist/CallingClient/calling/call.test.js +411 -410
  36. package/dist/CallingClient/calling/call.test.js.map +1 -1
  37. package/dist/CallingClient/calling/callManager.js +3 -4
  38. package/dist/CallingClient/calling/callManager.js.map +1 -1
  39. package/dist/CallingClient/calling/callManager.test.js +67 -68
  40. package/dist/CallingClient/calling/callManager.test.js.map +1 -1
  41. package/dist/CallingClient/calling/index.js.map +1 -1
  42. package/dist/CallingClient/calling/types.js.map +1 -1
  43. package/dist/CallingClient/callingClientFixtures.js.map +1 -1
  44. package/dist/CallingClient/constants.js +9 -6
  45. package/dist/CallingClient/constants.js.map +1 -1
  46. package/dist/CallingClient/line/index.js +10 -11
  47. package/dist/CallingClient/line/index.js.map +1 -1
  48. package/dist/CallingClient/line/line.test.js +10 -9
  49. package/dist/CallingClient/line/line.test.js.map +1 -1
  50. package/dist/CallingClient/line/types.js.map +1 -1
  51. package/dist/CallingClient/registration/index.js.map +1 -1
  52. package/dist/CallingClient/registration/register.js +280 -201
  53. package/dist/CallingClient/registration/register.js.map +1 -1
  54. package/dist/CallingClient/registration/register.test.js +251 -180
  55. package/dist/CallingClient/registration/register.test.js.map +1 -1
  56. package/dist/CallingClient/registration/registerFixtures.js.map +1 -1
  57. package/dist/CallingClient/registration/types.js.map +1 -1
  58. package/dist/CallingClient/registration/webWorker.js +25 -10
  59. package/dist/CallingClient/registration/webWorker.js.map +1 -1
  60. package/dist/CallingClient/registration/webWorker.test.js +85 -38
  61. package/dist/CallingClient/registration/webWorker.test.js.map +1 -1
  62. package/dist/CallingClient/registration/webWorkerStr.js +1 -1
  63. package/dist/CallingClient/registration/webWorkerStr.js.map +1 -1
  64. package/dist/CallingClient/types.js.map +1 -1
  65. package/dist/CallingClient/windowsChromiumIceWarmupUtils.js +142 -0
  66. package/dist/CallingClient/windowsChromiumIceWarmupUtils.js.map +1 -0
  67. package/dist/Contacts/ContactsClient.js +244 -238
  68. package/dist/Contacts/ContactsClient.js.map +1 -1
  69. package/dist/Contacts/ContactsClient.test.js +89 -90
  70. package/dist/Contacts/ContactsClient.test.js.map +1 -1
  71. package/dist/Contacts/constants.js +2 -2
  72. package/dist/Contacts/constants.js.map +1 -1
  73. package/dist/Contacts/contactFixtures.js.map +1 -1
  74. package/dist/Contacts/types.js.map +1 -1
  75. package/dist/Errors/catalog/CallError.js +2 -2
  76. package/dist/Errors/catalog/CallError.js.map +1 -1
  77. package/dist/Errors/catalog/CallingDeviceError.js +2 -2
  78. package/dist/Errors/catalog/CallingDeviceError.js.map +1 -1
  79. package/dist/Errors/catalog/ExtendedError.js +3 -3
  80. package/dist/Errors/catalog/ExtendedError.js.map +1 -1
  81. package/dist/Errors/catalog/LineError.js +2 -2
  82. package/dist/Errors/catalog/LineError.js.map +1 -1
  83. package/dist/Errors/index.js.map +1 -1
  84. package/dist/Errors/types.js.map +1 -1
  85. package/dist/Events/impl/index.js +2 -2
  86. package/dist/Events/impl/index.js.map +1 -1
  87. package/dist/Events/types.js.map +1 -1
  88. package/dist/Logger/index.js.map +1 -1
  89. package/dist/Logger/index.test.js.map +1 -1
  90. package/dist/Logger/types.js.map +1 -1
  91. package/dist/Metrics/index.js +221 -104
  92. package/dist/Metrics/index.js.map +1 -1
  93. package/dist/Metrics/index.test.js +112 -23
  94. package/dist/Metrics/index.test.js.map +1 -1
  95. package/dist/Metrics/types.js +15 -1
  96. package/dist/Metrics/types.js.map +1 -1
  97. package/dist/SDKConnector/index.js +0 -1
  98. package/dist/SDKConnector/index.js.map +1 -1
  99. package/dist/SDKConnector/index.test.js.map +1 -1
  100. package/dist/SDKConnector/types.js.map +1 -1
  101. package/dist/SDKConnector/utils.js.map +1 -1
  102. package/dist/SDKConnector/utils.test.js.map +1 -1
  103. package/dist/Voicemail/BroadworksBackendConnector.js +42 -39
  104. package/dist/Voicemail/BroadworksBackendConnector.js.map +1 -1
  105. package/dist/Voicemail/BroadworksBackendConnector.test.js +119 -120
  106. package/dist/Voicemail/BroadworksBackendConnector.test.js.map +1 -1
  107. package/dist/Voicemail/UcmBackendConnector.js +54 -47
  108. package/dist/Voicemail/UcmBackendConnector.js.map +1 -1
  109. package/dist/Voicemail/UcmBackendConnector.test.js +73 -74
  110. package/dist/Voicemail/UcmBackendConnector.test.js.map +1 -1
  111. package/dist/Voicemail/Voicemail.js +12 -11
  112. package/dist/Voicemail/Voicemail.js.map +1 -1
  113. package/dist/Voicemail/Voicemail.test.js +2 -2
  114. package/dist/Voicemail/Voicemail.test.js.map +1 -1
  115. package/dist/Voicemail/WxCallBackendConnector.js +78 -70
  116. package/dist/Voicemail/WxCallBackendConnector.js.map +1 -1
  117. package/dist/Voicemail/WxCallBackendConnector.test.js +184 -185
  118. package/dist/Voicemail/WxCallBackendConnector.test.js.map +1 -1
  119. package/dist/Voicemail/constants.js.map +1 -1
  120. package/dist/Voicemail/types.js.map +1 -1
  121. package/dist/Voicemail/voicemailFixture.js.map +1 -1
  122. package/dist/api.js.map +1 -1
  123. package/dist/common/Utils.js +84 -65
  124. package/dist/common/Utils.js.map +1 -1
  125. package/dist/common/Utils.test.js +111 -117
  126. package/dist/common/Utils.test.js.map +1 -1
  127. package/dist/common/constants.js.map +1 -1
  128. package/dist/common/index.js.map +1 -1
  129. package/dist/common/testUtil.js +1 -1
  130. package/dist/common/testUtil.js.map +1 -1
  131. package/dist/common/types.js.map +1 -1
  132. package/dist/index.js +5 -5
  133. package/dist/index.js.map +1 -1
  134. package/dist/module/CallHistory/CallHistory.js +4 -0
  135. package/dist/module/CallSettings/UcmBackendConnector.js +1 -0
  136. package/dist/module/CallSettings/WxCallBackendConnector.js +7 -0
  137. package/dist/module/CallingClient/CallingClient.js +174 -32
  138. package/dist/module/CallingClient/calling/call.js +79 -43
  139. package/dist/module/CallingClient/constants.js +8 -4
  140. package/dist/module/CallingClient/line/index.js +3 -3
  141. package/dist/module/CallingClient/registration/register.js +34 -10
  142. package/dist/module/CallingClient/registration/webWorker.js +17 -3
  143. package/dist/module/CallingClient/registration/webWorkerStr.js +19 -3
  144. package/dist/module/CallingClient/windowsChromiumIceWarmupUtils.js +59 -0
  145. package/dist/module/Contacts/ContactsClient.js +23 -17
  146. package/dist/module/Contacts/constants.js +1 -1
  147. package/dist/module/Metrics/index.js +142 -55
  148. package/dist/module/Metrics/types.js +14 -0
  149. package/dist/module/Voicemail/BroadworksBackendConnector.js +3 -0
  150. package/dist/module/Voicemail/UcmBackendConnector.js +6 -0
  151. package/dist/module/Voicemail/WxCallBackendConnector.js +8 -0
  152. package/dist/module/common/Utils.js +27 -10
  153. package/dist/types/CallHistory/CallHistory.d.ts.map +1 -1
  154. package/dist/types/CallSettings/UcmBackendConnector.d.ts.map +1 -1
  155. package/dist/types/CallSettings/WxCallBackendConnector.d.ts.map +1 -1
  156. package/dist/types/CallingClient/CallingClient.d.ts +12 -1
  157. package/dist/types/CallingClient/CallingClient.d.ts.map +1 -1
  158. package/dist/types/CallingClient/calling/call.d.ts.map +1 -1
  159. package/dist/types/CallingClient/calling/types.d.ts +2 -1
  160. package/dist/types/CallingClient/calling/types.d.ts.map +1 -1
  161. package/dist/types/CallingClient/constants.d.ts +8 -4
  162. package/dist/types/CallingClient/constants.d.ts.map +1 -1
  163. package/dist/types/CallingClient/line/index.d.ts.map +1 -1
  164. package/dist/types/CallingClient/registration/register.d.ts +1 -0
  165. package/dist/types/CallingClient/registration/register.d.ts.map +1 -1
  166. package/dist/types/CallingClient/registration/webWorker.d.ts +2 -1
  167. package/dist/types/CallingClient/registration/webWorker.d.ts.map +1 -1
  168. package/dist/types/CallingClient/registration/webWorkerStr.d.ts +1 -1
  169. package/dist/types/CallingClient/registration/webWorkerStr.d.ts.map +1 -1
  170. package/dist/types/CallingClient/windowsChromiumIceWarmupUtils.d.ts +5 -0
  171. package/dist/types/CallingClient/windowsChromiumIceWarmupUtils.d.ts.map +1 -0
  172. package/dist/types/Contacts/ContactsClient.d.ts.map +1 -1
  173. package/dist/types/Contacts/constants.d.ts +1 -1
  174. package/dist/types/Contacts/constants.d.ts.map +1 -1
  175. package/dist/types/Metrics/index.d.ts.map +1 -1
  176. package/dist/types/Metrics/types.d.ts +18 -3
  177. package/dist/types/Metrics/types.d.ts.map +1 -1
  178. package/dist/types/Voicemail/BroadworksBackendConnector.d.ts.map +1 -1
  179. package/dist/types/Voicemail/UcmBackendConnector.d.ts.map +1 -1
  180. package/dist/types/Voicemail/WxCallBackendConnector.d.ts.map +1 -1
  181. package/dist/types/common/Utils.d.ts.map +1 -1
  182. package/dist/types/common/types.d.ts +1 -0
  183. package/dist/types/common/types.d.ts.map +1 -1
  184. package/package.json +10 -8
@@ -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","_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":";;;;;;;;;;;;;;;;AACA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAEA,IAAAE,OAAA,GAAAF,OAAA;AASA,IAAAG,OAAA,GAAAC,sBAAA,CAAAJ,OAAA;AAA4B,SAAAK,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;AAE5B,IAAIqB,aAA6B;;AAEjC;AACA;AACA;AAFA,IAGMC,aAAa;EAOjB;AACF;AACA;AACA;EACE,SAAAA,cAAmBC,KAAe,EAAEC,SAA4B,EAAE;IAAA,IAAAC,gBAAA,CAAAR,OAAA,QAAAK,aAAA;IAAA,IAAAN,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAChES,eAAG,CAACC,IAAI,CAAC,gCAAgC,EAAE;MAACC,IAAI,EAAEC;IAAW,CAAC,CAAC;IAC/D,IAAI,CAACN,KAAK,GAAGA,KAAK;IAClB,IAAI,CAACO,gBAAgB,GAAGN,SAAS;EACnC;EAAC,IAAAO,aAAA,CAAAd,OAAA,EAAAK,aAAA;IAAAU,GAAA;IAAAC,KAAA,EAED,SAAAC,wBACEC,IAAkB,EAClBC,YAA+B,EAC/BC,IAAiB,EACjBC,aAAqB,EACrBC,WAAmB,EACnB;MAAA,IAAAC,gBAAA,EAAAC,qBAAA,EAAAC,iBAAA,EAAAC,qBAAA,EAAAC,iBAAA,EAAAC,qBAAA;MACA,IAAMC,UAAU,GAAG;QACjBC,IAAI,EAAE;UACJX,YAAY,EAAZA,YAAY;UACZY,SAAS,GAAAR,gBAAA,GAAE,IAAI,CAACS,UAAU,cAAAT,gBAAA,wBAAAC,qBAAA,GAAfD,gBAAA,CAAiBU,MAAM,cAAAT,qBAAA,uBAAvBA,qBAAA,CAAyBU,QAAQ;UAC5CC,iBAAiB,EAAE,IAAI,CAACtB;QAC1B,CAAC;QACDuB,MAAM,EAAE;UACNC,UAAU,GAAAZ,iBAAA,GAAE,IAAI,CAACO,UAAU,cAAAP,iBAAA,wBAAAC,qBAAA,GAAfD,iBAAA,CAAiBQ,MAAM,cAAAP,qBAAA,uBAAvBA,qBAAA,CAAyBY,eAAe;UACpDC,UAAU,GAAAZ,iBAAA,GAAE,IAAI,CAACK,UAAU,cAAAL,iBAAA,wBAAAC,qBAAA,GAAfD,iBAAA,CAAiBM,MAAM,cAAAL,qBAAA,uBAAvBA,qBAAA,CAAyBY,GAAG;UACxCC,mBAAmB,EAAEC,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAIC,kBAAO;UAC/DxB,aAAa,EAAbA,aAAa;UACbC,WAAW,EAAXA;QACF,CAAC;QACDF,IAAI,EAAJA;MACF,CAAC;MAED,IAAIS,UAAU,EAAE;QACd,IAAI,CAACvB,KAAK,CAACwC,QAAQ,CAACC,OAAO,CAACC,mBAAmB,CAAC9B,IAAI,EAAEW,UAAU,CAAC;MACnE;IACF;EAAC;IAAAd,GAAA;IAAAC,KAAA,EAED,SAAAiC,uBACE/B,IAAkB,EAClBgC,MAAc,EACd9B,IAAiB,EACjB+B,UAAmB,EACnBC,UAAmB,EACnBC,aAAsB,EACtBC,KAAc,EACdC,MAAe,EACfC,yBAAkC,EAClC;MAAA,IAAAC,iBAAA,EAAAC,qBAAA,EAAAC,iBAAA,EAAAC,qBAAA,EAAAC,iBAAA,EAAAC,qBAAA;MACA,IAAIC,IAAI;MAER,IAAMC,UAAU,GAAG;QACjBlC,IAAI,EAAE;UACJoB,MAAM,EAANA,MAAM;UACNnB,SAAS,GAAA0B,iBAAA,GAAE,IAAI,CAACzB,UAAU,cAAAyB,iBAAA,wBAAAC,qBAAA,GAAfD,iBAAA,CAAiBxB,MAAM,cAAAyB,qBAAA,uBAAvBA,qBAAA,CAAyBxB,QAAQ;UAC5CC,iBAAiB,EAAE,IAAI,CAACtB;QAC1B,CAAC;QACDuB,MAAM,EAAE;UACNC,UAAU,GAAAsB,iBAAA,GAAE,IAAI,CAAC3B,UAAU,cAAA2B,iBAAA,wBAAAC,qBAAA,GAAfD,iBAAA,CAAiB1B,MAAM,cAAA2B,qBAAA,uBAAvBA,qBAAA,CAAyBtB,eAAe;UACpDC,UAAU,GAAAsB,iBAAA,GAAE,IAAI,CAAC7B,UAAU,cAAA6B,iBAAA,wBAAAC,qBAAA,GAAfD,iBAAA,CAAiB5B,MAAM,cAAA6B,qBAAA,uBAAvBA,qBAAA,CAAyBtB,GAAG;UACxCC,mBAAmB,EAAEC,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAIC,kBAAO;UAC/DoB,cAAc,EAAEZ,aAAa;UAC7BG,yBAAyB,EAAzBA,yBAAyB;UACzBU,WAAW,EAAEf,UAAU;UACvBgB,WAAW,EAAEf,UAAU;UACvBgB,OAAO,EAAEb;QACX,CAAC;QACDnC,IAAI,EAAJA;MACF,CAAC;MAED,QAAQF,IAAI;QACV,KAAKmD,oBAAY,CAACC,mBAAmB;UAAE;YACrCP,IAAI,GAAGC,UAAU;YAEjB;UACF;QAEA,KAAKK,oBAAY,CAACE,kBAAkB;UAAE;YACpCR,IAAI,GAAArE,aAAA,CAAAA,aAAA,KACCsE,UAAU;cACb5B,MAAM,EAAA1C,aAAA,CAAAA,aAAA,KACDsE,UAAU,CAAC5B,MAAM;gBACpBoC,KAAK,EAAElB;cAAK;YACb,EACF;YAED;UACF;MACF;MAEA,IAAIS,IAAI,EAAE;QACR,IAAI,CAACzD,KAAK,CAACwC,QAAQ,CAACC,OAAO,CAACC,mBAAmB,CAAC9B,IAAI,EAAE6C,IAAI,CAAC;MAC7D;IACF;;IAEA;AACF;AACA;EAFE;IAAAhD,GAAA;IAAAC,KAAA,EAGA,SAAAyD,cAAqBzC,UAAuB,EAAE;MAC5C,IAAI,CAACA,UAAU,GAAGA,UAAU;IAC9B;;IAEA;AACF;AACA;AACA;AACA;AACA;AACA;EANE;IAAAjB,GAAA;IAAAC,KAAA,EAOA,SAAA0D,uBACExD,IAAkB,EAClBC,YAAoB,EACpBC,IAAiB,EACjBuD,UAAkB,EAClBC,YAAoB,EACpBC,WAAmB,EACnB1B,UAAmB,EACnB;MAAA,IAAA2B,iBAAA,EAAAC,qBAAA,EAAAC,iBAAA,EAAAC,qBAAA,EAAAC,iBAAA,EAAAC,qBAAA;MACA,IAAMpB,IAAI,GAAG;QACXjC,IAAI,EAAE;UACJoB,MAAM,EAAE/B,YAAY;UACpBY,SAAS,GAAA+C,iBAAA,GAAE,IAAI,CAAC9C,UAAU,cAAA8C,iBAAA,wBAAAC,qBAAA,GAAfD,iBAAA,CAAiB7C,MAAM,cAAA8C,qBAAA,uBAAvBA,qBAAA,CAAyB7C,QAAQ;UAC5CC,iBAAiB,EAAEiD,uBAAgB,CAACC;QACtC,CAAC;QACDjD,MAAM,EAAE;UACNC,UAAU,GAAA2C,iBAAA,GAAE,IAAI,CAAChD,UAAU,cAAAgD,iBAAA,wBAAAC,qBAAA,GAAfD,iBAAA,CAAiB/C,MAAM,cAAAgD,qBAAA,uBAAvBA,qBAAA,CAAyB3C,eAAe;UACpDC,UAAU,GAAA2C,iBAAA,GAAE,IAAI,CAAClD,UAAU,cAAAkD,iBAAA,wBAAAC,qBAAA,GAAfD,iBAAA,CAAiBjD,MAAM,cAAAkD,qBAAA,uBAAvBA,qBAAA,CAAyB3C,GAAG;UACxCC,mBAAmB,EAAEC,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAIC,kBAAO;UAC/DyC,WAAW,EAAEX,UAAU;UACvBY,aAAa,EAAEX,YAAY;UAC3BY,YAAY,EAAEX,WAAW;UACzBX,WAAW,EAAEf;QACf,CAAC;QACD/B,IAAI,EAAJA;MACF,CAAC;MAED,IAAI,CAACd,KAAK,CAACwC,QAAQ,CAACC,OAAO,CAACC,mBAAmB,CAAC9B,IAAI,EAAE6C,IAAI,CAAC;IAC7D;;IAEA;AACF;AACA;AACA;AACA;AACA;EALE;IAAAhD,GAAA;IAAAC,KAAA,EAMA,SAAAyE,0BACEvE,IAAkB,EAClBC,YAAoB,EACpBC,IAAiB,EACjBsE,aAA4B,EAC5BvC,UAAmB,EACnB;MAAA,IAAAwC,iBAAA,EAAAC,qBAAA,EAAAC,iBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA;MACA,IAAMjC,IAAI,GAAG;QACXjC,IAAI,EAAE;UACJoB,MAAM,EAAE/B,YAAY;UACpBY,SAAS,GAAA4D,iBAAA,GAAE,IAAI,CAAC3D,UAAU,cAAA2D,iBAAA,wBAAAC,qBAAA,GAAfD,iBAAA,CAAiB1D,MAAM,cAAA2D,qBAAA,uBAAvBA,qBAAA,CAAyB1D,QAAQ;UAC5CC,iBAAiB,EAAEiD,uBAAgB,CAACC;QACtC,CAAC;QACDjD,MAAM,EAAE;UACNC,UAAU,GAAAwD,iBAAA,GAAE,IAAI,CAAC7D,UAAU,cAAA6D,iBAAA,wBAAAC,qBAAA,GAAfD,iBAAA,CAAiB5D,MAAM,cAAA6D,qBAAA,uBAAvBA,qBAAA,CAAyBxD,eAAe;UACpDC,UAAU,GAAAwD,kBAAA,GAAE,IAAI,CAAC/D,UAAU,cAAA+D,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB9D,MAAM,cAAA+D,qBAAA,uBAAvBA,qBAAA,CAAyBxD,GAAG;UACxCC,mBAAmB,EAAEC,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAIC,kBAAO;UAC/DoD,6BAA6B,EAAEP,aAAa,CAACQ,OAAO,CAACC,MAAM;UAC3DC,2BAA2B,EAAEV,aAAa,CAACQ,OAAO,CAACG,IAAI,CAACC,IAAI,CAAC,GAAG,CAAC;UACjEC,4BAA4B,EAAEb,aAAa,CAACc,MAAM,CAACL,MAAM;UACzDM,0BAA0B,EAAEf,aAAa,CAACc,MAAM,CAACH,IAAI,CAACC,IAAI,CAAC,GAAG,CAAC;UAC/DpC,WAAW,EAAEf;QACf,CAAC;QACD/B,IAAI,EAAJA;MACF,CAAC;MAED,IAAI,CAACd,KAAK,CAACwC,QAAQ,CAACC,OAAO,CAACC,mBAAmB,CAAC9B,IAAI,EAAE6C,IAAI,CAAC;IAC7D;;IAEA;AACF;AACA;AACA;AACA;AACA;EALE;IAAAhD,GAAA;IAAAC,KAAA,EAMA,SAAA0F,yBACExF,IAAkB,EAClBC,YAAwB,EACxBC,IAAiB,EACjBuF,MAAc,EACdC,UAAuB,EACvBzD,UAAkB,EAClB0D,cAAuB,EACvBC,WAA4C,EAC5C;MACA,IAAI/C,IAAI;MAER,QAAQ7C,IAAI;QACV,KAAKmD,oBAAY,CAAC0C,YAAY;UAAE;YAAA,IAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA;YAC9BtD,IAAI,GAAG;cACLjC,IAAI,EAAE;gBACJoB,MAAM,EAAE/B,YAAY;gBACpBY,SAAS,GAAAiF,kBAAA,GAAE,IAAI,CAAChF,UAAU,cAAAgF,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB/E,MAAM,cAAAgF,qBAAA,uBAAvBA,qBAAA,CAAyB/E,QAAQ;gBAC5CC,iBAAiB,EAAE,IAAI,CAACtB;cAC1B,CAAC;cACDuB,MAAM,EAAE;gBACNC,UAAU,GAAA6E,kBAAA,GAAE,IAAI,CAAClF,UAAU,cAAAkF,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiBjF,MAAM,cAAAkF,qBAAA,uBAAvBA,qBAAA,CAAyB7E,eAAe;gBACpDC,UAAU,GAAA6E,kBAAA,GAAE,IAAI,CAACpF,UAAU,cAAAoF,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiBnF,MAAM,cAAAoF,qBAAA,uBAAvBA,qBAAA,CAAyB7E,GAAG;gBACxCC,mBAAmB,EAAEC,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAIC,kBAAO;gBAC/DyE,UAAU,EAAEX,MAAM;gBAClBY,WAAW,EAAEX,UAAU;gBACvBzD,UAAU,EAAVA;cACF,CAAC;cACD/B,IAAI,EAAJA;YACF,CAAC;YACD;UACF;QAEA,KAAKiD,oBAAY,CAACmD,kBAAkB;UAAE;YAAA,IAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA,EAAAC,UAAA,EAAAC,WAAA;YACpC,IAAIC,SAAS;YACb,IAAInB,WAAW,EAAE;cACfmB,SAAS,GAAG;gBACVC,GAAG,EAAEpB,WAAW,CAACqB,QAAQ,CAAC,CAAC,CAACC,OAAO;gBACnChH,IAAI,EAAE0F,WAAW,CAACqB,QAAQ,CAAC,CAAC,CAAC/G;cAC/B,CAAC;YACH;YACA2C,IAAI,GAAG;cACLjC,IAAI,EAAE;gBACJoB,MAAM,EAAE/B,YAAY;gBACpBY,SAAS,GAAA0F,kBAAA,GAAE,IAAI,CAACzF,UAAU,cAAAyF,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiBxF,MAAM,cAAAyF,qBAAA,uBAAvBA,qBAAA,CAAyBxF,QAAQ;gBAC5CC,iBAAiB,EAAE,IAAI,CAACtB;cAC1B,CAAC;cACDuB,MAAM,EAAE;gBACNC,UAAU,GAAAsF,kBAAA,GAAE,IAAI,CAAC3F,UAAU,cAAA2F,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB1F,MAAM,cAAA2F,qBAAA,uBAAvBA,qBAAA,CAAyBtF,eAAe;gBACpDC,UAAU,GAAAsF,kBAAA,GAAE,IAAI,CAAC7F,UAAU,cAAA6F,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB5F,MAAM,cAAA6F,qBAAA,uBAAvBA,qBAAA,CAAyBtF,GAAG;gBACxCC,mBAAmB,EAAEC,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAIC,kBAAO;gBAC/DyE,UAAU,EAAEX,MAAM;gBAClBY,WAAW,EAAEX,UAAU;gBACvBzD,UAAU,EAAVA,UAAU;gBACVqB,KAAK,GAAAuD,UAAA,GAAEE,SAAS,cAAAF,UAAA,uBAATA,UAAA,CAAWG,GAAG;gBACrBG,UAAU,GAAAL,WAAA,GAAEC,SAAS,cAAAD,WAAA,uBAATA,WAAA,CAAW5G;cACzB,CAAC;cACDA,IAAI,EAAJA;YACF,CAAC;YAED;UACF;QAEA,KAAKiD,oBAAY,CAACiE,eAAe;UAAE;YAAA,IAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA,EAAAC,WAAA,EAAAC,WAAA;YACjC,IAAIb,WAAS;YACb,IAAInB,WAAW,EAAE;cACfmB,WAAS,GAAG;gBACVC,GAAG,EAAEpB,WAAW,CAACqB,QAAQ,CAAC,CAAC,CAACC,OAAO;gBACnChH,IAAI,EAAE0F,WAAW,CAACqB,QAAQ,CAAC,CAAC,CAAC/G;cAC/B,CAAC;YACH;YACA2C,IAAI,GAAG;cACLjC,IAAI,EAAE;gBACJoB,MAAM,EAAE/B,YAAY;gBACpBY,SAAS,GAAAwG,kBAAA,GAAE,IAAI,CAACvG,UAAU,cAAAuG,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiBtG,MAAM,cAAAuG,qBAAA,uBAAvBA,qBAAA,CAAyBtG,QAAQ;gBAC5CC,iBAAiB,EAAE,IAAI,CAACtB;cAC1B,CAAC;cACDuB,MAAM,EAAE;gBACNC,UAAU,GAAAoG,kBAAA,GAAE,IAAI,CAACzG,UAAU,cAAAyG,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiBxG,MAAM,cAAAyG,qBAAA,uBAAvBA,qBAAA,CAAyBpG,eAAe;gBACpDC,UAAU,GAAAoG,kBAAA,GAAE,IAAI,CAAC3G,UAAU,cAAA2G,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB1G,MAAM,cAAA2G,qBAAA,uBAAvBA,qBAAA,CAAyBpG,GAAG;gBACxCC,mBAAmB,EAAEC,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAIC,kBAAO;gBAC/DyE,UAAU,EAAEX,MAAM;gBAClBY,WAAW,EAAEX,UAAU;gBACvBzD,UAAU,EAAVA,UAAU;gBACV4F,eAAe,EAAElC,cAAc;gBAC/BrC,KAAK,GAAAqE,WAAA,GAAEZ,WAAS,cAAAY,WAAA,uBAATA,WAAA,CAAWX,GAAG;gBACrBG,UAAU,GAAAS,WAAA,GAAEb,WAAS,cAAAa,WAAA,uBAATA,WAAA,CAAW1H;cACzB,CAAC;cACDA,IAAI,EAAJA;YACF,CAAC;YACD;UACF;QAEA;UACEX,eAAG,CAACuI,IAAI,CAAC,mEAAmE,EAAE;YAC5ErI,IAAI,EAAEC,sBAAW;YACjBqI,MAAM,EAAE;UACV,CAAC,CAAC;UACF;MACJ;MAEA,IAAIlF,IAAI,EAAE;QACR,IAAI,CAACzD,KAAK,CAACwC,QAAQ,CAACC,OAAO,CAACC,mBAAmB,CAAC9B,IAAI,EAAE6C,IAAI,CAAC;MAC7D;IACF;;IAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EAPE;IAAAhD,GAAA;IAAAC,KAAA,EAQA,SAAAkI,iBACEhI,IAAkB,EAClBC,YAAoB,EACpBC,IAAiB,EACjBmC,MAAc,EACdF,aAA4B,EAC5B8F,SAAqB,EACrB;MACA,IAAIpF,IAAI;MAER,QAAQ7C,IAAI;QACV,KAAKmD,oBAAY,CAAC+E,IAAI;UAAE;YAAA,IAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA;YACtB3F,IAAI,GAAG;cACLjC,IAAI,EAAE;gBACJoB,MAAM,EAAE/B,YAAY;gBACpBY,SAAS,GAAAsH,kBAAA,GAAE,IAAI,CAACrH,UAAU,cAAAqH,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiBpH,MAAM,cAAAqH,qBAAA,uBAAvBA,qBAAA,CAAyBpH,QAAQ;gBAC5CC,iBAAiB,EAAE,IAAI,CAACtB;cAC1B,CAAC;cACDuB,MAAM,EAAE;gBACNC,UAAU,GAAAkH,kBAAA,GAAE,IAAI,CAACvH,UAAU,cAAAuH,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiBtH,MAAM,cAAAuH,qBAAA,uBAAvBA,qBAAA,CAAyBlH,eAAe;gBACpDC,UAAU,GAAAkH,kBAAA,GAAE,IAAI,CAACzH,UAAU,cAAAyH,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiBxH,MAAM,cAAAyH,qBAAA,uBAAvBA,qBAAA,CAAyBlH,GAAG;gBACxCC,mBAAmB,EAAEC,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAIC,kBAAO;gBAC/DuB,OAAO,EAAEb,MAAM;gBACfU,cAAc,EAAEZ;cAClB,CAAC;cACDjC,IAAI,EAAJA;YACF,CAAC;YACD;UACF;QAEA,KAAKiD,oBAAY,CAACsF,UAAU;UAAE;YAC5B,IAAIR,SAAS,EAAE;cAAA,IAAAS,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA;cACblG,IAAI,GAAG;gBACLjC,IAAI,EAAE;kBACJoB,MAAM,EAAE/B,YAAY;kBACpBY,SAAS,GAAA6H,kBAAA,GAAE,IAAI,CAAC5H,UAAU,cAAA4H,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB3H,MAAM,cAAA4H,qBAAA,uBAAvBA,qBAAA,CAAyB3H,QAAQ;kBAC5CC,iBAAiB,EAAE,IAAI,CAACtB;gBAC1B,CAAC;gBACDuB,MAAM,EAAE;kBACNC,UAAU,GAAAyH,kBAAA,GAAE,IAAI,CAAC9H,UAAU,cAAA8H,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB7H,MAAM,cAAA8H,qBAAA,uBAAvBA,qBAAA,CAAyBzH,eAAe;kBACpDC,UAAU,GAAAyH,kBAAA,GAAE,IAAI,CAAChI,UAAU,cAAAgI,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB/H,MAAM,cAAAgI,qBAAA,uBAAvBA,qBAAA,CAAyBzH,GAAG;kBACxCC,mBAAmB,EAAEC,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAIC,kBAAO;kBAC/DuB,OAAO,EAAEb,MAAM;kBACfU,cAAc,EAAEZ,aAAa;kBAC7BmB,KAAK,EAAE2E,SAAS,CAACe,YAAY,CAAC,CAAC,CAAC9B,OAAO;kBACvCC,UAAU,EAAEc,SAAS,CAACe,YAAY,CAAC,CAAC,CAAC9I;gBACvC,CAAC;gBACDA,IAAI,EAAJA;cACF,CAAC;YACH;YACA;UACF;QAEA;UACEX,eAAG,CAACuI,IAAI,CAAC,mEAAmE,EAAE;YAC5ErI,IAAI,EAAEC,sBAAW;YACjBqI,MAAM,EAAE;UACV,CAAC,CAAC;UACF;MACJ;MAEA,IAAIlF,IAAI,EAAE;QACR,IAAI,CAACzD,KAAK,CAACwC,QAAQ,CAACC,OAAO,CAACC,mBAAmB,CAAC9B,IAAI,EAAE6C,IAAI,CAAC;MAC7D;IACF;;IAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EATE;IAAAhD,GAAA;IAAAC,KAAA,EAUA,SAAAmJ,kBACEjJ,IAAkB,EAClBC,YAAoB,EACpBC,IAAiB,EACjBmC,MAAc,EACdF,aAA4B,EAC5B+G,QAAiB,EACjBC,SAAkB,EAClBlB,SAAqB,EACrB;MACA,IAAIpF,IAAI;MAER,QAAQ7C,IAAI;QACV,KAAKmD,oBAAY,CAACiG,KAAK;UAAE;YAAA,IAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA;YACvB7G,IAAI,GAAG;cACLjC,IAAI,EAAE;gBACJoB,MAAM,EAAE/B,YAAY;gBACpBY,SAAS,GAAAwI,kBAAA,GAAE,IAAI,CAACvI,UAAU,cAAAuI,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiBtI,MAAM,cAAAuI,qBAAA,uBAAvBA,qBAAA,CAAyBtI,QAAQ;gBAC5CC,iBAAiB,EAAE,IAAI,CAACtB;cAC1B,CAAC;cACDuB,MAAM,EAAE;gBACNC,UAAU,GAAAoI,kBAAA,GAAE,IAAI,CAACzI,UAAU,cAAAyI,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiBxI,MAAM,cAAAyI,qBAAA,uBAAvBA,qBAAA,CAAyBpI,eAAe;gBACpDC,UAAU,GAAAoI,kBAAA,GAAE,IAAI,CAAC3I,UAAU,cAAA2I,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB1I,MAAM,cAAA2I,qBAAA,uBAAvBA,qBAAA,CAAyBpI,GAAG;gBACxCC,mBAAmB,EAAEC,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAIC,kBAAO;gBAC/DuB,OAAO,EAAEb,MAAM;gBACfU,cAAc,EAAEZ,aAAa;gBAC7BwH,mBAAmB,EAAET,QAAQ;gBAC7BU,oBAAoB,EAAET;cACxB,CAAC;cACDjJ,IAAI,EAAJA;YACF,CAAC;YACD;UACF;QAEA,KAAKiD,oBAAY,CAAC0G,WAAW;UAAE;YAC7B,IAAI5B,SAAS,EAAE;cAAA,IAAA6B,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA;cACbtH,IAAI,GAAG;gBACLjC,IAAI,EAAE;kBACJoB,MAAM,EAAE/B,YAAY;kBACpBY,SAAS,GAAAiJ,kBAAA,GAAE,IAAI,CAAChJ,UAAU,cAAAgJ,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB/I,MAAM,cAAAgJ,qBAAA,uBAAvBA,qBAAA,CAAyB/I,QAAQ;kBAC5CC,iBAAiB,EAAE,IAAI,CAACtB;gBAC1B,CAAC;gBACDuB,MAAM,EAAE;kBACNC,UAAU,GAAA6I,kBAAA,GAAE,IAAI,CAAClJ,UAAU,cAAAkJ,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiBjJ,MAAM,cAAAkJ,qBAAA,uBAAvBA,qBAAA,CAAyB7I,eAAe;kBACpDC,UAAU,GAAA6I,kBAAA,GAAE,IAAI,CAACpJ,UAAU,cAAAoJ,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiBnJ,MAAM,cAAAoJ,qBAAA,uBAAvBA,qBAAA,CAAyB7I,GAAG;kBACxCC,mBAAmB,EAAEC,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAIC,kBAAO;kBAC/DuB,OAAO,EAAEb,MAAM;kBACfU,cAAc,EAAEZ,aAAa;kBAC7BwH,mBAAmB,EAAET,QAAQ;kBAC7BU,oBAAoB,EAAET,SAAS;kBAC/B7F,KAAK,EAAE2E,SAAS,CAACe,YAAY,CAAC,CAAC,CAAC9B,OAAO;kBACvCC,UAAU,EAAEc,SAAS,CAACe,YAAY,CAAC,CAAC,CAAC9I;gBACvC,CAAC;gBACDA,IAAI,EAAJA;cACF,CAAC;YACH;YACA;UACF;QAEA;UACEX,eAAG,CAACuI,IAAI,CAAC,mEAAmE,EAAE;YAC5ErI,IAAI,EAAEC,sBAAW;YACjBqI,MAAM,EAAE;UACV,CAAC,CAAC;UACF;MACJ;MAEA,IAAIlF,IAAI,EAAE;QACR,IAAI,CAACzD,KAAK,CAACwC,QAAQ,CAACC,OAAO,CAACC,mBAAmB,CAAC9B,IAAI,EAAE6C,IAAI,CAAC;MAC7D;IACF;;IAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EAPE;IAAAhD,GAAA;IAAAC,KAAA,EAQA,SAAAsK,sBACEpK,IAAkB,EAClBC,YAAoB,EACpBC,IAAiB,EACjBmK,SAAkB,EAClBC,cAAuB,EACvBC,UAAmB,EACnB;MACA,IAAI1H,IAAI;MAER,QAAQ7C,IAAI;QACV,KAAKmD,oBAAY,CAACqH,SAAS;UAAE;YAAA,IAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA;YAC3B/H,IAAI,GAAG;cACLjC,IAAI,EAAE;gBACJoB,MAAM,EAAE/B,YAAY;gBACpBY,SAAS,GAAA4J,kBAAA,GAAE,IAAI,CAAC3J,UAAU,cAAA2J,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB1J,MAAM,cAAA2J,qBAAA,uBAAvBA,qBAAA,CAAyB1J,QAAQ;gBAC5C6J,UAAU,EAAER;cACd,CAAC;cACDnJ,MAAM,EAAE;gBACNC,UAAU,GAAAwJ,kBAAA,GAAE,IAAI,CAAC7J,UAAU,cAAA6J,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB5J,MAAM,cAAA6J,qBAAA,uBAAvBA,qBAAA,CAAyBxJ,eAAe;gBACpDG,mBAAmB,EACjB,OAAOC,OAAO,KAAK,WAAW,IAAIA,OAAO,CAACC,GAAG,CAACC,mBAAmB,GAC7DF,OAAO,CAACC,GAAG,CAACC,mBAAmB,GAC/BC;cACR,CAAC;cACDzB,IAAI,EAAJA;YACF,CAAC;YACD;UACF;QAEA,KAAKiD,oBAAY,CAAC2H,eAAe;UAAE;YAAA,IAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA;YACjCrI,IAAI,GAAG;cACLjC,IAAI,EAAE;gBACJoB,MAAM,EAAE/B,YAAY;gBACpBY,SAAS,GAAAkK,kBAAA,GAAE,IAAI,CAACjK,UAAU,cAAAiK,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiBhK,MAAM,cAAAiK,qBAAA,uBAAvBA,qBAAA,CAAyBhK,QAAQ;gBAC5C6J,UAAU,EAAER,SAAS;gBACrB/G,KAAK,EAAEgH,cAAc;gBACrBa,WAAW,EAAEZ;cACf,CAAC;cACDrJ,MAAM,EAAE;gBACNC,UAAU,GAAA8J,kBAAA,GAAE,IAAI,CAACnK,UAAU,cAAAmK,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiBlK,MAAM,cAAAmK,qBAAA,uBAAvBA,qBAAA,CAAyB9J,eAAe;gBACpDG,mBAAmB,EACjB,OAAOC,OAAO,KAAK,WAAW,IAAIA,OAAO,CAACC,GAAG,CAACC,mBAAmB,GAC7DF,OAAO,CAACC,GAAG,CAACC,mBAAmB,GAC/BC;cACR,CAAC;cACDzB,IAAI,EAAJA;YACF,CAAC;YACD;UACF;QAEA;UACEX,eAAG,CAACuI,IAAI,CAAC,mEAAmE,EAAE;YAC5ErI,IAAI,EAAEC,sBAAW;YACjBqI,MAAM,EAAE;UACV,CAAC,CAAC;UACF;MACJ;MACA,IAAIlF,IAAI,EAAE;QACR,IAAI,CAACzD,KAAK,CAACwC,QAAQ,CAACC,OAAO,CAACC,mBAAmB,CAAC9B,IAAI,EAAE6C,IAAI,CAAC;MAC7D;IACF;EAAC;IAAAhD,GAAA;IAAAC,KAAA,EAED,SAAAsL,gBACEpL,IAAkB,EAClBE,IAAiB,EACjBmC,MAAc,EACdF,aAA4B,EAC5B;MACA,IAAIU,IAAI;MAER,IAAI7C,IAAI,KAAKmD,oBAAY,CAACkI,WAAW,IAAIrL,IAAI,KAAKmD,oBAAY,CAACmI,YAAY,EAAE;QAAA,IAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA,EAAAC,kBAAA,EAAAC,qBAAA;QAC3E/I,IAAI,GAAG;UACLjC,IAAI,EAAE;YACJC,SAAS,GAAA0K,kBAAA,GAAE,IAAI,CAACzK,UAAU,cAAAyK,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiBxK,MAAM,cAAAyK,qBAAA,uBAAvBA,qBAAA,CAAyBxK,QAAQ;YAC5CC,iBAAiB,EAAE,IAAI,CAACtB;UAC1B,CAAC;UACDuB,MAAM,EAAE;YACNC,UAAU,GAAAsK,kBAAA,GAAE,IAAI,CAAC3K,UAAU,cAAA2K,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB1K,MAAM,cAAA2K,qBAAA,uBAAvBA,qBAAA,CAAyBtK,eAAe;YACpDC,UAAU,GAAAsK,kBAAA,GAAE,IAAI,CAAC7K,UAAU,cAAA6K,kBAAA,wBAAAC,qBAAA,GAAfD,kBAAA,CAAiB5K,MAAM,cAAA6K,qBAAA,uBAAvBA,qBAAA,CAAyBtK,GAAG;YACxCC,mBAAmB,EAAEC,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAIC,kBAAO;YAC/DuB,OAAO,EAAEb,MAAM;YACfU,cAAc,EAAEZ;UAClB,CAAC;UACDjC,IAAI,EAAJA;QACF,CAAC;MACH,CAAC,MAAM;QACLX,eAAG,CAACuI,IAAI,CAAC,mEAAmE,EAAE;UAC5ErI,IAAI,EAAEC,sBAAW;UACjBqI,MAAM,EAAE;QACV,CAAC,CAAC;MACJ;MAEA,IAAIlF,IAAI,EAAE;QACR,IAAI,CAACzD,KAAK,CAACwC,QAAQ,CAACC,OAAO,CAACC,mBAAmB,CAAC9B,IAAI,EAAE6C,IAAI,CAAC;MAC7D;IACF;EAAC;EAAA,OAAA1D,aAAA;AAAA;AAGH;AACA;AACA;AACA;AACO,IAAM0M,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA,GAAG,SAAnBA,gBAAgBA,CAC3BzM,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,IAAA6M,QAAA,GAAAD,OAAA,CAAAhN,OAAA,GAEa+M,gBAAgB","ignoreList":[]}
@@ -23,16 +23,15 @@ var webex = (0, _testUtil.getTestUtilsWebex)();
23
23
  describe('CALLING: Metric tests', function () {
24
24
  var metricManager = (0, _index.getMetricManager)(webex, _types3.ServiceIndicator.CALLING);
25
25
  var mockDeviceInfo = (0, _testUtil.getMockDeviceInfo)();
26
- var mockSubmitClientMetric = jest.fn();
26
+ var submitClientMetricSpy = jest.spyOn(webex.internal.metrics, 'submitClientMetrics');
27
27
  var MOCK_VERSION_NUMBER = '1.0.0';
28
28
  var originalEnv = process.env;
29
- webex.internal.metrics.submitClientMetrics = mockSubmitClientMetric;
30
29
  var mockCallId = '123456';
31
30
  var mockCorrelationId = '0931237';
32
31
  var mockCallAction = 'S_SEND_CALL_SETUP';
33
32
  var mockMediaAction = 'S_SEND_ROAP_OFFER';
34
33
  beforeEach(function () {
35
- mockSubmitClientMetric.mockClear();
34
+ submitClientMetricSpy.mockClear();
36
35
  process.env = _objectSpread(_objectSpread({}, originalEnv), {}, {
37
36
  CALLING_SDK_VERSION: MOCK_VERSION_NUMBER
38
37
  });
@@ -66,7 +65,7 @@ describe('CALLING: Metric tests', function () {
66
65
  type: _types.METRIC_TYPE.BEHAVIORAL
67
66
  };
68
67
  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);
69
- expect(mockSubmitClientMetric).toBeCalledOnceWith(_types.METRIC_EVENT.REGISTRATION, expectedData);
68
+ expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.REGISTRATION, expectedData);
70
69
  });
71
70
  it('submit registration failure metric', function () {
72
71
  metricManager.setDeviceInfo(mockDeviceInfo);
@@ -95,12 +94,42 @@ describe('CALLING: Metric tests', function () {
95
94
  type: _types.METRIC_TYPE.BEHAVIORAL
96
95
  };
97
96
  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);
98
- expect(mockSubmitClientMetric).toBeCalledOnceWith(_types.METRIC_EVENT.REGISTRATION_ERROR, expectedData);
97
+ expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.REGISTRATION_ERROR, expectedData);
98
+ });
99
+ it('submit keepalive failure metric', function () {
100
+ metricManager.setDeviceInfo(mockDeviceInfo);
101
+ var clientError = (0, _CallingDeviceError.createClientError)('', {}, _types2.ERROR_TYPE.DEFAULT, _types3.RegistrationStatus.INACTIVE);
102
+ var err = {};
103
+ err.context = {};
104
+ err.message = 'Unknown Error';
105
+ err.type = _types2.ERROR_TYPE.NOT_FOUND;
106
+ clientError.setError(err);
107
+ var expectedData = {
108
+ tags: {
109
+ action: _types.REG_ACTION.KEEPALIVE_FAILURE,
110
+ device_id: mockDeviceInfo.device.deviceId,
111
+ service_indicator: _types3.ServiceIndicator.CALLING
112
+ },
113
+ fields: {
114
+ device_url: mockDeviceInfo.device.clientDeviceUri,
115
+ mobius_url: mockDeviceInfo.device.uri,
116
+ calling_sdk_version: MOCK_VERSION_NUMBER,
117
+ reg_source: _constants.REGISTRATION_UTIL,
118
+ server_type: 'BACKUP',
119
+ trackingId: 'webex-js-sdk_06bafdd0-2f9b-4cd7-b438-9c0d95ecec9b_15',
120
+ keepalive_count: 1,
121
+ error: clientError.getError().message,
122
+ error_type: clientError.getError().type
123
+ },
124
+ type: _types.METRIC_TYPE.BEHAVIORAL
125
+ };
126
+ metricManager.submitRegistrationMetric(_types.METRIC_EVENT.KEEPALIVE_ERROR, _types.REG_ACTION.KEEPALIVE_FAILURE, _types.METRIC_TYPE.BEHAVIORAL, _constants.REGISTRATION_UTIL, 'BACKUP', 'webex-js-sdk_06bafdd0-2f9b-4cd7-b438-9c0d95ecec9b_15', 1, clientError);
127
+ expect(submitClientMetricSpy).toHaveBeenCalledWith(_types.METRIC_EVENT.KEEPALIVE_ERROR, expectedData);
99
128
  });
100
129
  it('submit unknown registration metric', function () {
101
130
  var logSpy = jest.spyOn(_Logger.default, 'warn');
102
131
  metricManager.submitRegistrationMetric('invalidMetricName', _types.REG_ACTION.REGISTER, _types.METRIC_TYPE.OPERATIONAL, _constants.REGISTRATION_UTIL, 'PRIMARY', undefined, undefined, undefined);
103
- expect(mockSubmitClientMetric).not.toBeCalled();
132
+ expect(submitClientMetricSpy).not.toBeCalled();
104
133
  expect(logSpy).toBeCalledOnceWith('Invalid metric name received. Rejecting request to submit metric.', {
105
134
  file: 'metric',
106
135
  method: 'submitRegistrationMetric'
@@ -128,7 +157,7 @@ describe('CALLING: Metric tests', function () {
128
157
  type: _types.METRIC_TYPE.BEHAVIORAL
129
158
  };
130
159
  metricManager.submitCallMetric(_types.METRIC_EVENT.CALL, mockCallAction, _types.METRIC_TYPE.BEHAVIORAL, mockCallId, mockCorrelationId);
131
- expect(mockSubmitClientMetric).toBeCalledOnceWith(_types.METRIC_EVENT.CALL, expectedData);
160
+ expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.CALL, expectedData);
132
161
  });
133
162
  it('submit call failure metric', function () {
134
163
  var callError = (0, _CallError.createCallError)('', {}, _types2.ERROR_TYPE.DEFAULT, mockCorrelationId, _types2.ERROR_LAYER.CALL_CONTROL);
@@ -155,12 +184,12 @@ describe('CALLING: Metric tests', function () {
155
184
  type: _types.METRIC_TYPE.BEHAVIORAL
156
185
  };
157
186
  metricManager.submitCallMetric(_types.METRIC_EVENT.CALL_ERROR, mockCallAction, _types.METRIC_TYPE.BEHAVIORAL, mockCallId, mockCorrelationId, callError);
158
- expect(mockSubmitClientMetric).toBeCalledOnceWith(_types.METRIC_EVENT.CALL_ERROR, expectedData);
187
+ expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.CALL_ERROR, expectedData);
159
188
  });
160
189
  it('submit unknown call metric', function () {
161
190
  var logSpy = jest.spyOn(_Logger.default, 'warn');
162
191
  metricManager.submitCallMetric('invalidMetricName', mockCallAction, _types.METRIC_TYPE.OPERATIONAL, mockCallId, mockCorrelationId);
163
- expect(mockSubmitClientMetric).not.toBeCalled();
192
+ expect(submitClientMetricSpy).not.toBeCalled();
164
193
  expect(logSpy).toBeCalledOnceWith('Invalid metric name received. Rejecting request to submit metric.', {
165
194
  file: 'metric',
166
195
  method: 'submitCallMetric'
@@ -191,7 +220,7 @@ describe('CALLING: Metric tests', function () {
191
220
  type: _types.METRIC_TYPE.BEHAVIORAL
192
221
  };
193
222
  metricManager.submitMediaMetric(_types.METRIC_EVENT.MEDIA, mockMediaAction, _types.METRIC_TYPE.BEHAVIORAL, mockCallId, mockCorrelationId, mockSdp, mockSdp);
194
- expect(mockSubmitClientMetric).toBeCalledOnceWith(_types.METRIC_EVENT.MEDIA, expectedData);
223
+ expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.MEDIA, expectedData);
195
224
  });
196
225
  it('submit media failure metric', function () {
197
226
  var callError = (0, _CallError.createCallError)('', {}, _types2.ERROR_TYPE.DEFAULT, mockCorrelationId, _types2.ERROR_LAYER.MEDIA);
@@ -220,12 +249,12 @@ describe('CALLING: Metric tests', function () {
220
249
  type: _types.METRIC_TYPE.BEHAVIORAL
221
250
  };
222
251
  metricManager.submitMediaMetric(_types.METRIC_EVENT.MEDIA_ERROR, mockMediaAction, _types.METRIC_TYPE.BEHAVIORAL, mockCallId, mockCorrelationId, mockSdp, mockSdp, callError);
223
- expect(mockSubmitClientMetric).toBeCalledOnceWith(_types.METRIC_EVENT.MEDIA_ERROR, expectedData);
252
+ expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.MEDIA_ERROR, expectedData);
224
253
  });
225
254
  it('submit unknown media metric', function () {
226
255
  var logSpy = jest.spyOn(_Logger.default, 'warn');
227
256
  metricManager.submitMediaMetric('invalidMetricName', mockMediaAction, _types.METRIC_TYPE.OPERATIONAL, mockCallId, mockCorrelationId, mockSdp, mockSdp);
228
- expect(mockSubmitClientMetric).not.toBeCalled();
257
+ expect(submitClientMetricSpy).not.toBeCalled();
229
258
  expect(logSpy).toBeCalledOnceWith('Invalid metric name received. Rejecting request to submit metric.', {
230
259
  file: 'metric',
231
260
  method: 'submitMediaMetric'
@@ -252,7 +281,7 @@ describe('CALLING: Metric tests', function () {
252
281
  type: _types.METRIC_TYPE.BEHAVIORAL
253
282
  };
254
283
  metricManager.submitBNRMetric(_types.METRIC_EVENT.BNR_ENABLED, _types.METRIC_TYPE.BEHAVIORAL, mockCallId, mockCorrelationId);
255
- expect(mockSubmitClientMetric).toBeCalledOnceWith(_types.METRIC_EVENT.BNR_ENABLED, expectedData);
284
+ expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.BNR_ENABLED, expectedData);
256
285
  });
257
286
  it('submit bnr disabled metric', function () {
258
287
  var expectedData = {
@@ -270,12 +299,12 @@ describe('CALLING: Metric tests', function () {
270
299
  type: _types.METRIC_TYPE.BEHAVIORAL
271
300
  };
272
301
  metricManager.submitBNRMetric(_types.METRIC_EVENT.BNR_DISABLED, _types.METRIC_TYPE.BEHAVIORAL, mockCallId, mockCorrelationId);
273
- expect(mockSubmitClientMetric).toBeCalledOnceWith(_types.METRIC_EVENT.BNR_DISABLED, expectedData);
302
+ expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.BNR_DISABLED, expectedData);
274
303
  });
275
304
  it('submit unknown bnr metric', function () {
276
305
  var logSpy = jest.spyOn(_Logger.default, 'warn');
277
306
  metricManager.submitBNRMetric('invalidMetricName', _types.METRIC_TYPE.BEHAVIORAL, mockCallId, mockCorrelationId);
278
- expect(mockSubmitClientMetric).not.toBeCalled();
307
+ expect(submitClientMetricSpy).not.toBeCalled();
279
308
  expect(logSpy).toBeCalledOnceWith('Invalid metric name received. Rejecting request to submit metric.', {
280
309
  file: 'metric',
281
310
  method: 'submitBNRMetric'
@@ -299,8 +328,8 @@ describe('CALLING: Metric tests', function () {
299
328
  type: _types.METRIC_TYPE.BEHAVIORAL
300
329
  };
301
330
  metricManager.submitVoicemailMetric(_types.METRIC_EVENT.VOICEMAIL, _types.VOICEMAIL_ACTION.GET_VOICEMAILS, _types.METRIC_TYPE.BEHAVIORAL);
302
- expect(mockSubmitClientMetric).toBeCalledOnceWith(_types.METRIC_EVENT.VOICEMAIL, expectedData1);
303
- mockSubmitClientMetric.mockClear();
331
+ expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.VOICEMAIL, expectedData1);
332
+ submitClientMetricSpy.mockClear();
304
333
  var expectedData2 = _objectSpread(_objectSpread({}, expectedData1), {}, {
305
334
  tags: _objectSpread(_objectSpread({}, expectedData1.tags), {}, {
306
335
  message_id: 'messageId',
@@ -308,7 +337,7 @@ describe('CALLING: Metric tests', function () {
308
337
  })
309
338
  });
310
339
  metricManager.submitVoicemailMetric(_types.METRIC_EVENT.VOICEMAIL, _types.VOICEMAIL_ACTION.DELETE, _types.METRIC_TYPE.BEHAVIORAL, 'messageId');
311
- expect(mockSubmitClientMetric).toBeCalledOnceWith(_types.METRIC_EVENT.VOICEMAIL, expectedData2);
340
+ expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.VOICEMAIL, expectedData2);
312
341
  });
313
342
  it('submit voicemail failure metric', function () {
314
343
  var errorMessage = 'User is not authenticated';
@@ -327,8 +356,8 @@ describe('CALLING: Metric tests', function () {
327
356
  type: _types.METRIC_TYPE.BEHAVIORAL
328
357
  };
329
358
  metricManager.submitVoicemailMetric(_types.METRIC_EVENT.VOICEMAIL_ERROR, _types.VOICEMAIL_ACTION.GET_VOICEMAILS, _types.METRIC_TYPE.BEHAVIORAL, undefined, errorMessage, 401);
330
- expect(mockSubmitClientMetric).toBeCalledOnceWith(_types.METRIC_EVENT.VOICEMAIL_ERROR, expectedData1);
331
- mockSubmitClientMetric.mockClear();
359
+ expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.VOICEMAIL_ERROR, expectedData1);
360
+ submitClientMetricSpy.mockClear();
332
361
  var expectedData2 = _objectSpread(_objectSpread({}, expectedData1), {}, {
333
362
  tags: _objectSpread(_objectSpread({}, expectedData1.tags), {}, {
334
363
  message_id: 'messageId',
@@ -336,12 +365,12 @@ describe('CALLING: Metric tests', function () {
336
365
  })
337
366
  });
338
367
  metricManager.submitVoicemailMetric(_types.METRIC_EVENT.VOICEMAIL_ERROR, _types.VOICEMAIL_ACTION.DELETE, _types.METRIC_TYPE.BEHAVIORAL, 'messageId', errorMessage, 401);
339
- expect(mockSubmitClientMetric).toBeCalledOnceWith(_types.METRIC_EVENT.VOICEMAIL_ERROR, expectedData2);
368
+ expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.VOICEMAIL_ERROR, expectedData2);
340
369
  });
341
370
  it('submit unknown voicemail metric', function () {
342
371
  var logSpy = jest.spyOn(_Logger.default, 'warn');
343
372
  metricManager.submitVoicemailMetric('invalidMetricName', _types.VOICEMAIL_ACTION.GET_VOICEMAILS, _types.METRIC_TYPE.BEHAVIORAL);
344
- expect(mockSubmitClientMetric).not.toBeCalled();
373
+ expect(submitClientMetricSpy).not.toBeCalled();
345
374
  expect(logSpy).toBeCalledOnceWith('Invalid metric name received. Rejecting request to submit metric.', {
346
375
  file: 'metric',
347
376
  method: 'submitVoicemailMetric'
@@ -367,7 +396,67 @@ describe('CALLING: Metric tests', function () {
367
396
  type: _types.METRIC_TYPE.BEHAVIORAL
368
397
  };
369
398
  metricManager.submitBNRMetric(_types.METRIC_EVENT.BNR_ENABLED, _types.METRIC_TYPE.BEHAVIORAL, mockCallId, mockCorrelationId);
370
- expect(mockSubmitClientMetric).toBeCalledOnceWith(_types.METRIC_EVENT.BNR_ENABLED, expectedData);
399
+ expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.BNR_ENABLED, expectedData);
400
+ });
401
+ });
402
+ describe('Upload Logs metric tests', function () {
403
+ beforeAll(function () {
404
+ return metricManager.setDeviceInfo(mockDeviceInfo);
405
+ });
406
+ it('submit upload logs success metric includes broadworksCorrelationInfo', function () {
407
+ var trackingId = 'track-123';
408
+ var feedbackId = 'feed-456';
409
+ var correlationId = 'corr-789';
410
+ var callId = 'call-123';
411
+ var broadworksCorrelationInfo = 'bw-corr-abc';
412
+ var expectedData = {
413
+ tags: {
414
+ action: _types.UPLOAD_LOGS_ACTION,
415
+ device_id: mockDeviceInfo.device.deviceId,
416
+ service_indicator: _types3.ServiceIndicator.CALLING
417
+ },
418
+ fields: {
419
+ device_url: mockDeviceInfo.device.clientDeviceUri,
420
+ mobius_url: mockDeviceInfo.device.uri,
421
+ calling_sdk_version: MOCK_VERSION_NUMBER,
422
+ correlation_id: correlationId,
423
+ broadworksCorrelationInfo: broadworksCorrelationInfo,
424
+ tracking_id: trackingId,
425
+ feedback_id: feedbackId,
426
+ call_id: callId
427
+ },
428
+ type: _types.METRIC_TYPE.BEHAVIORAL
429
+ };
430
+ metricManager.submitUploadLogsMetric(_types.METRIC_EVENT.UPLOAD_LOGS_SUCCESS, _types.UPLOAD_LOGS_ACTION, _types.METRIC_TYPE.BEHAVIORAL, trackingId, feedbackId, correlationId, undefined, callId, broadworksCorrelationInfo);
431
+ expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.UPLOAD_LOGS_SUCCESS, expectedData);
432
+ });
433
+ it('submit upload logs failure metric includes error and broadworksCorrelationInfo', function () {
434
+ var feedbackId = 'feed-456';
435
+ var correlationId = 'corr-789';
436
+ var callId = 'call-123';
437
+ var broadworksCorrelationInfo = 'bw-corr-abc';
438
+ var errorStack = 'some error stack';
439
+ var expectedData = {
440
+ tags: {
441
+ action: _types.UPLOAD_LOGS_ACTION,
442
+ device_id: mockDeviceInfo.device.deviceId,
443
+ service_indicator: _types3.ServiceIndicator.CALLING
444
+ },
445
+ fields: {
446
+ device_url: mockDeviceInfo.device.clientDeviceUri,
447
+ mobius_url: mockDeviceInfo.device.uri,
448
+ calling_sdk_version: MOCK_VERSION_NUMBER,
449
+ correlation_id: correlationId,
450
+ broadworksCorrelationInfo: broadworksCorrelationInfo,
451
+ tracking_id: undefined,
452
+ feedback_id: feedbackId,
453
+ call_id: callId,
454
+ error: errorStack
455
+ },
456
+ type: _types.METRIC_TYPE.BEHAVIORAL
457
+ };
458
+ metricManager.submitUploadLogsMetric(_types.METRIC_EVENT.UPLOAD_LOGS_FAILED, _types.UPLOAD_LOGS_ACTION, _types.METRIC_TYPE.BEHAVIORAL, undefined, feedbackId, correlationId, errorStack, callId, broadworksCorrelationInfo);
459
+ expect(submitClientMetricSpy).toBeCalledOnceWith(_types.METRIC_EVENT.UPLOAD_LOGS_FAILED, expectedData);
371
460
  });
372
461
  });
373
462
  });