@webex/calling 3.9.0 → 3.10.0-next.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (193) hide show
  1. package/dist/CallHistory/CallHistory.js +43 -43
  2. package/dist/CallHistory/CallHistory.js.map +1 -1
  3. package/dist/CallHistory/CallHistory.test.js +157 -152
  4. package/dist/CallHistory/CallHistory.test.js.map +1 -1
  5. package/dist/CallHistory/callHistoryFixtures.js.map +1 -1
  6. package/dist/CallHistory/constants.js.map +1 -1
  7. package/dist/CallHistory/types.js.map +1 -1
  8. package/dist/CallSettings/CallSettings.js +8 -8
  9. package/dist/CallSettings/CallSettings.js.map +1 -1
  10. package/dist/CallSettings/CallSettings.test.js +1 -1
  11. package/dist/CallSettings/CallSettings.test.js.map +1 -1
  12. package/dist/CallSettings/UcmBackendConnector.js +12 -11
  13. package/dist/CallSettings/UcmBackendConnector.js.map +1 -1
  14. package/dist/CallSettings/UcmBackendConnector.test.js +11 -11
  15. package/dist/CallSettings/UcmBackendConnector.test.js.map +1 -1
  16. package/dist/CallSettings/WxCallBackendConnector.js +53 -52
  17. package/dist/CallSettings/WxCallBackendConnector.js.map +1 -1
  18. package/dist/CallSettings/WxCallBackendConnector.test.js +112 -110
  19. package/dist/CallSettings/WxCallBackendConnector.test.js.map +1 -1
  20. package/dist/CallSettings/constants.js.map +1 -1
  21. package/dist/CallSettings/testFixtures.js.map +1 -1
  22. package/dist/CallSettings/types.js.map +1 -1
  23. package/dist/CallingClient/CallingClient.js +458 -203
  24. package/dist/CallingClient/CallingClient.js.map +1 -1
  25. package/dist/CallingClient/CallingClient.test.js +458 -315
  26. package/dist/CallingClient/CallingClient.test.js.map +1 -1
  27. package/dist/CallingClient/callRecordFixtures.js.map +1 -1
  28. package/dist/CallingClient/calling/CallerId/index.js +2 -2
  29. package/dist/CallingClient/calling/CallerId/index.js.map +1 -1
  30. package/dist/CallingClient/calling/CallerId/index.test.js +8 -7
  31. package/dist/CallingClient/calling/CallerId/index.test.js.map +1 -1
  32. package/dist/CallingClient/calling/CallerId/types.js.map +1 -1
  33. package/dist/CallingClient/calling/call.js +405 -372
  34. package/dist/CallingClient/calling/call.js.map +1 -1
  35. package/dist/CallingClient/calling/call.test.js +411 -410
  36. package/dist/CallingClient/calling/call.test.js.map +1 -1
  37. package/dist/CallingClient/calling/callManager.js +3 -4
  38. package/dist/CallingClient/calling/callManager.js.map +1 -1
  39. package/dist/CallingClient/calling/callManager.test.js +68 -69
  40. package/dist/CallingClient/calling/callManager.test.js.map +1 -1
  41. package/dist/CallingClient/calling/index.js.map +1 -1
  42. package/dist/CallingClient/calling/types.js.map +1 -1
  43. package/dist/CallingClient/callingClientFixtures.js.map +1 -1
  44. package/dist/CallingClient/constants.js +9 -6
  45. package/dist/CallingClient/constants.js.map +1 -1
  46. package/dist/CallingClient/line/index.js +10 -11
  47. package/dist/CallingClient/line/index.js.map +1 -1
  48. package/dist/CallingClient/line/line.test.js +10 -9
  49. package/dist/CallingClient/line/line.test.js.map +1 -1
  50. package/dist/CallingClient/line/types.js.map +1 -1
  51. package/dist/CallingClient/registration/index.js.map +1 -1
  52. package/dist/CallingClient/registration/register.js +285 -205
  53. package/dist/CallingClient/registration/register.js.map +1 -1
  54. package/dist/CallingClient/registration/register.test.js +251 -180
  55. package/dist/CallingClient/registration/register.test.js.map +1 -1
  56. package/dist/CallingClient/registration/registerFixtures.js.map +1 -1
  57. package/dist/CallingClient/registration/types.js.map +1 -1
  58. package/dist/CallingClient/registration/webWorker.js +25 -10
  59. package/dist/CallingClient/registration/webWorker.js.map +1 -1
  60. package/dist/CallingClient/registration/webWorker.test.js +85 -38
  61. package/dist/CallingClient/registration/webWorker.test.js.map +1 -1
  62. package/dist/CallingClient/registration/webWorkerStr.js +1 -1
  63. package/dist/CallingClient/registration/webWorkerStr.js.map +1 -1
  64. package/dist/CallingClient/types.js.map +1 -1
  65. package/dist/CallingClient/windowsChromiumIceWarmupUtils.js +142 -0
  66. package/dist/CallingClient/windowsChromiumIceWarmupUtils.js.map +1 -0
  67. package/dist/Contacts/ContactsClient.js +244 -247
  68. package/dist/Contacts/ContactsClient.js.map +1 -1
  69. package/dist/Contacts/ContactsClient.test.js +93 -93
  70. package/dist/Contacts/ContactsClient.test.js.map +1 -1
  71. package/dist/Contacts/constants.js +2 -2
  72. package/dist/Contacts/constants.js.map +1 -1
  73. package/dist/Contacts/contactFixtures.js.map +1 -1
  74. package/dist/Contacts/types.js.map +1 -1
  75. package/dist/Errors/catalog/CallError.js +2 -2
  76. package/dist/Errors/catalog/CallError.js.map +1 -1
  77. package/dist/Errors/catalog/CallingDeviceError.js +2 -2
  78. package/dist/Errors/catalog/CallingDeviceError.js.map +1 -1
  79. package/dist/Errors/catalog/ExtendedError.js +3 -3
  80. package/dist/Errors/catalog/ExtendedError.js.map +1 -1
  81. package/dist/Errors/catalog/LineError.js +2 -2
  82. package/dist/Errors/catalog/LineError.js.map +1 -1
  83. package/dist/Errors/index.js.map +1 -1
  84. package/dist/Errors/types.js.map +1 -1
  85. package/dist/Events/impl/index.js +4 -3
  86. package/dist/Events/impl/index.js.map +1 -1
  87. package/dist/Events/types.js.map +1 -1
  88. package/dist/Logger/index.js +3 -3
  89. package/dist/Logger/index.js.map +1 -1
  90. package/dist/Logger/index.test.js +1 -1
  91. package/dist/Logger/index.test.js.map +1 -1
  92. package/dist/Logger/types.js.map +1 -1
  93. package/dist/Metrics/index.js +221 -104
  94. package/dist/Metrics/index.js.map +1 -1
  95. package/dist/Metrics/index.test.js +112 -23
  96. package/dist/Metrics/index.test.js.map +1 -1
  97. package/dist/Metrics/types.js +15 -1
  98. package/dist/Metrics/types.js.map +1 -1
  99. package/dist/SDKConnector/index.js +0 -1
  100. package/dist/SDKConnector/index.js.map +1 -1
  101. package/dist/SDKConnector/index.test.js.map +1 -1
  102. package/dist/SDKConnector/types.js.map +1 -1
  103. package/dist/SDKConnector/utils.js.map +1 -1
  104. package/dist/SDKConnector/utils.test.js.map +1 -1
  105. package/dist/Voicemail/BroadworksBackendConnector.js +55 -61
  106. package/dist/Voicemail/BroadworksBackendConnector.js.map +1 -1
  107. package/dist/Voicemail/BroadworksBackendConnector.test.js +129 -122
  108. package/dist/Voicemail/BroadworksBackendConnector.test.js.map +1 -1
  109. package/dist/Voicemail/UcmBackendConnector.js +53 -50
  110. package/dist/Voicemail/UcmBackendConnector.js.map +1 -1
  111. package/dist/Voicemail/UcmBackendConnector.test.js +73 -74
  112. package/dist/Voicemail/UcmBackendConnector.test.js.map +1 -1
  113. package/dist/Voicemail/Voicemail.js +89 -113
  114. package/dist/Voicemail/Voicemail.js.map +1 -1
  115. package/dist/Voicemail/Voicemail.test.js +2 -2
  116. package/dist/Voicemail/Voicemail.test.js.map +1 -1
  117. package/dist/Voicemail/WxCallBackendConnector.js +87 -92
  118. package/dist/Voicemail/WxCallBackendConnector.js.map +1 -1
  119. package/dist/Voicemail/WxCallBackendConnector.test.js +228 -203
  120. package/dist/Voicemail/WxCallBackendConnector.test.js.map +1 -1
  121. package/dist/Voicemail/constants.js.map +1 -1
  122. package/dist/Voicemail/types.js.map +1 -1
  123. package/dist/Voicemail/voicemailFixture.js.map +1 -1
  124. package/dist/api.js.map +1 -1
  125. package/dist/common/Utils.js +85 -66
  126. package/dist/common/Utils.js.map +1 -1
  127. package/dist/common/Utils.test.js +113 -123
  128. package/dist/common/Utils.test.js.map +1 -1
  129. package/dist/common/constants.js.map +1 -1
  130. package/dist/common/index.js.map +1 -1
  131. package/dist/common/testUtil.js +1 -1
  132. package/dist/common/testUtil.js.map +1 -1
  133. package/dist/common/types.js.map +1 -1
  134. package/dist/index.js +5 -5
  135. package/dist/index.js.map +1 -1
  136. package/dist/module/CallHistory/CallHistory.js +17 -8
  137. package/dist/module/CallSettings/UcmBackendConnector.js +2 -2
  138. package/dist/module/CallSettings/WxCallBackendConnector.js +14 -14
  139. package/dist/module/CallingClient/CallingClient.js +176 -36
  140. package/dist/module/CallingClient/calling/call.js +91 -61
  141. package/dist/module/CallingClient/constants.js +8 -4
  142. package/dist/module/CallingClient/line/index.js +3 -3
  143. package/dist/module/CallingClient/registration/register.js +37 -13
  144. package/dist/module/CallingClient/registration/webWorker.js +17 -3
  145. package/dist/module/CallingClient/registration/webWorkerStr.js +19 -3
  146. package/dist/module/CallingClient/windowsChromiumIceWarmupUtils.js +59 -0
  147. package/dist/module/Contacts/ContactsClient.js +33 -37
  148. package/dist/module/Contacts/constants.js +1 -1
  149. package/dist/module/Events/impl/index.js +2 -1
  150. package/dist/module/Logger/index.js +2 -2
  151. package/dist/module/Metrics/index.js +142 -55
  152. package/dist/module/Metrics/types.js +14 -0
  153. package/dist/module/Voicemail/BroadworksBackendConnector.js +10 -17
  154. package/dist/module/Voicemail/UcmBackendConnector.js +11 -10
  155. package/dist/module/Voicemail/Voicemail.js +42 -68
  156. package/dist/module/Voicemail/WxCallBackendConnector.js +22 -28
  157. package/dist/module/common/Utils.js +29 -12
  158. package/dist/types/CallHistory/CallHistory.d.ts.map +1 -1
  159. package/dist/types/CallSettings/UcmBackendConnector.d.ts.map +1 -1
  160. package/dist/types/CallSettings/WxCallBackendConnector.d.ts.map +1 -1
  161. package/dist/types/CallingClient/CallingClient.d.ts +12 -1
  162. package/dist/types/CallingClient/CallingClient.d.ts.map +1 -1
  163. package/dist/types/CallingClient/calling/call.d.ts.map +1 -1
  164. package/dist/types/CallingClient/calling/types.d.ts +2 -1
  165. package/dist/types/CallingClient/calling/types.d.ts.map +1 -1
  166. package/dist/types/CallingClient/constants.d.ts +8 -4
  167. package/dist/types/CallingClient/constants.d.ts.map +1 -1
  168. package/dist/types/CallingClient/line/index.d.ts.map +1 -1
  169. package/dist/types/CallingClient/registration/register.d.ts +1 -0
  170. package/dist/types/CallingClient/registration/register.d.ts.map +1 -1
  171. package/dist/types/CallingClient/registration/webWorker.d.ts +2 -1
  172. package/dist/types/CallingClient/registration/webWorker.d.ts.map +1 -1
  173. package/dist/types/CallingClient/registration/webWorkerStr.d.ts +1 -1
  174. package/dist/types/CallingClient/registration/webWorkerStr.d.ts.map +1 -1
  175. package/dist/types/CallingClient/windowsChromiumIceWarmupUtils.d.ts +5 -0
  176. package/dist/types/CallingClient/windowsChromiumIceWarmupUtils.d.ts.map +1 -0
  177. package/dist/types/Contacts/ContactsClient.d.ts.map +1 -1
  178. package/dist/types/Contacts/constants.d.ts +1 -1
  179. package/dist/types/Contacts/constants.d.ts.map +1 -1
  180. package/dist/types/Events/impl/index.d.ts.map +1 -1
  181. package/dist/types/Logger/index.d.ts +1 -2
  182. package/dist/types/Logger/index.d.ts.map +1 -1
  183. package/dist/types/Metrics/index.d.ts.map +1 -1
  184. package/dist/types/Metrics/types.d.ts +18 -3
  185. package/dist/types/Metrics/types.d.ts.map +1 -1
  186. package/dist/types/Voicemail/BroadworksBackendConnector.d.ts.map +1 -1
  187. package/dist/types/Voicemail/UcmBackendConnector.d.ts.map +1 -1
  188. package/dist/types/Voicemail/Voicemail.d.ts.map +1 -1
  189. package/dist/types/Voicemail/WxCallBackendConnector.d.ts.map +1 -1
  190. package/dist/types/common/Utils.d.ts.map +1 -1
  191. package/dist/types/common/types.d.ts +1 -0
  192. package/dist/types/common/types.d.ts.map +1 -1
  193. package/package.json +10 -8
