@webex/calling 3.11.0 → 3.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (188) hide show
  1. package/dist/CallHistory/CallHistory.js +596 -0
  2. package/dist/CallHistory/CallHistory.js.map +1 -0
  3. package/dist/CallHistory/CallHistory.test.js +916 -0
  4. package/dist/CallHistory/CallHistory.test.js.map +1 -0
  5. package/dist/CallHistory/callHistoryFixtures.js +650 -0
  6. package/dist/CallHistory/callHistoryFixtures.js.map +1 -0
  7. package/dist/CallHistory/constants.js +38 -0
  8. package/dist/CallHistory/constants.js.map +1 -0
  9. package/dist/CallHistory/types.js +7 -0
  10. package/dist/CallHistory/types.js.map +1 -0
  11. package/dist/CallSettings/CallSettings.js +311 -0
  12. package/dist/CallSettings/CallSettings.js.map +1 -0
  13. package/dist/CallSettings/CallSettings.test.js +122 -0
  14. package/dist/CallSettings/CallSettings.test.js.map +1 -0
  15. package/dist/CallSettings/UcmBackendConnector.js +308 -0
  16. package/dist/CallSettings/UcmBackendConnector.js.map +1 -0
  17. package/dist/CallSettings/UcmBackendConnector.test.js +411 -0
  18. package/dist/CallSettings/UcmBackendConnector.test.js.map +1 -0
  19. package/dist/CallSettings/WxCallBackendConnector.js +597 -0
  20. package/dist/CallSettings/WxCallBackendConnector.js.map +1 -0
  21. package/dist/CallSettings/WxCallBackendConnector.test.js +904 -0
  22. package/dist/CallSettings/WxCallBackendConnector.test.js.map +1 -0
  23. package/dist/CallSettings/constants.js +31 -0
  24. package/dist/CallSettings/constants.js.map +1 -0
  25. package/dist/CallSettings/testFixtures.js +68 -0
  26. package/dist/CallSettings/testFixtures.js.map +1 -0
  27. package/dist/CallSettings/types.js +7 -0
  28. package/dist/CallSettings/types.js.map +1 -0
  29. package/dist/CallingClient/CallingClient.js +1119 -0
  30. package/dist/CallingClient/CallingClient.js.map +1 -0
  31. package/dist/CallingClient/CallingClient.test.js +1266 -0
  32. package/dist/CallingClient/CallingClient.test.js.map +1 -0
  33. package/dist/CallingClient/callRecordFixtures.js +101 -0
  34. package/dist/CallingClient/callRecordFixtures.js.map +1 -0
  35. package/dist/CallingClient/calling/CallerId/index.js +275 -0
  36. package/dist/CallingClient/calling/CallerId/index.js.map +1 -0
  37. package/dist/CallingClient/calling/CallerId/index.test.js +275 -0
  38. package/dist/CallingClient/calling/CallerId/index.test.js.map +1 -0
  39. package/dist/CallingClient/calling/CallerId/types.js +7 -0
  40. package/dist/CallingClient/calling/CallerId/types.js.map +1 -0
  41. package/dist/CallingClient/calling/call.js +3486 -0
  42. package/dist/CallingClient/calling/call.js.map +1 -0
  43. package/dist/CallingClient/calling/call.test.js +3612 -0
  44. package/dist/CallingClient/calling/call.test.js.map +1 -0
  45. package/dist/CallingClient/calling/callManager.js +460 -0
  46. package/dist/CallingClient/calling/callManager.js.map +1 -0
  47. package/dist/CallingClient/calling/callManager.test.js +741 -0
  48. package/dist/CallingClient/calling/callManager.test.js.map +1 -0
  49. package/dist/CallingClient/calling/index.js +30 -0
  50. package/dist/CallingClient/calling/index.js.map +1 -0
  51. package/dist/CallingClient/calling/types.js +74 -0
  52. package/dist/CallingClient/calling/types.js.map +1 -0
  53. package/dist/CallingClient/callingClientFixtures.js +143 -0
  54. package/dist/CallingClient/callingClientFixtures.js.map +1 -0
  55. package/dist/CallingClient/constants.js +243 -0
  56. package/dist/CallingClient/constants.js.map +1 -0
  57. package/dist/CallingClient/line/index.js +332 -0
  58. package/dist/CallingClient/line/index.js.map +1 -0
  59. package/dist/CallingClient/line/line.test.js +327 -0
  60. package/dist/CallingClient/line/line.test.js.map +1 -0
  61. package/dist/CallingClient/line/types.js +21 -0
  62. package/dist/CallingClient/line/types.js.map +1 -0
  63. package/dist/CallingClient/registration/index.js +19 -0
  64. package/dist/CallingClient/registration/index.js.map +1 -0
  65. package/dist/CallingClient/registration/register.js +1686 -0
  66. package/dist/CallingClient/registration/register.js.map +1 -0
  67. package/dist/CallingClient/registration/register.test.js +1885 -0
  68. package/dist/CallingClient/registration/register.test.js.map +1 -0
  69. package/dist/CallingClient/registration/registerFixtures.js +36 -0
  70. package/dist/CallingClient/registration/registerFixtures.js.map +1 -0
  71. package/dist/CallingClient/registration/types.js +7 -0
  72. package/dist/CallingClient/registration/types.js.map +1 -0
  73. package/dist/CallingClient/registration/webWorker.js +130 -0
  74. package/dist/CallingClient/registration/webWorker.js.map +1 -0
  75. package/dist/CallingClient/registration/webWorker.test.js +303 -0
  76. package/dist/CallingClient/registration/webWorker.test.js.map +1 -0
  77. package/dist/CallingClient/registration/webWorkerStr.js +15 -0
  78. package/dist/CallingClient/registration/webWorkerStr.js.map +1 -0
  79. package/dist/CallingClient/types.js +7 -0
  80. package/dist/CallingClient/types.js.map +1 -0
  81. package/dist/CallingClient/windowsChromiumIceWarmupUtils.js +142 -0
  82. package/dist/CallingClient/windowsChromiumIceWarmupUtils.js.map +1 -0
  83. package/dist/Contacts/ContactsClient.js +1206 -0
  84. package/dist/Contacts/ContactsClient.js.map +1 -0
  85. package/dist/Contacts/ContactsClient.test.js +1004 -0
  86. package/dist/Contacts/ContactsClient.test.js.map +1 -0
  87. package/dist/Contacts/constants.js +40 -0
  88. package/dist/Contacts/constants.js.map +1 -0
  89. package/dist/Contacts/contactFixtures.js +430 -0
  90. package/dist/Contacts/contactFixtures.js.map +1 -0
  91. package/dist/Contacts/types.js +43 -0
  92. package/dist/Contacts/types.js.map +1 -0
  93. package/dist/Errors/catalog/CallError.js +89 -0
  94. package/dist/Errors/catalog/CallError.js.map +1 -0
  95. package/dist/Errors/catalog/CallingDeviceError.js +83 -0
  96. package/dist/Errors/catalog/CallingDeviceError.js.map +1 -0
  97. package/dist/Errors/catalog/ExtendedError.js +42 -0
  98. package/dist/Errors/catalog/ExtendedError.js.map +1 -0
  99. package/dist/Errors/catalog/LineError.js +85 -0
  100. package/dist/Errors/catalog/LineError.js.map +1 -0
  101. package/dist/Errors/index.js +28 -0
  102. package/dist/Errors/index.js.map +1 -0
  103. package/dist/Errors/types.js +59 -0
  104. package/dist/Errors/types.js.map +1 -0
  105. package/dist/Events/impl/index.js +79 -0
  106. package/dist/Events/impl/index.js.map +1 -0
  107. package/dist/Events/types.js +107 -0
  108. package/dist/Events/types.js.map +1 -0
  109. package/dist/Logger/index.js +228 -0
  110. package/dist/Logger/index.js.map +1 -0
  111. package/dist/Logger/index.test.js +87 -0
  112. package/dist/Logger/index.test.js.map +1 -0
  113. package/dist/Logger/types.js +34 -0
  114. package/dist/Logger/types.js.map +1 -0
  115. package/dist/Metrics/index.js +534 -0
  116. package/dist/Metrics/index.js.map +1 -0
  117. package/dist/Metrics/index.test.js +463 -0
  118. package/dist/Metrics/index.test.js.map +1 -0
  119. package/dist/Metrics/types.js +64 -0
  120. package/dist/Metrics/types.js.map +1 -0
  121. package/dist/SDKConnector/index.js +102 -0
  122. package/dist/SDKConnector/index.js.map +1 -0
  123. package/dist/SDKConnector/index.test.js +9 -0
  124. package/dist/SDKConnector/index.test.js.map +1 -0
  125. package/dist/SDKConnector/types.js +7 -0
  126. package/dist/SDKConnector/types.js.map +1 -0
  127. package/dist/SDKConnector/utils.js +39 -0
  128. package/dist/SDKConnector/utils.js.map +1 -0
  129. package/dist/SDKConnector/utils.test.js +9 -0
  130. package/dist/SDKConnector/utils.test.js.map +1 -0
  131. package/dist/Voicemail/BroadworksBackendConnector.js +699 -0
  132. package/dist/Voicemail/BroadworksBackendConnector.js.map +1 -0
  133. package/dist/Voicemail/BroadworksBackendConnector.test.js +820 -0
  134. package/dist/Voicemail/BroadworksBackendConnector.test.js.map +1 -0
  135. package/dist/Voicemail/UcmBackendConnector.js +628 -0
  136. package/dist/Voicemail/UcmBackendConnector.js.map +1 -0
  137. package/dist/Voicemail/UcmBackendConnector.test.js +738 -0
  138. package/dist/Voicemail/UcmBackendConnector.test.js.map +1 -0
  139. package/dist/Voicemail/Voicemail.js +472 -0
  140. package/dist/Voicemail/Voicemail.js.map +1 -0
  141. package/dist/Voicemail/Voicemail.test.js +391 -0
  142. package/dist/Voicemail/Voicemail.test.js.map +1 -0
  143. package/dist/Voicemail/WxCallBackendConnector.js +657 -0
  144. package/dist/Voicemail/WxCallBackendConnector.js.map +1 -0
  145. package/dist/Voicemail/WxCallBackendConnector.test.js +1225 -0
  146. package/dist/Voicemail/WxCallBackendConnector.test.js.map +1 -0
  147. package/dist/Voicemail/constants.js +61 -0
  148. package/dist/Voicemail/constants.js.map +1 -0
  149. package/dist/Voicemail/types.js +7 -0
  150. package/dist/Voicemail/types.js.map +1 -0
  151. package/dist/Voicemail/voicemailFixture.js +524 -0
  152. package/dist/Voicemail/voicemailFixture.js.map +1 -0
  153. package/dist/api.js +157 -0
  154. package/dist/api.js.map +1 -0
  155. package/dist/common/Utils.js +1483 -0
  156. package/dist/common/Utils.js.map +1 -0
  157. package/dist/common/Utils.test.js +1989 -0
  158. package/dist/common/Utils.test.js.map +1 -0
  159. package/dist/common/constants.js +62 -0
  160. package/dist/common/constants.js.map +1 -0
  161. package/dist/common/index.js +19 -0
  162. package/dist/common/index.js.map +1 -0
  163. package/dist/common/testUtil.js +983 -0
  164. package/dist/common/testUtil.js.map +1 -0
  165. package/dist/common/types.js +75 -0
  166. package/dist/common/types.js.map +1 -0
  167. package/dist/index.js +321 -0
  168. package/dist/index.js.map +1 -0
  169. package/dist/module/CallHistory/CallHistory.js +28 -17
  170. package/dist/module/CallingClient/CallingClient.js +43 -1
  171. package/dist/module/CallingClient/calling/call.js +3 -2
  172. package/dist/module/CallingClient/constants.js +2 -0
  173. package/dist/module/CallingClient/registration/register.js +8 -0
  174. package/dist/types/CallHistory/CallHistory.d.ts.map +1 -1
  175. package/dist/types/CallingClient/CallingClient.d.ts +2 -1
  176. package/dist/types/CallingClient/CallingClient.d.ts.map +1 -1
  177. package/dist/types/CallingClient/calling/call.d.ts.map +1 -1
  178. package/dist/types/CallingClient/constants.d.ts +2 -0
  179. package/dist/types/CallingClient/constants.d.ts.map +1 -1
  180. package/dist/types/CallingClient/registration/register.d.ts +2 -1
  181. package/dist/types/CallingClient/registration/register.d.ts.map +1 -1
  182. package/dist/types/CallingClient/registration/types.d.ts +2 -1
  183. package/dist/types/CallingClient/registration/types.d.ts.map +1 -1
  184. package/dist/types/CallingClient/types.d.ts +2 -1
  185. package/dist/types/CallingClient/types.d.ts.map +1 -1
  186. package/dist/types/common/types.d.ts +4 -0
  187. package/dist/types/common/types.d.ts.map +1 -1
  188. package/package.json +4 -4
