@webex/calling 3.8.0 → 3.8.1-next.10

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 (180) hide show
  1. package/dist/CallHistory/CallHistory.js +100 -63
  2. package/dist/CallHistory/CallHistory.js.map +1 -1
  3. package/dist/CallHistory/CallHistory.test.js +115 -19
  4. package/dist/CallHistory/CallHistory.test.js.map +1 -1
  5. package/dist/CallHistory/constants.js +9 -1
  6. package/dist/CallHistory/constants.js.map +1 -1
  7. package/dist/CallSettings/CallSettings.js +46 -13
  8. package/dist/CallSettings/CallSettings.js.map +1 -1
  9. package/dist/CallSettings/UcmBackendConnector.js +62 -18
  10. package/dist/CallSettings/UcmBackendConnector.js.map +1 -1
  11. package/dist/CallSettings/UcmBackendConnector.test.js +70 -7
  12. package/dist/CallSettings/UcmBackendConnector.test.js.map +1 -1
  13. package/dist/CallSettings/WxCallBackendConnector.js +153 -103
  14. package/dist/CallSettings/WxCallBackendConnector.js.map +1 -1
  15. package/dist/CallSettings/WxCallBackendConnector.test.js +52 -15
  16. package/dist/CallSettings/WxCallBackendConnector.test.js.map +1 -1
  17. package/dist/CallSettings/constants.js +15 -1
  18. package/dist/CallSettings/constants.js.map +1 -1
  19. package/dist/CallingClient/CallingClient.js +220 -159
  20. package/dist/CallingClient/CallingClient.js.map +1 -1
  21. package/dist/CallingClient/CallingClient.test.js +58 -27
  22. package/dist/CallingClient/CallingClient.test.js.map +1 -1
  23. package/dist/CallingClient/calling/call.js +251 -189
  24. package/dist/CallingClient/calling/call.js.map +1 -1
  25. package/dist/CallingClient/calling/call.test.js +96 -41
  26. package/dist/CallingClient/calling/call.test.js.map +1 -1
  27. package/dist/CallingClient/calling/callManager.js +73 -48
  28. package/dist/CallingClient/calling/callManager.js.map +1 -1
  29. package/dist/CallingClient/calling/callManager.test.js +96 -37
  30. package/dist/CallingClient/calling/callManager.test.js.map +1 -1
  31. package/dist/CallingClient/constants.js +105 -3
  32. package/dist/CallingClient/constants.js.map +1 -1
  33. package/dist/CallingClient/line/index.js +47 -18
  34. package/dist/CallingClient/line/index.js.map +1 -1
  35. package/dist/CallingClient/line/line.test.js +6 -12
  36. package/dist/CallingClient/line/line.test.js.map +1 -1
  37. package/dist/CallingClient/registration/register.js +590 -522
  38. package/dist/CallingClient/registration/register.js.map +1 -1
  39. package/dist/CallingClient/registration/register.test.js +821 -394
  40. package/dist/CallingClient/registration/register.test.js.map +1 -1
  41. package/dist/CallingClient/registration/types.js.map +1 -1
  42. package/dist/CallingClient/registration/webWorker.js +115 -0
  43. package/dist/CallingClient/registration/webWorker.js.map +1 -0
  44. package/dist/CallingClient/registration/webWorker.test.js +256 -0
  45. package/dist/CallingClient/registration/webWorker.test.js.map +1 -0
  46. package/dist/CallingClient/registration/webWorkerStr.js +15 -0
  47. package/dist/CallingClient/registration/webWorkerStr.js.map +1 -0
  48. package/dist/Contacts/ContactsClient.js +156 -102
  49. package/dist/Contacts/ContactsClient.js.map +1 -1
  50. package/dist/Contacts/ContactsClient.test.js +197 -49
  51. package/dist/Contacts/ContactsClient.test.js.map +1 -1
  52. package/dist/Contacts/constants.js +11 -1
  53. package/dist/Contacts/constants.js.map +1 -1
  54. package/dist/Errors/types.js +2 -0
  55. package/dist/Errors/types.js.map +1 -1
  56. package/dist/Events/impl/index.js +1 -1
  57. package/dist/Events/impl/index.js.map +1 -1
  58. package/dist/Metrics/index.js +102 -41
  59. package/dist/Metrics/index.js.map +1 -1
  60. package/dist/Metrics/index.test.js +10 -4
  61. package/dist/Metrics/index.test.js.map +1 -1
  62. package/dist/Metrics/types.js +4 -1
  63. package/dist/Metrics/types.js.map +1 -1
  64. package/dist/SDKConnector/types.js.map +1 -1
  65. package/dist/Voicemail/BroadworksBackendConnector.js +154 -91
  66. package/dist/Voicemail/BroadworksBackendConnector.js.map +1 -1
  67. package/dist/Voicemail/BroadworksBackendConnector.test.js +99 -19
  68. package/dist/Voicemail/BroadworksBackendConnector.test.js.map +1 -1
  69. package/dist/Voicemail/UcmBackendConnector.js +105 -54
  70. package/dist/Voicemail/UcmBackendConnector.js.map +1 -1
  71. package/dist/Voicemail/UcmBackendConnector.test.js +127 -17
  72. package/dist/Voicemail/UcmBackendConnector.test.js.map +1 -1
  73. package/dist/Voicemail/Voicemail.js +198 -79
  74. package/dist/Voicemail/Voicemail.js.map +1 -1
  75. package/dist/Voicemail/Voicemail.test.js +188 -23
  76. package/dist/Voicemail/Voicemail.test.js.map +1 -1
  77. package/dist/Voicemail/WxCallBackendConnector.js +277 -161
  78. package/dist/Voicemail/WxCallBackendConnector.js.map +1 -1
  79. package/dist/Voicemail/WxCallBackendConnector.test.js +268 -10
  80. package/dist/Voicemail/WxCallBackendConnector.test.js.map +1 -1
  81. package/dist/Voicemail/constants.js +25 -1
  82. package/dist/Voicemail/constants.js.map +1 -1
  83. package/dist/Voicemail/types.js.map +1 -1
  84. package/dist/common/Utils.js +168 -104
  85. package/dist/common/Utils.js.map +1 -1
  86. package/dist/common/Utils.test.js +199 -35
  87. package/dist/common/Utils.test.js.map +1 -1
  88. package/dist/common/constants.js +2 -1
  89. package/dist/common/constants.js.map +1 -1
  90. package/dist/common/testUtil.js +3 -0
  91. package/dist/common/testUtil.js.map +1 -1
  92. package/dist/common/types.js +8 -1
  93. package/dist/common/types.js.map +1 -1
  94. package/dist/index.js +12 -0
  95. package/dist/index.js.map +1 -1
  96. package/dist/module/CallHistory/CallHistory.js +32 -13
  97. package/dist/module/CallHistory/constants.js +6 -0
  98. package/dist/module/CallSettings/CallSettings.js +36 -3
  99. package/dist/module/CallSettings/UcmBackendConnector.js +50 -5
  100. package/dist/module/CallSettings/WxCallBackendConnector.js +54 -18
  101. package/dist/module/CallSettings/constants.js +12 -0
  102. package/dist/module/CallingClient/CallingClient.js +54 -16
  103. package/dist/module/CallingClient/calling/call.js +172 -121
  104. package/dist/module/CallingClient/calling/callManager.js +51 -26
  105. package/dist/module/CallingClient/constants.js +102 -2
  106. package/dist/module/CallingClient/line/index.js +37 -8
  107. package/dist/module/CallingClient/registration/register.js +151 -112
  108. package/dist/module/CallingClient/registration/webWorker.js +59 -0
  109. package/dist/module/CallingClient/registration/webWorkerStr.js +93 -0
  110. package/dist/module/Contacts/ContactsClient.js +65 -21
  111. package/dist/module/Contacts/constants.js +10 -0
  112. package/dist/module/Errors/types.js +2 -0
  113. package/dist/module/Events/impl/index.js +1 -1
  114. package/dist/module/Metrics/index.js +57 -2
  115. package/dist/module/Metrics/types.js +3 -0
  116. package/dist/module/Voicemail/BroadworksBackendConnector.js +66 -17
  117. package/dist/module/Voicemail/UcmBackendConnector.js +51 -11
  118. package/dist/module/Voicemail/Voicemail.js +109 -9
  119. package/dist/module/Voicemail/WxCallBackendConnector.js +67 -18
  120. package/dist/module/Voicemail/constants.js +21 -0
  121. package/dist/module/common/Utils.js +51 -12
  122. package/dist/module/common/constants.js +1 -0
  123. package/dist/module/common/testUtil.js +3 -0
  124. package/dist/module/common/types.js +7 -0
  125. package/dist/module/index.js +1 -0
  126. package/dist/types/CallHistory/CallHistory.d.ts.map +1 -1
  127. package/dist/types/CallHistory/constants.d.ts +6 -0
  128. package/dist/types/CallHistory/constants.d.ts.map +1 -1
  129. package/dist/types/CallSettings/CallSettings.d.ts.map +1 -1
  130. package/dist/types/CallSettings/UcmBackendConnector.d.ts.map +1 -1
  131. package/dist/types/CallSettings/WxCallBackendConnector.d.ts.map +1 -1
  132. package/dist/types/CallSettings/constants.d.ts +12 -0
  133. package/dist/types/CallSettings/constants.d.ts.map +1 -1
  134. package/dist/types/CallingClient/CallingClient.d.ts +2 -3
  135. package/dist/types/CallingClient/CallingClient.d.ts.map +1 -1
  136. package/dist/types/CallingClient/calling/call.d.ts.map +1 -1
  137. package/dist/types/CallingClient/calling/callManager.d.ts.map +1 -1
  138. package/dist/types/CallingClient/constants.d.ts +102 -2
  139. package/dist/types/CallingClient/constants.d.ts.map +1 -1
  140. package/dist/types/CallingClient/line/index.d.ts.map +1 -1
  141. package/dist/types/CallingClient/registration/register.d.ts +4 -3
  142. package/dist/types/CallingClient/registration/register.d.ts.map +1 -1
  143. package/dist/types/CallingClient/registration/types.d.ts +1 -0
  144. package/dist/types/CallingClient/registration/types.d.ts.map +1 -1
  145. package/dist/types/CallingClient/registration/webWorker.d.ts +2 -0
  146. package/dist/types/CallingClient/registration/webWorker.d.ts.map +1 -0
  147. package/dist/types/CallingClient/registration/webWorkerStr.d.ts +3 -0
  148. package/dist/types/CallingClient/registration/webWorkerStr.d.ts.map +1 -0
  149. package/dist/types/Contacts/ContactsClient.d.ts.map +1 -1
  150. package/dist/types/Contacts/constants.d.ts +10 -0
  151. package/dist/types/Contacts/constants.d.ts.map +1 -1
  152. package/dist/types/Errors/types.d.ts +2 -0
  153. package/dist/types/Errors/types.d.ts.map +1 -1
  154. package/dist/types/Metrics/index.d.ts +1 -1
  155. package/dist/types/Metrics/index.d.ts.map +1 -1
  156. package/dist/types/Metrics/types.d.ts +7 -2
  157. package/dist/types/Metrics/types.d.ts.map +1 -1
  158. package/dist/types/SDKConnector/types.d.ts +11 -2
  159. package/dist/types/SDKConnector/types.d.ts.map +1 -1
  160. package/dist/types/Voicemail/BroadworksBackendConnector.d.ts.map +1 -1
  161. package/dist/types/Voicemail/UcmBackendConnector.d.ts.map +1 -1
  162. package/dist/types/Voicemail/Voicemail.d.ts +1 -1
  163. package/dist/types/Voicemail/Voicemail.d.ts.map +1 -1
  164. package/dist/types/Voicemail/WxCallBackendConnector.d.ts +3 -1
  165. package/dist/types/Voicemail/WxCallBackendConnector.d.ts.map +1 -1
  166. package/dist/types/Voicemail/constants.d.ts +21 -0
  167. package/dist/types/Voicemail/constants.d.ts.map +1 -1
  168. package/dist/types/Voicemail/types.d.ts +1 -1
  169. package/dist/types/Voicemail/types.d.ts.map +1 -1
  170. package/dist/types/common/Utils.d.ts +4 -4
  171. package/dist/types/common/Utils.d.ts.map +1 -1
  172. package/dist/types/common/constants.d.ts +1 -0
  173. package/dist/types/common/constants.d.ts.map +1 -1
  174. package/dist/types/common/testUtil.d.ts +3 -0
  175. package/dist/types/common/testUtil.d.ts.map +1 -1
  176. package/dist/types/common/types.d.ts +24 -0
  177. package/dist/types/common/types.d.ts.map +1 -1
  178. package/dist/types/index.d.ts +2 -0
  179. package/dist/types/index.d.ts.map +1 -1
  180. package/package.json +4 -3
