@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.
- package/CHANGELOG.md +1403 -0
- package/README.md +74 -74
- package/dist/module/CallHistory/CallHistory.js +81 -81
- package/dist/module/CallHistory/callHistoryFixtures.js +307 -307
- package/dist/module/CallHistory/constants.js +9 -9
- package/dist/module/CallHistory/types.js +1 -1
- package/dist/module/CallSettings/CallSettings.js +65 -65
- package/dist/module/CallSettings/UcmBackendConnector.js +100 -100
- package/dist/module/CallSettings/WxCallBackendConnector.js +287 -287
- package/dist/module/CallSettings/constants.js +11 -11
- package/dist/module/CallSettings/testFixtures.js +62 -62
- package/dist/module/CallSettings/types.js +1 -1
- package/dist/module/CallingClient/CallingClient.js +248 -248
- package/dist/module/CallingClient/callRecordFixtures.js +93 -93
- package/dist/module/CallingClient/calling/CallerId/index.js +169 -169
- package/dist/module/CallingClient/calling/CallerId/types.js +1 -1
- package/dist/module/CallingClient/calling/call.js +1658 -1658
- package/dist/module/CallingClient/calling/callManager.js +284 -284
- package/dist/module/CallingClient/calling/index.js +2 -2
- package/dist/module/CallingClient/calling/types.js +53 -53
- package/dist/module/CallingClient/callingClientFixtures.js +38 -38
- package/dist/module/CallingClient/constants.js +122 -122
- package/dist/module/CallingClient/line/index.js +158 -158
- package/dist/module/CallingClient/line/types.js +15 -15
- package/dist/module/CallingClient/registration/index.js +1 -1
- package/dist/module/CallingClient/registration/register.js +507 -507
- package/dist/module/CallingClient/registration/registerFixtures.js +28 -28
- package/dist/module/CallingClient/registration/types.js +1 -1
- package/dist/module/CallingClient/types.js +1 -1
- package/dist/module/Contacts/ContactsClient.js +484 -484
- package/dist/module/Contacts/constants.js +20 -20
- package/dist/module/Contacts/contactFixtures.js +284 -284
- package/dist/module/Contacts/types.js +10 -10
- package/dist/module/Errors/catalog/CallError.js +26 -26
- package/dist/module/Errors/catalog/CallingDeviceError.js +18 -18
- package/dist/module/Errors/catalog/ExtendedError.js +10 -10
- package/dist/module/Errors/catalog/LineError.js +24 -24
- package/dist/module/Errors/index.js +2 -2
- package/dist/module/Errors/types.js +48 -48
- package/dist/module/Events/impl/index.js +19 -19
- package/dist/module/Events/types.js +83 -83
- package/dist/module/Logger/index.js +114 -114
- package/dist/module/Logger/types.js +25 -25
- package/dist/module/Metrics/index.js +232 -232
- package/dist/module/Metrics/types.js +37 -37
- package/dist/module/SDKConnector/index.js +39 -39
- package/dist/module/SDKConnector/types.js +1 -1
- package/dist/module/SDKConnector/utils.js +12 -12
- package/dist/module/Voicemail/BroadworksBackendConnector.js +291 -291
- package/dist/module/Voicemail/UcmBackendConnector.js +279 -279
- package/dist/module/Voicemail/Voicemail.js +110 -110
- package/dist/module/Voicemail/WxCallBackendConnector.js +279 -279
- package/dist/module/Voicemail/constants.js +29 -29
- package/dist/module/Voicemail/types.js +1 -1
- package/dist/module/Voicemail/voicemailFixture.js +510 -510
- package/dist/module/api.js +6 -6
- package/dist/module/common/Utils.js +802 -802
- package/dist/module/common/constants.js +41 -41
- package/dist/module/common/index.js +1 -1
- package/dist/module/common/testUtil.js +938 -938
- package/dist/module/common/types.js +57 -57
- package/dist/module/index.js +8 -8
- package/dist/types/CallHistory/CallHistory.d.ts +17 -17
- package/dist/types/CallHistory/callHistoryFixtures.d.ts +94 -94
- package/dist/types/CallHistory/constants.d.ts +9 -9
- package/dist/types/CallHistory/types.d.ts +18 -18
- package/dist/types/CallSettings/CallSettings.d.ts +19 -19
- package/dist/types/CallSettings/UcmBackendConnector.d.ts +19 -19
- package/dist/types/CallSettings/WxCallBackendConnector.d.ts +21 -21
- package/dist/types/CallSettings/constants.d.ts +11 -11
- package/dist/types/CallSettings/testFixtures.d.ts +15 -15
- package/dist/types/CallSettings/types.d.ts +107 -107
- package/dist/types/CallingClient/CallingClient.d.ts +35 -35
- package/dist/types/CallingClient/callRecordFixtures.d.ts +3 -3
- package/dist/types/CallingClient/calling/CallerId/index.d.ts +17 -17
- package/dist/types/CallingClient/calling/CallerId/types.d.ts +41 -41
- package/dist/types/CallingClient/calling/call.d.ts +96 -96
- package/dist/types/CallingClient/calling/callManager.d.ts +25 -25
- package/dist/types/CallingClient/calling/index.d.ts +2 -2
- package/dist/types/CallingClient/calling/types.d.ts +206 -206
- package/dist/types/CallingClient/callingClientFixtures.d.ts +18 -18
- package/dist/types/CallingClient/constants.d.ts +122 -122
- package/dist/types/CallingClient/line/index.d.ts +43 -43
- package/dist/types/CallingClient/line/types.d.ts +55 -55
- package/dist/types/CallingClient/registration/index.d.ts +1 -1
- package/dist/types/CallingClient/registration/register.d.ts +64 -64
- package/dist/types/CallingClient/registration/registerFixtures.d.ts +28 -28
- package/dist/types/CallingClient/registration/types.d.ts +20 -20
- package/dist/types/CallingClient/types.d.ts +29 -29
- package/dist/types/Contacts/ContactsClient.d.ts +26 -26
- package/dist/types/Contacts/constants.d.ts +19 -19
- package/dist/types/Contacts/contactFixtures.d.ts +280 -280
- package/dist/types/Contacts/types.d.ts +72 -72
- package/dist/types/Errors/catalog/CallError.d.ts +11 -11
- package/dist/types/Errors/catalog/CallingDeviceError.d.ts +10 -10
- package/dist/types/Errors/catalog/ExtendedError.d.ts +6 -6
- package/dist/types/Errors/catalog/LineError.d.ts +10 -10
- package/dist/types/Errors/index.d.ts +2 -2
- package/dist/types/Errors/types.d.ts +60 -60
- package/dist/types/Events/impl/index.d.ts +8 -8
- package/dist/types/Events/types.d.ts +288 -288
- package/dist/types/Logger/index.d.ts +12 -12
- package/dist/types/Logger/types.d.ts +25 -25
- package/dist/types/Metrics/index.d.ts +5 -5
- package/dist/types/Metrics/types.d.ts +42 -42
- package/dist/types/SDKConnector/index.d.ts +12 -12
- package/dist/types/SDKConnector/types.d.ts +128 -128
- package/dist/types/SDKConnector/utils.d.ts +5 -5
- package/dist/types/Voicemail/BroadworksBackendConnector.d.ts +27 -27
- package/dist/types/Voicemail/UcmBackendConnector.d.ts +34 -34
- package/dist/types/Voicemail/Voicemail.d.ts +27 -27
- package/dist/types/Voicemail/WxCallBackendConnector.d.ts +23 -23
- package/dist/types/Voicemail/constants.d.ts +29 -29
- package/dist/types/Voicemail/types.d.ts +133 -133
- package/dist/types/Voicemail/voicemailFixture.d.ts +417 -417
- package/dist/types/api.d.ts +16 -16
- package/dist/types/common/Utils.d.ts +34 -34
- package/dist/types/common/constants.d.ts +41 -41
- package/dist/types/common/index.d.ts +1 -1
- package/dist/types/common/testUtil.d.ts +3611 -3611
- package/dist/types/common/types.d.ts +191 -191
- package/dist/types/index.d.ts +8 -8
- package/package.json +4 -4
- package/dist/CallHistory/CallHistory.js +0 -203
- package/dist/CallHistory/CallHistory.js.map +0 -1
- package/dist/CallHistory/CallHistory.test.js +0 -133
- package/dist/CallHistory/CallHistory.test.js.map +0 -1
- package/dist/CallHistory/callHistoryFixtures.js +0 -310
- package/dist/CallHistory/callHistoryFixtures.js.map +0 -1
- package/dist/CallHistory/constants.js +0 -26
- package/dist/CallHistory/constants.js.map +0 -1
- package/dist/CallHistory/types.js +0 -7
- package/dist/CallHistory/types.js.map +0 -1
- package/dist/CallSettings/CallSettings.js +0 -276
- package/dist/CallSettings/CallSettings.js.map +0 -1
- package/dist/CallSettings/CallSettings.test.js +0 -122
- package/dist/CallSettings/CallSettings.test.js.map +0 -1
- package/dist/CallSettings/UcmBackendConnector.js +0 -217
- package/dist/CallSettings/UcmBackendConnector.js.map +0 -1
- package/dist/CallSettings/UcmBackendConnector.test.js +0 -227
- package/dist/CallSettings/UcmBackendConnector.test.js.map +0 -1
- package/dist/CallSettings/WxCallBackendConnector.js +0 -541
- package/dist/CallSettings/WxCallBackendConnector.js.map +0 -1
- package/dist/CallSettings/WxCallBackendConnector.test.js +0 -802
- package/dist/CallSettings/WxCallBackendConnector.test.js.map +0 -1
- package/dist/CallSettings/constants.js +0 -30
- package/dist/CallSettings/constants.js.map +0 -1
- package/dist/CallSettings/testFixtures.js +0 -72
- package/dist/CallSettings/testFixtures.js.map +0 -1
- package/dist/CallSettings/types.js +0 -7
- package/dist/CallSettings/types.js.map +0 -1
- package/dist/CallingClient/CallingClient.js +0 -572
- package/dist/CallingClient/CallingClient.js.map +0 -1
- package/dist/CallingClient/CallingClient.test.js +0 -931
- package/dist/CallingClient/CallingClient.test.js.map +0 -1
- package/dist/CallingClient/callRecordFixtures.js +0 -103
- package/dist/CallingClient/callRecordFixtures.js.map +0 -1
- package/dist/CallingClient/calling/CallerId/index.js +0 -287
- package/dist/CallingClient/calling/CallerId/index.js.map +0 -1
- package/dist/CallingClient/calling/CallerId/index.test.js +0 -274
- package/dist/CallingClient/calling/CallerId/index.test.js.map +0 -1
- package/dist/CallingClient/calling/CallerId/types.js +0 -7
- package/dist/CallingClient/calling/CallerId/types.js.map +0 -1
- package/dist/CallingClient/calling/call.js +0 -2995
- package/dist/CallingClient/calling/call.js.map +0 -1
- package/dist/CallingClient/calling/call.test.js +0 -2614
- package/dist/CallingClient/calling/call.test.js.map +0 -1
- package/dist/CallingClient/calling/callManager.js +0 -443
- package/dist/CallingClient/calling/callManager.js.map +0 -1
- package/dist/CallingClient/calling/callManager.test.js +0 -683
- package/dist/CallingClient/calling/callManager.test.js.map +0 -1
- package/dist/CallingClient/calling/index.js +0 -30
- package/dist/CallingClient/calling/index.js.map +0 -1
- package/dist/CallingClient/calling/types.js +0 -71
- package/dist/CallingClient/calling/types.js.map +0 -1
- package/dist/CallingClient/callingClientFixtures.js +0 -53
- package/dist/CallingClient/callingClientFixtures.js.map +0 -1
- package/dist/CallingClient/constants.js +0 -226
- package/dist/CallingClient/constants.js.map +0 -1
- package/dist/CallingClient/line/index.js +0 -312
- package/dist/CallingClient/line/index.js.map +0 -1
- package/dist/CallingClient/line/line.test.js +0 -270
- package/dist/CallingClient/line/line.test.js.map +0 -1
- package/dist/CallingClient/line/types.js +0 -25
- package/dist/CallingClient/line/types.js.map +0 -1
- package/dist/CallingClient/registration/index.js +0 -19
- package/dist/CallingClient/registration/index.js.map +0 -1
- package/dist/CallingClient/registration/register.js +0 -1295
- package/dist/CallingClient/registration/register.js.map +0 -1
- package/dist/CallingClient/registration/register.test.js +0 -838
- package/dist/CallingClient/registration/register.test.js.map +0 -1
- package/dist/CallingClient/registration/registerFixtures.js +0 -41
- package/dist/CallingClient/registration/registerFixtures.js.map +0 -1
- package/dist/CallingClient/registration/types.js +0 -7
- package/dist/CallingClient/registration/types.js.map +0 -1
- package/dist/CallingClient/types.js +0 -7
- package/dist/CallingClient/types.js.map +0 -1
- package/dist/Contacts/ContactsClient.js +0 -1139
- package/dist/Contacts/ContactsClient.js.map +0 -1
- package/dist/Contacts/ContactsClient.test.js +0 -725
- package/dist/Contacts/ContactsClient.test.js.map +0 -1
- package/dist/Contacts/constants.js +0 -36
- package/dist/Contacts/constants.js.map +0 -1
- package/dist/Contacts/contactFixtures.js +0 -340
- package/dist/Contacts/contactFixtures.js.map +0 -1
- package/dist/Contacts/types.js +0 -20
- package/dist/Contacts/types.js.map +0 -1
- package/dist/Errors/catalog/CallError.js +0 -94
- package/dist/Errors/catalog/CallError.js.map +0 -1
- package/dist/Errors/catalog/CallingDeviceError.js +0 -88
- package/dist/Errors/catalog/CallingDeviceError.js.map +0 -1
- package/dist/Errors/catalog/ExtendedError.js +0 -45
- package/dist/Errors/catalog/ExtendedError.js.map +0 -1
- package/dist/Errors/catalog/LineError.js +0 -90
- package/dist/Errors/catalog/LineError.js.map +0 -1
- package/dist/Errors/index.js +0 -21
- package/dist/Errors/index.js.map +0 -1
- package/dist/Errors/types.js +0 -62
- package/dist/Errors/types.js.map +0 -1
- package/dist/Events/impl/index.js +0 -82
- package/dist/Events/impl/index.js.map +0 -1
- package/dist/Events/types.js +0 -111
- package/dist/Events/types.js.map +0 -1
- package/dist/Logger/index.js +0 -221
- package/dist/Logger/index.js.map +0 -1
- package/dist/Logger/index.test.js +0 -62
- package/dist/Logger/index.test.js.map +0 -1
- package/dist/Logger/types.js +0 -37
- package/dist/Logger/types.js.map +0 -1
- package/dist/Metrics/index.js +0 -329
- package/dist/Metrics/index.js.map +0 -1
- package/dist/Metrics/index.test.js +0 -291
- package/dist/Metrics/index.test.js.map +0 -1
- package/dist/Metrics/types.js +0 -50
- package/dist/Metrics/types.js.map +0 -1
- package/dist/SDKConnector/index.js +0 -105
- package/dist/SDKConnector/index.js.map +0 -1
- package/dist/SDKConnector/index.test.js +0 -9
- package/dist/SDKConnector/index.test.js.map +0 -1
- package/dist/SDKConnector/types.js +0 -7
- package/dist/SDKConnector/types.js.map +0 -1
- package/dist/SDKConnector/utils.js +0 -40
- package/dist/SDKConnector/utils.js.map +0 -1
- package/dist/SDKConnector/utils.test.js +0 -9
- package/dist/SDKConnector/utils.test.js.map +0 -1
- package/dist/Voicemail/BroadworksBackendConnector.js +0 -632
- package/dist/Voicemail/BroadworksBackendConnector.js.map +0 -1
- package/dist/Voicemail/BroadworksBackendConnector.test.js +0 -733
- package/dist/Voicemail/BroadworksBackendConnector.test.js.map +0 -1
- package/dist/Voicemail/UcmBackendConnector.js +0 -566
- package/dist/Voicemail/UcmBackendConnector.js.map +0 -1
- package/dist/Voicemail/UcmBackendConnector.test.js +0 -628
- package/dist/Voicemail/UcmBackendConnector.test.js.map +0 -1
- package/dist/Voicemail/Voicemail.js +0 -378
- package/dist/Voicemail/Voicemail.js.map +0 -1
- package/dist/Voicemail/Voicemail.test.js +0 -226
- package/dist/Voicemail/Voicemail.test.js.map +0 -1
- package/dist/Voicemail/WxCallBackendConnector.js +0 -540
- package/dist/Voicemail/WxCallBackendConnector.js.map +0 -1
- package/dist/Voicemail/WxCallBackendConnector.test.js +0 -942
- package/dist/Voicemail/WxCallBackendConnector.test.js.map +0 -1
- package/dist/Voicemail/constants.js +0 -66
- package/dist/Voicemail/constants.js.map +0 -1
- package/dist/Voicemail/types.js +0 -7
- package/dist/Voicemail/types.js.map +0 -1
- package/dist/Voicemail/voicemailFixture.js +0 -559
- package/dist/Voicemail/voicemailFixture.js.map +0 -1
- package/dist/api.js +0 -134
- package/dist/api.js.map +0 -1
- package/dist/common/Utils.js +0 -1264
- package/dist/common/Utils.js.map +0 -1
- package/dist/common/Utils.test.js +0 -1227
- package/dist/common/Utils.test.js.map +0 -1
- package/dist/common/constants.js +0 -90
- package/dist/common/constants.js.map +0 -1
- package/dist/common/index.js +0 -19
- package/dist/common/index.js.map +0 -1
- package/dist/common/testUtil.js +0 -968
- package/dist/common/testUtil.js.map +0 -1
- package/dist/common/types.js +0 -75
- package/dist/common/types.js.map +0 -1
- package/dist/index.js +0 -63
- 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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"}
|