@@ -1 +1 @@
1
- {"version":3,"names":["_types","require","_testUtil","_types2","_BroadworksBackendConnector","_voicemailFixture","_constants","utils","_interopRequireWildcard","_constants2","_Logger","_interopRequireDefault","_getRequireWildcardCache","e","_WeakMap","r","t","__esModule","_typeof","default","has","get","n","__proto__","a","_Object$defineProperty","_Object$getOwnPropertyDescriptor","u","Object","prototype","hasOwnProperty","call","i","set","jest","spyOn","mockResolvedValue","undefined","webex","getTestUtilsWebex","describe","broadworksBackendConnector","getSortedVoicemailListSpy","storeVoicemailListSpy","fetchVoicemailListSpy","infoSpy","logSpy","errorSpy","messageId","mockVoicemailBody","body","items","beforeAll","internal","device","features","entitlement","models","_values","key","BroadworksBackendConnector","level","LOGGER","INFO","getSDKConnector","log","beforeEach","clearAllMocks","serviceErrorCodeHandlerSpy","global","fetch","fn","_promise","resolve","status","UNPROCESSABLE_CONTENT_CODE","ok","afterEach","it","_asyncToGenerator2","_regenerator","mark","_callee","response","wrap","_callee$","_context","prev","next","voicemailMarkAsRead","sent","expect","message","toBe","FAILURE_MESSAGE","statusCode","toBeCalledOnceWith","file","method","toHaveBeenCalledWith","toHaveBeenCalled","stop","_callee2","_callee2$","_context2","_callee3","_callee3$","_context3","voicemailMarkAsUnread","_callee4","_callee4$","_context4","deleteVoicemail","_callee5","_callee5$","_context5","mockRejectedValueOnce","$","toStrictEqual","responseDetails422","_callee6","_callee6$","_context6","getVoicemailContent","_callee7","failurePayload","voiceMailPayload","_callee7$","_context7","request","mockRejectedValue","init","_callee8","_callee8$","_context8","_callee9","_callee9$","_context9","toBeUndefined","_callee10","_callee10$","_context10","JSON","parse","_stringify","mockBWRKSData","devices","settings","broadworksXsiActionsUrl","slice","mockResolvedValueOnce","broadworksTokenType","xsiEndpoint","_callee11","_callee11$","_context11","getVoicemailList","SORT","DESC","_callee12","_callee12$","_context12","not","toBeCalled","success","CONTEXT","_callee13","voiceMailTokenPayload","_callee13$","_context13","json","getVoicemailListJsonBWRKS","bwToken","broadworksUserInfoUrl","_callee14","voicemailResponseInfo","responseDetails","_callee14$","_context14","mockClear","voicemailList","getDescVoicemailListJsonBWRKS","VoiceMessagingMessages","messageInfoList","messageInfo","NO_VOICEMAIL_STATUS_CODE","data","NO_VOICEMAIL_MSG","concat","JSON_FORMAT","headers","Authorization","_callee15","_callee15$","_context15","ASC","getAscVoicemailListJsonBWRKS","toBeCalledTimes","toBeCalledWith","_callee16","_callee16$","_context16","_callee17","vmEncodedList","_callee17$","_context17","Buffer","from","toString","sessionStorage","setItem","removeItem","_callee18","_callee18$","_context18","mockReturnValueOnce","getEmptyVoicemailListJsonBWRKS","_callee19","_callee19$","_context19","getInvalidVoicemailListJsonBWRKS","_callee20","_callee20$","_context20","broadworksUserMessageId","MARK_AS_READ","METHOD_START_MESSAGE","_callee21","_callee21$","_context21","MARK_AS_UNREAD","_callee22","_callee22$","_context22","_callee23","transcriptId","_callee23$","_context23","getVMTranscript","toBeNull","_callee24","_callee24$","_context24","resolveContact","resolveContactArgs","_callee25","_callee25$","_context25","getVoicemailSummary"],"sources":["BroadworksBackendConnector.test.ts"],"sourcesContent":["/* eslint-disable dot-notation */\nimport {LOGGER} from '../Logger/types';\nimport {getTestUtilsWebex} from '../common/testUtil';\nimport {SORT, WebexRequestPayload} from '../common/types';\nimport {BroadworksBackendConnector} from './BroadworksBackendConnector';\nimport {\n broadworksTokenType,\n bwToken,\n getVoicemailListJsonBWRKS,\n mockBWRKSData,\n mockVoicemailBody,\n broadworksUserInfoUrl,\n broadworksUserMessageId,\n getDescVoicemailListJsonBWRKS,\n getAscVoicemailListJsonBWRKS,\n getEmptyVoicemailListJsonBWRKS,\n getInvalidVoicemailListJsonBWRKS,\n resolveContactArgs,\n responseDetails422,\n} from './voicemailFixture';\nimport {IBroadworksCallBackendConnector} from './types';\nimport {\n JSON_FORMAT,\n MARK_AS_READ,\n MARK_AS_UNREAD,\n NO_VOICEMAIL_MSG,\n NO_VOICEMAIL_STATUS_CODE,\n} from './constants';\nimport * as utils from '../common/Utils';\nimport {\n FAILURE_MESSAGE,\n METHOD_START_MESSAGE,\n UNPROCESSABLE_CONTENT_CODE,\n} from '../common/constants';\nimport log from '../Logger';\n\njest.spyOn(utils, 'uploadLogs').mockResolvedValue(undefined);\n\nconst webex = getTestUtilsWebex();\n\ndescribe('Voicemail Broadworks Backend Connector Test case', () => {\n let broadworksBackendConnector: IBroadworksCallBackendConnector;\n let getSortedVoicemailListSpy: jest.SpyInstance;\n let storeVoicemailListSpy: jest.SpyInstance;\n let fetchVoicemailListSpy: jest.SpyInstance;\n let infoSpy: jest.SpyInstance;\n let logSpy: jest.SpyInstance;\n let errorSpy: jest.SpyInstance;\n const {messageId} = mockVoicemailBody.body.items[0];\n\n beforeAll(() => {\n webex.internal.device.features.entitlement.models = [{_values: {key: 'broadworks-connector'}}];\n broadworksBackendConnector = new BroadworksBackendConnector(webex, {level: LOGGER.INFO});\n broadworksBackendConnector.getSDKConnector();\n fetchVoicemailListSpy = jest.spyOn(utils, 'fetchVoicemailList');\n infoSpy = jest.spyOn(log, 'info');\n logSpy = jest.spyOn(log, 'log');\n errorSpy = jest.spyOn(log, 'error');\n });\n\n beforeEach(() => {\n jest.clearAllMocks();\n });\n\n describe('Voicemail failure test cases', () => {\n let serviceErrorCodeHandlerSpy: jest.SpyInstance;\n\n beforeEach(() => {\n serviceErrorCodeHandlerSpy = jest.spyOn(utils, 'serviceErrorCodeHandler');\n global.fetch = jest.fn(() =>\n Promise.resolve({\n status: UNPROCESSABLE_CONTENT_CODE,\n ok: false,\n })\n ) as jest.Mock;\n });\n\n afterEach(() => {\n jest.clearAllMocks();\n });\n\n it('verify exception case for the mark read case when messageid is invalid', async () => {\n const response = await broadworksBackendConnector.voicemailMarkAsRead('dummy');\n\n expect(response.message).toBe(FAILURE_MESSAGE);\n expect(response.statusCode).toBe(UNPROCESSABLE_CONTENT_CODE);\n expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith(\n {\n statusCode: UNPROCESSABLE_CONTENT_CODE,\n },\n {\n file: 'BroadworksBackendConnector',\n method: 'voicemailMarkAsRead',\n }\n );\n expect(infoSpy).toHaveBeenCalledWith('invoking with messageId: dummy', {\n file: 'BroadworksBackendConnector',\n method: 'voicemailMarkAsRead',\n });\n expect(errorSpy).toHaveBeenCalled();\n });\n\n it('verify failure case for the mark read case when response is not ok', async () => {\n const response = await broadworksBackendConnector.voicemailMarkAsRead('dummy');\n\n expect(response.message).toBe(FAILURE_MESSAGE);\n expect(response.statusCode).toBe(UNPROCESSABLE_CONTENT_CODE);\n expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith(\n {\n statusCode: UNPROCESSABLE_CONTENT_CODE,\n },\n {\n file: 'BroadworksBackendConnector',\n method: 'voicemailMarkAsRead',\n }\n );\n });\n\n it('verify failure case for the mark as unread case when response is not ok', async () => {\n const response = await broadworksBackendConnector.voicemailMarkAsUnread('dummy');\n\n expect(response.message).toBe(FAILURE_MESSAGE);\n expect(response.statusCode).toBe(UNPROCESSABLE_CONTENT_CODE);\n expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith(\n {\n statusCode: UNPROCESSABLE_CONTENT_CODE,\n },\n {\n file: 'BroadworksBackendConnector',\n method: 'voicemailMarkAsUnread',\n }\n );\n expect(infoSpy).toHaveBeenCalledWith('invoking with messageId: dummy', {\n file: 'BroadworksBackendConnector',\n method: 'voicemailMarkAsUnread',\n });\n expect(errorSpy).toHaveBeenCalled();\n });\n\n it('verify failure case for the delete voicemail case when response is not ok', async () => {\n const response = await broadworksBackendConnector.deleteVoicemail('dummy');\n\n expect(response.message).toBe(FAILURE_MESSAGE);\n expect(response.statusCode).toBe(UNPROCESSABLE_CONTENT_CODE);\n expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith(\n {\n statusCode: UNPROCESSABLE_CONTENT_CODE,\n },\n {\n file: 'BroadworksBackendConnector',\n method: 'deleteVoicemail',\n }\n );\n expect(infoSpy).toHaveBeenCalledWith('invoking with messageId: dummy', {\n file: 'BroadworksBackendConnector',\n method: 'deleteVoicemail',\n });\n expect(errorSpy).toHaveBeenCalled();\n });\n\n it('verify failure case for the delete voicemail case when api response fails', async () => {\n global.fetch.mockRejectedValueOnce('server is busy');\n\n const response = await broadworksBackendConnector.deleteVoicemail(messageId.$);\n\n expect(response).toStrictEqual(responseDetails422);\n expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith(\n {\n statusCode: '',\n },\n {\n file: 'BroadworksBackendConnector',\n method: 'deleteVoicemail',\n }\n );\n });\n\n it('verify failure case for the voicemail content case when response is not ok', async () => {\n const response = await broadworksBackendConnector.getVoicemailContent('dummy');\n\n expect(response.message).toBe(FAILURE_MESSAGE);\n expect(response.statusCode).toBe(UNPROCESSABLE_CONTENT_CODE);\n expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith(\n {\n statusCode: UNPROCESSABLE_CONTENT_CODE,\n },\n {\n file: 'BroadworksBackendConnector',\n method: 'getVoicemailContent',\n }\n );\n expect(infoSpy).toHaveBeenCalledWith('invoking with messageId: dummy', {\n file: 'BroadworksBackendConnector',\n method: 'getVoicemailContent',\n });\n expect(errorSpy).toHaveBeenCalled();\n });\n\n it('verify failed case when token is empty', async () => {\n const failurePayload = {\n message: FAILURE_MESSAGE,\n status: 401,\n };\n const voiceMailPayload = <WebexRequestPayload>failurePayload;\n\n broadworksBackendConnector['bwtoken'] = '';\n webex.request.mockRejectedValue(voiceMailPayload);\n const response = await broadworksBackendConnector.init();\n\n expect(response.message).toBe(FAILURE_MESSAGE);\n expect(response.statusCode).toBe(401);\n expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith(\n {\n statusCode: 401,\n },\n {\n file: 'BroadworksBackendConnector',\n method: 'getUserId',\n }\n );\n });\n\n it('verify failed case when token is invalid', async () => {\n const failurePayload = {\n message: FAILURE_MESSAGE,\n status: 401,\n };\n const voiceMailPayload = <WebexRequestPayload>failurePayload;\n\n broadworksBackendConnector['bwtoken'] = 'dummy';\n webex.request.mockRejectedValue(voiceMailPayload);\n const response = await broadworksBackendConnector.init();\n\n expect(response.message).toBe(FAILURE_MESSAGE);\n expect(response.statusCode).toBe(401);\n expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith(\n {\n statusCode: 401,\n },\n {\n file: 'BroadworksBackendConnector',\n method: 'getUserId',\n }\n );\n });\n\n it('verify no response case when token have invalid userid', async () => {\n broadworksBackendConnector['bwtoken'] = 'bwtoken.eyJhbGciOiJIUzI1NiJ9';\n const response = await broadworksBackendConnector.init();\n\n expect(response).toBeUndefined();\n });\n\n it('verify no change in xsi url received without ep version', async () => {\n const voiceMailPayload = JSON.parse(JSON.stringify(mockBWRKSData));\n\n voiceMailPayload.body.devices[0].settings.broadworksXsiActionsUrl =\n voiceMailPayload.body.devices[0].settings.broadworksXsiActionsUrl.slice(0, -5);\n\n webex.request.mockResolvedValueOnce(broadworksTokenType);\n webex.request.mockResolvedValueOnce(voiceMailPayload);\n broadworksBackendConnector.xsiEndpoint = {};\n await broadworksBackendConnector.init();\n expect(broadworksBackendConnector.xsiEndpoint).toStrictEqual(\n voiceMailPayload.body.devices[0].settings.broadworksXsiActionsUrl\n );\n });\n\n it('verify failure case for voicemail list fetch', async () => {\n const response = await broadworksBackendConnector.getVoicemailList(0, 20, SORT.DESC, true);\n\n expect(response).toStrictEqual(responseDetails422);\n expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith(\n {\n statusCode: UNPROCESSABLE_CONTENT_CODE,\n },\n {\n file: 'BroadworksBackendConnector',\n method: 'getVoicemailList',\n }\n );\n expect(infoSpy).toHaveBeenCalledWith(\n 'invoking with offset: 0, offsetLimit: 20, sort type: DESC',\n {\n file: 'BroadworksBackendConnector',\n method: 'getVoicemailList',\n }\n );\n expect(errorSpy).toHaveBeenCalled();\n });\n\n it('verify failure case for voicemail list fetch when api request fails', async () => {\n global.fetch.mockRejectedValueOnce('server is busy');\n\n const response = await broadworksBackendConnector.getVoicemailList(0, 20, SORT.DESC, true);\n\n expect(response).toStrictEqual(responseDetails422);\n expect(fetchVoicemailListSpy).not.toBeCalled();\n });\n });\n\n describe('Voicemail success tests for Broadworks', () => {\n beforeEach(() => {\n getSortedVoicemailListSpy = jest.spyOn(utils, 'getSortedVoicemailList');\n storeVoicemailListSpy = jest.spyOn(utils, 'storeVoicemailList');\n });\n\n afterEach(() => {\n jest.clearAllMocks();\n });\n\n const success = 'SUCCESS';\n const CONTEXT = 'context';\n\n beforeEach(async () => {\n global.fetch = jest.fn(() =>\n Promise.resolve({\n status: 200,\n ok: true,\n json: () => Promise.resolve(getVoicemailListJsonBWRKS),\n })\n ) as jest.Mock;\n\n broadworksBackendConnector['bwtoken'] = bwToken;\n broadworksBackendConnector['context'] = CONTEXT;\n const voiceMailTokenPayload = <WebexRequestPayload>broadworksTokenType;\n\n webex.request.mockResolvedValueOnce(voiceMailTokenPayload);\n\n const voiceMailPayload = <WebexRequestPayload>mockBWRKSData;\n\n webex.request.mockResolvedValueOnce(voiceMailPayload);\n\n broadworksBackendConnector['xsiVoiceMessageURI'] = broadworksUserInfoUrl;\n broadworksBackendConnector.init();\n });\n\n it('verify successful voicemail listing in descending order with offset 0 and limit 20', async () => {\n logSpy.mockClear();\n const response = await broadworksBackendConnector.getVoicemailList(0, 20, SORT.DESC, true);\n\n const voicemailResponseInfo = {\n voicemailList:\n getDescVoicemailListJsonBWRKS.VoiceMessagingMessages.messageInfoList.messageInfo,\n };\n\n const responseDetails = {\n statusCode: NO_VOICEMAIL_STATUS_CODE,\n data: voicemailResponseInfo,\n message: NO_VOICEMAIL_MSG,\n };\n\n expect(response).toStrictEqual(responseDetails);\n expect(response.message).toBe(NO_VOICEMAIL_MSG);\n expect(global.fetch).toBeCalledOnceWith(`${broadworksUserInfoUrl}${JSON_FORMAT}`, {\n headers: {Authorization: `bearer ${bwToken}`},\n method: 'GET',\n });\n expect(getSortedVoicemailListSpy).toBeCalledOnceWith(\n voicemailResponseInfo.voicemailList,\n 'DESC'\n );\n expect(storeVoicemailListSpy).toBeCalledOnceWith(\n CONTEXT,\n voicemailResponseInfo.voicemailList\n );\n expect(fetchVoicemailListSpy).toBeCalledOnceWith(CONTEXT, 0, 20, {\n file: 'BroadworksBackendConnector',\n method: 'getVoicemailList',\n });\n expect(infoSpy).toHaveBeenCalledWith(\n 'invoking with offset: 0, offsetLimit: 20, sort type: DESC',\n {\n file: 'BroadworksBackendConnector',\n method: 'getVoicemailList',\n }\n );\n expect(logSpy).toHaveBeenCalledWith('Successfully fetched voicemail list with 5 messages', {\n file: 'BroadworksBackendConnector',\n method: 'getVoicemailList',\n });\n });\n\n it('verify successful voicemail listing in ascending order with offset 0 and limit 20', async () => {\n const response = await broadworksBackendConnector.getVoicemailList(0, 20, SORT.ASC, true);\n\n const voicemailResponseInfo = {\n voicemailList:\n getAscVoicemailListJsonBWRKS.VoiceMessagingMessages.messageInfoList.messageInfo,\n };\n\n const responseDetails = {\n statusCode: NO_VOICEMAIL_STATUS_CODE,\n data: voicemailResponseInfo,\n message: NO_VOICEMAIL_MSG,\n };\n\n expect(response).toStrictEqual(responseDetails);\n expect(response.message).toBe(NO_VOICEMAIL_MSG);\n expect(global.fetch).toBeCalledTimes(1);\n expect(global.fetch).toBeCalledWith(`${broadworksUserInfoUrl}${JSON_FORMAT}`, {\n headers: {Authorization: `bearer ${bwToken}`},\n method: 'GET',\n });\n expect(getSortedVoicemailListSpy).toBeCalledOnceWith(\n voicemailResponseInfo.voicemailList,\n 'ASC'\n );\n expect(storeVoicemailListSpy).toBeCalledOnceWith(\n CONTEXT,\n voicemailResponseInfo.voicemailList\n );\n expect(fetchVoicemailListSpy).toBeCalledOnceWith(CONTEXT, 0, 20, {\n file: 'BroadworksBackendConnector',\n method: 'getVoicemailList',\n });\n });\n\n it('verify successful voicemail listing in descending order with offset 0 and limit 1 and invalid sort parameter', async () => {\n const response = await broadworksBackendConnector.getVoicemailList(\n 0,\n 1,\n 'abcd' as unknown as SORT,\n true\n );\n\n const voicemailResponseInfo = {\n voicemailList:\n getDescVoicemailListJsonBWRKS.VoiceMessagingMessages.messageInfoList.messageInfo.slice(\n 0,\n 1\n ),\n };\n\n const responseDetails = {\n statusCode: 200,\n data: voicemailResponseInfo,\n message: success,\n };\n\n expect(response).toStrictEqual(responseDetails);\n expect(response.message).toBe(success);\n expect(global.fetch).toBeCalledTimes(1);\n expect(global.fetch).toBeCalledWith(`${broadworksUserInfoUrl}${JSON_FORMAT}`, {\n headers: {Authorization: `bearer ${bwToken}`},\n method: 'GET',\n });\n expect(getSortedVoicemailListSpy).toBeCalledOnceWith(\n getDescVoicemailListJsonBWRKS.VoiceMessagingMessages.messageInfoList.messageInfo,\n 'DESC'\n );\n expect(storeVoicemailListSpy).toBeCalledOnceWith(\n CONTEXT,\n getDescVoicemailListJsonBWRKS.VoiceMessagingMessages.messageInfoList.messageInfo\n );\n expect(fetchVoicemailListSpy).toBeCalledOnceWith(CONTEXT, 0, 1, {\n file: 'BroadworksBackendConnector',\n method: 'getVoicemailList',\n });\n });\n\n it('verify successful voicemail listing in ascending order with offset 0 and limit 3 without refresh', async () => {\n const vmEncodedList = Buffer.from(\n JSON.stringify(\n getAscVoicemailListJsonBWRKS.VoiceMessagingMessages.messageInfoList.messageInfo\n ),\n 'utf8'\n ).toString('base64');\n\n sessionStorage.setItem(CONTEXT, vmEncodedList.toString());\n const response = await broadworksBackendConnector.getVoicemailList(0, 3, SORT.ASC, false);\n\n const voicemailResponseInfo = {\n voicemailList:\n getAscVoicemailListJsonBWRKS.VoiceMessagingMessages.messageInfoList.messageInfo.slice(\n 0,\n 3\n ),\n };\n\n const responseDetails = {\n statusCode: 200,\n data: voicemailResponseInfo,\n message: success,\n };\n\n expect(response).toStrictEqual(responseDetails);\n expect(response.message).toBe(success);\n expect(global.fetch).not.toBeCalled();\n expect(getSortedVoicemailListSpy).not.toBeCalled();\n expect(storeVoicemailListSpy).not.toBeCalled();\n expect(fetchVoicemailListSpy).toBeCalledOnceWith(CONTEXT, 0, 3, {\n file: 'BroadworksBackendConnector',\n method: 'getVoicemailList',\n });\n sessionStorage.removeItem(CONTEXT);\n });\n\n it('verify empty voicemail listing data', async () => {\n global.fetch.mockReturnValueOnce({\n status: 200,\n ok: true,\n json: () => Promise.resolve(getEmptyVoicemailListJsonBWRKS),\n });\n\n const response = await broadworksBackendConnector.getVoicemailList(0, 20, SORT.DESC, true);\n\n const voicemailResponseInfo = {\n voicemailList: [],\n };\n\n const responseDetails = {\n statusCode: NO_VOICEMAIL_STATUS_CODE,\n data: voicemailResponseInfo,\n message: NO_VOICEMAIL_MSG,\n };\n\n expect(response).toStrictEqual(responseDetails);\n expect(response.message).toBe(NO_VOICEMAIL_MSG);\n expect(global.fetch).toBeCalledOnceWith(`${broadworksUserInfoUrl}${JSON_FORMAT}`, {\n headers: {Authorization: `bearer ${bwToken}`},\n method: 'GET',\n });\n expect(fetchVoicemailListSpy).toBeCalledOnceWith(CONTEXT, 0, 20, {\n file: 'BroadworksBackendConnector',\n method: 'getVoicemailList',\n });\n });\n\n it('verify empty voicemail listing data when response data is in invalid format', async () => {\n global.fetch.mockReturnValueOnce({\n status: 200,\n ok: true,\n json: () => Promise.resolve(getInvalidVoicemailListJsonBWRKS),\n });\n\n const response = await broadworksBackendConnector.getVoicemailList(0, 20, SORT.DESC, true);\n\n const voicemailResponseInfo = {\n voicemailList: [{}],\n };\n\n const responseDetails = {\n statusCode: NO_VOICEMAIL_STATUS_CODE,\n data: voicemailResponseInfo,\n message: NO_VOICEMAIL_MSG,\n };\n\n expect(response).toStrictEqual(responseDetails);\n expect(response.message).toBe(NO_VOICEMAIL_MSG);\n expect(global.fetch).toBeCalledOnceWith(`${broadworksUserInfoUrl}${JSON_FORMAT}`, {\n headers: {Authorization: `bearer ${bwToken}`},\n method: 'GET',\n });\n expect(fetchVoicemailListSpy).toBeCalledOnceWith(CONTEXT, 0, 20, {\n file: 'BroadworksBackendConnector',\n method: 'getVoicemailList',\n });\n });\n\n it('verify successful voicemailMarkAsRead', async () => {\n const responseDetails = {\n data: {},\n statusCode: 200,\n };\n\n const response = await broadworksBackendConnector.voicemailMarkAsRead(messageId.$);\n\n expect(response.message).toBe(success);\n expect(response.data).toStrictEqual(responseDetails.data);\n expect(global.fetch).toBeCalledTimes(1);\n expect(global.fetch).toBeCalledWith(\n `${broadworksUserInfoUrl}/${broadworksUserMessageId}/${MARK_AS_READ}`,\n {headers: {Authorization: `bearer ${bwToken}`}, method: 'PUT'}\n );\n expect(infoSpy).toHaveBeenCalledWith(\n `${METHOD_START_MESSAGE} with messageId: ${messageId.$}`,\n {\n file: 'BroadworksBackendConnector',\n method: 'voicemailMarkAsRead',\n }\n );\n expect(logSpy).toHaveBeenCalledWith(\n `Successfully marked voicemail with ID ${messageId.$} as read`,\n {\n file: 'BroadworksBackendConnector',\n method: 'voicemailMarkAsRead',\n }\n );\n });\n\n it('verify successful voicemailMarkAsUnread', async () => {\n const responseDetails = {\n statusCode: 200,\n data: {},\n };\n\n const response = await broadworksBackendConnector.voicemailMarkAsUnread(messageId.$);\n\n expect(response.data).toStrictEqual(responseDetails.data);\n expect(response.message).toBe(success);\n expect(global.fetch).toBeCalledTimes(1);\n expect(global.fetch).toBeCalledWith(\n `${broadworksUserInfoUrl}/${broadworksUserMessageId}/${MARK_AS_UNREAD}`,\n {headers: {Authorization: `bearer ${bwToken}`}, method: 'PUT'}\n );\n expect(infoSpy).toHaveBeenCalledWith(\n `${METHOD_START_MESSAGE} with messageId: ${messageId.$}`,\n {\n file: 'BroadworksBackendConnector',\n method: 'voicemailMarkAsUnread',\n }\n );\n expect(logSpy).toHaveBeenCalledWith(\n `Successfully marked voicemail with ID ${messageId.$} as unread`,\n {\n file: 'BroadworksBackendConnector',\n method: 'voicemailMarkAsUnread',\n }\n );\n });\n\n it('verify successful deleteVoicemail', async () => {\n const response = await broadworksBackendConnector.deleteVoicemail(messageId.$);\n\n expect(response.data).toStrictEqual({});\n expect(response.message).toBe(success);\n expect(global.fetch).toBeCalledTimes(1);\n expect(global.fetch).toBeCalledWith(`${broadworksUserInfoUrl}/${broadworksUserMessageId}`, {\n headers: {Authorization: `bearer ${bwToken}`},\n method: 'DELETE',\n });\n expect(infoSpy).toHaveBeenCalledWith(\n `${METHOD_START_MESSAGE} with messageId: ${messageId.$}`,\n {\n file: 'BroadworksBackendConnector',\n method: 'deleteVoicemail',\n }\n );\n expect(logSpy).toHaveBeenCalledWith(`Successfully deleted voicemail with ID ${messageId.$}`, {\n file: 'BroadworksBackendConnector',\n method: 'deleteVoicemail',\n });\n });\n\n it('verify successfully fetching voicemail transcript for the provided messageId', async () => {\n const transcriptId = '98099432-9d81-4224-bd04-00def73cd262';\n const response = await broadworksBackendConnector.getVMTranscript(transcriptId);\n\n expect(response).toBeNull();\n expect(infoSpy).toHaveBeenCalledWith(\n `${METHOD_START_MESSAGE} with messageId: ${transcriptId}`,\n {\n file: 'BroadworksBackendConnector',\n method: 'getVMTranscript',\n }\n );\n });\n\n it('verify resolution of contact to null', async () => {\n // Clear all mocks before calling the method to test\n jest.clearAllMocks();\n\n const response = await broadworksBackendConnector.resolveContact(resolveContactArgs);\n\n expect(response).toBeNull();\n expect(infoSpy).toHaveBeenCalledWith(\n `${METHOD_START_MESSAGE} with Calling Party Info: ${resolveContactArgs}`,\n {\n file: 'BroadworksBackendConnector',\n method: 'resolveContact',\n }\n );\n });\n\n it('verify fetching voicemail summary data to be null', async () => {\n const response = await broadworksBackendConnector.getVoicemailSummary();\n\n expect(response).toBeNull();\n });\n });\n});\n"],"mappings":"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"}
1
+ {"version":3,"names":["_types","require","_testUtil","_types2","_BroadworksBackendConnector","_voicemailFixture","_constants","utils","_interopRequireWildcard","_constants2","_Logger","_interopRequireDefault","e","t","_WeakMap","r","n","__esModule","o","i","f","__proto__","default","_typeof","has","get","set","_t","hasOwnProperty","call","_Object$defineProperty","_Object$getOwnPropertyDescriptor","jest","spyOn","mockResolvedValue","undefined","webex","getTestUtilsWebex","describe","broadworksBackendConnector","getSortedVoicemailListSpy","storeVoicemailListSpy","fetchVoicemailListSpy","infoSpy","logSpy","errorSpy","messageId","mockVoicemailBody","body","items","beforeAll","internal","device","features","entitlement","models","_values","key","BroadworksBackendConnector","level","LOGGER","INFO","getSDKConnector","log","beforeEach","clearAllMocks","serviceErrorCodeHandlerSpy","global","fetch","fn","_promise","resolve","status","UNPROCESSABLE_CONTENT_CODE","ok","afterEach","it","_asyncToGenerator2","_regenerator","mark","_callee","response","wrap","_callee$","_context","prev","next","voicemailMarkAsRead","sent","expect","message","toBe","FAILURE_MESSAGE","statusCode","toBeCalledOnceWith","file","method","toHaveBeenCalledWith","toHaveBeenCalled","stop","_callee2","_callee2$","_context2","_callee3","_callee3$","_context3","voicemailMarkAsUnread","_callee4","_callee4$","_context4","deleteVoicemail","_callee5","_callee5$","_context5","mockRejectedValueOnce","$","toStrictEqual","responseDetails422","_callee6","_callee6$","_context6","getVoicemailContent","_callee7","failurePayload","voiceMailPayload","_callee7$","_context7","request","mockRejectedValue","init","_callee8","_callee8$","_context8","_callee9","_callee9$","_context9","toBeUndefined","_callee0","_callee0$","_context0","JSON","parse","_stringify","mockBWRKSData","devices","settings","broadworksXsiActionsUrl","slice","mockResolvedValueOnce","broadworksTokenType","xsiEndpoint","_callee1","_callee1$","_context1","getVoicemailList","SORT","DESC","_callee10","_callee10$","_context10","not","toBeCalled","success","CONTEXT","_callee11","voiceMailTokenPayload","_callee11$","_context11","json","getVoicemailListJsonBWRKS","bwToken","broadworksUserInfoUrl","_callee12","voicemailResponseInfo","responseDetails","_callee12$","_context12","mockClear","voicemailList","getDescVoicemailListJsonBWRKS","VoiceMessagingMessages","messageInfoList","messageInfo","NO_VOICEMAIL_STATUS_CODE","data","NO_VOICEMAIL_MSG","concat","JSON_FORMAT","headers","Authorization","_callee13","_callee13$","_context13","ASC","getAscVoicemailListJsonBWRKS","toBeCalledTimes","toBeCalledWith","_callee14","_callee14$","_context14","_callee15","vmEncodedList","_callee15$","_context15","Buffer","from","toString","sessionStorage","setItem","removeItem","_callee16","_callee16$","_context16","mockReturnValueOnce","getEmptyVoicemailListJsonBWRKS","_callee17","_callee17$","_context17","getInvalidVoicemailListJsonBWRKS","_callee18","_callee18$","_context18","broadworksUserMessageId","MARK_AS_READ","METHOD_START_MESSAGE","_callee19","_callee19$","_context19","MARK_AS_UNREAD","_callee20","_callee20$","_context20","_callee21","transcriptId","_callee21$","_context21","getVMTranscript","toBeNull","_callee22","_callee22$","_context22","resolveContact","resolveContactArgs","_callee23","_callee23$","_context23","getVoicemailSummary"],"sources":["BroadworksBackendConnector.test.ts"],"sourcesContent":["/* eslint-disable dot-notation */\nimport {LOGGER} from '../Logger/types';\nimport {getTestUtilsWebex} from '../common/testUtil';\nimport {SORT, WebexRequestPayload} from '../common/types';\nimport {BroadworksBackendConnector} from './BroadworksBackendConnector';\nimport {\n broadworksTokenType,\n bwToken,\n getVoicemailListJsonBWRKS,\n mockBWRKSData,\n mockVoicemailBody,\n broadworksUserInfoUrl,\n broadworksUserMessageId,\n getDescVoicemailListJsonBWRKS,\n getAscVoicemailListJsonBWRKS,\n getEmptyVoicemailListJsonBWRKS,\n getInvalidVoicemailListJsonBWRKS,\n resolveContactArgs,\n responseDetails422,\n} from './voicemailFixture';\nimport {IBroadworksCallBackendConnector} from './types';\nimport {\n JSON_FORMAT,\n MARK_AS_READ,\n MARK_AS_UNREAD,\n NO_VOICEMAIL_MSG,\n NO_VOICEMAIL_STATUS_CODE,\n} from './constants';\nimport * as utils from '../common/Utils';\nimport {\n FAILURE_MESSAGE,\n METHOD_START_MESSAGE,\n UNPROCESSABLE_CONTENT_CODE,\n} from '../common/constants';\nimport log from '../Logger';\n\njest.spyOn(utils, 'uploadLogs').mockResolvedValue(undefined);\n\nconst webex = getTestUtilsWebex();\n\ndescribe('Voicemail Broadworks Backend Connector Test case', () => {\n let broadworksBackendConnector: IBroadworksCallBackendConnector;\n let getSortedVoicemailListSpy: jest.SpyInstance;\n let storeVoicemailListSpy: jest.SpyInstance;\n let fetchVoicemailListSpy: jest.SpyInstance;\n let infoSpy: jest.SpyInstance;\n let logSpy: jest.SpyInstance;\n let errorSpy: jest.SpyInstance;\n const {messageId} = mockVoicemailBody.body.items[0];\n\n beforeAll(() => {\n webex.internal.device.features.entitlement.models = [{_values: {key: 'broadworks-connector'}}];\n broadworksBackendConnector = new BroadworksBackendConnector(webex, {level: LOGGER.INFO});\n broadworksBackendConnector.getSDKConnector();\n fetchVoicemailListSpy = jest.spyOn(utils, 'fetchVoicemailList');\n infoSpy = jest.spyOn(log, 'info');\n logSpy = jest.spyOn(log, 'log');\n errorSpy = jest.spyOn(log, 'error');\n });\n\n beforeEach(() => {\n jest.clearAllMocks();\n });\n\n describe('Voicemail failure test cases', () => {\n let serviceErrorCodeHandlerSpy: jest.SpyInstance;\n\n beforeEach(() => {\n serviceErrorCodeHandlerSpy = jest.spyOn(utils, 'serviceErrorCodeHandler');\n global.fetch = jest.fn(() =>\n Promise.resolve({\n status: UNPROCESSABLE_CONTENT_CODE,\n ok: false,\n })\n ) as jest.Mock;\n });\n\n afterEach(() => {\n jest.clearAllMocks();\n });\n\n it('verify exception case for the mark read case when messageid is invalid', async () => {\n const response = await broadworksBackendConnector.voicemailMarkAsRead('dummy');\n\n expect(response.message).toBe(FAILURE_MESSAGE);\n expect(response.statusCode).toBe(UNPROCESSABLE_CONTENT_CODE);\n expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith(\n {\n statusCode: UNPROCESSABLE_CONTENT_CODE,\n },\n {\n file: 'BroadworksBackendConnector',\n method: 'voicemailMarkAsRead',\n }\n );\n expect(infoSpy).toHaveBeenCalledWith('invoking with messageId: dummy', {\n file: 'BroadworksBackendConnector',\n method: 'voicemailMarkAsRead',\n });\n expect(errorSpy).toHaveBeenCalled();\n });\n\n it('verify failure case for the mark read case when response is not ok', async () => {\n const response = await broadworksBackendConnector.voicemailMarkAsRead('dummy');\n\n expect(response.message).toBe(FAILURE_MESSAGE);\n expect(response.statusCode).toBe(UNPROCESSABLE_CONTENT_CODE);\n expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith(\n {\n statusCode: UNPROCESSABLE_CONTENT_CODE,\n },\n {\n file: 'BroadworksBackendConnector',\n method: 'voicemailMarkAsRead',\n }\n );\n });\n\n it('verify failure case for the mark as unread case when response is not ok', async () => {\n const response = await broadworksBackendConnector.voicemailMarkAsUnread('dummy');\n\n expect(response.message).toBe(FAILURE_MESSAGE);\n expect(response.statusCode).toBe(UNPROCESSABLE_CONTENT_CODE);\n expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith(\n {\n statusCode: UNPROCESSABLE_CONTENT_CODE,\n },\n {\n file: 'BroadworksBackendConnector',\n method: 'voicemailMarkAsUnread',\n }\n );\n expect(infoSpy).toHaveBeenCalledWith('invoking with messageId: dummy', {\n file: 'BroadworksBackendConnector',\n method: 'voicemailMarkAsUnread',\n });\n expect(errorSpy).toHaveBeenCalled();\n });\n\n it('verify failure case for the delete voicemail case when response is not ok', async () => {\n const response = await broadworksBackendConnector.deleteVoicemail('dummy');\n\n expect(response.message).toBe(FAILURE_MESSAGE);\n expect(response.statusCode).toBe(UNPROCESSABLE_CONTENT_CODE);\n expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith(\n {\n statusCode: UNPROCESSABLE_CONTENT_CODE,\n },\n {\n file: 'BroadworksBackendConnector',\n method: 'deleteVoicemail',\n }\n );\n expect(infoSpy).toHaveBeenCalledWith('invoking with messageId: dummy', {\n file: 'BroadworksBackendConnector',\n method: 'deleteVoicemail',\n });\n expect(errorSpy).toHaveBeenCalled();\n });\n\n it('verify failure case for the delete voicemail case when api response fails', async () => {\n global.fetch.mockRejectedValueOnce('server is busy');\n\n const response = await broadworksBackendConnector.deleteVoicemail(messageId.$);\n\n expect(response).toStrictEqual(responseDetails422);\n expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith(\n {\n statusCode: '',\n },\n {\n file: 'BroadworksBackendConnector',\n method: 'deleteVoicemail',\n }\n );\n });\n\n it('verify failure case for the voicemail content case when response is not ok', async () => {\n const response = await broadworksBackendConnector.getVoicemailContent('dummy');\n\n expect(response.message).toBe(FAILURE_MESSAGE);\n expect(response.statusCode).toBe(UNPROCESSABLE_CONTENT_CODE);\n expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith(\n {\n statusCode: UNPROCESSABLE_CONTENT_CODE,\n },\n {\n file: 'BroadworksBackendConnector',\n method: 'getVoicemailContent',\n }\n );\n expect(infoSpy).toHaveBeenCalledWith('invoking with messageId: dummy', {\n file: 'BroadworksBackendConnector',\n method: 'getVoicemailContent',\n });\n expect(errorSpy).toHaveBeenCalled();\n });\n\n it('verify failed case when token is empty', async () => {\n const failurePayload = {\n message: FAILURE_MESSAGE,\n status: 401,\n };\n const voiceMailPayload = <WebexRequestPayload>failurePayload;\n\n broadworksBackendConnector['bwtoken'] = '';\n webex.request.mockRejectedValue(voiceMailPayload);\n const response = await broadworksBackendConnector.init();\n\n expect(response.message).toBe(FAILURE_MESSAGE);\n expect(response.statusCode).toBe(401);\n expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith(\n {\n statusCode: 401,\n },\n {\n file: 'BroadworksBackendConnector',\n method: 'getUserId',\n }\n );\n expect(errorSpy).toHaveBeenCalledWith('Failed to get userId: {}', {\n file: 'BroadworksBackendConnector',\n method: 'getUserId',\n });\n });\n\n it('verify failed case when token is invalid', async () => {\n const failurePayload = {\n message: FAILURE_MESSAGE,\n status: 401,\n };\n const voiceMailPayload = <WebexRequestPayload>failurePayload;\n\n broadworksBackendConnector['bwtoken'] = 'dummy';\n webex.request.mockRejectedValue(voiceMailPayload);\n const response = await broadworksBackendConnector.init();\n\n expect(response.message).toBe(FAILURE_MESSAGE);\n expect(response.statusCode).toBe(401);\n expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith(\n {\n statusCode: 401,\n },\n {\n file: 'BroadworksBackendConnector',\n method: 'getUserId',\n }\n );\n expect(errorSpy).toHaveBeenCalledWith('Failed to get userId: {}', {\n file: 'BroadworksBackendConnector',\n method: 'getUserId',\n });\n });\n\n it('verify no response case when token have invalid userid', async () => {\n broadworksBackendConnector['bwtoken'] = 'bwtoken.eyJhbGciOiJIUzI1NiJ9';\n const response = await broadworksBackendConnector.init();\n\n expect(response).toBeUndefined();\n });\n\n it('verify no change in xsi url received without ep version', async () => {\n const voiceMailPayload = JSON.parse(JSON.stringify(mockBWRKSData));\n\n voiceMailPayload.body.devices[0].settings.broadworksXsiActionsUrl =\n voiceMailPayload.body.devices[0].settings.broadworksXsiActionsUrl.slice(0, -5);\n\n webex.request.mockResolvedValueOnce(broadworksTokenType);\n webex.request.mockResolvedValueOnce(voiceMailPayload);\n broadworksBackendConnector.xsiEndpoint = {};\n await broadworksBackendConnector.init();\n expect(broadworksBackendConnector.xsiEndpoint).toStrictEqual(\n voiceMailPayload.body.devices[0].settings.broadworksXsiActionsUrl\n );\n });\n\n it('verify failure case for voicemail list fetch', async () => {\n const response = await broadworksBackendConnector.getVoicemailList(0, 20, SORT.DESC, true);\n\n expect(response).toStrictEqual(responseDetails422);\n expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith(\n {\n statusCode: UNPROCESSABLE_CONTENT_CODE,\n },\n {\n file: 'BroadworksBackendConnector',\n method: 'getVoicemailList',\n }\n );\n expect(infoSpy).toHaveBeenCalledWith(\n 'invoking with offset: 0, offsetLimit: 20, sort type: DESC',\n {\n file: 'BroadworksBackendConnector',\n method: 'getVoicemailList',\n }\n );\n expect(errorSpy).toHaveBeenCalled();\n });\n\n it('verify failure case for voicemail list fetch when api request fails', async () => {\n global.fetch.mockRejectedValueOnce('server is busy');\n\n const response = await broadworksBackendConnector.getVoicemailList(0, 20, SORT.DESC, true);\n\n expect(response).toStrictEqual(responseDetails422);\n expect(fetchVoicemailListSpy).not.toBeCalled();\n });\n });\n\n describe('Voicemail success tests for Broadworks', () => {\n beforeEach(() => {\n getSortedVoicemailListSpy = jest.spyOn(utils, 'getSortedVoicemailList');\n storeVoicemailListSpy = jest.spyOn(utils, 'storeVoicemailList');\n });\n\n afterEach(() => {\n jest.clearAllMocks();\n });\n\n const success = 'SUCCESS';\n const CONTEXT = 'context';\n\n beforeEach(async () => {\n global.fetch = jest.fn(() =>\n Promise.resolve({\n status: 200,\n ok: true,\n json: () => Promise.resolve(getVoicemailListJsonBWRKS),\n })\n ) as jest.Mock;\n\n broadworksBackendConnector['bwtoken'] = bwToken;\n broadworksBackendConnector['context'] = CONTEXT;\n const voiceMailTokenPayload = <WebexRequestPayload>broadworksTokenType;\n\n webex.request.mockResolvedValueOnce(voiceMailTokenPayload);\n\n const voiceMailPayload = <WebexRequestPayload>mockBWRKSData;\n\n webex.request.mockResolvedValueOnce(voiceMailPayload);\n\n broadworksBackendConnector['xsiVoiceMessageURI'] = broadworksUserInfoUrl;\n broadworksBackendConnector.init();\n });\n\n it('verify successful voicemail listing in descending order with offset 0 and limit 20', async () => {\n logSpy.mockClear();\n const response = await broadworksBackendConnector.getVoicemailList(0, 20, SORT.DESC, true);\n\n const voicemailResponseInfo = {\n voicemailList:\n getDescVoicemailListJsonBWRKS.VoiceMessagingMessages.messageInfoList.messageInfo,\n };\n\n const responseDetails = {\n statusCode: NO_VOICEMAIL_STATUS_CODE,\n data: voicemailResponseInfo,\n message: NO_VOICEMAIL_MSG,\n };\n\n expect(response).toStrictEqual(responseDetails);\n expect(response.message).toBe(NO_VOICEMAIL_MSG);\n expect(global.fetch).toBeCalledOnceWith(`${broadworksUserInfoUrl}${JSON_FORMAT}`, {\n headers: {Authorization: `bearer ${bwToken}`},\n method: 'GET',\n });\n expect(getSortedVoicemailListSpy).toBeCalledOnceWith(\n voicemailResponseInfo.voicemailList,\n 'DESC'\n );\n expect(storeVoicemailListSpy).toBeCalledOnceWith(\n CONTEXT,\n voicemailResponseInfo.voicemailList\n );\n expect(fetchVoicemailListSpy).toBeCalledOnceWith(CONTEXT, 0, 20, {\n file: 'BroadworksBackendConnector',\n method: 'getVoicemailList',\n });\n expect(infoSpy).toHaveBeenCalledWith(\n 'invoking with offset: 0, offsetLimit: 20, sort type: DESC',\n {\n file: 'BroadworksBackendConnector',\n method: 'getVoicemailList',\n }\n );\n expect(logSpy).toHaveBeenCalledWith('Successfully fetched voicemail list with 5 messages', {\n file: 'BroadworksBackendConnector',\n method: 'getVoicemailList',\n });\n });\n\n it('verify successful voicemail listing in ascending order with offset 0 and limit 20', async () => {\n const response = await broadworksBackendConnector.getVoicemailList(0, 20, SORT.ASC, true);\n\n const voicemailResponseInfo = {\n voicemailList:\n getAscVoicemailListJsonBWRKS.VoiceMessagingMessages.messageInfoList.messageInfo,\n };\n\n const responseDetails = {\n statusCode: NO_VOICEMAIL_STATUS_CODE,\n data: voicemailResponseInfo,\n message: NO_VOICEMAIL_MSG,\n };\n\n expect(response).toStrictEqual(responseDetails);\n expect(response.message).toBe(NO_VOICEMAIL_MSG);\n expect(global.fetch).toBeCalledTimes(1);\n expect(global.fetch).toBeCalledWith(`${broadworksUserInfoUrl}${JSON_FORMAT}`, {\n headers: {Authorization: `bearer ${bwToken}`},\n method: 'GET',\n });\n expect(getSortedVoicemailListSpy).toBeCalledOnceWith(\n voicemailResponseInfo.voicemailList,\n 'ASC'\n );\n expect(storeVoicemailListSpy).toBeCalledOnceWith(\n CONTEXT,\n voicemailResponseInfo.voicemailList\n );\n expect(fetchVoicemailListSpy).toBeCalledOnceWith(CONTEXT, 0, 20, {\n file: 'BroadworksBackendConnector',\n method: 'getVoicemailList',\n });\n });\n\n it('verify successful voicemail listing in descending order with offset 0 and limit 1 and invalid sort parameter', async () => {\n const response = await broadworksBackendConnector.getVoicemailList(\n 0,\n 1,\n 'abcd' as unknown as SORT,\n true\n );\n\n const voicemailResponseInfo = {\n voicemailList:\n getDescVoicemailListJsonBWRKS.VoiceMessagingMessages.messageInfoList.messageInfo.slice(\n 0,\n 1\n ),\n };\n\n const responseDetails = {\n statusCode: 200,\n data: voicemailResponseInfo,\n message: success,\n };\n\n expect(response).toStrictEqual(responseDetails);\n expect(response.message).toBe(success);\n expect(global.fetch).toBeCalledTimes(1);\n expect(global.fetch).toBeCalledWith(`${broadworksUserInfoUrl}${JSON_FORMAT}`, {\n headers: {Authorization: `bearer ${bwToken}`},\n method: 'GET',\n });\n expect(getSortedVoicemailListSpy).toBeCalledOnceWith(\n getDescVoicemailListJsonBWRKS.VoiceMessagingMessages.messageInfoList.messageInfo,\n 'DESC'\n );\n expect(storeVoicemailListSpy).toBeCalledOnceWith(\n CONTEXT,\n getDescVoicemailListJsonBWRKS.VoiceMessagingMessages.messageInfoList.messageInfo\n );\n expect(fetchVoicemailListSpy).toBeCalledOnceWith(CONTEXT, 0, 1, {\n file: 'BroadworksBackendConnector',\n method: 'getVoicemailList',\n });\n });\n\n it('verify successful voicemail listing in ascending order with offset 0 and limit 3 without refresh', async () => {\n const vmEncodedList = Buffer.from(\n JSON.stringify(\n getAscVoicemailListJsonBWRKS.VoiceMessagingMessages.messageInfoList.messageInfo\n ),\n 'utf8'\n ).toString('base64');\n\n sessionStorage.setItem(CONTEXT, vmEncodedList.toString());\n const response = await broadworksBackendConnector.getVoicemailList(0, 3, SORT.ASC, false);\n\n const voicemailResponseInfo = {\n voicemailList:\n getAscVoicemailListJsonBWRKS.VoiceMessagingMessages.messageInfoList.messageInfo.slice(\n 0,\n 3\n ),\n };\n\n const responseDetails = {\n statusCode: 200,\n data: voicemailResponseInfo,\n message: success,\n };\n\n expect(response).toStrictEqual(responseDetails);\n expect(response.message).toBe(success);\n expect(global.fetch).not.toBeCalled();\n expect(getSortedVoicemailListSpy).not.toBeCalled();\n expect(storeVoicemailListSpy).not.toBeCalled();\n expect(fetchVoicemailListSpy).toBeCalledOnceWith(CONTEXT, 0, 3, {\n file: 'BroadworksBackendConnector',\n method: 'getVoicemailList',\n });\n sessionStorage.removeItem(CONTEXT);\n });\n\n it('verify empty voicemail listing data', async () => {\n global.fetch.mockReturnValueOnce({\n status: 200,\n ok: true,\n json: () => Promise.resolve(getEmptyVoicemailListJsonBWRKS),\n });\n\n const response = await broadworksBackendConnector.getVoicemailList(0, 20, SORT.DESC, true);\n\n const voicemailResponseInfo = {\n voicemailList: [],\n };\n\n const responseDetails = {\n statusCode: NO_VOICEMAIL_STATUS_CODE,\n data: voicemailResponseInfo,\n message: NO_VOICEMAIL_MSG,\n };\n\n expect(response).toStrictEqual(responseDetails);\n expect(response.message).toBe(NO_VOICEMAIL_MSG);\n expect(global.fetch).toBeCalledOnceWith(`${broadworksUserInfoUrl}${JSON_FORMAT}`, {\n headers: {Authorization: `bearer ${bwToken}`},\n method: 'GET',\n });\n expect(fetchVoicemailListSpy).toBeCalledOnceWith(CONTEXT, 0, 20, {\n file: 'BroadworksBackendConnector',\n method: 'getVoicemailList',\n });\n });\n\n it('verify empty voicemail listing data when response data is in invalid format', async () => {\n global.fetch.mockReturnValueOnce({\n status: 200,\n ok: true,\n json: () => Promise.resolve(getInvalidVoicemailListJsonBWRKS),\n });\n\n const response = await broadworksBackendConnector.getVoicemailList(0, 20, SORT.DESC, true);\n\n const voicemailResponseInfo = {\n voicemailList: [{}],\n };\n\n const responseDetails = {\n statusCode: NO_VOICEMAIL_STATUS_CODE,\n data: voicemailResponseInfo,\n message: NO_VOICEMAIL_MSG,\n };\n\n expect(response).toStrictEqual(responseDetails);\n expect(response.message).toBe(NO_VOICEMAIL_MSG);\n expect(global.fetch).toBeCalledOnceWith(`${broadworksUserInfoUrl}${JSON_FORMAT}`, {\n headers: {Authorization: `bearer ${bwToken}`},\n method: 'GET',\n });\n expect(fetchVoicemailListSpy).toBeCalledOnceWith(CONTEXT, 0, 20, {\n file: 'BroadworksBackendConnector',\n method: 'getVoicemailList',\n });\n });\n\n it('verify successful voicemailMarkAsRead', async () => {\n const responseDetails = {\n data: {},\n statusCode: 200,\n };\n\n const response = await broadworksBackendConnector.voicemailMarkAsRead(messageId.$);\n\n expect(response.message).toBe(success);\n expect(response.data).toStrictEqual(responseDetails.data);\n expect(global.fetch).toBeCalledTimes(1);\n expect(global.fetch).toBeCalledWith(\n `${broadworksUserInfoUrl}/${broadworksUserMessageId}/${MARK_AS_READ}`,\n {headers: {Authorization: `bearer ${bwToken}`}, method: 'PUT'}\n );\n expect(infoSpy).toHaveBeenCalledWith(\n `${METHOD_START_MESSAGE} with messageId: ${messageId.$}`,\n {\n file: 'BroadworksBackendConnector',\n method: 'voicemailMarkAsRead',\n }\n );\n expect(logSpy).toHaveBeenCalledWith(\n `Successfully marked voicemail with ID ${messageId.$} as read`,\n {\n file: 'BroadworksBackendConnector',\n method: 'voicemailMarkAsRead',\n }\n );\n });\n\n it('verify successful voicemailMarkAsUnread', async () => {\n const responseDetails = {\n statusCode: 200,\n data: {},\n };\n\n const response = await broadworksBackendConnector.voicemailMarkAsUnread(messageId.$);\n\n expect(response.data).toStrictEqual(responseDetails.data);\n expect(response.message).toBe(success);\n expect(global.fetch).toBeCalledTimes(1);\n expect(global.fetch).toBeCalledWith(\n `${broadworksUserInfoUrl}/${broadworksUserMessageId}/${MARK_AS_UNREAD}`,\n {headers: {Authorization: `bearer ${bwToken}`}, method: 'PUT'}\n );\n expect(infoSpy).toHaveBeenCalledWith(\n `${METHOD_START_MESSAGE} with messageId: ${messageId.$}`,\n {\n file: 'BroadworksBackendConnector',\n method: 'voicemailMarkAsUnread',\n }\n );\n expect(logSpy).toHaveBeenCalledWith(\n `Successfully marked voicemail with ID ${messageId.$} as unread`,\n {\n file: 'BroadworksBackendConnector',\n method: 'voicemailMarkAsUnread',\n }\n );\n });\n\n it('verify successful deleteVoicemail', async () => {\n const response = await broadworksBackendConnector.deleteVoicemail(messageId.$);\n\n expect(response.data).toStrictEqual({});\n expect(response.message).toBe(success);\n expect(global.fetch).toBeCalledTimes(1);\n expect(global.fetch).toBeCalledWith(`${broadworksUserInfoUrl}/${broadworksUserMessageId}`, {\n headers: {Authorization: `bearer ${bwToken}`},\n method: 'DELETE',\n });\n expect(infoSpy).toHaveBeenCalledWith(\n `${METHOD_START_MESSAGE} with messageId: ${messageId.$}`,\n {\n file: 'BroadworksBackendConnector',\n method: 'deleteVoicemail',\n }\n );\n expect(logSpy).toHaveBeenCalledWith(`Successfully deleted voicemail with ID ${messageId.$}`, {\n file: 'BroadworksBackendConnector',\n method: 'deleteVoicemail',\n });\n });\n\n it('verify successfully fetching voicemail transcript for the provided messageId', async () => {\n const transcriptId = '98099432-9d81-4224-bd04-00def73cd262';\n const response = await broadworksBackendConnector.getVMTranscript(transcriptId);\n\n expect(response).toBeNull();\n expect(infoSpy).toHaveBeenCalledWith(\n `${METHOD_START_MESSAGE} with messageId: ${transcriptId}`,\n {\n file: 'BroadworksBackendConnector',\n method: 'getVMTranscript',\n }\n );\n });\n\n it('verify resolution of contact to null', async () => {\n // Clear all mocks before calling the method to test\n jest.clearAllMocks();\n\n const response = await broadworksBackendConnector.resolveContact(resolveContactArgs);\n\n expect(response).toBeNull();\n expect(infoSpy).toHaveBeenCalledWith(\n `${METHOD_START_MESSAGE} with Calling Party Info: ${resolveContactArgs}`,\n {\n file: 'BroadworksBackendConnector',\n method: 'resolveContact',\n }\n );\n });\n\n it('verify fetching voicemail summary data to be null', async () => {\n const response = await broadworksBackendConnector.getVoicemailSummary();\n\n expect(response).toBeNull();\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -6,8 +6,9 @@ _Object$defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.UcmBackendConnector = void 0;
9
- var _promise = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/promise"));
10
9
  var _regenerator = _interopRequireDefault(require("@babel/runtime-corejs2/regenerator"));
10
+ var _stringify = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/json/stringify"));
11
+ var _promise = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/promise"));
11
12
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/asyncToGenerator"));
12
13
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/classCallCheck"));
13
14
  var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/createClass"));
@@ -100,9 +101,9 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
100
101
  }, {
101
102
  key: "getVoicemailList",
102
103
  value: (function () {
103
- var _getVoicemailList = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(offset, offsetLimit, sort) {
104
+ var _getVoicemailList = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee(offset, offsetLimit, sort) {
104
105
  var _this = this;
105
- var loggerContext, urlVg, response, msgInfo, messageinfoArray, ucmVmMsgInfo, responseDetails, extendedError, errorInfo, errorStatus;
106
+ var loggerContext, urlVg, _response$headers, response, msgInfo, messageinfoArray, ucmVmMsgInfo, responseDetails, errorInfo, errorStatus;
106
107
  return _regenerator.default.wrap(function _callee$(_context) {
107
108
  while (1) switch (_context.prev = _context.next) {
108
109
  case 0:
@@ -123,6 +124,7 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
123
124
  });
124
125
  case 6:
125
126
  response = _context.sent;
127
+ _Logger.default.log("Response trackingId: ".concat(response === null || response === void 0 ? void 0 : (_response$headers = response.headers) === null || _response$headers === void 0 ? void 0 : _response$headers.trackingid), loggerContext);
126
128
  msgInfo = response.body;
127
129
  messageinfoArray = [];
128
130
  ucmVmMsgInfo = msgInfo.Message;
@@ -172,11 +174,10 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
172
174
  };
173
175
  _Logger.default.log('Successfully retrieved voicemail list', loggerContext);
174
176
  return _context.abrupt("return", responseDetails);
175
- case 16:
176
- _context.prev = 16;
177
+ case 17:
178
+ _context.prev = 17;
177
179
  _context.t0 = _context["catch"](3);
178
- extendedError = new Error("Failed to get voicemail list: ".concat(_context.t0));
179
- _Logger.default.error(extendedError, loggerContext);
180
+ _Logger.default.error("Failed to get voicemail list: ".concat((0, _stringify.default)(_context.t0)), loggerContext);
180
181
  _context.next = 22;
181
182
  return (0, _Utils.uploadLogs)();
182
183
  case 22:
@@ -187,7 +188,7 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
187
188
  case "end":
188
189
  return _context.stop();
189
190
  }
190
- }, _callee, this, [[3, 16]]);
191
+ }, _callee, this, [[3, 17]]);
191
192
  }));
