@webex/calling 3.0.0-next.4 → 3.0.0-next.41

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 (316) hide show
  1. package/CHANGELOG.md +1403 -1403
  2. package/README.md +74 -74
  3. package/dist/CallHistory/CallHistory.js +201 -0
  4. package/dist/CallHistory/CallHistory.js.map +1 -0
  5. package/dist/CallHistory/CallHistory.test.js +142 -0
  6. package/dist/CallHistory/CallHistory.test.js.map +1 -0
  7. package/dist/CallHistory/callHistoryFixtures.js +366 -0
  8. package/dist/CallHistory/callHistoryFixtures.js.map +1 -0
  9. package/dist/CallHistory/constants.js +17 -0
  10. package/dist/CallHistory/constants.js.map +1 -0
  11. package/dist/CallHistory/types.js +7 -0
  12. package/dist/CallHistory/types.js.map +1 -0
  13. package/dist/CallSettings/CallSettings.js +279 -0
  14. package/dist/CallSettings/CallSettings.js.map +1 -0
  15. package/dist/CallSettings/CallSettings.test.js +122 -0
  16. package/dist/CallSettings/CallSettings.test.js.map +1 -0
  17. package/dist/CallSettings/UcmBackendConnector.js +216 -0
  18. package/dist/CallSettings/UcmBackendConnector.js.map +1 -0
  19. package/dist/CallSettings/UcmBackendConnector.test.js +259 -0
  20. package/dist/CallSettings/UcmBackendConnector.test.js.map +1 -0
  21. package/dist/CallSettings/WxCallBackendConnector.js +547 -0
  22. package/dist/CallSettings/WxCallBackendConnector.js.map +1 -0
  23. package/dist/CallSettings/WxCallBackendConnector.test.js +802 -0
  24. package/dist/CallSettings/WxCallBackendConnector.test.js.map +1 -0
  25. package/dist/CallSettings/constants.js +19 -0
  26. package/dist/CallSettings/constants.js.map +1 -0
  27. package/dist/CallSettings/testFixtures.js +68 -0
  28. package/dist/CallSettings/testFixtures.js.map +1 -0
  29. package/dist/CallSettings/types.js +7 -0
  30. package/dist/CallSettings/types.js.map +1 -0
  31. package/dist/CallingClient/CallingClient.js +631 -0
  32. package/dist/CallingClient/CallingClient.js.map +1 -0
  33. package/dist/CallingClient/CallingClient.test.js +992 -0
  34. package/dist/CallingClient/CallingClient.test.js.map +1 -0
  35. package/dist/CallingClient/callRecordFixtures.js +101 -0
  36. package/dist/CallingClient/callRecordFixtures.js.map +1 -0
  37. package/dist/CallingClient/calling/CallerId/index.js +267 -0
  38. package/dist/CallingClient/calling/CallerId/index.js.map +1 -0
  39. package/dist/CallingClient/calling/CallerId/index.test.js +274 -0
  40. package/dist/CallingClient/calling/CallerId/index.test.js.map +1 -0
  41. package/dist/CallingClient/calling/CallerId/types.js +7 -0
  42. package/dist/CallingClient/calling/CallerId/types.js.map +1 -0
  43. package/dist/CallingClient/calling/call.js +3055 -0
  44. package/dist/CallingClient/calling/call.js.map +1 -0
  45. package/dist/CallingClient/calling/call.test.js +2858 -0
  46. package/dist/CallingClient/calling/call.test.js.map +1 -0
  47. package/dist/CallingClient/calling/callManager.js +432 -0
  48. package/dist/CallingClient/calling/callManager.js.map +1 -0
  49. package/dist/CallingClient/calling/callManager.test.js +683 -0
  50. package/dist/CallingClient/calling/callManager.test.js.map +1 -0
  51. package/dist/CallingClient/calling/index.js +30 -0
  52. package/dist/CallingClient/calling/index.js.map +1 -0
  53. package/dist/CallingClient/calling/types.js +69 -0
  54. package/dist/CallingClient/calling/types.js.map +1 -0
  55. package/dist/CallingClient/callingClientFixtures.js +143 -0
  56. package/dist/CallingClient/callingClientFixtures.js.map +1 -0
  57. package/dist/CallingClient/constants.js +134 -0
  58. package/dist/CallingClient/constants.js.map +1 -0
  59. package/dist/CallingClient/line/index.js +314 -0
  60. package/dist/CallingClient/line/index.js.map +1 -0
  61. package/dist/CallingClient/line/line.test.js +270 -0
  62. package/dist/CallingClient/line/line.test.js.map +1 -0
  63. package/dist/CallingClient/line/types.js +21 -0
  64. package/dist/CallingClient/line/types.js.map +1 -0
  65. package/dist/CallingClient/registration/index.js +19 -0
  66. package/dist/CallingClient/registration/index.js.map +1 -0
  67. package/dist/CallingClient/registration/register.js +1286 -0
  68. package/dist/CallingClient/registration/register.js.map +1 -0
  69. package/dist/CallingClient/registration/register.test.js +839 -0
  70. package/dist/CallingClient/registration/register.test.js.map +1 -0
  71. package/dist/CallingClient/registration/registerFixtures.js +36 -0
  72. package/dist/CallingClient/registration/registerFixtures.js.map +1 -0
  73. package/dist/CallingClient/registration/types.js +7 -0
  74. package/dist/CallingClient/registration/types.js.map +1 -0
  75. package/dist/CallingClient/types.js +7 -0
  76. package/dist/CallingClient/types.js.map +1 -0
  77. package/dist/Contacts/ContactsClient.js +1156 -0
  78. package/dist/Contacts/ContactsClient.js.map +1 -0
  79. package/dist/Contacts/ContactsClient.test.js +725 -0
  80. package/dist/Contacts/ContactsClient.test.js.map +1 -0
  81. package/dist/Contacts/constants.js +28 -0
  82. package/dist/Contacts/constants.js.map +1 -0
  83. package/dist/Contacts/contactFixtures.js +314 -0
  84. package/dist/Contacts/contactFixtures.js.map +1 -0
  85. package/dist/Contacts/types.js +43 -0
  86. package/dist/Contacts/types.js.map +1 -0
  87. package/dist/Errors/catalog/CallError.js +92 -0
  88. package/dist/Errors/catalog/CallError.js.map +1 -0
  89. package/dist/Errors/catalog/CallingDeviceError.js +86 -0
  90. package/dist/Errors/catalog/CallingDeviceError.js.map +1 -0
  91. package/dist/Errors/catalog/ExtendedError.js +44 -0
  92. package/dist/Errors/catalog/ExtendedError.js.map +1 -0
  93. package/dist/Errors/catalog/LineError.js +88 -0
  94. package/dist/Errors/catalog/LineError.js.map +1 -0
  95. package/dist/Errors/index.js +28 -0
  96. package/dist/Errors/index.js.map +1 -0
  97. package/dist/Errors/types.js +57 -0
  98. package/dist/Errors/types.js.map +1 -0
  99. package/dist/Events/impl/index.js +81 -0
  100. package/dist/Events/impl/index.js.map +1 -0
  101. package/dist/Events/types.js +103 -0
  102. package/dist/Events/types.js.map +1 -0
  103. package/dist/Logger/index.js +220 -0
  104. package/dist/Logger/index.js.map +1 -0
  105. package/dist/Logger/index.test.js +62 -0
  106. package/dist/Logger/index.test.js.map +1 -0
  107. package/dist/Logger/types.js +34 -0
  108. package/dist/Logger/types.js.map +1 -0
  109. package/dist/Metrics/index.js +327 -0
  110. package/dist/Metrics/index.js.map +1 -0
  111. package/dist/Metrics/index.test.js +291 -0
  112. package/dist/Metrics/index.test.js.map +1 -0
  113. package/dist/Metrics/types.js +45 -0
  114. package/dist/Metrics/types.js.map +1 -0
  115. package/dist/SDKConnector/index.js +104 -0
  116. package/dist/SDKConnector/index.js.map +1 -0
  117. package/dist/SDKConnector/index.test.js +9 -0
  118. package/dist/SDKConnector/index.test.js.map +1 -0
  119. package/dist/SDKConnector/types.js +7 -0
  120. package/dist/SDKConnector/types.js.map +1 -0
  121. package/dist/SDKConnector/utils.js +39 -0
  122. package/dist/SDKConnector/utils.js.map +1 -0
  123. package/dist/SDKConnector/utils.test.js +9 -0
  124. package/dist/SDKConnector/utils.test.js.map +1 -0
  125. package/dist/Voicemail/BroadworksBackendConnector.js +641 -0
  126. package/dist/Voicemail/BroadworksBackendConnector.js.map +1 -0
  127. package/dist/Voicemail/BroadworksBackendConnector.test.js +733 -0
  128. package/dist/Voicemail/BroadworksBackendConnector.test.js.map +1 -0
  129. package/dist/Voicemail/UcmBackendConnector.js +574 -0
  130. package/dist/Voicemail/UcmBackendConnector.js.map +1 -0
  131. package/dist/Voicemail/UcmBackendConnector.test.js +629 -0
  132. package/dist/Voicemail/UcmBackendConnector.test.js.map +1 -0
  133. package/dist/Voicemail/Voicemail.js +380 -0
  134. package/dist/Voicemail/Voicemail.js.map +1 -0
  135. package/dist/Voicemail/Voicemail.test.js +226 -0
  136. package/dist/Voicemail/Voicemail.test.js.map +1 -0
  137. package/dist/Voicemail/WxCallBackendConnector.js +547 -0
  138. package/dist/Voicemail/WxCallBackendConnector.js.map +1 -0
  139. package/dist/Voicemail/WxCallBackendConnector.test.js +942 -0
  140. package/dist/Voicemail/WxCallBackendConnector.test.js.map +1 -0
  141. package/dist/Voicemail/constants.js +37 -0
  142. package/dist/Voicemail/constants.js.map +1 -0
  143. package/dist/Voicemail/types.js +7 -0
  144. package/dist/Voicemail/types.js.map +1 -0
  145. package/dist/Voicemail/voicemailFixture.js +524 -0
  146. package/dist/Voicemail/voicemailFixture.js.map +1 -0
  147. package/dist/api.js +157 -0
  148. package/dist/api.js.map +1 -0
  149. package/dist/common/Utils.js +1257 -0
  150. package/dist/common/Utils.js.map +1 -0
  151. package/dist/common/Utils.test.js +1227 -0
  152. package/dist/common/Utils.test.js.map +1 -0
  153. package/dist/common/constants.js +49 -0
  154. package/dist/common/constants.js.map +1 -0
  155. package/dist/common/index.js +19 -0
  156. package/dist/common/index.js.map +1 -0
  157. package/dist/common/testUtil.js +959 -0
  158. package/dist/common/testUtil.js.map +1 -0
  159. package/dist/common/types.js +66 -0
  160. package/dist/common/types.js.map +1 -0
  161. package/dist/index.js +309 -0
  162. package/dist/index.js.map +1 -0
  163. package/dist/module/CallHistory/CallHistory.js +83 -81
  164. package/dist/module/CallHistory/callHistoryFixtures.js +366 -307
  165. package/dist/module/CallHistory/constants.js +9 -9
  166. package/dist/module/CallHistory/types.js +1 -1
  167. package/dist/module/CallSettings/CallSettings.js +65 -65
  168. package/dist/module/CallSettings/UcmBackendConnector.js +100 -100
  169. package/dist/module/CallSettings/WxCallBackendConnector.js +287 -287
  170. package/dist/module/CallSettings/constants.js +11 -11
  171. package/dist/module/CallSettings/testFixtures.js +62 -62
  172. package/dist/module/CallSettings/types.js +1 -1
  173. package/dist/module/CallingClient/CallingClient.js +265 -248
  174. package/dist/module/CallingClient/callRecordFixtures.js +93 -93
  175. package/dist/module/CallingClient/calling/CallerId/index.js +149 -169
  176. package/dist/module/CallingClient/calling/CallerId/types.js +1 -1
  177. package/dist/module/CallingClient/calling/call.js +1701 -1658
  178. package/dist/module/CallingClient/calling/callManager.js +278 -284
  179. package/dist/module/CallingClient/calling/index.js +2 -2
  180. package/dist/module/CallingClient/calling/types.js +53 -53
  181. package/dist/module/CallingClient/callingClientFixtures.js +156 -38
  182. package/dist/module/CallingClient/constants.js +126 -122
  183. package/dist/module/CallingClient/line/index.js +155 -158
  184. package/dist/module/CallingClient/line/types.js +10 -15
  185. package/dist/module/CallingClient/registration/index.js +1 -1
  186. package/dist/module/CallingClient/registration/register.js +515 -507
  187. package/dist/module/CallingClient/registration/registerFixtures.js +28 -28
  188. package/dist/module/CallingClient/registration/types.js +1 -1
  189. package/dist/module/CallingClient/types.js +1 -1
  190. package/dist/module/Contacts/ContactsClient.js +487 -484
  191. package/dist/module/Contacts/constants.js +20 -20
  192. package/dist/module/Contacts/contactFixtures.js +284 -284
  193. package/dist/module/Contacts/types.js +10 -10
  194. package/dist/module/Errors/catalog/CallError.js +26 -26
  195. package/dist/module/Errors/catalog/CallingDeviceError.js +18 -18
  196. package/dist/module/Errors/catalog/ExtendedError.js +10 -10
  197. package/dist/module/Errors/catalog/LineError.js +24 -24
  198. package/dist/module/Errors/index.js +3 -2
  199. package/dist/module/Errors/types.js +48 -48
  200. package/dist/module/Events/impl/index.js +19 -19
  201. package/dist/module/Events/types.js +85 -83
  202. package/dist/module/Logger/index.js +114 -114
  203. package/dist/module/Logger/types.js +25 -25
  204. package/dist/module/Metrics/index.js +232 -232
  205. package/dist/module/Metrics/types.js +37 -37
  206. package/dist/module/SDKConnector/index.js +39 -39
  207. package/dist/module/SDKConnector/types.js +1 -1
  208. package/dist/module/SDKConnector/utils.js +12 -12
  209. package/dist/module/Voicemail/BroadworksBackendConnector.js +291 -291
  210. package/dist/module/Voicemail/UcmBackendConnector.js +279 -279
  211. package/dist/module/Voicemail/Voicemail.js +110 -110
  212. package/dist/module/Voicemail/WxCallBackendConnector.js +279 -279
  213. package/dist/module/Voicemail/constants.js +29 -29
  214. package/dist/module/Voicemail/types.js +1 -1
  215. package/dist/module/Voicemail/voicemailFixture.js +510 -510
  216. package/dist/module/api.js +7 -6
  217. package/dist/module/common/Utils.js +797 -802
  218. package/dist/module/common/constants.js +41 -41
  219. package/dist/module/common/index.js +1 -1
  220. package/dist/module/common/testUtil.js +939 -938
  221. package/dist/module/common/types.js +58 -57
  222. package/dist/module/index.js +17 -8
  223. package/dist/types/CallHistory/CallHistory.d.ts +18 -17
  224. package/dist/types/CallHistory/CallHistory.d.ts.map +1 -1
  225. package/dist/types/CallHistory/callHistoryFixtures.d.ts +95 -94
  226. package/dist/types/CallHistory/callHistoryFixtures.d.ts.map +1 -1
  227. package/dist/types/CallHistory/constants.d.ts +9 -9
  228. package/dist/types/CallHistory/types.d.ts +18 -18
  229. package/dist/types/CallSettings/CallSettings.d.ts +19 -19
  230. package/dist/types/CallSettings/CallSettings.d.ts.map +1 -1
  231. package/dist/types/CallSettings/UcmBackendConnector.d.ts +19 -19
  232. package/dist/types/CallSettings/UcmBackendConnector.d.ts.map +1 -1
  233. package/dist/types/CallSettings/WxCallBackendConnector.d.ts +21 -21
  234. package/dist/types/CallSettings/constants.d.ts +11 -11
  235. package/dist/types/CallSettings/testFixtures.d.ts +15 -15
  236. package/dist/types/CallSettings/types.d.ts +108 -107
  237. package/dist/types/CallSettings/types.d.ts.map +1 -1
  238. package/dist/types/CallingClient/CallingClient.d.ts +37 -35
  239. package/dist/types/CallingClient/CallingClient.d.ts.map +1 -1
  240. package/dist/types/CallingClient/callRecordFixtures.d.ts +3 -3
  241. package/dist/types/CallingClient/calling/CallerId/index.d.ts +17 -17
  242. package/dist/types/CallingClient/calling/CallerId/index.d.ts.map +1 -1
  243. package/dist/types/CallingClient/calling/CallerId/types.d.ts +41 -41
  244. package/dist/types/CallingClient/calling/CallerId/types.d.ts.map +1 -1
  245. package/dist/types/CallingClient/calling/call.d.ts +98 -96
  246. package/dist/types/CallingClient/calling/call.d.ts.map +1 -1
  247. package/dist/types/CallingClient/calling/callManager.d.ts +24 -25
  248. package/dist/types/CallingClient/calling/callManager.d.ts.map +1 -1
  249. package/dist/types/CallingClient/calling/index.d.ts +2 -2
  250. package/dist/types/CallingClient/calling/types.d.ts +206 -206
  251. package/dist/types/CallingClient/calling/types.d.ts.map +1 -1
  252. package/dist/types/CallingClient/callingClientFixtures.d.ts +86 -18
  253. package/dist/types/CallingClient/callingClientFixtures.d.ts.map +1 -1
  254. package/dist/types/CallingClient/constants.d.ts +126 -122
  255. package/dist/types/CallingClient/constants.d.ts.map +1 -1
  256. package/dist/types/CallingClient/line/index.d.ts +43 -43
  257. package/dist/types/CallingClient/line/index.d.ts.map +1 -1
  258. package/dist/types/CallingClient/line/types.d.ts +43 -55
  259. package/dist/types/CallingClient/line/types.d.ts.map +1 -1
  260. package/dist/types/CallingClient/registration/index.d.ts +1 -1
  261. package/dist/types/CallingClient/registration/register.d.ts +64 -64
  262. package/dist/types/CallingClient/registration/register.d.ts.map +1 -1
  263. package/dist/types/CallingClient/registration/registerFixtures.d.ts +28 -28
  264. package/dist/types/CallingClient/registration/types.d.ts +20 -20
  265. package/dist/types/CallingClient/registration/types.d.ts.map +1 -1
  266. package/dist/types/CallingClient/types.d.ts +31 -29
  267. package/dist/types/CallingClient/types.d.ts.map +1 -1
  268. package/dist/types/Contacts/ContactsClient.d.ts +27 -26
  269. package/dist/types/Contacts/ContactsClient.d.ts.map +1 -1
  270. package/dist/types/Contacts/constants.d.ts +19 -19
  271. package/dist/types/Contacts/contactFixtures.d.ts +280 -280
  272. package/dist/types/Contacts/types.d.ts +74 -72
  273. package/dist/types/Contacts/types.d.ts.map +1 -1
  274. package/dist/types/Errors/catalog/CallError.d.ts +11 -11
  275. package/dist/types/Errors/catalog/CallingDeviceError.d.ts +10 -10
  276. package/dist/types/Errors/catalog/CallingDeviceError.d.ts.map +1 -1
  277. package/dist/types/Errors/catalog/ExtendedError.d.ts +6 -6
  278. package/dist/types/Errors/catalog/LineError.d.ts +10 -10
  279. package/dist/types/Errors/catalog/LineError.d.ts.map +1 -1
  280. package/dist/types/Errors/index.d.ts +3 -2
  281. package/dist/types/Errors/index.d.ts.map +1 -1
  282. package/dist/types/Errors/types.d.ts +59 -60
  283. package/dist/types/Errors/types.d.ts.map +1 -1
  284. package/dist/types/Events/impl/index.d.ts +8 -8
  285. package/dist/types/Events/types.d.ts +311 -288
  286. package/dist/types/Events/types.d.ts.map +1 -1
  287. package/dist/types/Logger/index.d.ts +12 -12
  288. package/dist/types/Logger/types.d.ts +25 -25
  289. package/dist/types/Metrics/index.d.ts +5 -5
  290. package/dist/types/Metrics/types.d.ts +42 -42
  291. package/dist/types/SDKConnector/index.d.ts +12 -12
  292. package/dist/types/SDKConnector/types.d.ts +129 -128
  293. package/dist/types/SDKConnector/types.d.ts.map +1 -1
  294. package/dist/types/SDKConnector/utils.d.ts +5 -5
  295. package/dist/types/Voicemail/BroadworksBackendConnector.d.ts +27 -27
  296. package/dist/types/Voicemail/UcmBackendConnector.d.ts +34 -34
  297. package/dist/types/Voicemail/Voicemail.d.ts +27 -27
  298. package/dist/types/Voicemail/Voicemail.d.ts.map +1 -1
  299. package/dist/types/Voicemail/WxCallBackendConnector.d.ts +23 -23
  300. package/dist/types/Voicemail/constants.d.ts +29 -29
  301. package/dist/types/Voicemail/types.d.ts +133 -133
  302. package/dist/types/Voicemail/types.d.ts.map +1 -1
  303. package/dist/types/Voicemail/voicemailFixture.d.ts +417 -417
  304. package/dist/types/api.d.ts +16 -16
  305. package/dist/types/api.d.ts.map +1 -1
  306. package/dist/types/common/Utils.d.ts +34 -34
  307. package/dist/types/common/Utils.d.ts.map +1 -1
  308. package/dist/types/common/constants.d.ts +41 -41
  309. package/dist/types/common/index.d.ts +1 -1
  310. package/dist/types/common/testUtil.d.ts +3612 -3611
  311. package/dist/types/common/testUtil.d.ts.map +1 -1
  312. package/dist/types/common/types.d.ts +192 -191
  313. package/dist/types/common/types.d.ts.map +1 -1
  314. package/dist/types/index.d.ts +21 -8
  315. package/dist/types/index.d.ts.map +1 -1
  316. package/package.json +5 -3
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_testUtil","require","_index","_types","_constants","_CallingDeviceError","_types2","_types3","_Logger","_interopRequireDefault","_CallError","ownKeys","e","r","t","_Object$keys","_Object$getOwnPropertySymbols","o","filter","_Object$getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","Object","forEach","_defineProperty2","default","_Object$getOwnPropertyDescriptors","_Object$defineProperties","_Object$defineProperty","webex","getTestUtilsWebex","describe","metricManager","getMetricManager","ServiceIndicator","CALLING","mockDeviceInfo","getMockDeviceInfo","mockSubmitClientMetric","jest","fn","internal","metrics","submitClientMetrics","mockCallId","mockCorrelationId","mockCallAction","mockMediaAction","beforeEach","mockClear","it","expect","not","toBeNull","toBeUndefined","setDeviceInfo","toEqual","expectedData","tags","action","REG_ACTION","REGISTER","device_id","device","deviceId","service_indicator","fields","device_url","clientDeviceUri","mobius_url","uri","calling_sdk_version","VERSION","type","METRIC_TYPE","BEHAVIORAL","submitRegistrationMetric","METRIC_EVENT","REGISTRATION","toBeCalledOnceWith","clientError","createClientError","ERROR_TYPE","DEFAULT","RegistrationStatus","INACTIVE","err","context","message","SERVICE_UNAVAILABLE","setError","error","getError","error_type","REGISTRATION_ERROR","logSpy","spyOn","log","OPERATIONAL","toBeCalled","file","method","beforeAll","call_id","correlation_id","submitCallMetric","CALL","callError","createCallError","ERROR_LAYER","CALL_CONTROL","FORBIDDEN_ERROR","setCallError","getCallError","CALL_ERROR","mockSdp","local_media_details","remote_media_details","submitMediaMetric","MEDIA","MEDIA_ERROR","expectedData1","VOICEMAIL_ACTION","GET_VOICEMAILS","submitVoicemailMetric","VOICEMAIL","expectedData2","message_id","DELETE","errorMessage","undefined","status_code","VOICEMAIL_ERROR"],"sources":["index.test.ts"],"sourcesContent":["/* eslint-disable dot-notation */\nimport {getMockDeviceInfo, getTestUtilsWebex} from '../common/testUtil';\nimport {getMetricManager} from './index';\nimport {METRIC_TYPE, METRIC_EVENT, REG_ACTION, VOICEMAIL_ACTION} from './types';\nimport {VERSION} from '../CallingClient/constants';\nimport {createClientError} from '../Errors/catalog/CallingDeviceError';\nimport {CallErrorObject, ErrorObject, ERROR_LAYER, ERROR_TYPE} from '../Errors/types';\nimport {RegistrationStatus, ServiceIndicator} from '../common/types';\nimport log from '../Logger';\nimport {createCallError} from '../Errors/catalog/CallError';\n\nconst webex = getTestUtilsWebex();\n\ndescribe('CALLING: Metric tests', () => {\n const metricManager = getMetricManager(webex, ServiceIndicator.CALLING);\n const mockDeviceInfo = getMockDeviceInfo();\n const mockSubmitClientMetric = jest.fn();\n\n webex.internal.metrics.submitClientMetrics = mockSubmitClientMetric;\n\n const mockCallId = '123456';\n const mockCorrelationId = '0931237';\n const mockCallAction = 'S_SEND_CALL_SETUP';\n const mockMediaAction = 'S_SEND_ROAP_OFFER';\n\n beforeEach(() => {\n mockSubmitClientMetric.mockClear();\n });\n\n it('initialize metric manager', () => {\n expect(metricManager).not.toBeNull();\n expect(metricManager['deviceInfo']).toBeUndefined();\n });\n\n it('update deviceInfo in metric manager', () => {\n expect(metricManager['deviceInfo']).toBeUndefined();\n metricManager.setDeviceInfo(mockDeviceInfo);\n expect(metricManager['deviceInfo']).toEqual(mockDeviceInfo);\n });\n\n describe('CallingClient metric tests', () => {\n it('submit registration success metric', () => {\n metricManager.setDeviceInfo(mockDeviceInfo);\n\n const expectedData = {\n tags: {\n action: REG_ACTION.REGISTER,\n device_id: mockDeviceInfo.device.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n mobius_url: mockDeviceInfo.device.uri,\n calling_sdk_version: VERSION,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitRegistrationMetric(\n METRIC_EVENT.REGISTRATION,\n REG_ACTION.REGISTER,\n METRIC_TYPE.BEHAVIORAL\n );\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.REGISTRATION, expectedData);\n });\n\n it('submit registration failure metric', () => {\n metricManager.setDeviceInfo(mockDeviceInfo);\n\n const clientError = createClientError(\n '',\n {},\n ERROR_TYPE.DEFAULT,\n RegistrationStatus.INACTIVE\n );\n const err = <ErrorObject>{};\n\n err.context = {};\n err.message = 'Unknown Error';\n err.type = ERROR_TYPE.SERVICE_UNAVAILABLE;\n\n clientError.setError(err);\n\n const expectedData = {\n tags: {\n action: REG_ACTION.REGISTER,\n device_id: mockDeviceInfo.device.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n mobius_url: mockDeviceInfo.device.uri,\n calling_sdk_version: VERSION,\n error: clientError.getError().message,\n error_type: clientError.getError().type,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitRegistrationMetric(\n METRIC_EVENT.REGISTRATION_ERROR,\n REG_ACTION.REGISTER,\n METRIC_TYPE.BEHAVIORAL,\n clientError\n );\n expect(mockSubmitClientMetric).toBeCalledOnceWith(\n METRIC_EVENT.REGISTRATION_ERROR,\n expectedData\n );\n });\n\n it('submit unknown registration metric', () => {\n const logSpy = jest.spyOn(log, 'warn');\n\n metricManager.submitRegistrationMetric(\n 'invalidMetricName' as unknown as METRIC_EVENT,\n REG_ACTION.REGISTER,\n METRIC_TYPE.OPERATIONAL\n );\n\n expect(mockSubmitClientMetric).not.toBeCalled();\n expect(logSpy).toBeCalledOnceWith(\n 'Invalid metric name received. Rejecting request to submit metric.',\n {\n file: 'metric',\n method: 'submitRegistrationMetric',\n }\n );\n });\n });\n\n describe('Call Metric tests', () => {\n beforeAll(() => {\n metricManager.setDeviceInfo(mockDeviceInfo);\n });\n\n it('submit call success metric', () => {\n const expectedData = {\n tags: {\n action: mockCallAction,\n device_id: mockDeviceInfo.device.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n mobius_url: mockDeviceInfo.device.uri,\n calling_sdk_version: VERSION,\n call_id: mockCallId,\n correlation_id: mockCorrelationId,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitCallMetric(\n METRIC_EVENT.CALL,\n mockCallAction,\n METRIC_TYPE.BEHAVIORAL,\n mockCallId,\n mockCorrelationId\n );\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.CALL, expectedData);\n });\n\n it('submit call failure metric', () => {\n const callError = createCallError(\n '',\n {},\n ERROR_TYPE.DEFAULT,\n mockCorrelationId,\n ERROR_LAYER.CALL_CONTROL\n );\n\n const err = <CallErrorObject>{};\n\n err.context = {};\n err.message =\n 'An invalid status update has been received for the call. Wait a moment and try again.';\n err.type = ERROR_TYPE.FORBIDDEN_ERROR;\n\n callError.setCallError(err);\n\n const expectedData = {\n tags: {\n action: mockCallAction,\n device_id: mockDeviceInfo.device.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n mobius_url: mockDeviceInfo.device.uri,\n calling_sdk_version: VERSION,\n call_id: mockCallId,\n correlation_id: mockCorrelationId,\n error: callError.getCallError().message,\n error_type: callError.getCallError().type,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitCallMetric(\n METRIC_EVENT.CALL_ERROR,\n mockCallAction,\n METRIC_TYPE.BEHAVIORAL,\n mockCallId,\n mockCorrelationId,\n callError\n );\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.CALL_ERROR, expectedData);\n });\n\n it('submit unknown call metric', () => {\n const logSpy = jest.spyOn(log, 'warn');\n\n metricManager.submitCallMetric(\n 'invalidMetricName' as unknown as METRIC_EVENT,\n mockCallAction,\n METRIC_TYPE.OPERATIONAL,\n mockCallId,\n mockCorrelationId\n );\n\n expect(mockSubmitClientMetric).not.toBeCalled();\n expect(logSpy).toBeCalledOnceWith(\n 'Invalid metric name received. Rejecting request to submit metric.',\n {\n file: 'metric',\n method: 'submitCallMetric',\n }\n );\n });\n });\n\n describe('Media Metric tests', () => {\n const mockSdp = 'sdpInformation';\n\n beforeAll(() => {\n metricManager.setDeviceInfo(mockDeviceInfo);\n });\n\n it('submit media success metric', () => {\n const expectedData = {\n tags: {\n action: mockMediaAction,\n device_id: mockDeviceInfo.device.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n mobius_url: mockDeviceInfo.device.uri,\n calling_sdk_version: VERSION,\n call_id: mockCallId,\n correlation_id: mockCorrelationId,\n local_media_details: mockSdp,\n remote_media_details: mockSdp,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitMediaMetric(\n METRIC_EVENT.MEDIA,\n mockMediaAction,\n METRIC_TYPE.BEHAVIORAL,\n mockCallId,\n mockCorrelationId,\n mockSdp,\n mockSdp\n );\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.MEDIA, expectedData);\n });\n\n it('submit media failure metric', () => {\n const callError = createCallError(\n '',\n {},\n ERROR_TYPE.DEFAULT,\n mockCorrelationId,\n ERROR_LAYER.MEDIA\n );\n\n const err = <CallErrorObject>{};\n\n err.context = {};\n err.message =\n 'An error occurred while parsing the provided information. Wait a moment and try again.';\n err.type = ERROR_TYPE.SERVICE_UNAVAILABLE;\n\n callError.setCallError(err);\n\n const expectedData = {\n tags: {\n action: mockMediaAction,\n device_id: mockDeviceInfo.device.deviceId,\n service_indicator: ServiceIndicator.CALLING,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n mobius_url: mockDeviceInfo.device.uri,\n calling_sdk_version: VERSION,\n call_id: mockCallId,\n correlation_id: mockCorrelationId,\n local_media_details: mockSdp,\n remote_media_details: mockSdp,\n error: callError.getCallError().message,\n error_type: callError.getCallError().type,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitMediaMetric(\n METRIC_EVENT.MEDIA_ERROR,\n mockMediaAction,\n METRIC_TYPE.BEHAVIORAL,\n mockCallId,\n mockCorrelationId,\n mockSdp,\n mockSdp,\n callError\n );\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.MEDIA_ERROR, expectedData);\n });\n\n it('submit unknown media metric', () => {\n const logSpy = jest.spyOn(log, 'warn');\n\n metricManager.submitMediaMetric(\n 'invalidMetricName' as unknown as METRIC_EVENT,\n mockMediaAction,\n METRIC_TYPE.OPERATIONAL,\n mockCallId,\n mockCorrelationId,\n mockSdp,\n mockSdp\n );\n\n expect(mockSubmitClientMetric).not.toBeCalled();\n expect(logSpy).toBeCalledOnceWith(\n 'Invalid metric name received. Rejecting request to submit metric.',\n {\n file: 'metric',\n method: 'submitMediaMetric',\n }\n );\n });\n });\n\n describe('Voicemail metric tests', () => {\n beforeAll(() => metricManager.setDeviceInfo(mockDeviceInfo));\n\n it('submit voicemail success metric', () => {\n const expectedData1 = {\n tags: {\n action: VOICEMAIL_ACTION.GET_VOICEMAILS,\n device_id: mockDeviceInfo.device.deviceId,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n calling_sdk_version: VERSION,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitVoicemailMetric(\n METRIC_EVENT.VOICEMAIL,\n VOICEMAIL_ACTION.GET_VOICEMAILS,\n METRIC_TYPE.BEHAVIORAL\n );\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.VOICEMAIL, expectedData1);\n\n mockSubmitClientMetric.mockClear();\n\n const expectedData2 = {\n ...expectedData1,\n tags: {...expectedData1.tags, message_id: 'messageId', action: VOICEMAIL_ACTION.DELETE},\n };\n\n metricManager.submitVoicemailMetric(\n METRIC_EVENT.VOICEMAIL,\n VOICEMAIL_ACTION.DELETE,\n METRIC_TYPE.BEHAVIORAL,\n 'messageId'\n );\n\n expect(mockSubmitClientMetric).toBeCalledOnceWith(METRIC_EVENT.VOICEMAIL, expectedData2);\n });\n\n it('submit voicemail failure metric', () => {\n const errorMessage = 'User is not authenticated';\n const expectedData1 = {\n tags: {\n action: VOICEMAIL_ACTION.GET_VOICEMAILS,\n device_id: mockDeviceInfo.device.deviceId,\n message_id: undefined,\n error: errorMessage,\n status_code: 401,\n },\n fields: {\n device_url: mockDeviceInfo.device.clientDeviceUri,\n calling_sdk_version: VERSION,\n },\n type: METRIC_TYPE.BEHAVIORAL,\n };\n\n metricManager.submitVoicemailMetric(\n METRIC_EVENT.VOICEMAIL_ERROR,\n VOICEMAIL_ACTION.GET_VOICEMAILS,\n METRIC_TYPE.BEHAVIORAL,\n undefined,\n errorMessage,\n 401\n );\n expect(mockSubmitClientMetric).toBeCalledOnceWith(\n METRIC_EVENT.VOICEMAIL_ERROR,\n expectedData1\n );\n\n mockSubmitClientMetric.mockClear();\n\n const expectedData2 = {\n ...expectedData1,\n tags: {...expectedData1.tags, message_id: 'messageId', action: VOICEMAIL_ACTION.DELETE},\n };\n\n metricManager.submitVoicemailMetric(\n METRIC_EVENT.VOICEMAIL_ERROR,\n VOICEMAIL_ACTION.DELETE,\n METRIC_TYPE.BEHAVIORAL,\n 'messageId',\n errorMessage,\n 401\n );\n\n expect(mockSubmitClientMetric).toBeCalledOnceWith(\n METRIC_EVENT.VOICEMAIL_ERROR,\n expectedData2\n );\n });\n\n it('submit unknown voicemail metric', () => {\n const logSpy = jest.spyOn(log, 'warn');\n\n metricManager.submitVoicemailMetric(\n 'invalidMetricName' as unknown as METRIC_EVENT,\n VOICEMAIL_ACTION.GET_VOICEMAILS,\n METRIC_TYPE.BEHAVIORAL\n );\n\n expect(mockSubmitClientMetric).not.toBeCalled();\n expect(logSpy).toBeCalledOnceWith(\n 'Invalid metric name received. Rejecting request to submit metric.',\n {\n file: 'metric',\n method: 'submitVoicemailMetric',\n }\n );\n });\n });\n});\n"],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+
3
+ var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
4
+ _Object$defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.VOICEMAIL_ACTION = exports.TRANSFER_ACTION = exports.REG_ACTION = exports.METRIC_TYPE = exports.METRIC_EVENT = void 0;
8
+ var METRIC_TYPE = exports.METRIC_TYPE = /*#__PURE__*/function (METRIC_TYPE) {
9
+ METRIC_TYPE["OPERATIONAL"] = "operational";
10
+ METRIC_TYPE["BEHAVIORAL"] = "behavioral";
11
+ return METRIC_TYPE;
12
+ }({});
13
+ var METRIC_EVENT = exports.METRIC_EVENT = /*#__PURE__*/function (METRIC_EVENT) {
14
+ METRIC_EVENT["CALL"] = "web-calling-sdk-callcontrol";
15
+ METRIC_EVENT["CALL_ERROR"] = "web-calling-sdk-callcontrol-error";
16
+ METRIC_EVENT["MEDIA"] = "web-calling-sdk-media";
17
+ METRIC_EVENT["MEDIA_ERROR"] = "web-calling-sdk-media-error";
18
+ METRIC_EVENT["REGISTRATION"] = "web-calling-sdk-registration";
19
+ METRIC_EVENT["REGISTRATION_ERROR"] = "web-calling-sdk-registration-error";
20
+ METRIC_EVENT["VOICEMAIL"] = "web-calling-sdk-voicemail";
21
+ METRIC_EVENT["VOICEMAIL_ERROR"] = "web-calling-sdk-voicemail-error";
22
+ return METRIC_EVENT;
23
+ }({});
24
+ var REG_ACTION = exports.REG_ACTION = /*#__PURE__*/function (REG_ACTION) {
25
+ REG_ACTION["REGISTER"] = "register";
26
+ REG_ACTION["DEREGISTER"] = "deregister";
27
+ REG_ACTION["KEEPALIVE_FAILURE"] = "keepaliveFailure";
28
+ return REG_ACTION;
29
+ }({});
30
+ var TRANSFER_ACTION = exports.TRANSFER_ACTION = /*#__PURE__*/function (TRANSFER_ACTION) {
31
+ TRANSFER_ACTION["BLIND"] = "TRANSFER_BLIND";
32
+ TRANSFER_ACTION["CONSULT"] = "TRANSFER_CONSULT";
33
+ return TRANSFER_ACTION;
34
+ }({});
35
+ var VOICEMAIL_ACTION = exports.VOICEMAIL_ACTION = /*#__PURE__*/function (VOICEMAIL_ACTION) {
36
+ VOICEMAIL_ACTION["GET_VOICEMAILS"] = "get_voicemails";
37
+ VOICEMAIL_ACTION["GET_VOICEMAIL_CONTENT"] = "get_voicemail_content";
38
+ VOICEMAIL_ACTION["GET_VOICEMAIL_SUMMARY"] = "get_voicemail_summary";
39
+ VOICEMAIL_ACTION["MARK_READ"] = "mark_read";
40
+ VOICEMAIL_ACTION["MARK_UNREAD"] = "mark_unread";
41
+ VOICEMAIL_ACTION["DELETE"] = "delete";
42
+ VOICEMAIL_ACTION["TRANSCRIPT"] = "transcript";
43
+ return VOICEMAIL_ACTION;
44
+ }({});
45
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["METRIC_TYPE","exports","METRIC_EVENT","REG_ACTION","TRANSFER_ACTION","VOICEMAIL_ACTION"],"sources":["types.ts"],"sourcesContent":["import {LineError} from '../Errors/catalog/LineError';\nimport {CallError, CallingClientError} from '../Errors';\nimport {CallId, CorrelationId, IDeviceInfo} from '../common/types';\n\nexport enum METRIC_TYPE {\n OPERATIONAL = 'operational',\n BEHAVIORAL = 'behavioral',\n}\n\nexport enum METRIC_EVENT {\n CALL = 'web-calling-sdk-callcontrol',\n CALL_ERROR = 'web-calling-sdk-callcontrol-error',\n MEDIA = 'web-calling-sdk-media',\n MEDIA_ERROR = 'web-calling-sdk-media-error',\n REGISTRATION = 'web-calling-sdk-registration',\n REGISTRATION_ERROR = 'web-calling-sdk-registration-error',\n VOICEMAIL = 'web-calling-sdk-voicemail',\n VOICEMAIL_ERROR = 'web-calling-sdk-voicemail-error',\n}\n\nexport enum REG_ACTION {\n REGISTER = 'register',\n DEREGISTER = 'deregister',\n KEEPALIVE_FAILURE = 'keepaliveFailure',\n}\n\nexport enum TRANSFER_ACTION {\n BLIND = 'TRANSFER_BLIND',\n CONSULT = 'TRANSFER_CONSULT',\n}\n\nexport enum VOICEMAIL_ACTION {\n GET_VOICEMAILS = 'get_voicemails',\n GET_VOICEMAIL_CONTENT = 'get_voicemail_content',\n GET_VOICEMAIL_SUMMARY = 'get_voicemail_summary',\n MARK_READ = 'mark_read',\n MARK_UNREAD = 'mark_unread',\n DELETE = 'delete',\n TRANSCRIPT = 'transcript',\n}\n\nexport interface IMetricManager {\n setDeviceInfo: (deviceInfo: IDeviceInfo) => void;\n submitRegistrationMetric: (\n name: METRIC_EVENT,\n metricAction: REG_ACTION,\n type: METRIC_TYPE,\n error: LineError | CallingClientError | undefined\n ) => void;\n submitCallMetric: (\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId,\n callError?: CallError\n ) => void;\n submitMediaMetric: (\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId,\n localSdp?: string,\n remoteSdp?: string,\n callError?: CallError\n ) => void;\n submitVoicemailMetric: (\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n messageId?: string,\n voicemailError?: string,\n statusCode?: number\n ) => void;\n}\n"],"mappings":";;;;;;;IAIYA,WAAW,GAAAC,OAAA,CAAAD,WAAA,0BAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAA,OAAXA,WAAW;AAAA;AAAA,IAKXE,YAAY,GAAAD,OAAA,CAAAC,YAAA,0BAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAA,OAAZA,YAAY;AAAA;AAAA,IAWZC,UAAU,GAAAF,OAAA,CAAAE,UAAA,0BAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAA,OAAVA,UAAU;AAAA;AAAA,IAMVC,eAAe,GAAAH,OAAA,CAAAG,eAAA,0BAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAAA,IAKfC,gBAAgB,GAAAJ,OAAA,CAAAI,gBAAA,0BAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAA,OAAhBA,gBAAgB;AAAA"}
@@ -0,0 +1,104 @@
1
+ "use strict";
2
+
3
+ var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
4
+ var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
5
+ _Object$defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+ var _freeze = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/freeze"));
10
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/classCallCheck"));
11
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/createClass"));
12
+ var _utils = require("./utils");
13
+ /* eslint-disable valid-jsdoc */
14
+
15
+ /* eslint-disable class-methods-use-this */
16
+
17
+ var instance;
18
+ var webex;
19
+
20
+ /**
21
+ *
22
+ */
23
+ var SDKConnector = /*#__PURE__*/function () {
24
+ function SDKConnector() {
25
+ (0, _classCallCheck2.default)(this, SDKConnector);
26
+ }
27
+ (0, _createClass2.default)(SDKConnector, [{
28
+ key: "setWebex",
29
+ value:
30
+ /**
31
+ * @param webexInstance - TODO.
32
+ */
33
+ function setWebex(webexInstance) {
34
+ if (instance) {
35
+ throw new Error('You cannot set the SDKConnector instance more than once'); // TODO: format log messages and customize Error Object
36
+ }
37
+
38
+ var _validateWebex = (0, _utils.validateWebex)(webexInstance),
39
+ error = _validateWebex.error,
40
+ success = _validateWebex.success;
41
+ if (error) {
42
+ throw error;
43
+ } else if (success) {
44
+ webex = webexInstance; // TODO: Object.freeze to prevent changes? That might break the reference chain though
45
+ } else {
46
+ throw new Error('An unknown error occurred setting up the webex instance.');
47
+ }
48
+
49
+ /* eslint-disable @typescript-eslint/no-this-alias */
50
+ instance = this;
51
+ }
52
+
53
+ /**
54
+ *
55
+ */
56
+ }, {
57
+ key: "get",
58
+ value: function get() {
59
+ return instance;
60
+ }
61
+
62
+ /**
63
+ *
64
+ */
65
+ }, {
66
+ key: "getWebex",
67
+ value: function getWebex() {
68
+ return webex;
69
+ }
70
+
71
+ /**
72
+ * @param request - TODO.
73
+ */
74
+ }, {
75
+ key: "request",
76
+ value: function request(_request) {
77
+ return instance.getWebex().request(_request);
78
+ }
79
+
80
+ /**
81
+ * @param event - TODO.
82
+ * @param cb - TODO.
83
+ */
84
+ }, {
85
+ key: "registerListener",
86
+ value: function registerListener(event, cb) {
87
+ instance.getWebex().internal.mercury.on(event, function (data) {
88
+ cb(data);
89
+ });
90
+ }
91
+
92
+ /**
93
+ * @param event - TODO.
94
+ */
95
+ }, {
96
+ key: "unregisterListener",
97
+ value: function unregisterListener(event) {
98
+ instance.getWebex().internal.mercury.off(event);
99
+ }
100
+ }]);
101
+ return SDKConnector;
102
+ }();
103
+ var _default = exports.default = (0, _freeze.default)(new SDKConnector()); // TODO: remove freeze?
104
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_utils","require","instance","webex","SDKConnector","_classCallCheck2","default","_createClass2","key","value","setWebex","webexInstance","Error","_validateWebex","validateWebex","error","success","get","getWebex","request","registerListener","event","cb","internal","mercury","on","data","unregisterListener","off","_default","exports","_freeze"],"sources":["index.ts"],"sourcesContent":["/* eslint-disable valid-jsdoc */\nimport {WebexRequestPayload} from '../common/types';\nimport {ISDKConnector, WebexSDK} from './types';\n/* eslint-disable class-methods-use-this */\nimport {validateWebex} from './utils';\n\nlet instance: ISDKConnector;\nlet webex: WebexSDK;\n\n/**\n *\n */\nclass SDKConnector implements ISDKConnector {\n /**\n * @param webexInstance - TODO.\n */\n public setWebex(webexInstance: WebexSDK): void {\n if (instance) {\n throw new Error('You cannot set the SDKConnector instance more than once'); // TODO: format log messages and customize Error Object\n }\n const {error, success} = validateWebex(webexInstance);\n\n if (error) {\n throw error;\n } else if (success) {\n webex = webexInstance; // TODO: Object.freeze to prevent changes? That might break the reference chain though\n } else {\n throw new Error('An unknown error occurred setting up the webex instance.');\n }\n\n /* eslint-disable @typescript-eslint/no-this-alias */\n instance = this;\n }\n\n /**\n *\n */\n public get(): ISDKConnector {\n return instance;\n }\n\n /**\n *\n */\n public getWebex(): WebexSDK {\n return webex;\n }\n\n /**\n * @param request - TODO.\n */\n public request<T>(request: WebexRequestPayload): Promise<T> {\n return instance.getWebex().request(request);\n }\n\n /**\n * @param event - TODO.\n * @param cb - TODO.\n */\n public registerListener<T>(event: string, cb: (data?: T) => void): void {\n instance.getWebex().internal.mercury.on(event, (data: T) => {\n cb(data);\n });\n }\n\n /**\n * @param event - TODO.\n */\n public unregisterListener(event: string): void {\n instance.getWebex().internal.mercury.off(event);\n }\n}\n\nexport default Object.freeze(new SDKConnector()); // TODO: remove freeze?\n"],"mappings":";;;;;;;;;;;AAIA,IAAAA,MAAA,GAAAC,OAAA;AAJA;;AAGA;;AAGA,IAAIC,QAAuB;AAC3B,IAAIC,KAAe;;AAEnB;AACA;AACA;AAFA,IAGMC,YAAY;EAAA,SAAAA,aAAA;IAAA,IAAAC,gBAAA,CAAAC,OAAA,QAAAF,YAAA;EAAA;EAAA,IAAAG,aAAA,CAAAD,OAAA,EAAAF,YAAA;IAAAI,GAAA;IAAAC,KAAA;IAChB;AACF;AACA;IACE,SAAAC,SAAgBC,aAAuB,EAAQ;MAC7C,IAAIT,QAAQ,EAAE;QACZ,MAAM,IAAIU,KAAK,CAAC,yDAAyD,CAAC,CAAC,CAAC;MAC9E;;MACA,IAAAC,cAAA,GAAyB,IAAAC,oBAAa,EAACH,aAAa,CAAC;QAA9CI,KAAK,GAAAF,cAAA,CAALE,KAAK;QAAEC,OAAO,GAAAH,cAAA,CAAPG,OAAO;MAErB,IAAID,KAAK,EAAE;QACT,MAAMA,KAAK;MACb,CAAC,MAAM,IAAIC,OAAO,EAAE;QAClBb,KAAK,GAAGQ,aAAa,CAAC,CAAC;MACzB,CAAC,MAAM;QACL,MAAM,IAAIC,KAAK,CAAC,0DAA0D,CAAC;MAC7E;;MAEA;MACAV,QAAQ,GAAG,IAAI;IACjB;;IAEA;AACF;AACA;EAFE;IAAAM,GAAA;IAAAC,KAAA,EAGA,SAAAQ,IAAA,EAA4B;MAC1B,OAAOf,QAAQ;IACjB;;IAEA;AACF;AACA;EAFE;IAAAM,GAAA;IAAAC,KAAA,EAGA,SAAAS,SAAA,EAA4B;MAC1B,OAAOf,KAAK;IACd;;IAEA;AACF;AACA;EAFE;IAAAK,GAAA;IAAAC,KAAA,EAGA,SAAAU,QAAkBA,QAA4B,EAAc;MAC1D,OAAOjB,QAAQ,CAACgB,QAAQ,CAAC,CAAC,CAACC,OAAO,CAACA,QAAO,CAAC;IAC7C;;IAEA;AACF;AACA;AACA;EAHE;IAAAX,GAAA;IAAAC,KAAA,EAIA,SAAAW,iBAA2BC,KAAa,EAAEC,EAAsB,EAAQ;MACtEpB,QAAQ,CAACgB,QAAQ,CAAC,CAAC,CAACK,QAAQ,CAACC,OAAO,CAACC,EAAE,CAACJ,KAAK,EAAE,UAACK,IAAO,EAAK;QAC1DJ,EAAE,CAACI,IAAI,CAAC;MACV,CAAC,CAAC;IACJ;;IAEA;AACF;AACA;EAFE;IAAAlB,GAAA;IAAAC,KAAA,EAGA,SAAAkB,mBAA0BN,KAAa,EAAQ;MAC7CnB,QAAQ,CAACgB,QAAQ,CAAC,CAAC,CAACK,QAAQ,CAACC,OAAO,CAACI,GAAG,CAACP,KAAK,CAAC;IACjD;EAAC;EAAA,OAAAjB,YAAA;AAAA;AAAA,IAAAyB,QAAA,GAAAC,OAAA,CAAAxB,OAAA,GAGY,IAAAyB,OAAA,CAAAzB,OAAA,EAAc,IAAIF,YAAY,CAAC,CAAC,CAAC,EAAE"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+
3
+ var _chai = require("chai");
4
+ describe('SDkConnector', function () {
5
+ it('TODO', function () {
6
+ (0, _chai.expect)(true).to.eq(true);
7
+ });
8
+ });
9
+ //# sourceMappingURL=index.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_chai","require","describe","it","expect","to","eq"],"sources":["index.test.ts"],"sourcesContent":["import {expect} from 'chai';\n\ndescribe('SDkConnector', () => {\n it('TODO', () => {\n expect(true).to.eq(true);\n });\n});\n"],"mappings":";;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEAC,QAAQ,CAAC,cAAc,EAAE,YAAM;EAC7BC,EAAE,CAAC,MAAM,EAAE,YAAM;IACf,IAAAC,YAAM,EAAC,IAAI,CAAC,CAACC,EAAE,CAACC,EAAE,CAAC,IAAI,CAAC;EAC1B,CAAC,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+
3
+ var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
4
+ _Object$defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["import {\n DSSLookupResponse,\n KmsKey,\n KmsResourceObject,\n LookupOptions,\n PeopleListResponse,\n WebexRequestPayload,\n} from '../common/types';\n/* eslint-disable no-shadow */\n\ntype Listener = (e: string, data?: unknown) => void;\ntype ListenerOff = (e: string) => void;\n\nexport type ServiceHost = {\n host: string;\n ttl: number;\n priority: number;\n id: string;\n homeCluster?: boolean;\n};\n\nexport type Model = {\n _values: {\n key: string;\n };\n};\n\nexport type ServiceCatalog = {\n serviceGroups: {\n // cSpell:disable\n postauth: [\n {\n _values: {\n name: string;\n hosts: ServiceHost[];\n };\n }\n ];\n /* cSpell:enable */\n };\n};\n\nexport type ClientRegionInfo = {\n attribution: string;\n clientAddress: string;\n clientRegion: string;\n countryCode: string;\n disclaimer: string;\n regionCode: string;\n timezone: string;\n};\n\n// TODO: is there a way to import bindings from the Webex JS SDK without having to redefine expected methods and structure?\n// This defines the shape for the webex SDK, if a typing doesn't exist, it should be added here\nexport interface WebexSDK {\n // top level primitives/funcs\n version: string;\n canAuthorize: boolean;\n credentials: {\n getUserToken: () => Promise<string>;\n };\n ready: boolean;\n request: <T>(payload: WebexRequestPayload) => Promise<T>;\n // internal plugins\n internal: {\n mercury: {\n on: Listener;\n off: ListenerOff;\n connected: boolean;\n connecting: boolean;\n };\n calendar: unknown;\n device: {\n url: string;\n userId: string;\n orgId: string;\n version: string;\n callingBehavior: string;\n features: {\n entitlement: {\n models: Model[];\n };\n };\n };\n dss: {\n lookup: (options: LookupOptions) => Promise<DSSLookupResponse[]>;\n };\n encryption: {\n decryptText: (encryptionKeyUrl: string, encryptedData?: string) => Promise<string>;\n encryptText: (encryptionKeyUrl: string, text?: string) => Promise<string>;\n kms: {\n createUnboundKeys: (arg0: {count?: number}) => Promise<KmsKey[]>;\n createResource: (arg0: {keyUris: string[]}) => Promise<KmsResourceObject>;\n bindKey: (arg0: {kroUri: string; keyUri: string}) => Promise<KmsKey>;\n };\n };\n presence: unknown;\n support: unknown;\n services: {\n _hostCatalog: Record<string, ServiceHost[]>;\n _serviceUrls: {\n mobius: string;\n identity: string;\n janus: string;\n wdm: string;\n broadworksIdpProxy: string;\n hydra: string;\n mercuryApi: string;\n 'ucmgmt-gateway': string;\n contactsService: string;\n directorySearch: string;\n };\n fetchClientRegionInfo: () => Promise<ClientRegionInfo>;\n };\n metrics: {\n submitClientMetrics: (name: string, data: unknown) => void;\n };\n };\n // public plugins\n logger: {\n log: (payload: string) => void;\n error: (payload: string) => void;\n warn: (payload: string) => void;\n info: (payload: string) => void;\n trace: (payload: string) => void;\n debug: (payload: string) => void;\n };\n messages: unknown;\n memberships: unknown;\n people: {\n list: (arg: object) => Promise<PeopleListResponse>;\n };\n rooms: unknown;\n teams: unknown;\n}\n\nexport interface ISDKConnector {\n setWebex: (webexInstance: WebexSDK) => void;\n getWebex: () => WebexSDK;\n get: () => ISDKConnector;\n registerListener: <T>(event: string, cb: (data?: T) => unknown) => void;\n unregisterListener: (event: string) => void;\n}\n"],"mappings":""}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+
3
+ var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
4
+ _Object$defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.validateWebex = void 0;
8
+ /* eslint-disable valid-jsdoc */
9
+
10
+ // TODO: add other cases necessary for fully qualified webex instance
11
+ // eslint-disable-next-line max-len
12
+ /**
13
+ * @param webexInstance - TODO.
14
+ */
15
+ var validateWebex = exports.validateWebex = function validateWebex(webexInstance) {
16
+ if (webexInstance.canAuthorize) {
17
+ if (webexInstance.ready) {
18
+ if (webexInstance.internal.mercury) {
19
+ return {
20
+ error: undefined,
21
+ success: true
22
+ };
23
+ }
24
+ return {
25
+ error: new Error('webex.internal.mercury is not available'),
26
+ success: false
27
+ };
28
+ }
29
+ return {
30
+ error: new Error('webex.ready is not true'),
31
+ success: false
32
+ };
33
+ }
34
+ return {
35
+ error: new Error('webex.canAuthorize is not true'),
36
+ success: false
37
+ }; // TODO: change to error object
38
+ };
39
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["validateWebex","exports","webexInstance","canAuthorize","ready","internal","mercury","error","undefined","success","Error"],"sources":["utils.ts"],"sourcesContent":["/* eslint-disable valid-jsdoc */\nimport {WebexSDK} from './types';\n\n// TODO: add other cases necessary for fully qualified webex instance\n// eslint-disable-next-line max-len\n/**\n * @param webexInstance - TODO.\n */\nexport const validateWebex = (\n webexInstance: WebexSDK\n): {error: Error | undefined; success: boolean} => {\n if (webexInstance.canAuthorize) {\n if (webexInstance.ready) {\n if (webexInstance.internal.mercury) {\n return {error: undefined, success: true};\n }\n\n return {error: new Error('webex.internal.mercury is not available'), success: false};\n }\n\n return {error: new Error('webex.ready is not true'), success: false};\n }\n\n return {error: new Error('webex.canAuthorize is not true'), success: false}; // TODO: change to error object\n};\n"],"mappings":";;;;;;;AAAA;;AAGA;AACA;AACA;AACA;AACA;AACO,IAAMA,aAAa,GAAAC,OAAA,CAAAD,aAAA,GAAG,SAAhBA,aAAaA,CACxBE,aAAuB,EAC0B;EACjD,IAAIA,aAAa,CAACC,YAAY,EAAE;IAC9B,IAAID,aAAa,CAACE,KAAK,EAAE;MACvB,IAAIF,aAAa,CAACG,QAAQ,CAACC,OAAO,EAAE;QAClC,OAAO;UAACC,KAAK,EAAEC,SAAS;UAAEC,OAAO,EAAE;QAAI,CAAC;MAC1C;MAEA,OAAO;QAACF,KAAK,EAAE,IAAIG,KAAK,CAAC,yCAAyC,CAAC;QAAED,OAAO,EAAE;MAAK,CAAC;IACtF;IAEA,OAAO;MAACF,KAAK,EAAE,IAAIG,KAAK,CAAC,yBAAyB,CAAC;MAAED,OAAO,EAAE;IAAK,CAAC;EACtE;EAEA,OAAO;IAACF,KAAK,EAAE,IAAIG,KAAK,CAAC,gCAAgC,CAAC;IAAED,OAAO,EAAE;EAAK,CAAC,CAAC,CAAC;AAC/E,CAAC"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+
3
+ var _chai = require("chai");
4
+ describe('SDkConnector Utils', function () {
5
+ it('TODO', function () {
6
+ (0, _chai.expect)(true).to.eq(true);
7
+ });
8
+ });
9
+ //# sourceMappingURL=utils.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_chai","require","describe","it","expect","to","eq"],"sources":["utils.test.ts"],"sourcesContent":["import {expect} from 'chai';\n\ndescribe('SDkConnector Utils', () => {\n it('TODO', () => {\n expect(true).to.eq(true);\n });\n});\n"],"mappings":";;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEAC,QAAQ,CAAC,oBAAoB,EAAE,YAAM;EACnCC,EAAE,CAAC,MAAM,EAAE,YAAM;IACf,IAAAC,YAAM,EAAC,IAAI,CAAC,CAACC,EAAE,CAACC,EAAE,CAAC,IAAI,CAAC;EAC1B,CAAC,CAAC;AACJ,CAAC,CAAC"}