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

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 (283) hide show
  1. package/CHANGELOG.md +1403 -0
  2. package/README.md +74 -74
  3. package/dist/module/CallHistory/CallHistory.js +81 -81
  4. package/dist/module/CallHistory/callHistoryFixtures.js +307 -307
  5. package/dist/module/CallHistory/constants.js +9 -9
  6. package/dist/module/CallHistory/types.js +1 -1
  7. package/dist/module/CallSettings/CallSettings.js +65 -65
  8. package/dist/module/CallSettings/UcmBackendConnector.js +100 -100
  9. package/dist/module/CallSettings/WxCallBackendConnector.js +287 -287
  10. package/dist/module/CallSettings/constants.js +11 -11
  11. package/dist/module/CallSettings/testFixtures.js +62 -62
  12. package/dist/module/CallSettings/types.js +1 -1
  13. package/dist/module/CallingClient/CallingClient.js +248 -248
  14. package/dist/module/CallingClient/callRecordFixtures.js +93 -93
  15. package/dist/module/CallingClient/calling/CallerId/index.js +169 -169
  16. package/dist/module/CallingClient/calling/CallerId/types.js +1 -1
  17. package/dist/module/CallingClient/calling/call.js +1658 -1658
  18. package/dist/module/CallingClient/calling/callManager.js +284 -284
  19. package/dist/module/CallingClient/calling/index.js +2 -2
  20. package/dist/module/CallingClient/calling/types.js +53 -53
  21. package/dist/module/CallingClient/callingClientFixtures.js +38 -38
  22. package/dist/module/CallingClient/constants.js +122 -122
  23. package/dist/module/CallingClient/line/index.js +158 -158
  24. package/dist/module/CallingClient/line/types.js +15 -15
  25. package/dist/module/CallingClient/registration/index.js +1 -1
  26. package/dist/module/CallingClient/registration/register.js +507 -507
  27. package/dist/module/CallingClient/registration/registerFixtures.js +28 -28
  28. package/dist/module/CallingClient/registration/types.js +1 -1
  29. package/dist/module/CallingClient/types.js +1 -1
  30. package/dist/module/Contacts/ContactsClient.js +484 -484
  31. package/dist/module/Contacts/constants.js +20 -20
  32. package/dist/module/Contacts/contactFixtures.js +284 -284
  33. package/dist/module/Contacts/types.js +10 -10
  34. package/dist/module/Errors/catalog/CallError.js +26 -26
  35. package/dist/module/Errors/catalog/CallingDeviceError.js +18 -18
  36. package/dist/module/Errors/catalog/ExtendedError.js +10 -10
  37. package/dist/module/Errors/catalog/LineError.js +24 -24
  38. package/dist/module/Errors/index.js +2 -2
  39. package/dist/module/Errors/types.js +48 -48
  40. package/dist/module/Events/impl/index.js +19 -19
  41. package/dist/module/Events/types.js +83 -83
  42. package/dist/module/Logger/index.js +114 -114
  43. package/dist/module/Logger/types.js +25 -25
  44. package/dist/module/Metrics/index.js +232 -232
  45. package/dist/module/Metrics/types.js +37 -37
  46. package/dist/module/SDKConnector/index.js +39 -39
  47. package/dist/module/SDKConnector/types.js +1 -1
  48. package/dist/module/SDKConnector/utils.js +12 -12
  49. package/dist/module/Voicemail/BroadworksBackendConnector.js +291 -291
  50. package/dist/module/Voicemail/UcmBackendConnector.js +279 -279
  51. package/dist/module/Voicemail/Voicemail.js +110 -110
  52. package/dist/module/Voicemail/WxCallBackendConnector.js +279 -279
  53. package/dist/module/Voicemail/constants.js +29 -29
  54. package/dist/module/Voicemail/types.js +1 -1
  55. package/dist/module/Voicemail/voicemailFixture.js +510 -510
  56. package/dist/module/api.js +6 -6
  57. package/dist/module/common/Utils.js +802 -802
  58. package/dist/module/common/constants.js +41 -41
  59. package/dist/module/common/index.js +1 -1
  60. package/dist/module/common/testUtil.js +938 -938
  61. package/dist/module/common/types.js +57 -57
  62. package/dist/module/index.js +8 -8
  63. package/dist/types/CallHistory/CallHistory.d.ts +17 -17
  64. package/dist/types/CallHistory/callHistoryFixtures.d.ts +94 -94
  65. package/dist/types/CallHistory/constants.d.ts +9 -9
  66. package/dist/types/CallHistory/types.d.ts +18 -18
  67. package/dist/types/CallSettings/CallSettings.d.ts +19 -19
  68. package/dist/types/CallSettings/UcmBackendConnector.d.ts +19 -19
  69. package/dist/types/CallSettings/WxCallBackendConnector.d.ts +21 -21
  70. package/dist/types/CallSettings/constants.d.ts +11 -11
  71. package/dist/types/CallSettings/testFixtures.d.ts +15 -15
  72. package/dist/types/CallSettings/types.d.ts +107 -107
  73. package/dist/types/CallingClient/CallingClient.d.ts +35 -35
  74. package/dist/types/CallingClient/callRecordFixtures.d.ts +3 -3
  75. package/dist/types/CallingClient/calling/CallerId/index.d.ts +17 -17
  76. package/dist/types/CallingClient/calling/CallerId/types.d.ts +41 -41
  77. package/dist/types/CallingClient/calling/call.d.ts +96 -96
  78. package/dist/types/CallingClient/calling/callManager.d.ts +25 -25
  79. package/dist/types/CallingClient/calling/index.d.ts +2 -2
  80. package/dist/types/CallingClient/calling/types.d.ts +206 -206
  81. package/dist/types/CallingClient/callingClientFixtures.d.ts +18 -18
  82. package/dist/types/CallingClient/constants.d.ts +122 -122
  83. package/dist/types/CallingClient/line/index.d.ts +43 -43
  84. package/dist/types/CallingClient/line/types.d.ts +55 -55
  85. package/dist/types/CallingClient/registration/index.d.ts +1 -1
  86. package/dist/types/CallingClient/registration/register.d.ts +64 -64
  87. package/dist/types/CallingClient/registration/registerFixtures.d.ts +28 -28
  88. package/dist/types/CallingClient/registration/types.d.ts +20 -20
  89. package/dist/types/CallingClient/types.d.ts +29 -29
  90. package/dist/types/Contacts/ContactsClient.d.ts +26 -26
  91. package/dist/types/Contacts/constants.d.ts +19 -19
  92. package/dist/types/Contacts/contactFixtures.d.ts +280 -280
  93. package/dist/types/Contacts/types.d.ts +72 -72
  94. package/dist/types/Errors/catalog/CallError.d.ts +11 -11
  95. package/dist/types/Errors/catalog/CallingDeviceError.d.ts +10 -10
  96. package/dist/types/Errors/catalog/ExtendedError.d.ts +6 -6
  97. package/dist/types/Errors/catalog/LineError.d.ts +10 -10
  98. package/dist/types/Errors/index.d.ts +2 -2
  99. package/dist/types/Errors/types.d.ts +60 -60
  100. package/dist/types/Events/impl/index.d.ts +8 -8
  101. package/dist/types/Events/types.d.ts +288 -288
  102. package/dist/types/Logger/index.d.ts +12 -12
  103. package/dist/types/Logger/types.d.ts +25 -25
  104. package/dist/types/Metrics/index.d.ts +5 -5
  105. package/dist/types/Metrics/types.d.ts +42 -42
  106. package/dist/types/SDKConnector/index.d.ts +12 -12
  107. package/dist/types/SDKConnector/types.d.ts +128 -128
  108. package/dist/types/SDKConnector/utils.d.ts +5 -5
  109. package/dist/types/Voicemail/BroadworksBackendConnector.d.ts +27 -27
  110. package/dist/types/Voicemail/UcmBackendConnector.d.ts +34 -34
  111. package/dist/types/Voicemail/Voicemail.d.ts +27 -27
  112. package/dist/types/Voicemail/WxCallBackendConnector.d.ts +23 -23
  113. package/dist/types/Voicemail/constants.d.ts +29 -29
  114. package/dist/types/Voicemail/types.d.ts +133 -133
  115. package/dist/types/Voicemail/voicemailFixture.d.ts +417 -417
  116. package/dist/types/api.d.ts +16 -16
  117. package/dist/types/common/Utils.d.ts +34 -34
  118. package/dist/types/common/constants.d.ts +41 -41
  119. package/dist/types/common/index.d.ts +1 -1
  120. package/dist/types/common/testUtil.d.ts +3611 -3611
  121. package/dist/types/common/types.d.ts +191 -191
  122. package/dist/types/index.d.ts +8 -8
  123. package/package.json +4 -4
  124. package/dist/CallHistory/CallHistory.js +0 -203
  125. package/dist/CallHistory/CallHistory.js.map +0 -1
  126. package/dist/CallHistory/CallHistory.test.js +0 -133
  127. package/dist/CallHistory/CallHistory.test.js.map +0 -1
  128. package/dist/CallHistory/callHistoryFixtures.js +0 -310
  129. package/dist/CallHistory/callHistoryFixtures.js.map +0 -1
  130. package/dist/CallHistory/constants.js +0 -26
  131. package/dist/CallHistory/constants.js.map +0 -1
  132. package/dist/CallHistory/types.js +0 -7
  133. package/dist/CallHistory/types.js.map +0 -1
  134. package/dist/CallSettings/CallSettings.js +0 -276
  135. package/dist/CallSettings/CallSettings.js.map +0 -1
  136. package/dist/CallSettings/CallSettings.test.js +0 -122
  137. package/dist/CallSettings/CallSettings.test.js.map +0 -1
  138. package/dist/CallSettings/UcmBackendConnector.js +0 -217
  139. package/dist/CallSettings/UcmBackendConnector.js.map +0 -1
  140. package/dist/CallSettings/UcmBackendConnector.test.js +0 -227
  141. package/dist/CallSettings/UcmBackendConnector.test.js.map +0 -1
  142. package/dist/CallSettings/WxCallBackendConnector.js +0 -541
  143. package/dist/CallSettings/WxCallBackendConnector.js.map +0 -1
  144. package/dist/CallSettings/WxCallBackendConnector.test.js +0 -802
  145. package/dist/CallSettings/WxCallBackendConnector.test.js.map +0 -1
  146. package/dist/CallSettings/constants.js +0 -30
  147. package/dist/CallSettings/constants.js.map +0 -1
  148. package/dist/CallSettings/testFixtures.js +0 -72
  149. package/dist/CallSettings/testFixtures.js.map +0 -1
  150. package/dist/CallSettings/types.js +0 -7
  151. package/dist/CallSettings/types.js.map +0 -1
  152. package/dist/CallingClient/CallingClient.js +0 -572
  153. package/dist/CallingClient/CallingClient.js.map +0 -1
  154. package/dist/CallingClient/CallingClient.test.js +0 -931
  155. package/dist/CallingClient/CallingClient.test.js.map +0 -1
  156. package/dist/CallingClient/callRecordFixtures.js +0 -103
  157. package/dist/CallingClient/callRecordFixtures.js.map +0 -1
  158. package/dist/CallingClient/calling/CallerId/index.js +0 -287
  159. package/dist/CallingClient/calling/CallerId/index.js.map +0 -1
  160. package/dist/CallingClient/calling/CallerId/index.test.js +0 -274
  161. package/dist/CallingClient/calling/CallerId/index.test.js.map +0 -1
  162. package/dist/CallingClient/calling/CallerId/types.js +0 -7
  163. package/dist/CallingClient/calling/CallerId/types.js.map +0 -1
  164. package/dist/CallingClient/calling/call.js +0 -2995
  165. package/dist/CallingClient/calling/call.js.map +0 -1
  166. package/dist/CallingClient/calling/call.test.js +0 -2614
  167. package/dist/CallingClient/calling/call.test.js.map +0 -1
  168. package/dist/CallingClient/calling/callManager.js +0 -443
  169. package/dist/CallingClient/calling/callManager.js.map +0 -1
  170. package/dist/CallingClient/calling/callManager.test.js +0 -683
  171. package/dist/CallingClient/calling/callManager.test.js.map +0 -1
  172. package/dist/CallingClient/calling/index.js +0 -30
  173. package/dist/CallingClient/calling/index.js.map +0 -1
  174. package/dist/CallingClient/calling/types.js +0 -71
  175. package/dist/CallingClient/calling/types.js.map +0 -1
  176. package/dist/CallingClient/callingClientFixtures.js +0 -53
  177. package/dist/CallingClient/callingClientFixtures.js.map +0 -1
  178. package/dist/CallingClient/constants.js +0 -226
  179. package/dist/CallingClient/constants.js.map +0 -1
  180. package/dist/CallingClient/line/index.js +0 -312
  181. package/dist/CallingClient/line/index.js.map +0 -1
  182. package/dist/CallingClient/line/line.test.js +0 -270
  183. package/dist/CallingClient/line/line.test.js.map +0 -1
  184. package/dist/CallingClient/line/types.js +0 -25
  185. package/dist/CallingClient/line/types.js.map +0 -1
  186. package/dist/CallingClient/registration/index.js +0 -19
  187. package/dist/CallingClient/registration/index.js.map +0 -1
  188. package/dist/CallingClient/registration/register.js +0 -1295
  189. package/dist/CallingClient/registration/register.js.map +0 -1
  190. package/dist/CallingClient/registration/register.test.js +0 -838
  191. package/dist/CallingClient/registration/register.test.js.map +0 -1
  192. package/dist/CallingClient/registration/registerFixtures.js +0 -41
  193. package/dist/CallingClient/registration/registerFixtures.js.map +0 -1
  194. package/dist/CallingClient/registration/types.js +0 -7
  195. package/dist/CallingClient/registration/types.js.map +0 -1
  196. package/dist/CallingClient/types.js +0 -7
  197. package/dist/CallingClient/types.js.map +0 -1
  198. package/dist/Contacts/ContactsClient.js +0 -1139
  199. package/dist/Contacts/ContactsClient.js.map +0 -1
  200. package/dist/Contacts/ContactsClient.test.js +0 -725
  201. package/dist/Contacts/ContactsClient.test.js.map +0 -1
  202. package/dist/Contacts/constants.js +0 -36
  203. package/dist/Contacts/constants.js.map +0 -1
  204. package/dist/Contacts/contactFixtures.js +0 -340
  205. package/dist/Contacts/contactFixtures.js.map +0 -1
  206. package/dist/Contacts/types.js +0 -20
  207. package/dist/Contacts/types.js.map +0 -1
  208. package/dist/Errors/catalog/CallError.js +0 -94
  209. package/dist/Errors/catalog/CallError.js.map +0 -1
  210. package/dist/Errors/catalog/CallingDeviceError.js +0 -88
  211. package/dist/Errors/catalog/CallingDeviceError.js.map +0 -1
  212. package/dist/Errors/catalog/ExtendedError.js +0 -45
  213. package/dist/Errors/catalog/ExtendedError.js.map +0 -1
  214. package/dist/Errors/catalog/LineError.js +0 -90
  215. package/dist/Errors/catalog/LineError.js.map +0 -1
  216. package/dist/Errors/index.js +0 -21
  217. package/dist/Errors/index.js.map +0 -1
  218. package/dist/Errors/types.js +0 -62
  219. package/dist/Errors/types.js.map +0 -1
  220. package/dist/Events/impl/index.js +0 -82
  221. package/dist/Events/impl/index.js.map +0 -1
  222. package/dist/Events/types.js +0 -111
  223. package/dist/Events/types.js.map +0 -1
  224. package/dist/Logger/index.js +0 -221
  225. package/dist/Logger/index.js.map +0 -1
  226. package/dist/Logger/index.test.js +0 -62
  227. package/dist/Logger/index.test.js.map +0 -1
  228. package/dist/Logger/types.js +0 -37
  229. package/dist/Logger/types.js.map +0 -1
  230. package/dist/Metrics/index.js +0 -329
  231. package/dist/Metrics/index.js.map +0 -1
  232. package/dist/Metrics/index.test.js +0 -291
  233. package/dist/Metrics/index.test.js.map +0 -1
  234. package/dist/Metrics/types.js +0 -50
  235. package/dist/Metrics/types.js.map +0 -1
  236. package/dist/SDKConnector/index.js +0 -105
  237. package/dist/SDKConnector/index.js.map +0 -1
  238. package/dist/SDKConnector/index.test.js +0 -9
  239. package/dist/SDKConnector/index.test.js.map +0 -1
  240. package/dist/SDKConnector/types.js +0 -7
  241. package/dist/SDKConnector/types.js.map +0 -1
  242. package/dist/SDKConnector/utils.js +0 -40
  243. package/dist/SDKConnector/utils.js.map +0 -1
  244. package/dist/SDKConnector/utils.test.js +0 -9
  245. package/dist/SDKConnector/utils.test.js.map +0 -1
  246. package/dist/Voicemail/BroadworksBackendConnector.js +0 -632
  247. package/dist/Voicemail/BroadworksBackendConnector.js.map +0 -1
  248. package/dist/Voicemail/BroadworksBackendConnector.test.js +0 -733
  249. package/dist/Voicemail/BroadworksBackendConnector.test.js.map +0 -1
  250. package/dist/Voicemail/UcmBackendConnector.js +0 -566
  251. package/dist/Voicemail/UcmBackendConnector.js.map +0 -1
  252. package/dist/Voicemail/UcmBackendConnector.test.js +0 -628
  253. package/dist/Voicemail/UcmBackendConnector.test.js.map +0 -1
  254. package/dist/Voicemail/Voicemail.js +0 -378
  255. package/dist/Voicemail/Voicemail.js.map +0 -1
  256. package/dist/Voicemail/Voicemail.test.js +0 -226
  257. package/dist/Voicemail/Voicemail.test.js.map +0 -1
  258. package/dist/Voicemail/WxCallBackendConnector.js +0 -540
  259. package/dist/Voicemail/WxCallBackendConnector.js.map +0 -1
  260. package/dist/Voicemail/WxCallBackendConnector.test.js +0 -942
  261. package/dist/Voicemail/WxCallBackendConnector.test.js.map +0 -1
  262. package/dist/Voicemail/constants.js +0 -66
  263. package/dist/Voicemail/constants.js.map +0 -1
  264. package/dist/Voicemail/types.js +0 -7
  265. package/dist/Voicemail/types.js.map +0 -1
  266. package/dist/Voicemail/voicemailFixture.js +0 -559
  267. package/dist/Voicemail/voicemailFixture.js.map +0 -1
  268. package/dist/api.js +0 -134
  269. package/dist/api.js.map +0 -1
  270. package/dist/common/Utils.js +0 -1264
  271. package/dist/common/Utils.js.map +0 -1
  272. package/dist/common/Utils.test.js +0 -1227
  273. package/dist/common/Utils.test.js.map +0 -1
  274. package/dist/common/constants.js +0 -90
  275. package/dist/common/constants.js.map +0 -1
  276. package/dist/common/index.js +0 -19
  277. package/dist/common/index.js.map +0 -1
  278. package/dist/common/testUtil.js +0 -968
  279. package/dist/common/testUtil.js.map +0 -1
  280. package/dist/common/types.js +0 -75
  281. package/dist/common/types.js.map +0 -1
  282. package/dist/index.js +0 -63
  283. package/dist/index.js.map +0 -1
