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