192
193
  function getVoicemailList(_x, _x2, _x3) {
193
194
  return _getVoicemailList.apply(this, arguments);
@@ -201,8 +202,8 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
201
202
  }, {
202
203
  key: "getVoicemailContent",
203
204
  value: (function () {
204
- var _getVoicemailContent = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(messageId) {
205
- var loggerContext, response, extendedError, errorInfo, errorStatus;
205
+ var _getVoicemailContent = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee2(messageId) {
206
+ var loggerContext, response, errorInfo, errorStatus;
206
207
  return _regenerator.default.wrap(function _callee2$(_context2) {
207
208
  while (1) switch (_context2.prev = _context2.next) {
208
209
  case 0:
@@ -221,16 +222,15 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
221
222
  case 10:
222
223
  _context2.prev = 10;
223
224
  _context2.t0 = _context2["catch"](2);
224
- extendedError = new Error("Failed to get voicemail content: ".concat(_context2.t0));
225
- _Logger.default.error(extendedError, loggerContext);
226
- _context2.next = 16;
225
+ _Logger.default.error("Failed to get voicemail content: ".concat((0, _stringify.default)(_context2.t0)), loggerContext);
226
+ _context2.next = 15;
227
227
  return (0, _Utils.uploadLogs)();
228
- case 16:
228
+ case 15:
229
229
  errorInfo = _context2.t0;
230
230
  errorStatus = (0, _Utils.serviceErrorCodeHandler)(errorInfo, loggerContext);
231
231
  _Logger.default.info("Voice mail content error is ".concat(errorStatus), loggerContext);
232
232
  return _context2.abrupt("return", errorStatus);
233
- case 20:
233
+ case 19:
234
234
  case "end":
235
235
  return _context2.stop();
236
236
  }
@@ -249,7 +249,7 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
249
249
  }, {
250
250
  key: "getVoicemailSummary",
251
251
  value: (function () {
252
- var _getVoicemailSummary = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3() {
252
+ var _getVoicemailSummary = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee3() {
253
253
  return _regenerator.default.wrap(function _callee3$(_context3) {
254
254
  while (1) switch (_context3.prev = _context3.next) {
255
255
  case 0:
@@ -272,7 +272,7 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
272
272
  }, {
273
273
  key: "getVoicemailContentUcm",
274
274
  value: (function () {
275
- var _getVoicemailContentUcm = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5(messageId) {
275
+ var _getVoicemailContentUcm = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee5(messageId) {
276
276
  var _this2 = this;
277
277
  var loggerContext;
278
278
  return _regenerator.default.wrap(function _callee5$(_context5) {
@@ -291,7 +291,7 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
291
291
  resolve(response);
292
292
  } else if (response.statusCode === 202) {
293
293
  _this2.sdkConnector.registerListener('event:ucm.voicemail_download_complete', /*#__PURE__*/function () {
294
- var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4(event) {
294
+ var _ref = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee4(event) {
295
295
  var _responseEvent$data;
296
296
  var responseEvent, voicemailContentUrl, response;
297
297
  return _regenerator.default.wrap(function _callee4$(_context4) {
@@ -346,7 +346,8 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
346
346
  }, {
347
347
  key: "returnUcmPromise",
348
348
  value: (function () {
349
- var _returnUcmPromise = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee6(voicemailContentUrl, mercuryApi) {
349
+ var _returnUcmPromise = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee6(voicemailContentUrl, mercuryApi) {
350
+ var _response$headers2;
350
351
  var loggerContext, response, contentInfo, respHeaders, statusCode, mediaType, mediaContent, responseDetails;
351
352
  return _regenerator.default.wrap(function _callee6$(_context6) {
352
353
  while (1) switch (_context6.prev = _context6.next) {
@@ -368,6 +369,8 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
368
369
  });
369
370
  case 4:
370
371
  response = _context6.sent;
372
+ _Logger.default.log("Response code: ".concat(response.statusCode), loggerContext);
373
+ _Logger.default.log("Response trackingId: ".concat(response === null || response === void 0 ? void 0 : (_response$headers2 = response.headers) === null || _response$headers2 === void 0 ? void 0 : _response$headers2.trackingid), loggerContext);
371
374
  contentInfo = response === null || response === void 0 ? void 0 : response.body;
372
375
  respHeaders = response.headers;
373
376
  statusCode = response.statusCode;
@@ -388,7 +391,7 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
388
391
  responseDetails.message = _constants.FAILURE_MESSAGE;
389
392
  }
390
393
  return _context6.abrupt("return", responseDetails);
391
- case 13:
394
+ case 15:
392
395
  case "end":
393
396
  return _context6.stop();
394
397
  }
@@ -406,8 +409,8 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
406
409
  }, {
407
410
  key: "voicemailMarkAsRead",
408
411
  value: (function () {
409
- var _voicemailMarkAsRead = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee7(messageId) {
410
- var loggerContext, voicemailContentUrl, response, responseDetails, extendedError, errorInfo, errorStatus;
412
+ var _voicemailMarkAsRead = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee7(messageId) {
413
+ var loggerContext, _response$headers3, voicemailContentUrl, response, responseDetails, errorInfo, errorStatus;
411
414
  return _regenerator.default.wrap(function _callee7$(_context7) {
412
415
  while (1) switch (_context7.prev = _context7.next) {
413
416
  case 0:
@@ -431,6 +434,7 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
431
434
  });
432
435
  case 6:
433
436
  response = _context7.sent;
437
+ _Logger.default.log("Response trackingId: ".concat(response === null || response === void 0 ? void 0 : (_response$headers3 = response.headers) === null || _response$headers3 === void 0 ? void 0 : _response$headers3.trackingid), loggerContext);
434
438
  responseDetails = {
435
439
  statusCode: Number(response.statusCode),
436
440
  data: {},
@@ -438,11 +442,10 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
438
442
  };
439
443
  _Logger.default.log('Successfully marked voicemail as read', loggerContext);
440
444
  return _context7.abrupt("return", responseDetails);
441
- case 12:
442
- _context7.prev = 12;
445
+ case 13:
446
+ _context7.prev = 13;
443
447
  _context7.t0 = _context7["catch"](2);
444
- extendedError = new Error("Failed to mark voicemail as read: ".concat(_context7.t0));
445
- _Logger.default.error(extendedError, loggerContext);
448
+ _Logger.default.error("Failed to mark voicemail as read: ".concat((0, _stringify.default)(_context7.t0)), loggerContext);
446
449
  _context7.next = 18;
447
450
  return (0, _Utils.uploadLogs)();
448
451
  case 18:
@@ -453,7 +456,7 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
453
456
  case "end":
454
457
  return _context7.stop();
455
458
  }
456
- }, _callee7, this, [[2, 12]]);
459
+ }, _callee7, this, [[2, 13]]);
457
460
  }));
458
461
  function voicemailMarkAsRead(_x9) {
459
462
  return _voicemailMarkAsRead.apply(this, arguments);
@@ -467,8 +470,8 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
467
470
  }, {
468
471
  key: "voicemailMarkAsUnread",
469
472
  value: (function () {
470
- var _voicemailMarkAsUnread = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee8(messageId) {
471
- var loggerContext, voicemailContentUrl, response, responseDetails, extendedError, errorInfo, errorStatus;
473
+ var _voicemailMarkAsUnread = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee8(messageId) {
474
+ var loggerContext, _response$headers4, voicemailContentUrl, response, responseDetails, errorInfo, errorStatus;
472
475
  return _regenerator.default.wrap(function _callee8$(_context8) {
473
476
  while (1) switch (_context8.prev = _context8.next) {
474
477
  case 0:
@@ -492,6 +495,7 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
492
495
  });
493
496
  case 6:
494
497
  response = _context8.sent;
498
+ _Logger.default.log("Response trackingId: ".concat(response === null || response === void 0 ? void 0 : (_response$headers4 = response.headers) === null || _response$headers4 === void 0 ? void 0 : _response$headers4.trackingid), loggerContext);
495
499
  responseDetails = {
496
500
  statusCode: Number(response.statusCode),
497
501
  data: {},
@@ -499,11 +503,10 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
499
503
  };
500
504
  _Logger.default.log('Successfully marked voicemail as unread', loggerContext);
501
505
  return _context8.abrupt("return", responseDetails);
502
- case 12:
503
- _context8.prev = 12;
506
+ case 13:
507
+ _context8.prev = 13;
504
508
  _context8.t0 = _context8["catch"](2);
505
- extendedError = new Error("Failed to mark voicemail as unread: ".concat(_context8.t0));
506
- _Logger.default.error(extendedError, loggerContext);
509
+ _Logger.default.error("Failed to mark voicemail as unread: ".concat((0, _stringify.default)(_context8.t0)), loggerContext);
507
510
  _context8.next = 18;
508
511
  return (0, _Utils.uploadLogs)();
509
512
  case 18:
@@ -514,9 +517,9 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
514
517
  case "end":
515
518
  return _context8.stop();
516
519
  }
517
- }, _callee8, this, [[2, 12]]);
520
+ }, _callee8, this, [[2, 13]]);
518
521
  }));
519
- function voicemailMarkAsUnread(_x10) {
522
+ function voicemailMarkAsUnread(_x0) {
520
523
  return _voicemailMarkAsUnread.apply(this, arguments);
521
524
  }
522
525
  return voicemailMarkAsUnread;
@@ -528,8 +531,8 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
528
531
  }, {
529
532
  key: "deleteVoicemail",
530
533
  value: (function () {
531
- var _deleteVoicemail = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee9(messageId) {
532
- var loggerContext, voicemailContentUrl, response, responseDetails, extendedError, errorInfo, errorStatus;
534
+ var _deleteVoicemail = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee9(messageId) {
535
+ var loggerContext, _response$headers5, voicemailContentUrl, response, responseDetails, errorInfo, errorStatus;
533
536
  return _regenerator.default.wrap(function _callee9$(_context9) {
534
537
  while (1) switch (_context9.prev = _context9.next) {
535
538
  case 0:
@@ -550,6 +553,7 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
550
553
  });
551
554
  case 6:
552
555
  response = _context9.sent;
556
+ _Logger.default.log("Response trackingId: ".concat(response === null || response === void 0 ? void 0 : (_response$headers5 = response.headers) === null || _response$headers5 === void 0 ? void 0 : _response$headers5.trackingid), loggerContext);
553
557
  responseDetails = {
554
558
  statusCode: Number(response.statusCode),
555
559
  data: {},
@@ -557,11 +561,10 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
557
561
  };
558
562
  _Logger.default.log('Successfully deleted voicemail', loggerContext);
559
563
  return _context9.abrupt("return", responseDetails);
560
- case 12:
561
- _context9.prev = 12;
564
+ case 13:
565
+ _context9.prev = 13;
562
566
  _context9.t0 = _context9["catch"](2);
563
- extendedError = new Error("Failed to delete voicemail: ".concat(_context9.t0));
564
- _Logger.default.error(extendedError, loggerContext);
567
+ _Logger.default.error("Failed to delete voicemail: ".concat((0, _stringify.default)(_context9.t0)), loggerContext);
565
568
  _context9.next = 18;
566
569
  return (0, _Utils.uploadLogs)();
567
570
  case 18:
@@ -572,9 +575,9 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
572
575
  case "end":
573
576
  return _context9.stop();
574
577
  }
575
- }, _callee9, this, [[2, 12]]);
578
+ }, _callee9, this, [[2, 13]]);
576
579
  }));
577
- function deleteVoicemail(_x11) {
580
+ function deleteVoicemail(_x1) {
578
581
  return _deleteVoicemail.apply(this, arguments);
579
582
  }
580
583
  return deleteVoicemail;
@@ -589,19 +592,19 @@ var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function ()
589
592
  }, {
590
593
  key: "getVMTranscript",
591
594
  value: (function () {
592
- var _getVMTranscript = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee10(messageId) {
593
- return _regenerator.default.wrap(function _callee10$(_context10) {
594
- while (1) switch (_context10.prev = _context10.next) {
595
+ var _getVMTranscript = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee0(messageId) {
596
+ return _regenerator.default.wrap(function _callee0$(_context0) {
597
+ while (1) switch (_context0.prev = _context0.next) {
595
598
  case 0:
596
599
  _Logger.default.info("Message Id: ".concat(messageId), {});
597
- return _context10.abrupt("return", _promise.default.resolve(null));
600
+ return _context0.abrupt("return", _promise.default.resolve(null));
598
601
  case 2:
599
602
  case "end":
600
- return _context10.stop();
603
+ return _context0.stop();
601
604
  }
602
- }, _callee10);
605
+ }, _callee0);
603
606
  }));
604
- function getVMTranscript(_x12) {
607
+ function getVMTranscript(_x10) {
605
608
  return _getVMTranscript.apply(this, arguments);
606
609
  }
607
610
  return getVMTranscript;