@webex/calling 3.10.0 → 3.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (221) hide show
  1. package/dist/module/CallHistory/CallHistory.js +20 -11
  2. package/dist/module/CallSettings/UcmBackendConnector.js +21 -8
  3. package/dist/module/CallSettings/WxCallBackendConnector.js +10 -15
  4. package/dist/module/CallingClient/CallingClient.js +83 -123
  5. package/dist/module/CallingClient/calling/call.js +73 -58
  6. package/dist/module/CallingClient/calling/callManager.js +7 -0
  7. package/dist/module/CallingClient/constants.js +3 -0
  8. package/dist/module/CallingClient/registration/register.js +85 -5
  9. package/dist/module/CallingClient/registration/webWorker.js +2 -2
  10. package/dist/module/CallingClient/registration/webWorkerStr.js +2 -2
  11. package/dist/module/Contacts/ContactsClient.js +19 -25
  12. package/dist/module/Events/impl/index.js +1 -1
  13. package/dist/module/Logger/index.js +2 -2
  14. package/dist/module/Voicemail/BroadworksBackendConnector.js +10 -18
  15. package/dist/module/Voicemail/UcmBackendConnector.js +7 -11
  16. package/dist/module/Voicemail/Voicemail.js +42 -68
  17. package/dist/module/Voicemail/WxCallBackendConnector.js +14 -28
  18. package/dist/module/common/Utils.js +31 -5
  19. package/dist/module/common/constants.js +2 -0
  20. package/dist/module/common/testUtil.js +1 -0
  21. package/dist/types/CallHistory/CallHistory.d.ts.map +1 -1
  22. package/dist/types/CallSettings/UcmBackendConnector.d.ts +1 -0
  23. package/dist/types/CallSettings/UcmBackendConnector.d.ts.map +1 -1
  24. package/dist/types/CallSettings/WxCallBackendConnector.d.ts.map +1 -1
  25. package/dist/types/CallingClient/CallingClient.d.ts.map +1 -1
  26. package/dist/types/CallingClient/calling/call.d.ts +4 -0
  27. package/dist/types/CallingClient/calling/call.d.ts.map +1 -1
  28. package/dist/types/CallingClient/calling/callManager.d.ts.map +1 -1
  29. package/dist/types/CallingClient/constants.d.ts +3 -0
  30. package/dist/types/CallingClient/constants.d.ts.map +1 -1
  31. package/dist/types/CallingClient/registration/register.d.ts +4 -0
  32. package/dist/types/CallingClient/registration/register.d.ts.map +1 -1
  33. package/dist/types/CallingClient/registration/types.d.ts +6 -0
  34. package/dist/types/CallingClient/registration/types.d.ts.map +1 -1
  35. package/dist/types/CallingClient/registration/webWorkerStr.d.ts +1 -1
  36. package/dist/types/CallingClient/registration/webWorkerStr.d.ts.map +1 -1
  37. package/dist/types/Contacts/ContactsClient.d.ts +1 -0
  38. package/dist/types/Contacts/ContactsClient.d.ts.map +1 -1
  39. package/dist/types/Logger/index.d.ts +1 -2
  40. package/dist/types/Logger/index.d.ts.map +1 -1
  41. package/dist/types/SDKConnector/types.d.ts +16 -0
  42. package/dist/types/SDKConnector/types.d.ts.map +1 -1
  43. package/dist/types/Voicemail/BroadworksBackendConnector.d.ts.map +1 -1
  44. package/dist/types/Voicemail/UcmBackendConnector.d.ts.map +1 -1
  45. package/dist/types/Voicemail/Voicemail.d.ts.map +1 -1
  46. package/dist/types/Voicemail/WxCallBackendConnector.d.ts.map +1 -1
  47. package/dist/types/common/Utils.d.ts +1 -1
  48. package/dist/types/common/Utils.d.ts.map +1 -1
  49. package/dist/types/common/constants.d.ts +2 -0
  50. package/dist/types/common/constants.d.ts.map +1 -1
  51. package/dist/types/common/testUtil.d.ts +1 -0
  52. package/dist/types/common/testUtil.d.ts.map +1 -1
  53. package/package.json +4 -4
  54. package/dist/CallHistory/CallHistory.js +0 -584
  55. package/dist/CallHistory/CallHistory.js.map +0 -1
  56. package/dist/CallHistory/CallHistory.test.js +0 -813
  57. package/dist/CallHistory/CallHistory.test.js.map +0 -1
  58. package/dist/CallHistory/callHistoryFixtures.js +0 -650
  59. package/dist/CallHistory/callHistoryFixtures.js.map +0 -1
  60. package/dist/CallHistory/constants.js +0 -38
  61. package/dist/CallHistory/constants.js.map +0 -1
  62. package/dist/CallHistory/types.js +0 -7
  63. package/dist/CallHistory/types.js.map +0 -1
  64. package/dist/CallSettings/CallSettings.js +0 -312
  65. package/dist/CallSettings/CallSettings.js.map +0 -1
  66. package/dist/CallSettings/CallSettings.test.js +0 -122
  67. package/dist/CallSettings/CallSettings.test.js.map +0 -1
  68. package/dist/CallSettings/UcmBackendConnector.js +0 -261
  69. package/dist/CallSettings/UcmBackendConnector.js.map +0 -1
  70. package/dist/CallSettings/UcmBackendConnector.test.js +0 -321
  71. package/dist/CallSettings/UcmBackendConnector.test.js.map +0 -1
  72. package/dist/CallSettings/WxCallBackendConnector.js +0 -604
  73. package/dist/CallSettings/WxCallBackendConnector.js.map +0 -1
  74. package/dist/CallSettings/WxCallBackendConnector.test.js +0 -905
  75. package/dist/CallSettings/WxCallBackendConnector.test.js.map +0 -1
  76. package/dist/CallSettings/constants.js +0 -31
  77. package/dist/CallSettings/constants.js.map +0 -1
  78. package/dist/CallSettings/testFixtures.js +0 -68
  79. package/dist/CallSettings/testFixtures.js.map +0 -1
  80. package/dist/CallSettings/types.js +0 -7
  81. package/dist/CallSettings/types.js.map +0 -1
  82. package/dist/CallingClient/CallingClient.js +0 -1071
  83. package/dist/CallingClient/CallingClient.js.map +0 -1
  84. package/dist/CallingClient/CallingClient.test.js +0 -1289
  85. package/dist/CallingClient/CallingClient.test.js.map +0 -1
  86. package/dist/CallingClient/callRecordFixtures.js +0 -101
  87. package/dist/CallingClient/callRecordFixtures.js.map +0 -1
  88. package/dist/CallingClient/calling/CallerId/index.js +0 -276
  89. package/dist/CallingClient/calling/CallerId/index.js.map +0 -1
  90. package/dist/CallingClient/calling/CallerId/index.test.js +0 -275
  91. package/dist/CallingClient/calling/CallerId/index.test.js.map +0 -1
  92. package/dist/CallingClient/calling/CallerId/types.js +0 -7
  93. package/dist/CallingClient/calling/CallerId/types.js.map +0 -1
  94. package/dist/CallingClient/calling/call.js +0 -3444
  95. package/dist/CallingClient/calling/call.js.map +0 -1
  96. package/dist/CallingClient/calling/call.test.js +0 -3260
  97. package/dist/CallingClient/calling/call.test.js.map +0 -1
  98. package/dist/CallingClient/calling/callManager.js +0 -456
  99. package/dist/CallingClient/calling/callManager.js.map +0 -1
  100. package/dist/CallingClient/calling/callManager.test.js +0 -741
  101. package/dist/CallingClient/calling/callManager.test.js.map +0 -1
  102. package/dist/CallingClient/calling/index.js +0 -30
  103. package/dist/CallingClient/calling/index.js.map +0 -1
  104. package/dist/CallingClient/calling/types.js +0 -74
  105. package/dist/CallingClient/calling/types.js.map +0 -1
  106. package/dist/CallingClient/callingClientFixtures.js +0 -143
  107. package/dist/CallingClient/callingClientFixtures.js.map +0 -1
  108. package/dist/CallingClient/constants.js +0 -237
  109. package/dist/CallingClient/constants.js.map +0 -1
  110. package/dist/CallingClient/line/index.js +0 -349
  111. package/dist/CallingClient/line/index.js.map +0 -1
  112. package/dist/CallingClient/line/line.test.js +0 -327
  113. package/dist/CallingClient/line/line.test.js.map +0 -1
  114. package/dist/CallingClient/line/types.js +0 -21
  115. package/dist/CallingClient/line/types.js.map +0 -1
  116. package/dist/CallingClient/registration/index.js +0 -19
  117. package/dist/CallingClient/registration/index.js.map +0 -1
  118. package/dist/CallingClient/registration/register.js +0 -1538
  119. package/dist/CallingClient/registration/register.js.map +0 -1
  120. package/dist/CallingClient/registration/register.test.js +0 -1537
  121. package/dist/CallingClient/registration/register.test.js.map +0 -1
  122. package/dist/CallingClient/registration/registerFixtures.js +0 -36
  123. package/dist/CallingClient/registration/registerFixtures.js.map +0 -1
  124. package/dist/CallingClient/registration/types.js +0 -7
  125. package/dist/CallingClient/registration/types.js.map +0 -1
  126. package/dist/CallingClient/registration/webWorker.js +0 -130
  127. package/dist/CallingClient/registration/webWorker.js.map +0 -1
  128. package/dist/CallingClient/registration/webWorker.test.js +0 -303
  129. package/dist/CallingClient/registration/webWorker.test.js.map +0 -1
  130. package/dist/CallingClient/registration/webWorkerStr.js +0 -15
  131. package/dist/CallingClient/registration/webWorkerStr.js.map +0 -1
  132. package/dist/CallingClient/types.js +0 -7
  133. package/dist/CallingClient/types.js.map +0 -1
  134. package/dist/CallingClient/windowsChromiumIceWarmupUtils.js +0 -142
  135. package/dist/CallingClient/windowsChromiumIceWarmupUtils.js.map +0 -1
  136. package/dist/Contacts/ContactsClient.js +0 -1215
  137. package/dist/Contacts/ContactsClient.js.map +0 -1
  138. package/dist/Contacts/ContactsClient.test.js +0 -1003
  139. package/dist/Contacts/ContactsClient.test.js.map +0 -1
  140. package/dist/Contacts/constants.js +0 -40
  141. package/dist/Contacts/constants.js.map +0 -1
  142. package/dist/Contacts/contactFixtures.js +0 -430
  143. package/dist/Contacts/contactFixtures.js.map +0 -1
  144. package/dist/Contacts/types.js +0 -43
  145. package/dist/Contacts/types.js.map +0 -1
  146. package/dist/Errors/catalog/CallError.js +0 -92
  147. package/dist/Errors/catalog/CallError.js.map +0 -1
  148. package/dist/Errors/catalog/CallingDeviceError.js +0 -86
  149. package/dist/Errors/catalog/CallingDeviceError.js.map +0 -1
  150. package/dist/Errors/catalog/ExtendedError.js +0 -44
  151. package/dist/Errors/catalog/ExtendedError.js.map +0 -1
  152. package/dist/Errors/catalog/LineError.js +0 -88
  153. package/dist/Errors/catalog/LineError.js.map +0 -1
  154. package/dist/Errors/index.js +0 -28
  155. package/dist/Errors/index.js.map +0 -1
  156. package/dist/Errors/types.js +0 -59
  157. package/dist/Errors/types.js.map +0 -1
  158. package/dist/Events/impl/index.js +0 -81
  159. package/dist/Events/impl/index.js.map +0 -1
  160. package/dist/Events/types.js +0 -107
  161. package/dist/Events/types.js.map +0 -1
  162. package/dist/Logger/index.js +0 -228
  163. package/dist/Logger/index.js.map +0 -1
  164. package/dist/Logger/index.test.js +0 -87
  165. package/dist/Logger/index.test.js.map +0 -1
  166. package/dist/Logger/types.js +0 -34
  167. package/dist/Logger/types.js.map +0 -1
  168. package/dist/Metrics/index.js +0 -535
  169. package/dist/Metrics/index.js.map +0 -1
  170. package/dist/Metrics/index.test.js +0 -463
  171. package/dist/Metrics/index.test.js.map +0 -1
  172. package/dist/Metrics/types.js +0 -64
  173. package/dist/Metrics/types.js.map +0 -1
  174. package/dist/SDKConnector/index.js +0 -103
  175. package/dist/SDKConnector/index.js.map +0 -1
  176. package/dist/SDKConnector/index.test.js +0 -9
  177. package/dist/SDKConnector/index.test.js.map +0 -1
  178. package/dist/SDKConnector/types.js +0 -7
  179. package/dist/SDKConnector/types.js.map +0 -1
  180. package/dist/SDKConnector/utils.js +0 -39
  181. package/dist/SDKConnector/utils.js.map +0 -1
  182. package/dist/SDKConnector/utils.test.js +0 -9
  183. package/dist/SDKConnector/utils.test.js.map +0 -1
  184. package/dist/Voicemail/BroadworksBackendConnector.js +0 -707
  185. package/dist/Voicemail/BroadworksBackendConnector.js.map +0 -1
  186. package/dist/Voicemail/BroadworksBackendConnector.test.js +0 -812
  187. package/dist/Voicemail/BroadworksBackendConnector.test.js.map +0 -1
  188. package/dist/Voicemail/UcmBackendConnector.js +0 -632
  189. package/dist/Voicemail/UcmBackendConnector.js.map +0 -1
  190. package/dist/Voicemail/UcmBackendConnector.test.js +0 -738
  191. package/dist/Voicemail/UcmBackendConnector.test.js.map +0 -1
  192. package/dist/Voicemail/Voicemail.js +0 -500
  193. package/dist/Voicemail/Voicemail.js.map +0 -1
  194. package/dist/Voicemail/Voicemail.test.js +0 -391
  195. package/dist/Voicemail/Voicemail.test.js.map +0 -1
  196. package/dist/Voicemail/WxCallBackendConnector.js +0 -671
  197. package/dist/Voicemail/WxCallBackendConnector.js.map +0 -1
  198. package/dist/Voicemail/WxCallBackendConnector.test.js +0 -1199
  199. package/dist/Voicemail/WxCallBackendConnector.test.js.map +0 -1
  200. package/dist/Voicemail/constants.js +0 -61
  201. package/dist/Voicemail/constants.js.map +0 -1
  202. package/dist/Voicemail/types.js +0 -7
  203. package/dist/Voicemail/types.js.map +0 -1
  204. package/dist/Voicemail/voicemailFixture.js +0 -524
  205. package/dist/Voicemail/voicemailFixture.js.map +0 -1
  206. package/dist/api.js +0 -157
  207. package/dist/api.js.map +0 -1
  208. package/dist/common/Utils.js +0 -1451
  209. package/dist/common/Utils.js.map +0 -1
  210. package/dist/common/Utils.test.js +0 -1744
  211. package/dist/common/Utils.test.js.map +0 -1
  212. package/dist/common/constants.js +0 -60
  213. package/dist/common/constants.js.map +0 -1
  214. package/dist/common/index.js +0 -19
  215. package/dist/common/index.js.map +0 -1
  216. package/dist/common/testUtil.js +0 -982
  217. package/dist/common/testUtil.js.map +0 -1
  218. package/dist/common/types.js +0 -75
  219. package/dist/common/types.js.map +0 -1
  220. package/dist/index.js +0 -321
  221. package/dist/index.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"names":["_testUtil","require","_types","_constants","_types2","_WxCallBackendConnector","_CallSettings","_UcmBackendConnector","describe","webex","getTestUtilsWebex","testData","name","callingBehavior","NATIVE_SIP_CALL_TO_UCM","entitlement","valid","NATIVE_WEBEX_TEAMS_CALLING","ENTITLEMENT_BASIC","ENTITLEMENT_STANDARD","ENTITLEMENT_BROADWORKS_CONN","map","stat","_assign","default","toString","it","each","_ref","_asyncToGenerator2","_regenerator","mark","_callee","data","callSettingsClient","wrap","_callee$","_context","prev","next","internal","device","features","models","_values","key","createCallSettingsClient","level","LOGGER","INFO","expect","toBeTruthy","t0","toStrictEqual","CALLING_BACKEND","UCM","toBeInstanceOf","UcmBackendConnector","abrupt","BWRKS","WxCallBackendConnector","WXC","fail","toThrowError","stop","_x","apply","arguments"],"sources":["CallSettings.test.ts"],"sourcesContent":["import {getTestUtilsWebex} from '../common/testUtil';\nimport {LOGGER} from '../Logger/types';\nimport {\n ENTITLEMENT_BASIC,\n ENTITLEMENT_BROADWORKS_CONN,\n ENTITLEMENT_STANDARD,\n NATIVE_SIP_CALL_TO_UCM,\n NATIVE_WEBEX_TEAMS_CALLING,\n} from '../common/constants';\n\nimport {CALLING_BACKEND} from '../common/types';\n\nimport {WxCallBackendConnector} from './WxCallBackendConnector';\nimport {createCallSettingsClient} from './CallSettings';\nimport {UcmBackendConnector} from './UcmBackendConnector';\n\ndescribe('CallSettings Client tests', () => {\n const webex = getTestUtilsWebex();\n\n describe('createCallSettingsClient tests', () => {\n /**\n * TestCase inputs\n * name: TestCase name\n * callingBehavior: Calling profile\n * entitlement: Entitlement\n * valid: expected result for vm client creation with given inputs.\n */\n const testData: {\n name: string;\n callingBehavior: string;\n entitlement: string;\n valid: boolean;\n }[] = [\n {\n name: 'verify valid ucm CallSettings client',\n callingBehavior: NATIVE_SIP_CALL_TO_UCM,\n entitlement: 'none',\n valid: true,\n },\n {\n name: 'verify valid wxc CallSettings client with basic entitlement',\n callingBehavior: NATIVE_WEBEX_TEAMS_CALLING,\n entitlement: ENTITLEMENT_BASIC,\n valid: true,\n },\n {\n name: 'verify valid wxc CallSettings client with standard entitlement',\n callingBehavior: NATIVE_WEBEX_TEAMS_CALLING,\n entitlement: ENTITLEMENT_STANDARD,\n valid: true,\n },\n {\n name: 'verify valid wxc CallSettings client with broadworks entitlement',\n callingBehavior: NATIVE_WEBEX_TEAMS_CALLING,\n entitlement: ENTITLEMENT_BROADWORKS_CONN,\n valid: true,\n },\n {\n name: 'verify invalid callingBehavior',\n callingBehavior: 'INVALID',\n entitlement: ENTITLEMENT_BASIC,\n valid: false,\n },\n {\n name: 'verify invalid entitlement for wxc CallSettings client',\n callingBehavior: NATIVE_WEBEX_TEAMS_CALLING,\n entitlement: 'invalid',\n valid: false,\n },\n ].map((stat) =>\n Object.assign(stat, {\n toString() {\n /* eslint-disable dot-notation */\n return this['name'];\n },\n })\n );\n\n it.each(testData)('%s', async (data) => {\n webex.internal.device.callingBehavior = data.callingBehavior;\n webex.internal.device.features.entitlement.models = [{_values: {key: data.entitlement}}];\n if (data.valid) {\n const callSettingsClient = createCallSettingsClient(webex, {level: LOGGER.INFO});\n\n expect(callSettingsClient).toBeTruthy();\n\n switch (data.callingBehavior) {\n case NATIVE_SIP_CALL_TO_UCM:\n expect(callSettingsClient['callingBackend']).toStrictEqual(CALLING_BACKEND.UCM);\n expect(callSettingsClient['backendConnector']).toBeInstanceOf(UcmBackendConnector);\n break;\n case NATIVE_WEBEX_TEAMS_CALLING:\n if (data.entitlement === ENTITLEMENT_BROADWORKS_CONN) {\n expect(callSettingsClient['callingBackend']).toStrictEqual(CALLING_BACKEND.BWRKS);\n expect(callSettingsClient['backendConnector']).toBeInstanceOf(WxCallBackendConnector);\n } else {\n /* entitlement basic and standard */\n expect(callSettingsClient['callingBackend']).toStrictEqual(CALLING_BACKEND.WXC);\n expect(callSettingsClient['backendConnector']).toBeInstanceOf(WxCallBackendConnector);\n }\n break;\n default:\n fail('Unknown calling backend type.');\n }\n } else {\n expect(() => {\n createCallSettingsClient(webex, {level: LOGGER.INFO});\n }).toThrowError('Calling backend is not identified, exiting....');\n }\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -1,261 +0,0 @@
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.UcmBackendConnector = void 0;
9
- var _regenerator = _interopRequireDefault(require("@babel/runtime-corejs2/regenerator"));
10
- var _promise = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/promise"));
11
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/asyncToGenerator"));
12
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/classCallCheck"));
13
- var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/createClass"));
14
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
15
- var _Logger = _interopRequireDefault(require("../Logger"));
16
- var _SDKConnector = _interopRequireDefault(require("../SDKConnector"));
17
- var _Utils = require("../common/Utils");
18
- var _constants = require("../common/constants");
19
- var _types = require("../common/types");
20
- var _constants2 = require("./constants");
21
- /**
22
- * This Connector class will implement child interface of ICallSettings and
23
- * has methods for the CCUC with UCM backend.
24
- */
25
- var UcmBackendConnector = exports.UcmBackendConnector = /*#__PURE__*/function () {
26
- /**
27
- * @param useProdWebexApis - default value is true
28
- */
29
- function UcmBackendConnector(webex, logger) {
30
- var useProdWebexApis = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
31
- (0, _classCallCheck2.default)(this, UcmBackendConnector);
32
- (0, _defineProperty2.default)(this, "sdkConnector", void 0);
33
- (0, _defineProperty2.default)(this, "webex", void 0);
34
- (0, _defineProperty2.default)(this, "userId", void 0);
35
- (0, _defineProperty2.default)(this, "orgId", void 0);
36
- (0, _defineProperty2.default)(this, "useProdWebexApis", void 0);
37
- this.sdkConnector = _SDKConnector.default;
38
- if (!this.sdkConnector.getWebex()) {
39
- _SDKConnector.default.setWebex(webex);
40
- }
41
- this.webex = this.sdkConnector.getWebex();
42
- _Logger.default.setLogger(logger.level, _constants.UCM_CONNECTOR_FILE);
43
- this.userId = this.webex.internal.device.userId;
44
- this.orgId = this.webex.internal.device.orgId;
45
- this.useProdWebexApis = useProdWebexApis;
46
- }
47
-
48
- /**
49
- * Reads call waiting setting at the backend.
50
- */
51
- (0, _createClass2.default)(UcmBackendConnector, [{
52
- key: "getCallWaitingSetting",
53
- value: function getCallWaitingSetting() {
54
- var loggerContext = {
55
- file: _constants.UCM_CONNECTOR_FILE,
56
- method: _constants2.METHODS.GET_CALL_WAITING_SETTING
57
- };
58
- _Logger.default.info(_constants.METHOD_START_MESSAGE, loggerContext);
59
- return this.getMethodNotSupportedResponse();
60
- }
61
-
62
- /**
63
- * Reads DND setting at the backend.
64
- */
65
- }, {
66
- key: "getDoNotDisturbSetting",
67
- value: function getDoNotDisturbSetting() {
68
- var loggerContext = {
69
- file: _constants.UCM_CONNECTOR_FILE,
70
- method: _constants2.METHODS.GET_DO_NOT_DISTURB_SETTING
71
- };
72
- _Logger.default.info(_constants.METHOD_START_MESSAGE, loggerContext);
73
- return this.getMethodNotSupportedResponse();
74
- }
75
-
76
- /**
77
- * Updates DND setting at the backend.
78
- */
79
- }, {
80
- key: "setDoNotDisturbSetting",
81
- value: function setDoNotDisturbSetting() {
82
- var loggerContext = {
83
- file: _constants.UCM_CONNECTOR_FILE,
84
- method: _constants2.METHODS.SET_DO_NOT_DISTURB_SETTING
85
- };
86
- _Logger.default.info(_constants.METHOD_START_MESSAGE, loggerContext);
87
- return this.getMethodNotSupportedResponse();
88
- }
89
-
90
- /**
91
- * Reads Call Forward setting at the backend.
92
- */
93
- }, {
94
- key: "getCallForwardSetting",
95
- value: function getCallForwardSetting() {
96
- var loggerContext = {
97
- file: _constants.UCM_CONNECTOR_FILE,
98
- method: _constants2.METHODS.GET_CALL_FORWARD_SETTING
99
- };
100
- _Logger.default.info(_constants.METHOD_START_MESSAGE, loggerContext);
101
- return this.getMethodNotSupportedResponse();
102
- }
103
-
104
- /**
105
- * Updates Call Forward setting at the backend.
106
- */
107
- }, {
108
- key: "setCallForwardSetting",
109
- value: function setCallForwardSetting() {
110
- var loggerContext = {
111
- file: _constants.UCM_CONNECTOR_FILE,
112
- method: _constants2.METHODS.SET_CALL_FORWARD_SETTING
113
- };
114
- _Logger.default.info(_constants.METHOD_START_MESSAGE, loggerContext);
115
- return this.getMethodNotSupportedResponse();
116
- }
117
-
118
- /**
119
- * Reads Voicemail setting at the backend.
120
- */
121
- }, {
122
- key: "getVoicemailSetting",
123
- value: function getVoicemailSetting() {
124
- var loggerContext = {
125
- file: _constants.UCM_CONNECTOR_FILE,
126
- method: _constants2.METHODS.GET_VOICEMAIL_SETTING
127
- };
128
- _Logger.default.info(_constants.METHOD_START_MESSAGE, loggerContext);
129
- return this.getMethodNotSupportedResponse();
130
- }
131
-
132
- /**
133
- * Updates Voicemail setting at the backend.
134
- */
135
- }, {
136
- key: "setVoicemailSetting",
137
- value: function setVoicemailSetting() {
138
- var loggerContext = {
139
- file: _constants.UCM_CONNECTOR_FILE,
140
- method: _constants2.METHODS.SET_VOICEMAIL_SETTING
141
- };
142
- _Logger.default.info(_constants.METHOD_START_MESSAGE, loggerContext);
143
- return this.getMethodNotSupportedResponse();
144
- }
145
-
146
- /**
147
- * Returns a default error response for unsupported methods.
148
- */
149
- }, {
150
- key: "getMethodNotSupportedResponse",
151
- value: function getMethodNotSupportedResponse() {
152
- var loggerContext = {
153
- file: _constants.UCM_CONNECTOR_FILE,
154
- method: _constants2.METHODS.GET_METHOD_NOT_SUPPORTED_RESPONSE
155
- };
156
- _Logger.default.info(_constants.METHOD_START_MESSAGE, loggerContext);
157
- var response = (0, _Utils.serviceErrorCodeHandler)({
158
- statusCode: 501
159
- }, loggerContext);
160
- return _promise.default.resolve(response);
161
- }
162
-
163
- /**
164
- * Reads the Call Forwarding Always settings at the backend.
165
- * This will also check if CFA is set to Voicemail.
166
- * If CFA is set to destination, that will take precedence.
167
- * For UCM backend, relevant fields in the response are `enabled` & `destination`.
168
- *
169
- * @param directoryNumber - Directory number for which CFA needs to returned.
170
- */
171
- }, {
172
- key: "getCallForwardAlwaysSetting",
173
- value: (function () {
174
- var _getCallForwardAlwaysSetting = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee(directoryNumber) {
175
- var loggerContext, webexApisUrl, resp, _ref, callForwarding, cfa, _response, _response2, response, errorInfo, extendedError, errorStatus;
176
- return _regenerator.default.wrap(function _callee$(_context) {
177
- while (1) switch (_context.prev = _context.next) {
178
- case 0:
179
- loggerContext = {
180
- file: _constants.UCM_CONNECTOR_FILE,
181
- method: _constants2.METHODS.GET_CALL_FORWARD_ALWAYS_SETTING
182
- };
183
- _Logger.default.info(directoryNumber ? "".concat(_constants.METHOD_START_MESSAGE, " with ").concat(directoryNumber) : _constants.METHOD_START_MESSAGE, loggerContext);
184
- webexApisUrl = this.useProdWebexApis ? _constants.WEBEX_API_CONFIG_PROD_URL : _constants.WEBEX_API_CONFIG_INT_URL;
185
- _context.prev = 3;
186
- if (!directoryNumber) {
187
- _context.next = 17;
188
- break;
189
- }
190
- _context.next = 7;
191
- return this.webex.request({
192
- uri: "".concat(webexApisUrl, "/").concat(_constants2.PEOPLE_ENDPOINT, "/").concat(this.userId, "/").concat(_constants2.CF_ENDPOINT.toLowerCase(), "?").concat(_constants2.ORG_ENDPOINT, "=").concat(this.orgId),
193
- method: _types.HTTP_METHODS.GET
194
- });
195
- case 7:
196
- resp = _context.sent;
197
- _Logger.default.log("Response code: ".concat(resp.statusCode), loggerContext);
198
- _ref = resp.body, callForwarding = _ref.callForwarding;
199
- cfa = callForwarding.always.find(function (item) {
200
- return item.dn.endsWith(directoryNumber) || item.e164Number.endsWith(directoryNumber);
201
- });
202
- if (!cfa) {
203
- _context.next = 15;
204
- break;
205
- }
206
- _response = {
207
- statusCode: Number(resp[_constants.STATUS_CODE]),
208
- message: _constants.SUCCESS_MESSAGE,
209
- data: {
210
- callSetting: {
211
- enabled: cfa.destinationVoicemailEnabled || !!cfa.destination,
212
- destination: cfa.destinationVoicemailEnabled ? _constants.VOICEMAIL : cfa.destination
213
- }
214
- }
215
- };
216
- _Logger.default.log("Successfully retrieved call forward always setting for directory number: ".concat(directoryNumber), loggerContext);
217
- return _context.abrupt("return", _response);
218
- case 15:
219
- _response2 = {
220
- statusCode: 404,
221
- message: _constants.FAILURE_MESSAGE,
222
- data: {
223
- error: 'Directory Number is not assigned to the user'
224
- }
225
- };
226
- return _context.abrupt("return", _response2);
227
- case 17:
228
- response = {
229
- statusCode: 400,
230
- message: _constants.FAILURE_MESSAGE,
231
- data: {
232
- error: 'Directory Number is mandatory for UCM backend'
233
- }
234
- };
235
- return _context.abrupt("return", response);
236
- case 21:
237
- _context.prev = 21;
238
- _context.t0 = _context["catch"](3);
239
- errorInfo = _context.t0;
240
- extendedError = new Error("Failed to get call forward always setting: ".concat(_context.t0));
241
- _Logger.default.error(extendedError, loggerContext);
242
- _context.next = 28;
243
- return (0, _Utils.uploadLogs)();
244
- case 28:
245
- errorStatus = (0, _Utils.serviceErrorCodeHandler)(errorInfo, loggerContext);
246
- return _context.abrupt("return", errorStatus);
247
- case 30:
248
- case "end":
249
- return _context.stop();
250
- }
251
- }, _callee, this, [[3, 21]]);
252
- }));
253
- function getCallForwardAlwaysSetting(_x) {
254
- return _getCallForwardAlwaysSetting.apply(this, arguments);
255
- }
256
- return getCallForwardAlwaysSetting;
257
- }())
258
- }]);
259
- return UcmBackendConnector;
260
- }();
261
- //# sourceMappingURL=UcmBackendConnector.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_Logger","_interopRequireDefault","require","_SDKConnector","_Utils","_constants","_types","_constants2","UcmBackendConnector","exports","webex","logger","useProdWebexApis","arguments","length","undefined","_classCallCheck2","default","_defineProperty2","sdkConnector","SDKConnector","getWebex","setWebex","log","setLogger","level","UCM_CONNECTOR_FILE","userId","internal","device","orgId","_createClass2","key","value","getCallWaitingSetting","loggerContext","file","method","METHODS","GET_CALL_WAITING_SETTING","info","METHOD_START_MESSAGE","getMethodNotSupportedResponse","getDoNotDisturbSetting","GET_DO_NOT_DISTURB_SETTING","setDoNotDisturbSetting","SET_DO_NOT_DISTURB_SETTING","getCallForwardSetting","GET_CALL_FORWARD_SETTING","setCallForwardSetting","SET_CALL_FORWARD_SETTING","getVoicemailSetting","GET_VOICEMAIL_SETTING","setVoicemailSetting","SET_VOICEMAIL_SETTING","GET_METHOD_NOT_SUPPORTED_RESPONSE","response","serviceErrorCodeHandler","statusCode","_promise","resolve","_getCallForwardAlwaysSetting","_asyncToGenerator2","_regenerator","mark","_callee","directoryNumber","webexApisUrl","resp","_ref","callForwarding","cfa","_response","_response2","errorInfo","extendedError","errorStatus","wrap","_callee$","_context","prev","next","GET_CALL_FORWARD_ALWAYS_SETTING","concat","WEBEX_API_CONFIG_PROD_URL","WEBEX_API_CONFIG_INT_URL","request","uri","PEOPLE_ENDPOINT","CF_ENDPOINT","toLowerCase","ORG_ENDPOINT","HTTP_METHODS","GET","sent","body","always","find","item","dn","endsWith","e164Number","Number","STATUS_CODE","message","SUCCESS_MESSAGE","data","callSetting","enabled","destinationVoicemailEnabled","destination","VOICEMAIL","abrupt","FAILURE_MESSAGE","error","t0","Error","uploadLogs","stop","getCallForwardAlwaysSetting","_x","apply"],"sources":["UcmBackendConnector.ts"],"sourcesContent":["import ExtendedError from 'Errors/catalog/ExtendedError';\nimport log from '../Logger';\nimport SDKConnector from '../SDKConnector';\nimport {ISDKConnector, WebexSDK} from '../SDKConnector/types';\nimport {serviceErrorCodeHandler, uploadLogs} from '../common/Utils';\nimport {\n FAILURE_MESSAGE,\n METHOD_START_MESSAGE,\n STATUS_CODE,\n SUCCESS_MESSAGE,\n UCM_CONNECTOR_FILE,\n VOICEMAIL,\n WEBEX_API_CONFIG_INT_URL,\n WEBEX_API_CONFIG_PROD_URL,\n} from '../common/constants';\nimport {HTTP_METHODS, WebexRequestPayload} from '../common/types';\nimport {CF_ENDPOINT, METHODS, ORG_ENDPOINT, PEOPLE_ENDPOINT} from './constants';\nimport {\n CallForwardAlwaysSetting,\n CallForwardingSettingsUCM,\n CallSettingResponse,\n IUcmBackendConnector,\n LoggerInterface,\n} from './types';\n\n/**\n * This Connector class will implement child interface of ICallSettings and\n * has methods for the CCUC with UCM backend.\n */\nexport class UcmBackendConnector implements IUcmBackendConnector {\n private sdkConnector: ISDKConnector;\n\n private webex: WebexSDK;\n\n private userId: string;\n\n private orgId: string;\n\n private useProdWebexApis: boolean;\n\n /**\n * @param useProdWebexApis - default value is true\n */\n constructor(webex: WebexSDK, logger: LoggerInterface, useProdWebexApis = true) {\n this.sdkConnector = SDKConnector;\n\n if (!this.sdkConnector.getWebex()) {\n SDKConnector.setWebex(webex);\n }\n\n this.webex = this.sdkConnector.getWebex();\n log.setLogger(logger.level, UCM_CONNECTOR_FILE);\n this.userId = this.webex.internal.device.userId;\n this.orgId = this.webex.internal.device.orgId;\n this.useProdWebexApis = useProdWebexApis;\n }\n\n /**\n * Reads call waiting setting at the backend.\n */\n public getCallWaitingSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.GET_CALL_WAITING_SETTING,\n };\n\n log.info(METHOD_START_MESSAGE, loggerContext);\n\n return this.getMethodNotSupportedResponse();\n }\n\n /**\n * Reads DND setting at the backend.\n */\n public getDoNotDisturbSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.GET_DO_NOT_DISTURB_SETTING,\n };\n\n log.info(METHOD_START_MESSAGE, loggerContext);\n\n return this.getMethodNotSupportedResponse();\n }\n\n /**\n * Updates DND setting at the backend.\n */\n public setDoNotDisturbSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.SET_DO_NOT_DISTURB_SETTING,\n };\n\n log.info(METHOD_START_MESSAGE, loggerContext);\n\n return this.getMethodNotSupportedResponse();\n }\n\n /**\n * Reads Call Forward setting at the backend.\n */\n public getCallForwardSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.GET_CALL_FORWARD_SETTING,\n };\n\n log.info(METHOD_START_MESSAGE, loggerContext);\n\n return this.getMethodNotSupportedResponse();\n }\n\n /**\n * Updates Call Forward setting at the backend.\n */\n public setCallForwardSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.SET_CALL_FORWARD_SETTING,\n };\n\n log.info(METHOD_START_MESSAGE, loggerContext);\n\n return this.getMethodNotSupportedResponse();\n }\n\n /**\n * Reads Voicemail setting at the backend.\n */\n public getVoicemailSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.GET_VOICEMAIL_SETTING,\n };\n\n log.info(METHOD_START_MESSAGE, loggerContext);\n\n return this.getMethodNotSupportedResponse();\n }\n\n /**\n * Updates Voicemail setting at the backend.\n */\n public setVoicemailSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.SET_VOICEMAIL_SETTING,\n };\n\n log.info(METHOD_START_MESSAGE, loggerContext);\n\n return this.getMethodNotSupportedResponse();\n }\n\n /**\n * Returns a default error response for unsupported methods.\n */\n private getMethodNotSupportedResponse(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.GET_METHOD_NOT_SUPPORTED_RESPONSE,\n };\n\n log.info(METHOD_START_MESSAGE, loggerContext);\n\n const response = serviceErrorCodeHandler({statusCode: 501}, loggerContext);\n\n return Promise.resolve(response);\n }\n\n /**\n * Reads the Call Forwarding Always settings at the backend.\n * This will also check if CFA is set to Voicemail.\n * If CFA is set to destination, that will take precedence.\n * For UCM backend, relevant fields in the response are `enabled` & `destination`.\n *\n * @param directoryNumber - Directory number for which CFA needs to returned.\n */\n public async getCallForwardAlwaysSetting(directoryNumber?: string): Promise<CallSettingResponse> {\n const loggerContext = {\n file: UCM_CONNECTOR_FILE,\n method: METHODS.GET_CALL_FORWARD_ALWAYS_SETTING,\n };\n\n log.info(\n directoryNumber ? `${METHOD_START_MESSAGE} with ${directoryNumber}` : METHOD_START_MESSAGE,\n loggerContext\n );\n\n const webexApisUrl = this.useProdWebexApis\n ? WEBEX_API_CONFIG_PROD_URL\n : WEBEX_API_CONFIG_INT_URL;\n\n try {\n if (directoryNumber) {\n const resp = <WebexRequestPayload>await this.webex.request({\n uri: `${webexApisUrl}/${PEOPLE_ENDPOINT}/${\n this.userId\n }/${CF_ENDPOINT.toLowerCase()}?${ORG_ENDPOINT}=${this.orgId}`,\n method: HTTP_METHODS.GET,\n });\n\n log.log(`Response code: ${resp.statusCode}`, loggerContext);\n\n const {callForwarding} = resp.body as CallForwardingSettingsUCM;\n const cfa = callForwarding.always.find(\n (item) => item.dn.endsWith(directoryNumber) || item.e164Number.endsWith(directoryNumber)\n );\n\n if (cfa) {\n const response = {\n statusCode: Number(resp[STATUS_CODE]),\n message: SUCCESS_MESSAGE,\n data: {\n callSetting: {\n enabled: cfa.destinationVoicemailEnabled || !!cfa.destination,\n destination: cfa.destinationVoicemailEnabled ? VOICEMAIL : cfa.destination,\n } as CallForwardAlwaysSetting,\n },\n };\n\n log.log(\n `Successfully retrieved call forward always setting for directory number: ${directoryNumber}`,\n loggerContext\n );\n\n return response;\n }\n const response = {\n statusCode: 404,\n message: FAILURE_MESSAGE,\n data: {\n error: 'Directory Number is not assigned to the user',\n },\n };\n\n return response;\n }\n const response = {\n statusCode: 400,\n message: FAILURE_MESSAGE,\n data: {\n error: 'Directory Number is mandatory for UCM backend',\n },\n };\n\n return response;\n } catch (err: unknown) {\n const errorInfo = err as WebexRequestPayload;\n const extendedError = new Error(\n `Failed to get call forward always setting: ${err}`\n ) as ExtendedError;\n log.error(extendedError, loggerContext);\n await uploadLogs();\n const errorStatus = serviceErrorCodeHandler(errorInfo, loggerContext);\n\n return errorStatus;\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,321 +0,0 @@
1
- "use strict";
2
-
3
- var _typeof = require("@babel/runtime-corejs2/helpers/typeof");
4
- var _WeakMap = require("@babel/runtime-corejs2/core-js/weak-map");
5
- var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
6
- var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs2/core-js/object/get-own-property-descriptor");
7
- var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
8
- var _regenerator = _interopRequireDefault(require("@babel/runtime-corejs2/regenerator"));
9
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/asyncToGenerator"));
10
- var _types = require("../Logger/types");
11
- var _Logger = _interopRequireDefault(require("../Logger"));
12
- var utils = _interopRequireWildcard(require("../common/Utils"));
13
- var _constants = require("../common/constants");
14
- var _testUtil = require("../common/testUtil");
15
- var _types2 = require("../common/types");
16
- var _UcmBackendConnector = require("./UcmBackendConnector");
17
- var _constants2 = require("./constants");
18
- function _interopRequireWildcard(e, t) { if ("function" == typeof _WeakMap) var r = new _WeakMap(), n = new _WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = _Object$defineProperty) && _Object$getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
19
- jest.spyOn(utils, 'uploadLogs').mockResolvedValue(undefined);
20
- describe('Call Settings Client Tests for UcmBackendConnector', function () {
21
- var webex = (0, _testUtil.getTestUtilsWebex)();
22
- var userId = '8a67806f-fc4d-446b-a131-31e71ea5b0e9';
23
- var orgId = '1704d30d-a131-4bc7-9449-948487643793';
24
- describe('Call Forward Always test', function () {
25
- var callSettingsClient;
26
- var callForwardPayload = {
27
- callForwarding: {
28
- always: [{
29
- dn: '8001',
30
- destination: '8004',
31
- destinationVoicemailEnabled: false,
32
- e164Number: '+14922999903'
33
- }, {
34
- dn: '8002',
35
- destinationVoicemailEnabled: true,
36
- e164Number: ''
37
- }, {
38
- dn: '8003',
39
- destinationVoicemailEnabled: false,
40
- e164Number: ''
41
- }, {
42
- dn: '8000',
43
- destination: '8007',
44
- destinationVoicemailEnabled: false,
45
- e164Number: '8006'
46
- }]
47
- }
48
- };
49
- var callForwardingUri = "".concat(_constants.WEBEX_API_CONFIG_INT_URL, "/").concat(_constants2.PEOPLE_ENDPOINT, "/").concat(userId, "/").concat(_constants2.CF_ENDPOINT.toLowerCase(), "?").concat(_constants2.ORG_ENDPOINT, "=").concat(orgId);
50
- beforeAll(function () {
51
- callSettingsClient = new _UcmBackendConnector.UcmBackendConnector(webex, {
52
- level: _types.LOGGER.INFO
53
- }, false);
54
- });
55
- beforeEach(function () {
56
- var responsePayload = {
57
- statusCode: 200,
58
- body: callForwardPayload
59
- };
60
- webex.request.mockResolvedValue(responsePayload);
61
-
62
- // Setup log spies
63
- jest.spyOn(_Logger.default, 'log').mockImplementation(function () {});
64
- jest.spyOn(_Logger.default, 'info').mockImplementation(function () {});
65
- jest.spyOn(_Logger.default, 'warn').mockImplementation(function () {});
66
- jest.spyOn(_Logger.default, 'error').mockImplementation(function () {});
67
- });
68
- it('Success: Get Call Forward Always setting when set to destination', /*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee() {
69
- var response, callForwardSetting;
70
- return _regenerator.default.wrap(function _callee$(_context) {
71
- while (1) switch (_context.prev = _context.next) {
72
- case 0:
73
- _context.next = 2;
74
- return callSettingsClient.getCallForwardAlwaysSetting('8001');
75
- case 2:
76
- response = _context.sent;
77
- callForwardSetting = response.data.callSetting;
78
- expect(response.statusCode).toEqual(200);
79
- expect(response.message).toEqual(_constants.SUCCESS_MESSAGE);
80
- expect(callForwardSetting.enabled).toEqual(true);
81
- expect(callForwardSetting.destination).toEqual('8004');
82
- expect(webex.request).toBeCalledOnceWith({
83
- method: _types2.HTTP_METHODS.GET,
84
- uri: callForwardingUri
85
- });
86
- expect(_Logger.default.info).toHaveBeenCalledWith('invoking with 8001', {
87
- file: _constants.UCM_CONNECTOR_FILE,
88
- method: 'getCallForwardAlwaysSetting'
89
- });
90
- expect(_Logger.default.log).toHaveBeenCalledWith('Successfully retrieved call forward always setting for directory number: 8001', {
91
- file: _constants.UCM_CONNECTOR_FILE,
92
- method: 'getCallForwardAlwaysSetting'
93
- });
94
- expect(_Logger.default.error).not.toHaveBeenCalled();
95
- case 12:
96
- case "end":
97
- return _context.stop();
98
- }
99
- }, _callee);
100
- })));
101
- it('Success: Get Call Forward Always setting when set to voicemail', /*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee2() {
102
- var response, callForwardSetting;
103
- return _regenerator.default.wrap(function _callee2$(_context2) {
104
- while (1) switch (_context2.prev = _context2.next) {
105
- case 0:
106
- _context2.next = 2;
107
- return callSettingsClient.getCallForwardAlwaysSetting('8002');
108
- case 2:
109
- response = _context2.sent;
110
- callForwardSetting = response.data.callSetting;
111
- expect(response.statusCode).toEqual(200);
112
- expect(response.message).toEqual(_constants.SUCCESS_MESSAGE);
113
- expect(callForwardSetting.enabled).toEqual(true);
114
- expect(callForwardSetting.destination).toEqual('VOICEMAIL');
115
- expect(webex.request).toBeCalledOnceWith({
116
- method: _types2.HTTP_METHODS.GET,
117
- uri: callForwardingUri
118
- });
119
- expect(_Logger.default.info).toHaveBeenCalledWith('invoking with 8002', {
120
- file: _constants.UCM_CONNECTOR_FILE,
121
- method: 'getCallForwardAlwaysSetting'
122
- });
123
- expect(_Logger.default.log).toHaveBeenCalledWith('Successfully retrieved call forward always setting for directory number: 8002', {
124
- file: _constants.UCM_CONNECTOR_FILE,
125
- method: 'getCallForwardAlwaysSetting'
126
- });
127
- expect(_Logger.default.error).not.toHaveBeenCalled();
128
- case 12:
129
- case "end":
130
- return _context2.stop();
131
- }
132
- }, _callee2);
133
- })));
134
- it('Success: Get Call Forward Always setting when not set', /*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee3() {
135
- var response, callForwardSetting;
136
- return _regenerator.default.wrap(function _callee3$(_context3) {
137
- while (1) switch (_context3.prev = _context3.next) {
138
- case 0:
139
- _context3.next = 2;
140
- return callSettingsClient.getCallForwardAlwaysSetting('8003');
141
- case 2:
142
- response = _context3.sent;
143
- callForwardSetting = response.data.callSetting;
144
- expect(response.statusCode).toEqual(200);
145
- expect(response.message).toEqual(_constants.SUCCESS_MESSAGE);
146
- expect(callForwardSetting.enabled).toEqual(false);
147
- expect(callForwardSetting.destination).toBeFalsy();
148
- expect(webex.request).toBeCalledOnceWith({
149
- method: _types2.HTTP_METHODS.GET,
150
- uri: callForwardingUri
151
- });
152
- expect(_Logger.default.info).toHaveBeenCalledWith('invoking with 8003', {
153
- file: _constants.UCM_CONNECTOR_FILE,
154
- method: 'getCallForwardAlwaysSetting'
155
- });
156
- expect(_Logger.default.log).toHaveBeenCalledWith('Successfully retrieved call forward always setting for directory number: 8003', {
157
- file: _constants.UCM_CONNECTOR_FILE,
158
- method: 'getCallForwardAlwaysSetting'
159
- });
160
- expect(_Logger.default.error).not.toHaveBeenCalled();
161
- case 12:
162
- case "end":
163
- return _context3.stop();
164
- }
165
- }, _callee3);
166
- })));
167
- it('Success: Get Call Forward Always setting when directory num matching with e16number and set to destination', /*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee4() {
168
- var response, callForwardSetting;
169
- return _regenerator.default.wrap(function _callee4$(_context4) {
170
- while (1) switch (_context4.prev = _context4.next) {
171
- case 0:
172
- _context4.next = 2;
173
- return callSettingsClient.getCallForwardAlwaysSetting('8006');
174
- case 2:
175
- response = _context4.sent;
176
- callForwardSetting = response.data.callSetting;
177
- expect(response.statusCode).toEqual(200);
178
- expect(response.message).toEqual(_constants.SUCCESS_MESSAGE);
179
- expect(callForwardSetting.enabled).toEqual(true);
180
- expect(callForwardSetting.destination).toEqual('8007');
181
- expect(webex.request).toBeCalledOnceWith({
182
- method: _types2.HTTP_METHODS.GET,
183
- uri: callForwardingUri
184
- });
185
- expect(_Logger.default.info).toHaveBeenCalledWith('invoking with 8006', {
186
- file: _constants.UCM_CONNECTOR_FILE,
187
- method: 'getCallForwardAlwaysSetting'
188
- });
189
- expect(_Logger.default.log).toHaveBeenCalledWith('Successfully retrieved call forward always setting for directory number: 8006', {
190
- file: _constants.UCM_CONNECTOR_FILE,
191
- method: 'getCallForwardAlwaysSetting'
192
- });
193
- expect(_Logger.default.error).not.toHaveBeenCalled();
194
- case 12:
195
- case "end":
196
- return _context4.stop();
197
- }
198
- }, _callee4);
199
- })));
200
- it('Failure: Get Call Forward Always setting fails', /*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee5() {
201
- var responsePayload, serviceErrorCodeHandlerSpy, response;
202
- return _regenerator.default.wrap(function _callee5$(_context5) {
203
- while (1) switch (_context5.prev = _context5.next) {
204
- case 0:
205
- responsePayload = {
206
- statusCode: 503
207
- };
208
- webex.request.mockClear();
209
- webex.request.mockRejectedValue(responsePayload);
210
- serviceErrorCodeHandlerSpy = jest.spyOn(utils, 'serviceErrorCodeHandler');
211
- _context5.next = 6;
212
- return callSettingsClient.getCallForwardAlwaysSetting('8002');
213
- case 6:
214
- response = _context5.sent;
215
- expect(response.statusCode).toEqual(503);
216
- expect(response.message).toEqual(_constants.FAILURE_MESSAGE);
217
- expect(response.data.error).toEqual('Unable to establish a connection with the server');
218
- expect(webex.request).toBeCalledOnceWith({
219
- method: _types2.HTTP_METHODS.GET,
220
- uri: callForwardingUri
221
- });
222
- expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith(responsePayload, {
223
- file: _constants.UCM_CONNECTOR_FILE,
224
- method: callSettingsClient.getCallForwardAlwaysSetting.name
225
- });
226
- expect(_Logger.default.info).toHaveBeenCalledWith('invoking with 8002', {
227
- file: _constants.UCM_CONNECTOR_FILE,
228
- method: 'getCallForwardAlwaysSetting'
229
- });
230
- expect(_Logger.default.error).toHaveBeenCalledWith(new Error('Failed to get call forward always setting: [object Object]'), {
231
- file: _constants.UCM_CONNECTOR_FILE,
232
- method: 'getCallForwardAlwaysSetting'
233
- });
234
- expect(_Logger.default.log).not.toHaveBeenCalled();
235
- case 15:
236
- case "end":
237
- return _context5.stop();
238
- }
239
- }, _callee5);
240
- })));
241
- it('Failure: Get Call Forward Always setting fails - wrong directoryNumber', /*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee6() {
242
- var response;
243
- return _regenerator.default.wrap(function _callee6$(_context6) {
244
- while (1) switch (_context6.prev = _context6.next) {
245
- case 0:
246
- _context6.next = 2;
247
- return callSettingsClient.getCallForwardAlwaysSetting('8005');
248
- case 2:
249
- response = _context6.sent;
250
- expect(response.statusCode).toEqual(404);
251
- expect(response.message).toEqual(_constants.FAILURE_MESSAGE);
252
- expect(response.data.error).toEqual('Directory Number is not assigned to the user');
253
- expect(webex.request).toBeCalledOnceWith({
254
- method: _types2.HTTP_METHODS.GET,
255
- uri: callForwardingUri
256
- });
257
- expect(_Logger.default.info).toHaveBeenCalledWith('invoking with 8005', {
258
- file: _constants.UCM_CONNECTOR_FILE,
259
- method: 'getCallForwardAlwaysSetting'
260
- });
261
- expect(_Logger.default.error).not.toHaveBeenCalled();
262
- case 9:
263
- case "end":
264
- return _context6.stop();
265
- }
266
- }, _callee6);
267
- })));
268
- it('Failure: Get Call Forward Always setting fails when no directoryNumberProvided', /*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee7() {
269
- var response;
270
- return _regenerator.default.wrap(function _callee7$(_context7) {
271
- while (1) switch (_context7.prev = _context7.next) {
272
- case 0:
273
- _context7.next = 2;
274
- return callSettingsClient.getCallForwardAlwaysSetting();
275
- case 2:
276
- response = _context7.sent;
277
- expect(response.statusCode).toEqual(400);
278
- expect(response.message).toEqual(_constants.FAILURE_MESSAGE);
279
- expect(response.data.error).toEqual('Directory Number is mandatory for UCM backend');
280
- expect(webex.request).not.toBeCalled();
281
- expect(_Logger.default.info).toHaveBeenCalledWith('invoking', {
282
- file: _constants.UCM_CONNECTOR_FILE,
283
- method: 'getCallForwardAlwaysSetting'
284
- });
285
- expect(_Logger.default.error).not.toHaveBeenCalled();
286
- case 9:
287
- case "end":
288
- return _context7.stop();
289
- }
290
- }, _callee7);
291
- })));
292
- describe('Unsupported methods return failure', function () {
293
- var unsupportedMethods = ['getCallWaitingSetting', 'getDoNotDisturbSetting', 'setDoNotDisturbSetting', 'getCallForwardSetting', 'setCallForwardSetting', 'getVoicemailSetting', 'setVoicemailSetting'];
294
- it.each(unsupportedMethods)('%s', /*#__PURE__*/function () {
295
- var _ref8 = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee8(methodName) {
296
- var response;
297
- return _regenerator.default.wrap(function _callee8$(_context8) {
298
- while (1) switch (_context8.prev = _context8.next) {
299
- case 0:
300
- _context8.next = 2;
301
- return callSettingsClient[methodName]();
302
- case 2:
303
- response = _context8.sent;
304
- expect(response.statusCode).toEqual(501);
305
- expect(response.message).toEqual(_constants.FAILURE_MESSAGE);
306
- expect(response.data.error).toEqual('Method is not implemented at the backend');
307
- expect(webex.request).not.toBeCalled();
308
- case 7:
309
- case "end":
310
- return _context8.stop();
311
- }
312
- }, _callee8);
313
- }));
314
- return function (_x) {
315
- return _ref8.apply(this, arguments);
316
- };
317
- }());
318
- });
319
- });
320
- });
321
- //# sourceMappingURL=UcmBackendConnector.test.js.map