@@ -1,541 +0,0 @@
1
- "use strict";
2
-
3
- var _Object$keys = require("@babel/runtime-corejs2/core-js/object/keys");
4
- var _Object$getOwnPropertySymbols = require("@babel/runtime-corejs2/core-js/object/get-own-property-symbols");
5
- var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs2/core-js/object/get-own-property-descriptor");
6
- var _Object$getOwnPropertyDescriptors = require("@babel/runtime-corejs2/core-js/object/get-own-property-descriptors");
7
- var _Object$defineProperties = require("@babel/runtime-corejs2/core-js/object/define-properties");
8
- var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
9
- var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
10
- _Object$defineProperty(exports, "__esModule", {
11
- value: true
12
- });
13
- exports.WxCallBackendConnector = void 0;
14
- var _regenerator = _interopRequireDefault(require("@babel/runtime-corejs2/regenerator"));
15
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/asyncToGenerator"));
16
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/classCallCheck"));
17
- var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/createClass"));
18
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
19
- var _SDKConnector = _interopRequireDefault(require("../SDKConnector"));
20
- var _Logger = _interopRequireDefault(require("../Logger"));
21
- var _types = require("../common/types");
22
- var _constants = require("../common/constants");
23
- var _constants2 = require("./constants");
24
- var _Utils = require("../common/Utils");
25
- function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
26
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
27
- /**
28
- * This Connector class will implement child interface of ICallSettings and
29
- * has methods for the Webex Calling backend.
30
- */
31
- var WxCallBackendConnector = /*#__PURE__*/function () {
32
- function WxCallBackendConnector(webex, logger) {
33
- (0, _classCallCheck2.default)(this, WxCallBackendConnector);
34
- (0, _defineProperty2.default)(this, "sdkConnector", void 0);
35
- (0, _defineProperty2.default)(this, "webex", void 0);
36
- (0, _defineProperty2.default)(this, "userId", void 0);
37
- (0, _defineProperty2.default)(this, "personId", void 0);
38
- (0, _defineProperty2.default)(this, "orgId", void 0);
39
- (0, _defineProperty2.default)(this, "xsiEndpoint", void 0);
40
- (0, _defineProperty2.default)(this, "hydraEndpoint", void 0);
41
- (0, _defineProperty2.default)(this, "VOICEMAIL", 'VOICEMAIL');
42
- this.sdkConnector = _SDKConnector.default;
43
- if (!this.sdkConnector.getWebex()) {
44
- _SDKConnector.default.setWebex(webex);
45
- }
46
- this.webex = this.sdkConnector.getWebex();
47
- /* eslint no-underscore-dangle: 0 */
48
- this.hydraEndpoint = this.webex.internal.services._serviceUrls.hydra;
49
- _Logger.default.setLogger(logger.level, _constants.WEBEX_CALLING_CONNECTOR_FILE);
50
- this.userId = this.webex.internal.device.userId;
51
- this.personId = (0, _Utils.inferIdFromUuid)(this.webex.internal.device.userId, _types.DecodeType.PEOPLE);
52
- this.orgId = (0, _Utils.inferIdFromUuid)(this.webex.internal.device.orgId, _types.DecodeType.ORGANIZATION);
53
- }
54
-
55
- /**
56
- * Reads call waiting setting at the backend.
57
- */
58
- (0, _createClass2.default)(WxCallBackendConnector, [{
59
- key: "getCallWaitingSetting",
60
- value: function () {
61
- var _getCallWaitingSetting = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
62
- var loggerContext, callWaitingUrl, response, xmlData, parser, xmlDOM, callWaitingDetails, status, toggleSetting, responseDetails, errorInfo, errorStatus;
63
- return _regenerator.default.wrap(function _callee$(_context) {
64
- while (1) switch (_context.prev = _context.next) {
65
- case 0:
66
- loggerContext = {
67
- file: _constants2.CALL_SETTINGS_FILE,
68
- method: 'getCallWaitingSetting'
69
- };
70
- _context.prev = 1;
71
- if (this.xsiEndpoint) {
72
- _context.next = 7;
73
- break;
74
- }
75
- _context.next = 5;
76
- return (0, _Utils.getXsiActionEndpoint)(this.webex, loggerContext, _types.CALLING_BACKEND.WXC);
77
- case 5:
78
- this.xsiEndpoint = _context.sent;
79
- _Logger.default.info("xsiEndpoint: ".concat(this.xsiEndpoint), loggerContext);
80
- case 7:
81
- callWaitingUrl = "".concat(this.xsiEndpoint, "/").concat(_constants2.XSI_VERSION, "/").concat(_constants2.USER_ENDPOINT, "/").concat(this.userId, "/").concat(_constants.SERVICES_ENDPOINT, "/").concat(_constants2.CALL_WAITING_ENDPOINT);
82
- _context.t0 = fetch;
83
- _context.t1 = "".concat(callWaitingUrl);
84
- _context.t2 = _types.HTTP_METHODS.GET;
85
- _context.next = 13;
86
- return this.webex.credentials.getUserToken();
87
- case 13:
88
- _context.t3 = _context.sent;
89
- _context.t4 = {
90
- Authorization: _context.t3
91
- };
92
- _context.t5 = {
93
- method: _context.t2,
94
- headers: _context.t4
95
- };
96
- _context.next = 18;
97
- return (0, _context.t0)(_context.t1, _context.t5);
98
- case 18:
99
- response = _context.sent;
100
- if (response.ok) {
101
- _context.next = 21;
102
- break;
103
- }
104
- throw new Error("".concat(response.status));
105
- case 21:
106
- _context.next = 23;
107
- return response.text();
108
- case 23:
109
- xmlData = _context.sent;
110
- parser = new DOMParser();
111
- xmlDOM = parser.parseFromString(xmlData, _constants.XML_TYPE);
112
- callWaitingDetails = xmlDOM.getElementsByTagName('active');
113
- status = callWaitingDetails[0].childNodes[0].textContent;
114
- toggleSetting = {
115
- enabled: status === 'true'
116
- };
117
- responseDetails = {
118
- statusCode: 200,
119
- data: {
120
- callSetting: toggleSetting
121
- },
122
- message: _constants.SUCCESS_MESSAGE
123
- };
124
- return _context.abrupt("return", responseDetails);
125
- case 33:
126
- _context.prev = 33;
127
- _context.t6 = _context["catch"](1);
128
- errorInfo = {
129
- statusCode: _context.t6 instanceof Error ? Number(_context.t6.message) : ''
130
- };
131
- errorStatus = (0, _Utils.serviceErrorCodeHandler)(errorInfo, loggerContext);
132
- return _context.abrupt("return", errorStatus);
133
- case 38:
134
- case "end":
135
- return _context.stop();
136
- }
137
- }, _callee, this, [[1, 33]]);
138
- }));
139
- function getCallWaitingSetting() {
140
- return _getCallWaitingSetting.apply(this, arguments);
141
- }
142
- return getCallWaitingSetting;
143
- }()
144
- /**
145
- * Reads DND setting at the backend.
146
- */
147
- }, {
148
- key: "getDoNotDisturbSetting",
149
- value: function () {
150
- var _getDoNotDisturbSetting = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
151
- var loggerContext, resp, dndSettingResponse, responseDetails, errorInfo, errorStatus;
152
- return _regenerator.default.wrap(function _callee2$(_context2) {
153
- while (1) switch (_context2.prev = _context2.next) {
154
- case 0:
155
- loggerContext = {
156
- file: _constants2.CALL_SETTINGS_FILE,
157
- method: 'getDoNotDisturbSetting'
158
- };
159
- _context2.prev = 1;
160
- _context2.next = 4;
161
- return this.webex.request({
162
- uri: "".concat(this.hydraEndpoint, "/").concat(_constants2.PEOPLE_ENDPOINT, "/").concat(this.personId, "/").concat(_constants2.DND_ENDPOINT, "?").concat(_constants2.ORG_ENDPOINT, "=").concat(this.orgId),
163
- method: _types.HTTP_METHODS.GET
164
- });
165
- case 4:
166
- resp = _context2.sent;
167
- dndSettingResponse = resp.body;
168
- responseDetails = {
169
- statusCode: Number(resp[_constants.STATUS_CODE]),
170
- data: {
171
- callSetting: dndSettingResponse
172
- },
173
- message: _constants.SUCCESS_MESSAGE
174
- };
175
- return _context2.abrupt("return", responseDetails);
176
- case 10:
177
- _context2.prev = 10;
178
- _context2.t0 = _context2["catch"](1);
179
- errorInfo = _context2.t0;
180
- errorStatus = (0, _Utils.serviceErrorCodeHandler)(errorInfo, loggerContext);
181
- return _context2.abrupt("return", errorStatus);
182
- case 15:
183
- case "end":
184
- return _context2.stop();
185
- }
186
- }, _callee2, this, [[1, 10]]);
187
- }));
188
- function getDoNotDisturbSetting() {
189
- return _getDoNotDisturbSetting.apply(this, arguments);
190
- }
191
- return getDoNotDisturbSetting;
192
- }()
193
- /**
194
- * Updates DND setting at the backend.
195
- */
196
- }, {
197
- key: "setDoNotDisturbSetting",
198
- value: function () {
199
- var _setDoNotDisturbSetting = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(enabled) {
200
- var loggerContext, dndRequestBody, resp, responseDetails, errorInfo, errorStatus;
201
- return _regenerator.default.wrap(function _callee3$(_context3) {
202
- while (1) switch (_context3.prev = _context3.next) {
203
- case 0:
204
- loggerContext = {
205
- file: _constants2.CALL_SETTINGS_FILE,
206
- method: 'setDoNotDisturbSetting'
207
- };
208
- _context3.prev = 1;
209
- dndRequestBody = {
210
- enabled: enabled,
211
- ringSplashEnabled: false
212
- };
213
- _context3.next = 5;
214
- return this.webex.request({
215
- uri: "".concat(this.hydraEndpoint, "/").concat(_constants2.PEOPLE_ENDPOINT, "/").concat(this.personId, "/").concat(_constants2.DND_ENDPOINT, "?").concat(_constants2.ORG_ENDPOINT, "=").concat(this.orgId),
216
- method: _types.HTTP_METHODS.PUT,
217
- body: dndRequestBody
218
- });
219
- case 5:
220
- resp = _context3.sent;
221
- responseDetails = {
222
- statusCode: Number(resp[_constants.STATUS_CODE]),
223
- data: {
224
- callSetting: dndRequestBody
225
- },
226
- message: _constants.SUCCESS_MESSAGE
227
- };
228
- return _context3.abrupt("return", responseDetails);
229
- case 10:
230
- _context3.prev = 10;
231
- _context3.t0 = _context3["catch"](1);
232
- errorInfo = _context3.t0;
233
- errorStatus = (0, _Utils.serviceErrorCodeHandler)(errorInfo, loggerContext);
234
- return _context3.abrupt("return", errorStatus);
235
- case 15:
236
- case "end":
237
- return _context3.stop();
238
- }
239
- }, _callee3, this, [[1, 10]]);
240
- }));
241
- function setDoNotDisturbSetting(_x) {
242
- return _setDoNotDisturbSetting.apply(this, arguments);
243
- }
244
- return setDoNotDisturbSetting;
245
- }()
246
- /**
247
- * Reads Call Forward setting at the backend.
248
- */
249
- }, {
250
- key: "getCallForwardSetting",
251
- value: function () {
252
- var _getCallForwardSetting = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4() {
253
- var loggerContext, resp, cfResponse, responseDetails, errorInfo, errorStatus;
254
- return _regenerator.default.wrap(function _callee4$(_context4) {
255
- while (1) switch (_context4.prev = _context4.next) {
256
- case 0:
257
- loggerContext = {
258
- file: _constants2.CALL_SETTINGS_FILE,
259
- method: 'getCallForwardingSetting'
260
- };
261
- _context4.prev = 1;
262
- _context4.next = 4;
263
- return this.webex.request({
264
- uri: "".concat(this.hydraEndpoint, "/").concat(_constants2.PEOPLE_ENDPOINT, "/").concat(this.personId, "/").concat(_constants2.CF_ENDPOINT, "?").concat(_constants2.ORG_ENDPOINT, "=").concat(this.orgId),
265
- method: _types.HTTP_METHODS.GET
266
- });
267
- case 4:
268
- resp = _context4.sent;
269
- cfResponse = resp.body;
270
- responseDetails = {
271
- statusCode: Number(resp[_constants.STATUS_CODE]),
272
- data: {
273
- callSetting: cfResponse
274
- },
275
- message: _constants.SUCCESS_MESSAGE
276
- };
277
- return _context4.abrupt("return", responseDetails);
278
- case 10:
279
- _context4.prev = 10;
280
- _context4.t0 = _context4["catch"](1);
281
- errorInfo = _context4.t0;
282
- errorStatus = (0, _Utils.serviceErrorCodeHandler)(errorInfo, loggerContext);
283
- return _context4.abrupt("return", errorStatus);
284
- case 15:
285
- case "end":
286
- return _context4.stop();
287
- }
288
- }, _callee4, this, [[1, 10]]);
289
- }));
290
- function getCallForwardSetting() {
291
- return _getCallForwardSetting.apply(this, arguments);
292
- }
293
- return getCallForwardSetting;
294
- }()
295
- /**
296
- * Updates Call Forward setting at the backend.
297
- */
298
- }, {
299
- key: "setCallForwardSetting",
300
- value: function () {
301
- var _setCallForwardSetting = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5(callForwardingRequest) {
302
- var loggerContext, resp, responseDetails, errorInfo, errorStatus;
303
- return _regenerator.default.wrap(function _callee5$(_context5) {
304
- while (1) switch (_context5.prev = _context5.next) {
305
- case 0:
306
- loggerContext = {
307
- file: _constants2.CALL_SETTINGS_FILE,
308
- method: 'setCallForwardingSetting'
309
- };
310
- _context5.prev = 1;
311
- _context5.next = 4;
312
- return this.webex.request({
313
- uri: "".concat(this.hydraEndpoint, "/").concat(_constants2.PEOPLE_ENDPOINT, "/").concat(this.personId, "/").concat(_constants2.CF_ENDPOINT, "?").concat(_constants2.ORG_ENDPOINT, "=").concat(this.orgId),
314
- method: _types.HTTP_METHODS.PUT,
315
- body: callForwardingRequest
316
- });
317
- case 4:
318
- resp = _context5.sent;
319
- responseDetails = {
320
- statusCode: Number(resp[_constants.STATUS_CODE]),
321
- data: {
322
- callSetting: callForwardingRequest
323
- },
324
- message: _constants.SUCCESS_MESSAGE
325
- };
326
- return _context5.abrupt("return", responseDetails);
327
- case 9:
328
- _context5.prev = 9;
329
- _context5.t0 = _context5["catch"](1);
330
- errorInfo = _context5.t0;
331
- errorStatus = (0, _Utils.serviceErrorCodeHandler)(errorInfo, loggerContext);
332
- return _context5.abrupt("return", errorStatus);
333
- case 14:
334
- case "end":
335
- return _context5.stop();
336
- }
337
- }, _callee5, this, [[1, 9]]);
338
- }));
339
- function setCallForwardSetting(_x2) {
340
- return _setCallForwardSetting.apply(this, arguments);
341
- }
342
- return setCallForwardSetting;
343
- }()
344
- /**
345
- * Reads Voicemail setting at the backend.
346
- */
347
- }, {
348
- key: "getVoicemailSetting",
349
- value: function () {
350
- var _getVoicemailSetting = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee6() {
351
- var loggerContext, resp, vmResponse, responseDetails, errorInfo, errorStatus;
352
- return _regenerator.default.wrap(function _callee6$(_context6) {
353
- while (1) switch (_context6.prev = _context6.next) {
354
- case 0:
355
- loggerContext = {
356
- file: _constants2.CALL_SETTINGS_FILE,
357
- method: 'getVoicemailSetting'
358
- };
359
- _context6.prev = 1;
360
- _context6.next = 4;
361
- return this.webex.request({
362
- uri: "".concat(this.hydraEndpoint, "/").concat(_constants2.PEOPLE_ENDPOINT, "/").concat(this.personId, "/").concat(_constants2.VM_ENDPOINT, "?").concat(_constants2.ORG_ENDPOINT, "=").concat(this.orgId),
363
- method: _types.HTTP_METHODS.GET
364
- });
365
- case 4:
366
- resp = _context6.sent;
367
- vmResponse = resp.body;
368
- responseDetails = {
369
- statusCode: Number(resp[_constants.STATUS_CODE]),
370
- data: {
371
- callSetting: vmResponse
372
- },
373
- message: _constants.SUCCESS_MESSAGE
374
- };
375
- return _context6.abrupt("return", responseDetails);
376
- case 10:
377
- _context6.prev = 10;
378
- _context6.t0 = _context6["catch"](1);
379
- errorInfo = _context6.t0;
380
- errorStatus = (0, _Utils.serviceErrorCodeHandler)(errorInfo, loggerContext);
381
- return _context6.abrupt("return", errorStatus);
382
- case 15:
383
- case "end":
384
- return _context6.stop();
385
- }
386
- }, _callee6, this, [[1, 10]]);
387
- }));
388
- function getVoicemailSetting() {
389
- return _getVoicemailSetting.apply(this, arguments);
390
- }
391
- return getVoicemailSetting;
392
- }()
393
- /**
394
- * Updates Voicemail setting at the backend.
395
- */
396
- }, {
397
- key: "setVoicemailSetting",
398
- value: function () {
399
- var _setVoicemailSetting = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee7(voicemailRequest) {
400
- var loggerContext, resp, responseDetails, errorInfo, errorStatus;
401
- return _regenerator.default.wrap(function _callee7$(_context7) {
402
- while (1) switch (_context7.prev = _context7.next) {
403
- case 0:
404
- loggerContext = {
405
- file: _constants2.CALL_SETTINGS_FILE,
406
- method: 'setVoicemailSetting'
407
- };
408
- _context7.prev = 1;
409
- _context7.next = 4;
410
- return this.webex.request({
411
- uri: "".concat(this.hydraEndpoint, "/").concat(_constants2.PEOPLE_ENDPOINT, "/").concat(this.personId, "/").concat(_constants2.VM_ENDPOINT, "?").concat(_constants2.ORG_ENDPOINT, "=").concat(this.orgId),
412
- method: _types.HTTP_METHODS.PUT,
413
- body: voicemailRequest
414
- });
415
- case 4:
416
- resp = _context7.sent;
417
- responseDetails = {
418
- statusCode: Number(resp[_constants.STATUS_CODE]),
419
- data: {
420
- callSetting: voicemailRequest
421
- },
422
- message: _constants.SUCCESS_MESSAGE
423
- };
424
- return _context7.abrupt("return", responseDetails);
425
- case 9:
426
- _context7.prev = 9;
427
- _context7.t0 = _context7["catch"](1);
428
- errorInfo = _context7.t0;
429
- errorStatus = (0, _Utils.serviceErrorCodeHandler)(errorInfo, loggerContext);
430
- return _context7.abrupt("return", errorStatus);
431
- case 14:
432
- case "end":
433
- return _context7.stop();
434
- }
435
- }, _callee7, this, [[1, 9]]);
436
- }));
437
- function setVoicemailSetting(_x3) {
438
- return _setVoicemailSetting.apply(this, arguments);
439
- }
440
- return setVoicemailSetting;
441
- }()
442
- /**
443
- * Reads the Call Forwarding Always settings at the backend.
444
- * This will also check if CFA is set to Voicemail.
445
- * If CFA is set to destination, that will take precedence.
446
- */
447
- }, {
448
- key: "getCallForwardAlwaysSetting",
449
- value: function () {
450
- var _getCallForwardAlwaysSetting = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee8() {
451
- var loggerContext, cfResponse, cfa, response, vmResponse, vm, _response, _response2;
452
- return _regenerator.default.wrap(function _callee8$(_context8) {
453
- while (1) switch (_context8.prev = _context8.next) {
454
- case 0:
455
- loggerContext = {
456
- file: _constants.WEBEX_CALLING_CONNECTOR_FILE,
457
- method: this.getCallForwardAlwaysSetting.name
458
- };
459
- _context8.next = 3;
460
- return this.getCallForwardSetting();
461
- case 3:
462
- cfResponse = _context8.sent;
463
- if (!(cfResponse.statusCode === 200)) {
464
- _context8.next = 24;
465
- break;
466
- }
467
- cfa = cfResponse.data.callSetting.callForwarding.always;
468
- /** CFA is set to destination */
469
- if (!cfa.enabled) {
470
- _context8.next = 11;
471
- break;
472
- }
473
- if (!cfa.destination) {
474
- _context8.next = 10;
475
- break;
476
- }
477
- response = _objectSpread(_objectSpread({}, cfResponse), {}, {
478
- data: {
479
- callSetting: cfa
480
- }
481
- });
482
- return _context8.abrupt("return", response);
483
- case 10:
484
- _Logger.default.warn("CFA is enabled, but destination is not set", loggerContext);
485
- case 11:
486
- _context8.next = 13;
487
- return this.getVoicemailSetting();
488
- case 13:
489
- vmResponse = _context8.sent;
490
- if (!(vmResponse.statusCode === 200)) {
491
- _context8.next = 21;
492
- break;
493
- }
494
- vm = vmResponse.data.callSetting;
495
- /** CFA is enabled to voicemail */
496
- if (!(vm.enabled && vm.sendAllCalls.enabled)) {
497
- _context8.next = 19;
498
- break;
499
- }
500
- _response = _objectSpread(_objectSpread({}, cfResponse), {}, {
501
- data: {
502
- callSetting: _objectSpread(_objectSpread({}, cfa), {}, {
503
- enabled: true,
504
- destination: this.VOICEMAIL
505
- })
506
- }
507
- });
508
- return _context8.abrupt("return", _response);
509
- case 19:
510
- /** No CFA is set */
511
- _response2 = _objectSpread(_objectSpread({}, cfResponse), {}, {
512
- data: {
513
- callSetting: _objectSpread(_objectSpread({}, cfa), {}, {
514
- enabled: false,
515
- destination: undefined
516
- })
517
- }
518
- });
519
- return _context8.abrupt("return", _response2);
520
- case 21:
521
- _Logger.default.warn("Unable to retrieve voicemail settings.", loggerContext);
522
- vmResponse.data.error = 'Unable to retrieve voicemail settings.';
523
- return _context8.abrupt("return", vmResponse);
524
- case 24:
525
- return _context8.abrupt("return", cfResponse);
526
- case 25:
527
- case "end":
528
- return _context8.stop();
529
- }
530
- }, _callee8, this);
531
- }));
532
- function getCallForwardAlwaysSetting() {
533
- return _getCallForwardAlwaysSetting.apply(this, arguments);
534
- }
535
- return getCallForwardAlwaysSetting;
536
- }()
537
- }]);
538
- return WxCallBackendConnector;
539
- }();
540
- exports.WxCallBackendConnector = WxCallBackendConnector;
541
- //# sourceMappingURL=WxCallBackendConnector.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_SDKConnector","_interopRequireDefault","require","_Logger","_types","_constants","_constants2","_Utils","ownKeys","object","enumerableOnly","keys","_Object$keys","_Object$getOwnPropertySymbols","symbols","filter","sym","_Object$getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","Object","forEach","key","_defineProperty2","default","_Object$getOwnPropertyDescriptors","_Object$defineProperties","_Object$defineProperty","WxCallBackendConnector","webex","logger","_classCallCheck2","sdkConnector","SDKConnector","getWebex","setWebex","hydraEndpoint","internal","services","_serviceUrls","hydra","log","setLogger","level","WEBEX_CALLING_CONNECTOR_FILE","userId","device","personId","inferIdFromUuid","DecodeType","PEOPLE","orgId","ORGANIZATION","_createClass2","value","_getCallWaitingSetting","_asyncToGenerator2","_regenerator","mark","_callee","loggerContext","callWaitingUrl","response","xmlData","parser","xmlDOM","callWaitingDetails","status","toggleSetting","responseDetails","errorInfo","errorStatus","wrap","_callee$","_context","prev","next","file","CALL_SETTINGS_FILE","method","xsiEndpoint","getXsiActionEndpoint","CALLING_BACKEND","WXC","sent","info","concat","XSI_VERSION","USER_ENDPOINT","SERVICES_ENDPOINT","CALL_WAITING_ENDPOINT","t0","fetch","t1","t2","HTTP_METHODS","GET","credentials","getUserToken","t3","t4","Authorization","t5","headers","ok","Error","text","DOMParser","parseFromString","XML_TYPE","getElementsByTagName","childNodes","textContent","enabled","statusCode","data","callSetting","message","SUCCESS_MESSAGE","abrupt","t6","Number","serviceErrorCodeHandler","stop","getCallWaitingSetting","_getDoNotDisturbSetting","_callee2","resp","dndSettingResponse","_callee2$","_context2","request","uri","PEOPLE_ENDPOINT","DND_ENDPOINT","ORG_ENDPOINT","body","STATUS_CODE","getDoNotDisturbSetting","_setDoNotDisturbSetting","_callee3","dndRequestBody","_callee3$","_context3","ringSplashEnabled","PUT","setDoNotDisturbSetting","_x","_getCallForwardSetting","_callee4","cfResponse","_callee4$","_context4","CF_ENDPOINT","getCallForwardSetting","_setCallForwardSetting","_callee5","callForwardingRequest","_callee5$","_context5","setCallForwardSetting","_x2","_getVoicemailSetting","_callee6","vmResponse","_callee6$","_context6","VM_ENDPOINT","getVoicemailSetting","_setVoicemailSetting","_callee7","voicemailRequest","_callee7$","_context7","setVoicemailSetting","_x3","_getCallForwardAlwaysSetting","_callee8","cfa","vm","_response","_response2","_callee8$","_context8","getCallForwardAlwaysSetting","name","callForwarding","always","destination","warn","sendAllCalls","VOICEMAIL","undefined","error","exports"],"sources":["WxCallBackendConnector.ts"],"sourcesContent":["import SDKConnector from '../SDKConnector';\nimport {ISDKConnector, WebexSDK} from '../SDKConnector/types';\nimport {\n LoggerInterface,\n ToggleSetting,\n CallForwardSetting,\n CallSettingResponse,\n VoicemailSetting,\n IWxCallBackendConnector,\n CallForwardAlwaysSetting,\n} from './types';\nimport log from '../Logger';\nimport {WebexRequestPayload, HTTP_METHODS, DecodeType, CALLING_BACKEND} from '../common/types';\nimport {\n SERVICES_ENDPOINT,\n STATUS_CODE,\n SUCCESS_MESSAGE,\n XML_TYPE,\n WEBEX_CALLING_CONNECTOR_FILE,\n} from '../common/constants';\nimport {\n CALL_SETTINGS_FILE,\n CALL_WAITING_ENDPOINT,\n CF_ENDPOINT,\n DND_ENDPOINT,\n ORG_ENDPOINT,\n PEOPLE_ENDPOINT,\n USER_ENDPOINT,\n VM_ENDPOINT,\n XSI_VERSION,\n} from './constants';\nimport {getXsiActionEndpoint, inferIdFromUuid, serviceErrorCodeHandler} from '../common/Utils';\n\n/**\n * This Connector class will implement child interface of ICallSettings and\n * has methods for the Webex Calling backend.\n */\nexport class WxCallBackendConnector implements IWxCallBackendConnector {\n private sdkConnector: ISDKConnector;\n\n private webex: WebexSDK;\n\n private userId: string;\n\n private personId: string;\n\n private orgId: string;\n\n private xsiEndpoint!: string;\n\n private hydraEndpoint: string;\n\n private VOICEMAIL = 'VOICEMAIL';\n\n constructor(webex: WebexSDK, logger: LoggerInterface) {\n this.sdkConnector = SDKConnector;\n\n if (!this.sdkConnector.getWebex()) {\n SDKConnector.setWebex(webex);\n }\n\n this.webex = this.sdkConnector.getWebex();\n /* eslint no-underscore-dangle: 0 */\n this.hydraEndpoint = this.webex.internal.services._serviceUrls.hydra;\n log.setLogger(logger.level, WEBEX_CALLING_CONNECTOR_FILE);\n\n this.userId = this.webex.internal.device.userId;\n this.personId = inferIdFromUuid(this.webex.internal.device.userId, DecodeType.PEOPLE);\n this.orgId = inferIdFromUuid(this.webex.internal.device.orgId, DecodeType.ORGANIZATION);\n }\n\n /**\n * Reads call waiting setting at the backend.\n */\n public async getCallWaitingSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: CALL_SETTINGS_FILE,\n method: 'getCallWaitingSetting',\n };\n\n try {\n if (!this.xsiEndpoint) {\n this.xsiEndpoint = await getXsiActionEndpoint(\n this.webex,\n loggerContext,\n CALLING_BACKEND.WXC\n );\n log.info(`xsiEndpoint: ${this.xsiEndpoint}`, loggerContext);\n }\n\n const callWaitingUrl = `${this.xsiEndpoint}/${XSI_VERSION}/${USER_ENDPOINT}/${this.userId}/${SERVICES_ENDPOINT}/${CALL_WAITING_ENDPOINT}`;\n\n const response = await fetch(`${callWaitingUrl}`, {\n method: HTTP_METHODS.GET,\n headers: {\n Authorization: await this.webex.credentials.getUserToken(),\n },\n });\n\n if (!response.ok) {\n /* Throw error code if any the exception error */\n throw new Error(`${response.status}`);\n }\n const xmlData = await response.text();\n const parser = new DOMParser();\n const xmlDOM = parser.parseFromString(xmlData, XML_TYPE);\n const callWaitingDetails = xmlDOM.getElementsByTagName('active');\n const status = callWaitingDetails[0].childNodes[0].textContent;\n\n const toggleSetting: ToggleSetting = {\n enabled: status === 'true',\n };\n const responseDetails: CallSettingResponse = {\n statusCode: 200,\n data: {\n callSetting: toggleSetting,\n },\n message: SUCCESS_MESSAGE,\n };\n\n return responseDetails;\n } catch (err: unknown) {\n const errorInfo = {\n statusCode: err instanceof Error ? Number(err.message) : '',\n } as WebexRequestPayload;\n const errorStatus = serviceErrorCodeHandler(errorInfo, loggerContext);\n\n return errorStatus;\n }\n }\n\n /**\n * Reads DND setting at the backend.\n */\n public async getDoNotDisturbSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: CALL_SETTINGS_FILE,\n method: 'getDoNotDisturbSetting',\n };\n\n try {\n const resp = <WebexRequestPayload>await this.webex.request({\n uri: `${this.hydraEndpoint}/${PEOPLE_ENDPOINT}/${this.personId}/${DND_ENDPOINT}?${ORG_ENDPOINT}=${this.orgId}`,\n method: HTTP_METHODS.GET,\n });\n const dndSettingResponse = resp.body as ToggleSetting;\n const responseDetails: CallSettingResponse = {\n statusCode: Number(resp[STATUS_CODE]),\n data: {\n callSetting: dndSettingResponse,\n },\n message: SUCCESS_MESSAGE,\n };\n\n return responseDetails;\n } catch (err: unknown) {\n const errorInfo = err as WebexRequestPayload;\n const errorStatus = serviceErrorCodeHandler(errorInfo, loggerContext);\n\n return errorStatus;\n }\n }\n\n /**\n * Updates DND setting at the backend.\n */\n public async setDoNotDisturbSetting(enabled: boolean): Promise<CallSettingResponse> {\n const loggerContext = {\n file: CALL_SETTINGS_FILE,\n method: 'setDoNotDisturbSetting',\n };\n\n try {\n const dndRequestBody: ToggleSetting = {\n enabled,\n ringSplashEnabled: false,\n };\n\n const resp = <WebexRequestPayload>await this.webex.request({\n uri: `${this.hydraEndpoint}/${PEOPLE_ENDPOINT}/${this.personId}/${DND_ENDPOINT}?${ORG_ENDPOINT}=${this.orgId}`,\n method: HTTP_METHODS.PUT,\n body: dndRequestBody,\n });\n\n const responseDetails: CallSettingResponse = {\n statusCode: Number(resp[STATUS_CODE]),\n data: {\n callSetting: dndRequestBody,\n },\n message: SUCCESS_MESSAGE,\n };\n\n return responseDetails;\n } catch (err: unknown) {\n const errorInfo = err as WebexRequestPayload;\n const errorStatus = serviceErrorCodeHandler(errorInfo, loggerContext);\n\n return errorStatus;\n }\n }\n\n /**\n * Reads Call Forward setting at the backend.\n */\n public async getCallForwardSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: CALL_SETTINGS_FILE,\n method: 'getCallForwardingSetting',\n };\n\n try {\n const resp = <WebexRequestPayload>await this.webex.request({\n uri: `${this.hydraEndpoint}/${PEOPLE_ENDPOINT}/${this.personId}/${CF_ENDPOINT}?${ORG_ENDPOINT}=${this.orgId}`,\n method: HTTP_METHODS.GET,\n });\n const cfResponse = resp.body as CallForwardSetting;\n const responseDetails: CallSettingResponse = {\n statusCode: Number(resp[STATUS_CODE]),\n data: {\n callSetting: cfResponse,\n },\n message: SUCCESS_MESSAGE,\n };\n\n return responseDetails;\n } catch (err: unknown) {\n const errorInfo = err as WebexRequestPayload;\n const errorStatus = serviceErrorCodeHandler(errorInfo, loggerContext);\n\n return errorStatus;\n }\n }\n\n /**\n * Updates Call Forward setting at the backend.\n */\n public async setCallForwardSetting(\n callForwardingRequest: CallForwardSetting\n ): Promise<CallSettingResponse> {\n const loggerContext = {\n file: CALL_SETTINGS_FILE,\n method: 'setCallForwardingSetting',\n };\n\n try {\n const resp = <WebexRequestPayload>await this.webex.request({\n uri: `${this.hydraEndpoint}/${PEOPLE_ENDPOINT}/${this.personId}/${CF_ENDPOINT}?${ORG_ENDPOINT}=${this.orgId}`,\n method: HTTP_METHODS.PUT,\n body: callForwardingRequest,\n });\n\n const responseDetails: CallSettingResponse = {\n statusCode: Number(resp[STATUS_CODE]),\n data: {\n callSetting: callForwardingRequest,\n },\n message: SUCCESS_MESSAGE,\n };\n\n return responseDetails;\n } catch (err: unknown) {\n const errorInfo = err as WebexRequestPayload;\n const errorStatus = serviceErrorCodeHandler(errorInfo, loggerContext);\n\n return errorStatus;\n }\n }\n\n /**\n * Reads Voicemail setting at the backend.\n */\n public async getVoicemailSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: CALL_SETTINGS_FILE,\n method: 'getVoicemailSetting',\n };\n\n try {\n const resp = <WebexRequestPayload>await this.webex.request({\n uri: `${this.hydraEndpoint}/${PEOPLE_ENDPOINT}/${this.personId}/${VM_ENDPOINT}?${ORG_ENDPOINT}=${this.orgId}`,\n method: HTTP_METHODS.GET,\n });\n const vmResponse = resp.body as VoicemailSetting;\n const responseDetails: CallSettingResponse = {\n statusCode: Number(resp[STATUS_CODE]),\n data: {\n callSetting: vmResponse,\n },\n message: SUCCESS_MESSAGE,\n };\n\n return responseDetails;\n } catch (err: unknown) {\n const errorInfo = err as WebexRequestPayload;\n const errorStatus = serviceErrorCodeHandler(errorInfo, loggerContext);\n\n return errorStatus;\n }\n }\n\n /**\n * Updates Voicemail setting at the backend.\n */\n public async setVoicemailSetting(\n voicemailRequest: VoicemailSetting\n ): Promise<CallSettingResponse> {\n const loggerContext = {\n file: CALL_SETTINGS_FILE,\n method: 'setVoicemailSetting',\n };\n\n try {\n const resp = <WebexRequestPayload>await this.webex.request({\n uri: `${this.hydraEndpoint}/${PEOPLE_ENDPOINT}/${this.personId}/${VM_ENDPOINT}?${ORG_ENDPOINT}=${this.orgId}`,\n method: HTTP_METHODS.PUT,\n body: voicemailRequest,\n });\n\n const responseDetails: CallSettingResponse = {\n statusCode: Number(resp[STATUS_CODE]),\n data: {\n callSetting: voicemailRequest,\n },\n message: SUCCESS_MESSAGE,\n };\n\n return responseDetails;\n } catch (err: unknown) {\n const errorInfo = err as WebexRequestPayload;\n const errorStatus = serviceErrorCodeHandler(errorInfo, loggerContext);\n\n return errorStatus;\n }\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 */\n public async getCallForwardAlwaysSetting(): Promise<CallSettingResponse> {\n const loggerContext = {\n file: WEBEX_CALLING_CONNECTOR_FILE,\n method: this.getCallForwardAlwaysSetting.name,\n };\n const cfResponse = await this.getCallForwardSetting();\n\n if (cfResponse.statusCode === 200) {\n const cfa = (cfResponse.data.callSetting as CallForwardSetting).callForwarding.always;\n\n /** CFA is set to destination */\n if (cfa.enabled) {\n if (cfa.destination) {\n const response = {\n ...cfResponse,\n data: {\n callSetting: cfa,\n },\n };\n\n return response;\n }\n log.warn(`CFA is enabled, but destination is not set`, loggerContext);\n }\n const vmResponse = await this.getVoicemailSetting();\n\n if (vmResponse.statusCode === 200) {\n const vm = vmResponse.data.callSetting as VoicemailSetting;\n\n /** CFA is enabled to voicemail */\n if (vm.enabled && vm.sendAllCalls.enabled) {\n const response = {\n ...cfResponse,\n data: {\n callSetting: {\n ...cfa,\n enabled: true,\n destination: this.VOICEMAIL,\n } as CallForwardAlwaysSetting,\n },\n };\n\n return response;\n }\n\n /** No CFA is set */\n const response = {\n ...cfResponse,\n data: {\n callSetting: {\n ...cfa,\n enabled: false,\n destination: undefined,\n } as CallForwardAlwaysSetting,\n },\n };\n\n return response;\n }\n\n log.warn(`Unable to retrieve voicemail settings.`, loggerContext);\n\n vmResponse.data.error = 'Unable to retrieve voicemail settings.';\n\n return vmResponse;\n }\n\n return cfResponse;\n }\n}\n"],"mappings":"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"}