@@ -0,0 +1,699 @@
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.BroadworksBackendConnector = void 0;
9
+ var _regenerator = _interopRequireDefault(require("@babel/runtime-corejs2/regenerator"));
10
+ var _stringify = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/json/stringify"));
11
+ var _values = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/values"));
12
+ var _keys = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/keys"));
13
+ var _isArray = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/array/is-array"));
14
+ var _promise = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/promise"));
15
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/typeof"));
16
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/asyncToGenerator"));
17
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/classCallCheck"));
18
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/createClass"));
19
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
20
+ var _types = require("../Errors/types");
21
+ var _SDKConnector = _interopRequireDefault(require("../SDKConnector"));
22
+ var _constants = require("../common/constants");
23
+ var _Utils = require("../common/Utils");
24
+ var _types2 = require("../common/types");
25
+ var _Logger = _interopRequireDefault(require("../Logger"));
26
+ var _constants2 = require("./constants");
27
+ /* eslint-disable valid-jsdoc */
28
+ /* eslint-disable no-underscore-dangle */
29
+ /**
30
+ *
31
+ */
32
+ var BroadworksBackendConnector = exports.BroadworksBackendConnector = /*#__PURE__*/function () {
33
+ /**
34
+ * @param webex -.
35
+ * @param logger -.
36
+ */
37
+ function BroadworksBackendConnector(webex, logger) {
38
+ (0, _classCallCheck2.default)(this, BroadworksBackendConnector);
39
+ (0, _defineProperty2.default)(this, "bwtoken", void 0);
40
+ (0, _defineProperty2.default)(this, "userId", void 0);
41
+ (0, _defineProperty2.default)(this, "xsiAccessToken", void 0);
42
+ (0, _defineProperty2.default)(this, "xsiEndpoint", void 0);
43
+ (0, _defineProperty2.default)(this, "context", void 0);
44
+ (0, _defineProperty2.default)(this, "sdkConnector", void 0);
45
+ (0, _defineProperty2.default)(this, "webex", void 0);
46
+ (0, _defineProperty2.default)(this, "xsiVoiceMessageURI", void 0);
47
+ this.sdkConnector = _SDKConnector.default;
48
+ /* istanbul ignore else */
49
+ if (!this.sdkConnector.getWebex()) {
50
+ _SDKConnector.default.setWebex(webex);
51
+ }
52
+ this.webex = this.sdkConnector.getWebex();
53
+ this.context = Math.random().toString(_constants2.RADIX_RAND).substring(_constants2.PREFIX);
54
+ _Logger.default.setLogger(logger.level, _constants2.BROADWORKS_VOICEMAIL_FILE);
55
+ }
56
+
57
+ /**
58
+ * Initializing Broadworks voicemail connector.
59
+ *
60
+ * @returns Response.
61
+ */
62
+ return (0, _createClass2.default)(BroadworksBackendConnector, [{
63
+ key: "init",
64
+ value: function init() {
65
+ var loggerContext = {
66
+ file: _constants2.BROADWORKS_VOICEMAIL_FILE,
67
+ method: _constants2.METHODS.INIT
68
+ };
69
+ _Logger.default.info(_constants.METHOD_START_MESSAGE, loggerContext);
70
+ var response = this.setXsiVoiceMessageURI();
71
+ _Logger.default.log('Successfully initialized Broadworks voicemail connector', loggerContext);
72
+ return response;
73
+ }
74
+
75
+ /**
76
+ * SDK connector function.
77
+ *
78
+ * @returns SdkConnector.
79
+ */
80
+ }, {
81
+ key: "getSDKConnector",
82
+ value: function getSDKConnector() {
83
+ return this.sdkConnector;
84
+ }
85
+
86
+ /**
87
+ * Decoding the userId from the broadworks token.
88
+ */
89
+ }, {
90
+ key: "getUserId",
91
+ value: (function () {
92
+ var _getUserId = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee() {
93
+ var loggerContext, decodedString, error, errorInfo, _t;
94
+ return _regenerator.default.wrap(function (_context) {
95
+ while (1) switch (_context.prev = _context.next) {
96
+ case 0:
97
+ loggerContext = {
98
+ file: _constants2.BROADWORKS_VOICEMAIL_FILE,
99
+ method: _constants2.METHODS.GET_USER_ID
100
+ };
101
+ _Logger.default.info(_constants.METHOD_START_MESSAGE, loggerContext);
102
+ _context.prev = 1;
103
+ _context.next = 2;
104
+ return this.getBwToken();
105
+ case 2:
106
+ if (!(this.bwtoken && this.bwtoken.split('.').length > 1)) {
107
+ _context.next = 3;
108
+ break;
109
+ }
110
+ decodedString = Buffer.from(this.bwtoken.split('.')[1], _constants.BASE64).toString(_constants.BINARY);
111
+ this.userId = JSON.parse(decodedString).sub;
112
+ return _context.abrupt("return", this.userId);
113
+ case 3:
114
+ error = _types.ERROR_CODE.UNAUTHORIZED;
115
+ /* If the token is not valid, throw 401 and stop the execution */
116
+ throw new Error("".concat(error));
117
+ case 4:
118
+ _context.prev = 4;
119
+ _t = _context["catch"](1);
120
+ /* Catch the 401 error from try block, return the error object to user */
121
+ errorInfo = {
122
+ statusCode: _t instanceof Error ? Number(_t.message) : ''
123
+ };
124
+ _Logger.default.error("Failed to get userId: ".concat((0, _stringify.default)(_t)), loggerContext);
125
+ _context.next = 5;
126
+ return (0, _Utils.uploadLogs)();
127
+ case 5:
128
+ return _context.abrupt("return", (0, _Utils.serviceErrorCodeHandler)(errorInfo, loggerContext));
129
+ case 6:
130
+ case "end":
131
+ return _context.stop();
132
+ }
133
+ }, _callee, this, [[1, 4]]);
134
+ }));
135
+ function getUserId() {
136
+ return _getUserId.apply(this, arguments);
137
+ }
138
+ return getUserId;
139
+ }()
140
+ /**
141
+ * Fetch the Broadworks token.
142
+ */
143
+ )
144
+ }, {
145
+ key: "getBwToken",
146
+ value: (function () {
147
+ var _getBwToken = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee2() {
148
+ var _this$webex$internal$;
149
+ var loggerContext, broadworksIdpProxyUrl, bwTokenResponse, response, _t2;
150
+ return _regenerator.default.wrap(function (_context2) {
151
+ while (1) switch (_context2.prev = _context2.next) {
152
+ case 0:
153
+ loggerContext = {
154
+ file: _constants2.BROADWORKS_VOICEMAIL_FILE,
155
+ method: _constants2.METHODS.GET_BW_TOKEN
156
+ };
157
+ _Logger.default.info(_constants.METHOD_START_MESSAGE, loggerContext);
158
+ broadworksIdpProxyUrl = ((_this$webex$internal$ = this.webex.internal.services._serviceUrls) === null || _this$webex$internal$ === void 0 ? void 0 : _this$webex$internal$.broadworksIdpProxy) || this.webex.internal.services.get(this.webex.internal.services._activeServices.broadworksIdpProxy);
159
+ _context2.prev = 1;
160
+ _context2.next = 2;
161
+ return this.webex.request({
162
+ uri: "".concat(broadworksIdpProxyUrl).concat(_constants2.BW_TOKEN_FETCH_ENDPOINT),
163
+ method: _types2.HTTP_METHODS.GET
164
+ });
165
+ case 2:
166
+ bwTokenResponse = _context2.sent;
167
+ response = bwTokenResponse.body;
168
+ this.bwtoken = response[_constants.TOKEN][_constants.BEARER];
169
+ _Logger.default.log('Successfully fetched Broadworks token', loggerContext);
170
+ _context2.next = 4;
171
+ break;
172
+ case 3:
173
+ _context2.prev = 3;
174
+ _t2 = _context2["catch"](1);
175
+ _Logger.default.error("Broadworks token exception: ".concat((0, _stringify.default)(_t2)), loggerContext);
176
+ _context2.next = 4;
177
+ return (0, _Utils.uploadLogs)();
178
+ case 4:
179
+ case "end":
180
+ return _context2.stop();
181
+ }
182
+ }, _callee2, this, [[1, 3]]);
183
+ }));
184
+ function getBwToken() {
185
+ return _getBwToken.apply(this, arguments);
186
+ }
187
+ return getBwToken;
188
+ }()
189
+ /**
190
+ * Register XSI URL.
191
+ */
192
+ )
193
+ }, {
194
+ key: "setXsiVoiceMessageURI",
195
+ value: (function () {
196
+ var _setXsiVoiceMessageURI = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee3() {
197
+ var loggerContext, userIdResponse;
198
+ return _regenerator.default.wrap(function (_context3) {
199
+ while (1) switch (_context3.prev = _context3.next) {
200
+ case 0:
201
+ loggerContext = {
202
+ file: _constants2.BROADWORKS_VOICEMAIL_FILE,
203
+ method: _constants2.METHODS.SET_XSI_VOICE_MESSAGE_URI
204
+ };
205
+ _Logger.default.info(_constants.METHOD_START_MESSAGE, loggerContext);
206
+ _context3.next = 1;
207
+ return this.getUserId();
208
+ case 1:
209
+ userIdResponse = _context3.sent;
210
+ _context3.next = 2;
211
+ return (0, _Utils.getXsiActionEndpoint)(this.webex, loggerContext, _types2.CALLING_BACKEND.BWRKS);
212
+ case 2:
213
+ this.xsiEndpoint = _context3.sent;
214
+ this.xsiAccessToken = "".concat(_constants.BEARER, " ").concat(this.bwtoken);
215
+ _Logger.default.info("XsiEndpoint is ".concat(this.xsiEndpoint), loggerContext);
216
+
217
+ /* istanbul ignore else */
218
+ if (userIdResponse && (0, _typeof2.default)(userIdResponse) !== _constants.OBJECT) {
219
+ this.xsiVoiceMessageURI = "".concat(this.xsiEndpoint, "/").concat(_constants.BW_XSI_ENDPOINT_VERSION, "/").concat(_constants.USER, "/").concat(userIdResponse, "/").concat(_constants2.VOICE_MESSAGING_MESSAGES);
220
+ userIdResponse = {
221
+ statusCode: _constants.SUCCESS_STATUS_CODE,
222
+ data: {},
223
+ message: _constants.SUCCESS_MESSAGE
224
+ };
225
+ }
226
+ _Logger.default.log('Successfully set XSI voice message URI', loggerContext);
227
+ return _context3.abrupt("return", userIdResponse);
228
+ case 3:
229
+ case "end":
230
+ return _context3.stop();
231
+ }
232
+ }, _callee3, this);
233
+ }));
234
+ function setXsiVoiceMessageURI() {
235
+ return _setXsiVoiceMessageURI.apply(this, arguments);
236
+ }
237
+ return setXsiVoiceMessageURI;
238
+ }()
239
+ /**
240
+ * Fetch voicemail list for Broadworks user.
241
+ *
242
+ * @param sort - Sort voicemail list (ASC | DESC). TODO: Once we start implementing sorting.
243
+ * @param offset - Number of records to skip.
244
+ * @param offsetLimit - Number of voicemail list to fetch from the offset.
245
+ * @param refresh - Refresh the list of voicemails from backend.
246
+ * @returns Promise.
247
+ */
248
+ )
249
+ }, {
250
+ key: "getVoicemailList",
251
+ value: (function () {
252
+ var _getVoicemailList = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee4(offset, offsetLimit, sort, refresh) {
253
+ var loggerContext, urlXsi, messageinfo, sortParam, _response$headers, _voicemailListRespons, _voicemailListRespons2, _voicemailListRespons3, response, voicemailListResponse, _voicemailListRespons4, _voicemailListRespons5, _voicemailListRespons6, _voicemailListRespons7, errorInfo, errorStatus, _fetchVoicemailList, messages, moreVMAvailable, responseDetails, _t3;
254
+ return _regenerator.default.wrap(function (_context4) {
255
+ while (1) switch (_context4.prev = _context4.next) {
256
+ case 0:
257
+ loggerContext = {
258
+ file: _constants2.BROADWORKS_VOICEMAIL_FILE,
259
+ method: _constants2.METHODS.GET_VOICEMAIL_LIST
260
+ };
261
+ _Logger.default.info("".concat(_constants.METHOD_START_MESSAGE, " with offset: ").concat(offset, ", offsetLimit: ").concat(offsetLimit, ", sort type: ").concat(sort), loggerContext);
262
+ urlXsi = "".concat(this.xsiVoiceMessageURI).concat(_constants2.JSON_FORMAT);
263
+ sortParam = (0, _values.default)(_types2.SORT).includes(sort) ? sort : _types2.SORT.DEFAULT;
264
+ /* istanbul ignore else */
265
+ if (!refresh) {
266
+ _context4.next = 7;
267
+ break;
268
+ }
269
+ _context4.prev = 1;
270
+ _context4.next = 2;
271
+ return fetch("".concat(urlXsi), {
272
+ method: _types2.HTTP_METHODS.GET,
273
+ headers: {
274
+ Authorization: this.xsiAccessToken
275
+ }
276
+ });
277
+ case 2:
278
+ response = _context4.sent;
279
+ if (response.ok) {
280
+ _context4.next = 3;
281
+ break;
282
+ }
283
+ throw new Error("".concat(response.status));
284
+ case 3:
285
+ _context4.next = 4;
286
+ return response.json();
287
+ case 4:
288
+ voicemailListResponse = _context4.sent;
289
+ _Logger.default.log("Response trackingId: ".concat((_response$headers = response.headers) === null || _response$headers === void 0 ? void 0 : _response$headers.get('trackingid')), loggerContext);
290
+ if ((0, _keys.default)(voicemailListResponse === null || voicemailListResponse === void 0 ? void 0 : (_voicemailListRespons = voicemailListResponse.VoiceMessagingMessages) === null || _voicemailListRespons === void 0 ? void 0 : _voicemailListRespons.messageInfoList).length === 0) {
291
+ messageinfo = [];
292
+ } else if (!(0, _isArray.default)(voicemailListResponse === null || voicemailListResponse === void 0 ? void 0 : (_voicemailListRespons2 = voicemailListResponse.VoiceMessagingMessages) === null || _voicemailListRespons2 === void 0 ? void 0 : (_voicemailListRespons3 = _voicemailListRespons2.messageInfoList) === null || _voicemailListRespons3 === void 0 ? void 0 : _voicemailListRespons3.messageInfo)) {
293
+ messageinfo = Array(voicemailListResponse === null || voicemailListResponse === void 0 ? void 0 : (_voicemailListRespons4 = voicemailListResponse.VoiceMessagingMessages) === null || _voicemailListRespons4 === void 0 ? void 0 : (_voicemailListRespons5 = _voicemailListRespons4.messageInfoList) === null || _voicemailListRespons5 === void 0 ? void 0 : _voicemailListRespons5.messageInfo);
294
+ } else {
295
+ messageinfo = voicemailListResponse === null || voicemailListResponse === void 0 ? void 0 : (_voicemailListRespons6 = voicemailListResponse.VoiceMessagingMessages) === null || _voicemailListRespons6 === void 0 ? void 0 : (_voicemailListRespons7 = _voicemailListRespons6.messageInfoList) === null || _voicemailListRespons7 === void 0 ? void 0 : _voicemailListRespons7.messageInfo;
296
+ messageinfo = (0, _Utils.getSortedVoicemailList)(messageinfo, sortParam);
297
+ }
298
+ (0, _Utils.storeVoicemailList)(this.context, messageinfo);
299
+ _context4.next = 7;
300
+ break;
301
+ case 5:
302
+ _context4.prev = 5;
303
+ _t3 = _context4["catch"](1);
304
+ /* Catch the exception error code from try block, return the error object to user */
305
+ errorInfo = {
306
+ statusCode: _t3 instanceof Error ? Number(_t3.message) : ''
307
+ };
308
+ _Logger.default.error("Failed to get voicemail list: ".concat((0, _stringify.default)(_t3)), loggerContext);
309
+ _context4.next = 6;
310
+ return (0, _Utils.uploadLogs)();
311
+ case 6:
312
+ errorStatus = (0, _Utils.serviceErrorCodeHandler)(errorInfo, loggerContext);
313
+ return _context4.abrupt("return", errorStatus);
314
+ case 7:
315
+ _fetchVoicemailList = (0, _Utils.fetchVoicemailList)(this.context, offset, offsetLimit, loggerContext), messages = _fetchVoicemailList.messages, moreVMAvailable = _fetchVoicemailList.moreVMAvailable;
316
+ _Logger.default.log("Successfully fetched voicemail list with ".concat(messages.length, " messages"), loggerContext);
317
+ responseDetails = {
318
+ statusCode: moreVMAvailable ? _constants.SUCCESS_STATUS_CODE : _constants2.NO_VOICEMAIL_STATUS_CODE,
319
+ data: {
320
+ voicemailList: messages
321
+ },
322
+ message: moreVMAvailable ? _constants.SUCCESS_MESSAGE : _constants2.NO_VOICEMAIL_MSG
323
+ };
324
+ return _context4.abrupt("return", responseDetails);
325
+ case 8:
326
+ case "end":
327
+ return _context4.stop();
328
+ }
329
+ }, _callee4, this, [[1, 5]]);
330
+ }));
331
+ function getVoicemailList(_x, _x2, _x3, _x4) {
332
+ return _getVoicemailList.apply(this, arguments);
333
+ }
334
+ return getVoicemailList;
335
+ }()
336
+ /**
337
+ * Fetch the voicemail contents for the messageId.
338
+ *
339
+ * @param messageId - String result from the voicemail list.
340
+ * @returns Promise.
341
+ */
342
+ )
343
+ }, {
344
+ key: "getVoicemailContent",
345
+ value: (function () {
346
+ var _getVoicemailContent = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee5(messageId) {
347
+ var loggerContext, _response$headers2, _mediaDetails$childNo, _mediaDetails$childNo2, voicemailContentUrl, response, xmlData, parser, xmlDOM, mediaDetails, mediaType, mediaContent, responseDetails, errorInfo, errorStatus, _t4;
348
+ return _regenerator.default.wrap(function (_context5) {
349
+ while (1) switch (_context5.prev = _context5.next) {
350
+ case 0:
351
+ loggerContext = {
352
+ file: _constants2.BROADWORKS_VOICEMAIL_FILE,
353
+ method: _constants2.METHODS.GET_VOICEMAIL_CONTENT
354
+ };
355
+ _Logger.default.info("".concat(_constants.METHOD_START_MESSAGE, " with messageId: ").concat(messageId), loggerContext);
356
+ _context5.prev = 1;
357
+ voicemailContentUrl = "".concat(this.xsiEndpoint).concat(messageId);
358
+ _context5.next = 2;
359
+ return fetch("".concat(voicemailContentUrl), {
360
+ method: 'GET',
361
+ headers: {
362
+ Authorization: this.xsiAccessToken
363
+ }
364
+ });
365
+ case 2:
366
+ response = _context5.sent;
367
+ if (response.ok) {
368
+ _context5.next = 3;
369
+ break;
370
+ }
371
+ throw new Error("".concat(response.status));
372
+ case 3:
373
+ _context5.next = 4;
374
+ return response.text();
375
+ case 4:
376
+ xmlData = _context5.sent;
377
+ _Logger.default.log("Response trackingId: ".concat((_response$headers2 = response.headers) === null || _response$headers2 === void 0 ? void 0 : _response$headers2.get('trackingid')), loggerContext);
378
+ parser = new DOMParser();
379
+ xmlDOM = parser.parseFromString(xmlData, _constants.XML_TYPE);
380
+ mediaDetails = xmlDOM.getElementsByTagName(_constants2.MESSAGE_MEDIA_CONTENT)[0];
381
+ mediaType = (_mediaDetails$childNo = mediaDetails.childNodes[1]) === null || _mediaDetails$childNo === void 0 ? void 0 : _mediaDetails$childNo.textContent;
382
+ mediaContent = (_mediaDetails$childNo2 = mediaDetails.childNodes[2]) === null || _mediaDetails$childNo2 === void 0 ? void 0 : _mediaDetails$childNo2.textContent;
383
+ _Logger.default.info("Media type is ".concat(mediaType), loggerContext);
384
+ _Logger.default.log("Successfully fetched voicemail content for message ID: ".concat(messageId), loggerContext);
385
+ responseDetails = {
386
+ statusCode: response === null || response === void 0 ? void 0 : response.status,
387
+ data: {
388
+ voicemailContent: {
389
+ type: mediaType,
390
+ content: mediaContent
391
+ }
392
+ },
393
+ message: _constants.SUCCESS_MESSAGE
394
+ };
395
+ return _context5.abrupt("return", responseDetails);
396
+ case 5:
397
+ _context5.prev = 5;
398
+ _t4 = _context5["catch"](1);
399
+ /* Catch the exception error code from try block, return the error object to user */
400
+ errorInfo = {
401
+ statusCode: _t4 instanceof Error ? Number(_t4.message) : ''
402
+ };
403
+ _Logger.default.error("Failed to get voicemail content: ".concat((0, _stringify.default)(_t4)), loggerContext);
404
+ _context5.next = 6;
405
+ return (0, _Utils.uploadLogs)();
406
+ case 6:
407
+ errorStatus = (0, _Utils.serviceErrorCodeHandler)(errorInfo, loggerContext);
408
+ return _context5.abrupt("return", errorStatus);
409
+ case 7:
410
+ case "end":
411
+ return _context5.stop();
412
+ }
413
+ }, _callee5, this, [[1, 5]]);
414
+ }));
415
+ function getVoicemailContent(_x5) {
416
+ return _getVoicemailContent.apply(this, arguments);
417
+ }
418
+ return getVoicemailContent;
419
+ }()
420
+ /**
421
+ * Fetches a quantitative summary of voicemails for a user.
422
+ * Not implemented for this connector.
423
+ */
424
+ )
425
+ }, {
426
+ key: "getVoicemailSummary",
427
+ value: (function () {
428
+ var _getVoicemailSummary = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee6() {
429
+ return _regenerator.default.wrap(function (_context6) {
430
+ while (1) switch (_context6.prev = _context6.next) {
431
+ case 0:
432
+ return _context6.abrupt("return", _promise.default.resolve(null));
433
+ case 1:
434
+ case "end":
435
+ return _context6.stop();
436
+ }
437
+ }, _callee6);
438
+ }));
439
+ function getVoicemailSummary() {
440
+ return _getVoicemailSummary.apply(this, arguments);
441
+ }
442
+ return getVoicemailSummary;
443
+ }()
444
+ /**
445
+ * Fetch voicemail read message status for the messageId.
446
+ *
447
+ * @param messageId -string result from the voicemail list.
448
+ * @returns Promise.
449
+ */
450
+ )
451
+ }, {
452
+ key: "voicemailMarkAsRead",
453
+ value: (function () {
454
+ var _voicemailMarkAsRead = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee7(messageId) {
455
+ var loggerContext, _response$headers3, voicemailContentUrl, response, responseDetails, errorInfo, errorStatus, _t5;
456
+ return _regenerator.default.wrap(function (_context7) {
457
+ while (1) switch (_context7.prev = _context7.next) {
458
+ case 0:
459
+ loggerContext = {
460
+ file: _constants2.BROADWORKS_VOICEMAIL_FILE,
461
+ method: _constants2.METHODS.VOICEMAIL_MARK_AS_READ
462
+ };
463
+ _Logger.default.info("".concat(_constants.METHOD_START_MESSAGE, " with messageId: ").concat(messageId), loggerContext);
464
+ _context7.prev = 1;
465
+ voicemailContentUrl = "".concat(this.xsiEndpoint).concat(messageId, "/").concat(_constants2.MARK_AS_READ);
466
+ _context7.next = 2;
467
+ return fetch(voicemailContentUrl, {
468
+ method: _types2.HTTP_METHODS.PUT,
469
+ headers: {
470
+ Authorization: this.xsiAccessToken
471
+ }
472
+ });
473
+ case 2:
474
+ response = _context7.sent;
475
+ if (response.ok) {
476
+ _context7.next = 3;
477
+ break;
478
+ }
479
+ throw new Error("".concat(response.status));
480
+ case 3:
481
+ _Logger.default.log("Successfully marked voicemail with ID ".concat(messageId, " as read"), loggerContext);
482
+ _Logger.default.log("Response trackingId: ".concat((_response$headers3 = response.headers) === null || _response$headers3 === void 0 ? void 0 : _response$headers3.get('trackingid')), loggerContext);
483
+ responseDetails = {
484
+ statusCode: response.status,
485
+ data: {},
486
+ message: _constants.SUCCESS_MESSAGE
487
+ };
488
+ return _context7.abrupt("return", responseDetails);
489
+ case 4:
490
+ _context7.prev = 4;
491
+ _t5 = _context7["catch"](1);
492
+ /* Catch the exception error code from try block, return the error object to user */
493
+ errorInfo = {
494
+ statusCode: _t5 instanceof Error ? Number(_t5.message) : ''
495
+ };
496
+ _Logger.default.error("Failed to mark voicemail as read: ".concat((0, _stringify.default)(_t5)), loggerContext);
497
+ _context7.next = 5;
498
+ return (0, _Utils.uploadLogs)();
499
+ case 5:
500
+ errorStatus = (0, _Utils.serviceErrorCodeHandler)(errorInfo, loggerContext);
501
+ return _context7.abrupt("return", errorStatus);
502
+ case 6:
503
+ case "end":
504
+ return _context7.stop();
505
+ }
506
+ }, _callee7, this, [[1, 4]]);
507
+ }));
508
+ function voicemailMarkAsRead(_x6) {
509
+ return _voicemailMarkAsRead.apply(this, arguments);
510
+ }
511
+ return voicemailMarkAsRead;
512
+ }()
513
+ /**
514
+ * Fetch voicemail unread message status for the messageId.
515
+ *
516
+ * @param messageId -string result from the voicemail list.
517
+ * @returns Promise.
518
+ */
519
+ )
520
+ }, {
521
+ key: "voicemailMarkAsUnread",
522
+ value: (function () {
523
+ var _voicemailMarkAsUnread = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee8(messageId) {
524
+ var loggerContext, voicemailContentUrl, response, responseDetails, errorInfo, errorStatus, _t6;
525
+ return _regenerator.default.wrap(function (_context8) {
526
+ while (1) switch (_context8.prev = _context8.next) {
527
+ case 0:
528
+ loggerContext = {
529
+ file: _constants2.BROADWORKS_VOICEMAIL_FILE,
530
+ method: _constants2.METHODS.VOICEMAIL_MARK_AS_UNREAD
531
+ };
532
+ _Logger.default.info("".concat(_constants.METHOD_START_MESSAGE, " with messageId: ").concat(messageId), loggerContext);
533
+ _context8.prev = 1;
534
+ voicemailContentUrl = "".concat(this.xsiEndpoint).concat(messageId, "/").concat(_constants2.MARK_AS_UNREAD);
535
+ _context8.next = 2;
536
+ return fetch(voicemailContentUrl, {
537
+ method: _types2.HTTP_METHODS.PUT,
538
+ headers: {
539
+ Authorization: this.xsiAccessToken
540
+ }
541
+ });
542
+ case 2:
543
+ response = _context8.sent;
544
+ if (response.ok) {
545
+ _context8.next = 3;
546
+ break;
547
+ }
548
+ throw new Error("".concat(response.status));
549
+ case 3:
550
+ _Logger.default.log("Successfully marked voicemail with ID ".concat(messageId, " as unread"), loggerContext);
551
+ responseDetails = {
552
+ statusCode: response.status,
553
+ data: {},
554
+ message: _constants.SUCCESS_MESSAGE
555
+ };
556
+ return _context8.abrupt("return", responseDetails);
557
+ case 4:
558
+ _context8.prev = 4;
559
+ _t6 = _context8["catch"](1);
560
+ /* Catch the exception error code from try block, return the error object to user */
561
+ errorInfo = {
562
+ statusCode: _t6 instanceof Error ? Number(_t6.message) : ''
563
+ };
564
+ _Logger.default.error("Failed to mark voicemail as unread: ".concat((0, _stringify.default)(_t6)), loggerContext);
565
+ _context8.next = 5;
566
+ return (0, _Utils.uploadLogs)();
567
+ case 5:
568
+ errorStatus = (0, _Utils.serviceErrorCodeHandler)(errorInfo, loggerContext);
569
+ return _context8.abrupt("return", errorStatus);
570
+ case 6:
571
+ case "end":
572
+ return _context8.stop();
573
+ }
574
+ }, _callee8, this, [[1, 4]]);
575
+ }));
576
+ function voicemailMarkAsUnread(_x7) {
577
+ return _voicemailMarkAsUnread.apply(this, arguments);
578
+ }
579
+ return voicemailMarkAsUnread;
580
+ }()
581
+ /**
582
+ * Fetch voicemail delete status for the messageId.
583
+ *
584
+ * @param messageId -string result from the voicemail list.
585
+ * @returns Promise.
586
+ */
587
+ )
588
+ }, {
589
+ key: "deleteVoicemail",
590
+ value: (function () {
591
+ var _deleteVoicemail = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee9(messageId) {
592
+ var loggerContext, voicemailContentUrl, response, responseDetails, errorInfo, errorStatus, _t7;
593
+ return _regenerator.default.wrap(function (_context9) {
594
+ while (1) switch (_context9.prev = _context9.next) {
595
+ case 0:
596
+ loggerContext = {
597
+ file: _constants2.BROADWORKS_VOICEMAIL_FILE,
598
+ method: _constants2.METHODS.DELETE_VOICEMAIL
599
+ };
600
+ _Logger.default.info("".concat(_constants.METHOD_START_MESSAGE, " with messageId: ").concat(messageId), loggerContext);
601
+ _context9.prev = 1;
602
+ voicemailContentUrl = "".concat(this.xsiEndpoint).concat(messageId);
603
+ _context9.next = 2;
604
+ return fetch(voicemailContentUrl, {
605
+ method: _types2.HTTP_METHODS.DELETE,
606
+ headers: {
607
+ Authorization: this.xsiAccessToken
608
+ }
609
+ });
610
+ case 2:
611
+ response = _context9.sent;
612
+ if (response.ok) {
613
+ _context9.next = 3;
614
+ break;
615
+ }
616
+ throw new Error("".concat(response.status));
617
+ case 3:
618
+ _Logger.default.log("Successfully deleted voicemail with ID ".concat(messageId), loggerContext);
619
+ responseDetails = {
620
+ statusCode: response.status,
621
+ data: {},
622
+ message: _constants.SUCCESS_MESSAGE
623
+ };
624
+ return _context9.abrupt("return", responseDetails);
625
+ case 4:
626
+ _context9.prev = 4;
627
+ _t7 = _context9["catch"](1);
628
+ /* Catch the exception error code from try block, return the error object to user */
629
+ errorInfo = {
630
+ statusCode: _t7 instanceof Error ? Number(_t7.message) : ''
631
+ };
632
+ _Logger.default.error("Failed to delete voicemail: ".concat((0, _stringify.default)(_t7)), loggerContext);
633
+ _context9.next = 5;
634
+ return (0, _Utils.uploadLogs)();
635
+ case 5:
636
+ errorStatus = (0, _Utils.serviceErrorCodeHandler)(errorInfo, loggerContext);
637
+ return _context9.abrupt("return", errorStatus);
638
+ case 6:
639
+ case "end":
640
+ return _context9.stop();
641
+ }
642
+ }, _callee9, this, [[1, 4]]);
643
+ }));
644
+ function deleteVoicemail(_x8) {
645
+ return _deleteVoicemail.apply(this, arguments);
646
+ }
647
+ return deleteVoicemail;
648
+ }()
649
+ /**
650
+ * Fetch voicemail transcript for the messageId.
651
+ *
652
+ * @param messageId - MessageId to fetch voicemail transcript.
653
+ * @returns Promise.
654
+ */
655
+ )
656
+ }, {
657
+ key: "getVMTranscript",
658
+ value: (function () {
659
+ var _getVMTranscript = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee0(messageId) {
660
+ var loggerContext;
661
+ return _regenerator.default.wrap(function (_context0) {
662
+ while (1) switch (_context0.prev = _context0.next) {
663
+ case 0:
664
+ loggerContext = {
665
+ file: _constants2.BROADWORKS_VOICEMAIL_FILE,
666
+ method: _constants2.METHODS.GET_VM_TRANSCRIPT
667
+ };
668
+ _Logger.default.info("".concat(_constants.METHOD_START_MESSAGE, " with messageId: ").concat(messageId), loggerContext);
669
+ return _context0.abrupt("return", _promise.default.resolve(null));
670
+ case 1:
671
+ case "end":
672
+ return _context0.stop();
673
+ }
674
+ }, _callee0);
675
+ }));
676
+ function getVMTranscript(_x9) {
677
+ return _getVMTranscript.apply(this, arguments);
678
+ }
679
+ return getVMTranscript;
680
+ }()
681
+ /**
682
+ * Resolve the Contact from userId or display name.
683
+ * Not implemented for this connector.
684
+ *
685
+ * @param callingPartyInfo - Calling Party Info.
686
+ */
687
+ )
688
+ }, {
689
+ key: "resolveContact",
690
+ value: function resolveContact(callingPartyInfo) {
691
+ _Logger.default.info("".concat(_constants.METHOD_START_MESSAGE, " with Calling Party Info: ").concat(callingPartyInfo), {
692
+ file: _constants2.BROADWORKS_VOICEMAIL_FILE,
693
+ method: _constants2.METHODS.RESOLVE_CONTACT
694
+ });
695
+ return _promise.default.resolve(null);
696
+ }
697
+ }]);
698
+ }();
699
+ //# sourceMappingURL=BroadworksBackendConnector.js.map