@@ -33,11 +33,65 @@ var MetricManager = /*#__PURE__*/function () {
33
33
  this.webex = webex;
34
34
  this.serviceIndicator = indicator;
35
35
  }
36
-
37
- /**
38
- * @param deviceInfo - DeviceInfo object.
39
- */
40
36
  (0, _createClass2.default)(MetricManager, [{
37
+ key: "submitUploadLogsMetric",
38
+ value: function submitUploadLogsMetric(name, action, type, trackingId, feedbackId, correlationId, stack, callId) {
39
+ var data;
40
+ switch (name) {
41
+ case _types.METRIC_EVENT.UPLOAD_LOGS_SUCCESS:
42
+ {
43
+ var _this$deviceInfo, _this$deviceInfo$devi, _this$deviceInfo2, _this$deviceInfo2$dev, _this$deviceInfo3, _this$deviceInfo3$dev;
44
+ data = {
45
+ tags: {
46
+ action: action,
47
+ device_id: (_this$deviceInfo = this.deviceInfo) === null || _this$deviceInfo === void 0 ? void 0 : (_this$deviceInfo$devi = _this$deviceInfo.device) === null || _this$deviceInfo$devi === void 0 ? void 0 : _this$deviceInfo$devi.deviceId,
48
+ service_indicator: this.serviceIndicator
49
+ },
50
+ fields: {
51
+ device_url: (_this$deviceInfo2 = this.deviceInfo) === null || _this$deviceInfo2 === void 0 ? void 0 : (_this$deviceInfo2$dev = _this$deviceInfo2.device) === null || _this$deviceInfo2$dev === void 0 ? void 0 : _this$deviceInfo2$dev.clientDeviceUri,
52
+ mobius_url: (_this$deviceInfo3 = this.deviceInfo) === null || _this$deviceInfo3 === void 0 ? void 0 : (_this$deviceInfo3$dev = _this$deviceInfo3.device) === null || _this$deviceInfo3$dev === void 0 ? void 0 : _this$deviceInfo3$dev.uri,
53
+ calling_sdk_version: process.env.CALLING_SDK_VERSION || _constants.VERSION,
54
+ correlation_id: correlationId,
55
+ tracking_id: trackingId,
56
+ feedback_id: feedbackId,
57
+ call_id: callId
58
+ },
59
+ type: type
60
+ };
61
+ break;
62
+ }
63
+ case _types.METRIC_EVENT.UPLOAD_LOGS_FAILED:
64
+ {
65
+ var _this$deviceInfo4, _this$deviceInfo4$dev, _this$deviceInfo5, _this$deviceInfo5$dev, _this$deviceInfo6, _this$deviceInfo6$dev;
66
+ data = {
67
+ tags: {
68
+ action: action,
69
+ device_id: (_this$deviceInfo4 = this.deviceInfo) === null || _this$deviceInfo4 === void 0 ? void 0 : (_this$deviceInfo4$dev = _this$deviceInfo4.device) === null || _this$deviceInfo4$dev === void 0 ? void 0 : _this$deviceInfo4$dev.deviceId,
70
+ service_indicator: this.serviceIndicator
71
+ },
72
+ fields: {
73
+ device_url: (_this$deviceInfo5 = this.deviceInfo) === null || _this$deviceInfo5 === void 0 ? void 0 : (_this$deviceInfo5$dev = _this$deviceInfo5.device) === null || _this$deviceInfo5$dev === void 0 ? void 0 : _this$deviceInfo5$dev.clientDeviceUri,
74
+ mobius_url: (_this$deviceInfo6 = this.deviceInfo) === null || _this$deviceInfo6 === void 0 ? void 0 : (_this$deviceInfo6$dev = _this$deviceInfo6.device) === null || _this$deviceInfo6$dev === void 0 ? void 0 : _this$deviceInfo6$dev.uri,
75
+ calling_sdk_version: process.env.CALLING_SDK_VERSION || _constants.VERSION,
76
+ correlation_id: correlationId,
77
+ tracking_id: trackingId,
78
+ feedback_id: feedbackId,
79
+ error: stack,
80
+ call_id: callId
81
+ },
82
+ type: type
83
+ };
84
+ }
85
+ }
86
+ if (data) {
87
+ this.webex.internal.metrics.submitClientMetrics(name, data);
88
+ }
89
+ }
90
+
91
+ /**
92
+ * @param deviceInfo - DeviceInfo object.
93
+ */
94
+ }, {
41
95
  key: "setDeviceInfo",
42
96
  value: function setDeviceInfo(deviceInfo) {
43
97
  this.deviceInfo = deviceInfo;
@@ -51,22 +105,25 @@ var MetricManager = /*#__PURE__*/function () {
51
105
  */
52
106
  }, {
53
107
  key: "submitRegistrationMetric",
54
- value: function submitRegistrationMetric(name, metricAction, type, clientError) {
108
+ value: function submitRegistrationMetric(name, metricAction, type, caller, serverType, trackingId, keepaliveCount, clientError) {
55
109
  var data;
56
110
  switch (name) {
57
111
  case _types.METRIC_EVENT.REGISTRATION:
58
112
  {
59
- var _this$deviceInfo, _this$deviceInfo$devi, _this$deviceInfo2, _this$deviceInfo2$dev, _this$deviceInfo3, _this$deviceInfo3$dev;
113
+ var _this$deviceInfo7, _this$deviceInfo7$dev, _this$deviceInfo8, _this$deviceInfo8$dev, _this$deviceInfo9, _this$deviceInfo9$dev;
60
114
  data = {
61
115
  tags: {
62
116
  action: metricAction,
63
- device_id: (_this$deviceInfo = this.deviceInfo) === null || _this$deviceInfo === void 0 ? void 0 : (_this$deviceInfo$devi = _this$deviceInfo.device) === null || _this$deviceInfo$devi === void 0 ? void 0 : _this$deviceInfo$devi.deviceId,
117
+ device_id: (_this$deviceInfo7 = this.deviceInfo) === null || _this$deviceInfo7 === void 0 ? void 0 : (_this$deviceInfo7$dev = _this$deviceInfo7.device) === null || _this$deviceInfo7$dev === void 0 ? void 0 : _this$deviceInfo7$dev.deviceId,
64
118
  service_indicator: this.serviceIndicator
65
119
  },
66
120
  fields: {
67
- device_url: (_this$deviceInfo2 = this.deviceInfo) === null || _this$deviceInfo2 === void 0 ? void 0 : (_this$deviceInfo2$dev = _this$deviceInfo2.device) === null || _this$deviceInfo2$dev === void 0 ? void 0 : _this$deviceInfo2$dev.clientDeviceUri,
68
- mobius_url: (_this$deviceInfo3 = this.deviceInfo) === null || _this$deviceInfo3 === void 0 ? void 0 : (_this$deviceInfo3$dev = _this$deviceInfo3.device) === null || _this$deviceInfo3$dev === void 0 ? void 0 : _this$deviceInfo3$dev.uri,
69
- calling_sdk_version: process.env.CALLING_SDK_VERSION || _constants.VERSION
121
+ device_url: (_this$deviceInfo8 = this.deviceInfo) === null || _this$deviceInfo8 === void 0 ? void 0 : (_this$deviceInfo8$dev = _this$deviceInfo8.device) === null || _this$deviceInfo8$dev === void 0 ? void 0 : _this$deviceInfo8$dev.clientDeviceUri,
122
+ mobius_url: (_this$deviceInfo9 = this.deviceInfo) === null || _this$deviceInfo9 === void 0 ? void 0 : (_this$deviceInfo9$dev = _this$deviceInfo9.device) === null || _this$deviceInfo9$dev === void 0 ? void 0 : _this$deviceInfo9$dev.uri,
123
+ calling_sdk_version: process.env.CALLING_SDK_VERSION || _constants.VERSION,
124
+ reg_source: caller,
125
+ server_type: serverType,
126
+ trackingId: trackingId
70
127
  },
71
128
  type: type
72
129
  };
@@ -75,17 +132,21 @@ var MetricManager = /*#__PURE__*/function () {
75
132
  case _types.METRIC_EVENT.REGISTRATION_ERROR:
76
133
  {
77
134
  if (clientError) {
78
- var _this$deviceInfo4, _this$deviceInfo4$dev, _this$deviceInfo5, _this$deviceInfo5$dev, _this$deviceInfo6, _this$deviceInfo6$dev;
135
+ var _this$deviceInfo10, _this$deviceInfo10$de, _this$deviceInfo11, _this$deviceInfo11$de, _this$deviceInfo12, _this$deviceInfo12$de;
79
136
  data = {
80
137
  tags: {
81
138
  action: metricAction,
82
- device_id: (_this$deviceInfo4 = this.deviceInfo) === null || _this$deviceInfo4 === void 0 ? void 0 : (_this$deviceInfo4$dev = _this$deviceInfo4.device) === null || _this$deviceInfo4$dev === void 0 ? void 0 : _this$deviceInfo4$dev.deviceId,
139
+ device_id: (_this$deviceInfo10 = this.deviceInfo) === null || _this$deviceInfo10 === void 0 ? void 0 : (_this$deviceInfo10$de = _this$deviceInfo10.device) === null || _this$deviceInfo10$de === void 0 ? void 0 : _this$deviceInfo10$de.deviceId,
83
140
  service_indicator: this.serviceIndicator
84
141
  },
85
142
  fields: {
86
- device_url: (_this$deviceInfo5 = this.deviceInfo) === null || _this$deviceInfo5 === void 0 ? void 0 : (_this$deviceInfo5$dev = _this$deviceInfo5.device) === null || _this$deviceInfo5$dev === void 0 ? void 0 : _this$deviceInfo5$dev.clientDeviceUri,
87
- mobius_url: (_this$deviceInfo6 = this.deviceInfo) === null || _this$deviceInfo6 === void 0 ? void 0 : (_this$deviceInfo6$dev = _this$deviceInfo6.device) === null || _this$deviceInfo6$dev === void 0 ? void 0 : _this$deviceInfo6$dev.uri,
143
+ device_url: (_this$deviceInfo11 = this.deviceInfo) === null || _this$deviceInfo11 === void 0 ? void 0 : (_this$deviceInfo11$de = _this$deviceInfo11.device) === null || _this$deviceInfo11$de === void 0 ? void 0 : _this$deviceInfo11$de.clientDeviceUri,
144
+ mobius_url: (_this$deviceInfo12 = this.deviceInfo) === null || _this$deviceInfo12 === void 0 ? void 0 : (_this$deviceInfo12$de = _this$deviceInfo12.device) === null || _this$deviceInfo12$de === void 0 ? void 0 : _this$deviceInfo12$de.uri,
88
145
  calling_sdk_version: process.env.CALLING_SDK_VERSION || _constants.VERSION,
146
+ reg_source: caller,
147
+ server_type: serverType,
148
+ trackingId: trackingId,
149
+ keepalive_count: keepaliveCount,
89
150
  error: clientError.getError().message,
90
151
  error_type: clientError.getError().type
91
152
  },
@@ -121,16 +182,16 @@ var MetricManager = /*#__PURE__*/function () {
121
182
  switch (name) {
122
183
  case _types.METRIC_EVENT.CALL:
123
184
  {
124
- var _this$deviceInfo7, _this$deviceInfo7$dev, _this$deviceInfo8, _this$deviceInfo8$dev, _this$deviceInfo9, _this$deviceInfo9$dev;
185
+ var _this$deviceInfo13, _this$deviceInfo13$de, _this$deviceInfo14, _this$deviceInfo14$de, _this$deviceInfo15, _this$deviceInfo15$de;
125
186
  data = {
126
187
  tags: {
127
188
  action: metricAction,
128
- device_id: (_this$deviceInfo7 = this.deviceInfo) === null || _this$deviceInfo7 === void 0 ? void 0 : (_this$deviceInfo7$dev = _this$deviceInfo7.device) === null || _this$deviceInfo7$dev === void 0 ? void 0 : _this$deviceInfo7$dev.deviceId,
189
+ device_id: (_this$deviceInfo13 = this.deviceInfo) === null || _this$deviceInfo13 === void 0 ? void 0 : (_this$deviceInfo13$de = _this$deviceInfo13.device) === null || _this$deviceInfo13$de === void 0 ? void 0 : _this$deviceInfo13$de.deviceId,
129
190
  service_indicator: this.serviceIndicator
130
191
  },
131
192
  fields: {
132
- device_url: (_this$deviceInfo8 = this.deviceInfo) === null || _this$deviceInfo8 === void 0 ? void 0 : (_this$deviceInfo8$dev = _this$deviceInfo8.device) === null || _this$deviceInfo8$dev === void 0 ? void 0 : _this$deviceInfo8$dev.clientDeviceUri,
133
- mobius_url: (_this$deviceInfo9 = this.deviceInfo) === null || _this$deviceInfo9 === void 0 ? void 0 : (_this$deviceInfo9$dev = _this$deviceInfo9.device) === null || _this$deviceInfo9$dev === void 0 ? void 0 : _this$deviceInfo9$dev.uri,
193
+ device_url: (_this$deviceInfo14 = this.deviceInfo) === null || _this$deviceInfo14 === void 0 ? void 0 : (_this$deviceInfo14$de = _this$deviceInfo14.device) === null || _this$deviceInfo14$de === void 0 ? void 0 : _this$deviceInfo14$de.clientDeviceUri,
194
+ mobius_url: (_this$deviceInfo15 = this.deviceInfo) === null || _this$deviceInfo15 === void 0 ? void 0 : (_this$deviceInfo15$de = _this$deviceInfo15.device) === null || _this$deviceInfo15$de === void 0 ? void 0 : _this$deviceInfo15$de.uri,
134
195
  calling_sdk_version: process.env.CALLING_SDK_VERSION || _constants.VERSION,
135
196
  call_id: callId,
136
197
  correlation_id: correlationId
@@ -142,16 +203,16 @@ var MetricManager = /*#__PURE__*/function () {
142
203
  case _types.METRIC_EVENT.CALL_ERROR:
143
204
  {
144
205
  if (callError) {
145
- var _this$deviceInfo10, _this$deviceInfo10$de, _this$deviceInfo11, _this$deviceInfo11$de, _this$deviceInfo12, _this$deviceInfo12$de;
206
+ var _this$deviceInfo16, _this$deviceInfo16$de, _this$deviceInfo17, _this$deviceInfo17$de, _this$deviceInfo18, _this$deviceInfo18$de;
146
207
  data = {
147
208
  tags: {
148
209
  action: metricAction,
149
- device_id: (_this$deviceInfo10 = this.deviceInfo) === null || _this$deviceInfo10 === void 0 ? void 0 : (_this$deviceInfo10$de = _this$deviceInfo10.device) === null || _this$deviceInfo10$de === void 0 ? void 0 : _this$deviceInfo10$de.deviceId,
210
+ device_id: (_this$deviceInfo16 = this.deviceInfo) === null || _this$deviceInfo16 === void 0 ? void 0 : (_this$deviceInfo16$de = _this$deviceInfo16.device) === null || _this$deviceInfo16$de === void 0 ? void 0 : _this$deviceInfo16$de.deviceId,
150
211
  service_indicator: this.serviceIndicator
151
212
  },
152
213
  fields: {
153
- device_url: (_this$deviceInfo11 = this.deviceInfo) === null || _this$deviceInfo11 === void 0 ? void 0 : (_this$deviceInfo11$de = _this$deviceInfo11.device) === null || _this$deviceInfo11$de === void 0 ? void 0 : _this$deviceInfo11$de.clientDeviceUri,
154
- mobius_url: (_this$deviceInfo12 = this.deviceInfo) === null || _this$deviceInfo12 === void 0 ? void 0 : (_this$deviceInfo12$de = _this$deviceInfo12.device) === null || _this$deviceInfo12$de === void 0 ? void 0 : _this$deviceInfo12$de.uri,
214
+ device_url: (_this$deviceInfo17 = this.deviceInfo) === null || _this$deviceInfo17 === void 0 ? void 0 : (_this$deviceInfo17$de = _this$deviceInfo17.device) === null || _this$deviceInfo17$de === void 0 ? void 0 : _this$deviceInfo17$de.clientDeviceUri,
215
+ mobius_url: (_this$deviceInfo18 = this.deviceInfo) === null || _this$deviceInfo18 === void 0 ? void 0 : (_this$deviceInfo18$de = _this$deviceInfo18.device) === null || _this$deviceInfo18$de === void 0 ? void 0 : _this$deviceInfo18$de.uri,
155
216
  calling_sdk_version: process.env.CALLING_SDK_VERSION || _constants.VERSION,
156
217
  call_id: callId,
157
218
  correlation_id: correlationId,
@@ -192,16 +253,16 @@ var MetricManager = /*#__PURE__*/function () {
192
253
  switch (name) {
193
254
  case _types.METRIC_EVENT.MEDIA:
194
255
  {
195
- var _this$deviceInfo13, _this$deviceInfo13$de, _this$deviceInfo14, _this$deviceInfo14$de, _this$deviceInfo15, _this$deviceInfo15$de;
256
+ var _this$deviceInfo19, _this$deviceInfo19$de, _this$deviceInfo20, _this$deviceInfo20$de, _this$deviceInfo21, _this$deviceInfo21$de;
196
257
  data = {
197
258
  tags: {
198
259
  action: metricAction,
199
- device_id: (_this$deviceInfo13 = this.deviceInfo) === null || _this$deviceInfo13 === void 0 ? void 0 : (_this$deviceInfo13$de = _this$deviceInfo13.device) === null || _this$deviceInfo13$de === void 0 ? void 0 : _this$deviceInfo13$de.deviceId,
260
+ device_id: (_this$deviceInfo19 = this.deviceInfo) === null || _this$deviceInfo19 === void 0 ? void 0 : (_this$deviceInfo19$de = _this$deviceInfo19.device) === null || _this$deviceInfo19$de === void 0 ? void 0 : _this$deviceInfo19$de.deviceId,
200
261
  service_indicator: this.serviceIndicator
201
262
  },
202
263
  fields: {
203
- device_url: (_this$deviceInfo14 = this.deviceInfo) === null || _this$deviceInfo14 === void 0 ? void 0 : (_this$deviceInfo14$de = _this$deviceInfo14.device) === null || _this$deviceInfo14$de === void 0 ? void 0 : _this$deviceInfo14$de.clientDeviceUri,
204
- mobius_url: (_this$deviceInfo15 = this.deviceInfo) === null || _this$deviceInfo15 === void 0 ? void 0 : (_this$deviceInfo15$de = _this$deviceInfo15.device) === null || _this$deviceInfo15$de === void 0 ? void 0 : _this$deviceInfo15$de.uri,
264
+ device_url: (_this$deviceInfo20 = this.deviceInfo) === null || _this$deviceInfo20 === void 0 ? void 0 : (_this$deviceInfo20$de = _this$deviceInfo20.device) === null || _this$deviceInfo20$de === void 0 ? void 0 : _this$deviceInfo20$de.clientDeviceUri,
265
+ mobius_url: (_this$deviceInfo21 = this.deviceInfo) === null || _this$deviceInfo21 === void 0 ? void 0 : (_this$deviceInfo21$de = _this$deviceInfo21.device) === null || _this$deviceInfo21$de === void 0 ? void 0 : _this$deviceInfo21$de.uri,
205
266
  calling_sdk_version: process.env.CALLING_SDK_VERSION || _constants.VERSION,
206
267
  call_id: callId,
207
268
  correlation_id: correlationId,
@@ -215,16 +276,16 @@ var MetricManager = /*#__PURE__*/function () {
215
276
  case _types.METRIC_EVENT.MEDIA_ERROR:
216
277
  {
217
278
  if (callError) {
218
- var _this$deviceInfo16, _this$deviceInfo16$de, _this$deviceInfo17, _this$deviceInfo17$de, _this$deviceInfo18, _this$deviceInfo18$de;
279
+ var _this$deviceInfo22, _this$deviceInfo22$de, _this$deviceInfo23, _this$deviceInfo23$de, _this$deviceInfo24, _this$deviceInfo24$de;
219
280
  data = {
220
281
  tags: {
221
282
  action: metricAction,
222
- device_id: (_this$deviceInfo16 = this.deviceInfo) === null || _this$deviceInfo16 === void 0 ? void 0 : (_this$deviceInfo16$de = _this$deviceInfo16.device) === null || _this$deviceInfo16$de === void 0 ? void 0 : _this$deviceInfo16$de.deviceId,
283
+ device_id: (_this$deviceInfo22 = this.deviceInfo) === null || _this$deviceInfo22 === void 0 ? void 0 : (_this$deviceInfo22$de = _this$deviceInfo22.device) === null || _this$deviceInfo22$de === void 0 ? void 0 : _this$deviceInfo22$de.deviceId,
223
284
  service_indicator: this.serviceIndicator
224
285
  },
225
286
  fields: {
226
- device_url: (_this$deviceInfo17 = this.deviceInfo) === null || _this$deviceInfo17 === void 0 ? void 0 : (_this$deviceInfo17$de = _this$deviceInfo17.device) === null || _this$deviceInfo17$de === void 0 ? void 0 : _this$deviceInfo17$de.clientDeviceUri,
227
- mobius_url: (_this$deviceInfo18 = this.deviceInfo) === null || _this$deviceInfo18 === void 0 ? void 0 : (_this$deviceInfo18$de = _this$deviceInfo18.device) === null || _this$deviceInfo18$de === void 0 ? void 0 : _this$deviceInfo18$de.uri,
287
+ device_url: (_this$deviceInfo23 = this.deviceInfo) === null || _this$deviceInfo23 === void 0 ? void 0 : (_this$deviceInfo23$de = _this$deviceInfo23.device) === null || _this$deviceInfo23$de === void 0 ? void 0 : _this$deviceInfo23$de.clientDeviceUri,
288
+ mobius_url: (_this$deviceInfo24 = this.deviceInfo) === null || _this$deviceInfo24 === void 0 ? void 0 : (_this$deviceInfo24$de = _this$deviceInfo24.device) === null || _this$deviceInfo24$de === void 0 ? void 0 : _this$deviceInfo24$de.uri,
228
289
  calling_sdk_version: process.env.CALLING_SDK_VERSION || _constants.VERSION,
229
290
  call_id: callId,
230
291
  correlation_id: correlationId,
@@ -265,15 +326,15 @@ var MetricManager = /*#__PURE__*/function () {
265
326
  switch (name) {
266
327
  case _types.METRIC_EVENT.VOICEMAIL:
267
328
  {
268
- var _this$deviceInfo19, _this$deviceInfo19$de, _this$deviceInfo20, _this$deviceInfo20$de;
329
+ var _this$deviceInfo25, _this$deviceInfo25$de, _this$deviceInfo26, _this$deviceInfo26$de;
269
330
  data = {
270
331
  tags: {
271
332
  action: metricAction,
272
- device_id: (_this$deviceInfo19 = this.deviceInfo) === null || _this$deviceInfo19 === void 0 ? void 0 : (_this$deviceInfo19$de = _this$deviceInfo19.device) === null || _this$deviceInfo19$de === void 0 ? void 0 : _this$deviceInfo19$de.deviceId,
333
+ device_id: (_this$deviceInfo25 = this.deviceInfo) === null || _this$deviceInfo25 === void 0 ? void 0 : (_this$deviceInfo25$de = _this$deviceInfo25.device) === null || _this$deviceInfo25$de === void 0 ? void 0 : _this$deviceInfo25$de.deviceId,
273
334
  message_id: messageId
274
335
  },
275
336
  fields: {
276
- device_url: (_this$deviceInfo20 = this.deviceInfo) === null || _this$deviceInfo20 === void 0 ? void 0 : (_this$deviceInfo20$de = _this$deviceInfo20.device) === null || _this$deviceInfo20$de === void 0 ? void 0 : _this$deviceInfo20$de.clientDeviceUri,
337
+ device_url: (_this$deviceInfo26 = this.deviceInfo) === null || _this$deviceInfo26 === void 0 ? void 0 : (_this$deviceInfo26$de = _this$deviceInfo26.device) === null || _this$deviceInfo26$de === void 0 ? void 0 : _this$deviceInfo26$de.clientDeviceUri,
277
338
  calling_sdk_version: typeof process !== 'undefined' && process.env.CALLING_SDK_VERSION ? process.env.CALLING_SDK_VERSION : _constants.VERSION
278
339
  },
279
340
  type: type
@@ -282,17 +343,17 @@ var MetricManager = /*#__PURE__*/function () {
282
343
  }
283
344
  case _types.METRIC_EVENT.VOICEMAIL_ERROR:
284
345
  {
285
- var _this$deviceInfo21, _this$deviceInfo21$de, _this$deviceInfo22, _this$deviceInfo22$de;
346
+ var _this$deviceInfo27, _this$deviceInfo27$de, _this$deviceInfo28, _this$deviceInfo28$de;
286
347
  data = {
287
348
  tags: {
288
349
  action: metricAction,
289
- device_id: (_this$deviceInfo21 = this.deviceInfo) === null || _this$deviceInfo21 === void 0 ? void 0 : (_this$deviceInfo21$de = _this$deviceInfo21.device) === null || _this$deviceInfo21$de === void 0 ? void 0 : _this$deviceInfo21$de.deviceId,
350
+ device_id: (_this$deviceInfo27 = this.deviceInfo) === null || _this$deviceInfo27 === void 0 ? void 0 : (_this$deviceInfo27$de = _this$deviceInfo27.device) === null || _this$deviceInfo27$de === void 0 ? void 0 : _this$deviceInfo27$de.deviceId,
290
351
  message_id: messageId,
291
352
  error: voicemailError,
292
353
  status_code: statusCode
293
354
  },
294
355
  fields: {
295
- device_url: (_this$deviceInfo22 = this.deviceInfo) === null || _this$deviceInfo22 === void 0 ? void 0 : (_this$deviceInfo22$de = _this$deviceInfo22.device) === null || _this$deviceInfo22$de === void 0 ? void 0 : _this$deviceInfo22$de.clientDeviceUri,
356
+ device_url: (_this$deviceInfo28 = this.deviceInfo) === null || _this$deviceInfo28 === void 0 ? void 0 : (_this$deviceInfo28$de = _this$deviceInfo28.device) === null || _this$deviceInfo28$de === void 0 ? void 0 : _this$deviceInfo28$de.clientDeviceUri,
296
357
  calling_sdk_version: typeof process !== 'undefined' && process.env.CALLING_SDK_VERSION ? process.env.CALLING_SDK_VERSION : _constants.VERSION
297
358
  },
298
359
  type: type
@@ -315,15 +376,15 @@ var MetricManager = /*#__PURE__*/function () {
315
376
  value: function submitBNRMetric(name, type, callId, correlationId) {
316
377
  var data;
317
378
  if (name === _types.METRIC_EVENT.BNR_ENABLED || name === _types.METRIC_EVENT.BNR_DISABLED) {
318
- var _this$deviceInfo23, _this$deviceInfo23$de, _this$deviceInfo24, _this$deviceInfo24$de, _this$deviceInfo25, _this$deviceInfo25$de;
379
+ var _this$deviceInfo29, _this$deviceInfo29$de, _this$deviceInfo30, _this$deviceInfo30$de, _this$deviceInfo31, _this$deviceInfo31$de;
319
380
  data = {
320
381
  tags: {
321
- device_id: (_this$deviceInfo23 = this.deviceInfo) === null || _this$deviceInfo23 === void 0 ? void 0 : (_this$deviceInfo23$de = _this$deviceInfo23.device) === null || _this$deviceInfo23$de === void 0 ? void 0 : _this$deviceInfo23$de.deviceId,
382
+ device_id: (_this$deviceInfo29 = this.deviceInfo) === null || _this$deviceInfo29 === void 0 ? void 0 : (_this$deviceInfo29$de = _this$deviceInfo29.device) === null || _this$deviceInfo29$de === void 0 ? void 0 : _this$deviceInfo29$de.deviceId,
322
383
  service_indicator: this.serviceIndicator
323
384
  },
324
385
  fields: {
325
- device_url: (_this$deviceInfo24 = this.deviceInfo) === null || _this$deviceInfo24 === void 0 ? void 0 : (_this$deviceInfo24$de = _this$deviceInfo24.device) === null || _this$deviceInfo24$de === void 0 ? void 0 : _this$deviceInfo24$de.clientDeviceUri,
326
- mobius_url: (_this$deviceInfo25 = this.deviceInfo) === null || _this$deviceInfo25 === void 0 ? void 0 : (_this$deviceInfo25$de = _this$deviceInfo25.device) === null || _this$deviceInfo25$de === void 0 ? void 0 : _this$deviceInfo25$de.uri,
386
+ device_url: (_this$deviceInfo30 = this.deviceInfo) === null || _this$deviceInfo30 === void 0 ? void 0 : (_this$deviceInfo30$de = _this$deviceInfo30.device) === null || _this$deviceInfo30$de === void 0 ? void 0 : _this$deviceInfo30$de.clientDeviceUri,
387
+ mobius_url: (_this$deviceInfo31 = this.deviceInfo) === null || _this$deviceInfo31 === void 0 ? void 0 : (_this$deviceInfo31$de = _this$deviceInfo31.device) === null || _this$deviceInfo31$de === void 0 ? void 0 : _this$deviceInfo31$de.uri,
327
388
  calling_sdk_version: process.env.CALLING_SDK_VERSION || _constants.VERSION,
328
389
  call_id: callId,
329
390
  correlation_id: correlationId
@@ -348,7 +409,7 @@ var MetricManager = /*#__PURE__*/function () {
348
409
  * @param indicator - Service Indicator.
349
410
  */
350
411
  var getMetricManager = exports.getMetricManager = function getMetricManager(webex, indicator) {
351
- if (!metricManager) {
412
+ if (!metricManager && webex) {
352
413
  metricManager = new MetricManager(webex, indicator);
353
414
  }
354
415
  return metricManager;
@@ -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","setDeviceInfo","deviceInfo","submitRegistrationMetric","name","metricAction","type","clientError","data","METRIC_EVENT","REGISTRATION","_this$deviceInfo","_this$deviceInfo$devi","_this$deviceInfo2","_this$deviceInfo2$dev","_this$deviceInfo3","_this$deviceInfo3$dev","tags","action","device_id","device","deviceId","service_indicator","fields","device_url","clientDeviceUri","mobius_url","uri","calling_sdk_version","process","env","CALLING_SDK_VERSION","VERSION","REGISTRATION_ERROR","_this$deviceInfo4","_this$deviceInfo4$dev","_this$deviceInfo5","_this$deviceInfo5$dev","_this$deviceInfo6","_this$deviceInfo6$dev","error","getError","message","error_type","warn","method","internal","metrics","submitClientMetrics","submitCallMetric","callId","correlationId","callError","CALL","_this$deviceInfo7","_this$deviceInfo7$dev","_this$deviceInfo8","_this$deviceInfo8$dev","_this$deviceInfo9","_this$deviceInfo9$dev","call_id","correlation_id","CALL_ERROR","_this$deviceInfo10","_this$deviceInfo10$de","_this$deviceInfo11","_this$deviceInfo11$de","_this$deviceInfo12","_this$deviceInfo12$de","getCallError","submitMediaMetric","localSdp","remoteSdp","MEDIA","_this$deviceInfo13","_this$deviceInfo13$de","_this$deviceInfo14","_this$deviceInfo14$de","_this$deviceInfo15","_this$deviceInfo15$de","local_media_details","remote_media_details","MEDIA_ERROR","_this$deviceInfo16","_this$deviceInfo16$de","_this$deviceInfo17","_this$deviceInfo17$de","_this$deviceInfo18","_this$deviceInfo18$de","submitVoicemailMetric","messageId","voicemailError","statusCode","VOICEMAIL","_this$deviceInfo19","_this$deviceInfo19$de","_this$deviceInfo20","_this$deviceInfo20$de","message_id","VOICEMAIL_ERROR","_this$deviceInfo21","_this$deviceInfo21$de","_this$deviceInfo22","_this$deviceInfo22$de","status_code","submitBNRMetric","BNR_ENABLED","BNR_DISABLED","_this$deviceInfo23","_this$deviceInfo23$de","_this$deviceInfo24","_this$deviceInfo24$de","_this$deviceInfo25","_this$deviceInfo25$de","getMetricManager","exports","_default"],"sources":["index.ts"],"sourcesContent":["import {CallError, CallingClientError} from '../Errors';\nimport {METRIC_FILE, VERSION} from '../CallingClient/constants';\nimport {CallId, CorrelationId, IDeviceInfo, ServiceIndicator} from '../common/types';\nimport {WebexSDK} from '../SDKConnector/types';\nimport {REG_ACTION, IMetricManager, METRIC_TYPE, METRIC_EVENT} from './types';\nimport {LineError} from '../Errors/catalog/LineError';\nimport log from '../Logger';\n\nlet metricManager: IMetricManager;\n\n/**\n *\n */\nclass MetricManager implements IMetricManager {\n private webex: WebexSDK;\n\n private deviceInfo?: IDeviceInfo;\n\n private serviceIndicator?: ServiceIndicator;\n\n /**\n * @param webex - Webex object used to send metrics.\n * @param indicator - Service Indicator.\n */\n public constructor(webex: WebexSDK, indicator?: ServiceIndicator) {\n log.info('Initializing metric manager...', {file: METRIC_FILE});\n this.webex = webex;\n this.serviceIndicator = indicator;\n }\n\n /**\n * @param deviceInfo - DeviceInfo object.\n */\n public setDeviceInfo(deviceInfo: IDeviceInfo) {\n this.deviceInfo = deviceInfo;\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param clientError - Error object used to populate error details in metric.\n */\n public submitRegistrationMetric(\n name: METRIC_EVENT,\n metricAction: REG_ACTION,\n type: METRIC_TYPE,\n clientError: LineError | CallingClientError | undefined\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.REGISTRATION: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.REGISTRATION_ERROR: {\n if (clientError) {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n error: clientError.getError().message,\n error_type: clientError.getError().type,\n },\n type,\n };\n }\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: this.submitRegistrationMetric.name,\n });\n break;\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param callId - Call ID of the call sending the metric.\n * @param correlationId - Correlation ID of the call sending the metric.\n * @param callError - Error object used to populate error details in metric.\n */\n public submitCallMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId,\n callError?: CallError\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.CALL: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.CALL_ERROR: {\n if (callError) {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n error: callError.getCallError().message,\n error_type: callError.getCallError().type,\n },\n type,\n };\n }\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: this.submitCallMetric.name,\n });\n break;\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param callId - Call ID of the call sending the metric.\n * @param correlationId - Correlation ID of the call sending the metric.\n * @param localSdp - Local SDP information for media metric.\n * @param remoteSdp - Remote SDP information for media metric.\n * @param callError - Error object used to populate error details in metric.\n */\n public submitMediaMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId,\n localSdp?: string,\n remoteSdp?: string,\n callError?: CallError\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.MEDIA: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n local_media_details: localSdp,\n remote_media_details: remoteSdp,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.MEDIA_ERROR: {\n if (callError) {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n local_media_details: localSdp,\n remote_media_details: remoteSdp,\n error: callError.getCallError().message,\n error_type: callError.getCallError().type,\n },\n type,\n };\n }\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: this.submitMediaMetric.name,\n });\n break;\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param messageId - Message identifier of a Voicemail message.\n * @param voicemailError - Error string used to populate error details in metric.\n * @param statusCode - Status code used to populate error details in metric.\n */\n public submitVoicemailMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n messageId?: string,\n voicemailError?: string,\n statusCode?: number\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.VOICEMAIL: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n message_id: messageId,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n calling_sdk_version:\n typeof process !== 'undefined' && process.env.CALLING_SDK_VERSION\n ? process.env.CALLING_SDK_VERSION\n : VERSION,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.VOICEMAIL_ERROR: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n message_id: messageId,\n error: voicemailError,\n status_code: statusCode,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n calling_sdk_version:\n typeof process !== 'undefined' && process.env.CALLING_SDK_VERSION\n ? process.env.CALLING_SDK_VERSION\n : VERSION,\n },\n type,\n };\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: this.submitVoicemailMetric.name,\n });\n break;\n }\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n public submitBNRMetric(\n name: METRIC_EVENT,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId\n ) {\n let data;\n\n if (name === METRIC_EVENT.BNR_ENABLED || name === METRIC_EVENT.BNR_DISABLED) {\n data = {\n tags: {\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n },\n type,\n };\n } else {\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: this.submitBNRMetric.name,\n });\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n}\n\n/**\n * @param webex - Webex object to communicate with metrics microservice.\n * @param indicator - Service Indicator.\n */\nexport const getMetricManager = (webex: WebexSDK, indicator?: ServiceIndicator): IMetricManager => {\n if (!metricManager) {\n metricManager = new MetricManager(webex, indicator);\n }\n\n return metricManager;\n};\n\nexport default getMetricManager;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_constants","require","_types","_Logger","_interopRequireDefault","metricManager","MetricManager","webex","indicator","_classCallCheck2","default","_defineProperty2","log","info","file","METRIC_FILE","serviceIndicator","_createClass2","key","value","submitUploadLogsMetric","name","action","type","trackingId","feedbackId","correlationId","stack","callId","data","METRIC_EVENT","UPLOAD_LOGS_SUCCESS","_this$deviceInfo","_this$deviceInfo$devi","_this$deviceInfo2","_this$deviceInfo2$dev","_this$deviceInfo3","_this$deviceInfo3$dev","tags","device_id","deviceInfo","device","deviceId","service_indicator","fields","device_url","clientDeviceUri","mobius_url","uri","calling_sdk_version","process","env","CALLING_SDK_VERSION","VERSION","correlation_id","tracking_id","feedback_id","call_id","UPLOAD_LOGS_FAILED","_this$deviceInfo4","_this$deviceInfo4$dev","_this$deviceInfo5","_this$deviceInfo5$dev","_this$deviceInfo6","_this$deviceInfo6$dev","error","internal","metrics","submitClientMetrics","setDeviceInfo","submitRegistrationMetric","metricAction","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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"}
@@ -58,11 +58,14 @@ describe('CALLING: Metric tests', function () {
58
58
  fields: {
59
59
  device_url: mockDeviceInfo.device.clientDeviceUri,
60
60
  mobius_url: mockDeviceInfo.device.uri,
61
- calling_sdk_version: MOCK_VERSION_NUMBER
61
+ calling_sdk_version: MOCK_VERSION_NUMBER,
62
+ reg_source: _constants.REGISTRATION_UTIL,
63
+ server_type: 'PRIMARY',
64
+ trackingId: 'webex-js-sdk_06bafdd0-2f9b-4cd7-b438-9c0d95ecec9b_15'
62
65
  },
63
66
  type: _types.METRIC_TYPE.BEHAVIORAL
64
67
  };
65
- metricManager.submitRegistrationMetric(_types.METRIC_EVENT.REGISTRATION, _types.REG_ACTION.REGISTER, _types.METRIC_TYPE.BEHAVIORAL, undefined);
68
+ metricManager.submitRegistrationMetric(_types.METRIC_EVENT.REGISTRATION, _types.REG_ACTION.REGISTER, _types.METRIC_TYPE.BEHAVIORAL, _constants.REGISTRATION_UTIL, 'PRIMARY', 'webex-js-sdk_06bafdd0-2f9b-4cd7-b438-9c0d95ecec9b_15', undefined, undefined);
66
69
  expect(mockSubmitClientMetric).toBeCalledOnceWith(_types.METRIC_EVENT.REGISTRATION, expectedData);
67
70
  });
68
71
  it('submit registration failure metric', function () {
@@ -83,17 +86,20 @@ describe('CALLING: Metric tests', function () {
83
86
  device_url: mockDeviceInfo.device.clientDeviceUri,
84
87
  mobius_url: mockDeviceInfo.device.uri,
85
88
  calling_sdk_version: MOCK_VERSION_NUMBER,
89
+ reg_source: _constants.REGISTRATION_UTIL,
90
+ server_type: 'BACKUP',
91
+ trackingId: 'webex-js-sdk_06bafdd0-2f9b-4cd7-b438-9c0d95ecec9b_15',
86
92
  error: clientError.getError().message,
87
93
  error_type: clientError.getError().type
88
94
  },
89
95
  type: _types.METRIC_TYPE.BEHAVIORAL
90
96
  };
91
- metricManager.submitRegistrationMetric(_types.METRIC_EVENT.REGISTRATION_ERROR, _types.REG_ACTION.REGISTER, _types.METRIC_TYPE.BEHAVIORAL, clientError);
97
+ metricManager.submitRegistrationMetric(_types.METRIC_EVENT.REGISTRATION_ERROR, _types.REG_ACTION.REGISTER, _types.METRIC_TYPE.BEHAVIORAL, _constants.REGISTRATION_UTIL, 'BACKUP', 'webex-js-sdk_06bafdd0-2f9b-4cd7-b438-9c0d95ecec9b_15', undefined, clientError);
92
98
  expect(mockSubmitClientMetric).toBeCalledOnceWith(_types.METRIC_EVENT.REGISTRATION_ERROR, expectedData);
93
99
  });
94
100
  it('submit unknown registration metric', function () {
95
101
  var logSpy = jest.spyOn(_Logger.default, 'warn');
96
- metricManager.submitRegistrationMetric('invalidMetricName', _types.REG_ACTION.REGISTER, _types.METRIC_TYPE.OPERATIONAL, undefined);
102
+ metricManager.submitRegistrationMetric('invalidMetricName', _types.REG_ACTION.REGISTER, _types.METRIC_TYPE.OPERATIONAL, _constants.REGISTRATION_UTIL, 'PRIMARY', undefined, undefined, undefined);
97
103
  expect(mockSubmitClientMetric).not.toBeCalled();
98
104
  expect(logSpy).toBeCalledOnceWith('Invalid metric name received. Rejecting request to submit metric.', {
99
105
  file: 'metric',