@webex/calling 3.12.0-next.4 → 3.12.0-next.40
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/CallingClient/CallingClient.js +463 -205
- package/dist/CallingClient/CallingClient.js.map +1 -1
- package/dist/CallingClient/CallingClient.test.js +170 -77
- package/dist/CallingClient/CallingClient.test.js.map +1 -1
- package/dist/CallingClient/calling/call.js +589 -445
- package/dist/CallingClient/calling/call.js.map +1 -1
- package/dist/CallingClient/calling/call.test.js +695 -445
- package/dist/CallingClient/calling/call.test.js.map +1 -1
- package/dist/CallingClient/calling/callManager.js +53 -30
- package/dist/CallingClient/calling/callManager.js.map +1 -1
- package/dist/CallingClient/calling/callManager.test.js +35 -0
- package/dist/CallingClient/calling/callManager.test.js.map +1 -1
- package/dist/CallingClient/calling/types.js +2 -0
- package/dist/CallingClient/calling/types.js.map +1 -1
- package/dist/CallingClient/constants.js +25 -3
- package/dist/CallingClient/constants.js.map +1 -1
- package/dist/CallingClient/line/index.js +4 -1
- package/dist/CallingClient/line/index.js.map +1 -1
- package/dist/CallingClient/line/line.test.js +16 -1
- package/dist/CallingClient/line/line.test.js.map +1 -1
- package/dist/CallingClient/registration/register.js +712 -406
- package/dist/CallingClient/registration/register.js.map +1 -1
- package/dist/CallingClient/registration/register.test.js +202 -21
- package/dist/CallingClient/registration/register.test.js.map +1 -1
- package/dist/CallingClient/registration/types.js.map +1 -1
- package/dist/CallingClient/registration/webWorker.js +41 -104
- package/dist/CallingClient/registration/webWorker.js.map +1 -1
- package/dist/CallingClient/registration/webWorker.test.js +39 -153
- package/dist/CallingClient/registration/webWorker.test.js.map +1 -1
- package/dist/CallingClient/registration/webWorkerStr.js +1 -1
- package/dist/CallingClient/registration/webWorkerStr.js.map +1 -1
- package/dist/CallingClient/utils/constants.js +46 -0
- package/dist/CallingClient/utils/constants.js.map +1 -0
- package/dist/CallingClient/utils/index.js +63 -0
- package/dist/CallingClient/utils/index.js.map +1 -0
- package/dist/CallingClient/utils/mobiusSocketMapper.js +122 -0
- package/dist/CallingClient/utils/mobiusSocketMapper.js.map +1 -0
- package/dist/CallingClient/utils/mobiusSocketMapper.test.js +211 -0
- package/dist/CallingClient/utils/mobiusSocketMapper.test.js.map +1 -0
- package/dist/CallingClient/utils/request.js +354 -0
- package/dist/CallingClient/utils/request.js.map +1 -0
- package/dist/CallingClient/utils/request.test.js +881 -0
- package/dist/CallingClient/utils/request.test.js.map +1 -0
- package/dist/CallingClient/utils/types.js +7 -0
- package/dist/CallingClient/utils/types.js.map +1 -0
- package/dist/CallingClient/utils/wsFeatureFlag.js +70 -0
- package/dist/CallingClient/utils/wsFeatureFlag.js.map +1 -0
- package/dist/CallingClient/utils/wsFeatureFlag.test.js +139 -0
- package/dist/CallingClient/utils/wsFeatureFlag.test.js.map +1 -0
- package/dist/Contacts/ContactsClient.js +13 -11
- package/dist/Contacts/ContactsClient.js.map +1 -1
- package/dist/Contacts/ContactsClient.test.js +3 -8
- package/dist/Contacts/ContactsClient.test.js.map +1 -1
- package/dist/Events/types.js +1 -11
- package/dist/Events/types.js.map +1 -1
- package/dist/Metrics/index.js +63 -2
- package/dist/Metrics/index.js.map +1 -1
- package/dist/Metrics/index.test.js +357 -1
- package/dist/Metrics/index.test.js.map +1 -1
- package/dist/Metrics/types.js +19 -1
- package/dist/Metrics/types.js.map +1 -1
- package/dist/SDKConnector/types.js.map +1 -1
- package/dist/common/Utils.js +138 -44
- package/dist/common/Utils.js.map +1 -1
- package/dist/common/testUtil.js +8 -4
- package/dist/common/testUtil.js.map +1 -1
- package/dist/common/types.js +2 -0
- package/dist/common/types.js.map +1 -1
- package/dist/mobius-socket/config.js +24 -0
- package/dist/mobius-socket/config.js.map +1 -0
- package/dist/mobius-socket/errors.js +143 -0
- package/dist/mobius-socket/errors.js.map +1 -0
- package/dist/mobius-socket/errors.test.js +20 -0
- package/dist/mobius-socket/errors.test.js.map +1 -0
- package/dist/mobius-socket/index.js +57 -0
- package/dist/mobius-socket/index.js.map +1 -0
- package/dist/mobius-socket/mobius-socket-events.test.js +492 -0
- package/dist/mobius-socket/mobius-socket-events.test.js.map +1 -0
- package/dist/mobius-socket/mobius-socket.js +841 -0
- package/dist/mobius-socket/mobius-socket.js.map +1 -0
- package/dist/mobius-socket/mobius-socket.test.js +1845 -0
- package/dist/mobius-socket/mobius-socket.test.js.map +1 -0
- package/dist/mobius-socket/socket/constants.js +55 -0
- package/dist/mobius-socket/socket/constants.js.map +1 -0
- package/dist/mobius-socket/socket/index.js +15 -0
- package/dist/mobius-socket/socket/index.js.map +1 -0
- package/dist/mobius-socket/socket/socket-base.js +604 -0
- package/dist/mobius-socket/socket/socket-base.js.map +1 -0
- package/dist/mobius-socket/socket/socket.js +19 -0
- package/dist/mobius-socket/socket/socket.js.map +1 -0
- package/dist/mobius-socket/socket/socket.shim.js +26 -0
- package/dist/mobius-socket/socket/socket.shim.js.map +1 -0
- package/dist/mobius-socket/socket/types.js +7 -0
- package/dist/mobius-socket/socket/types.js.map +1 -0
- package/dist/mobius-socket/socket.test.js +727 -0
- package/dist/mobius-socket/socket.test.js.map +1 -0
- package/dist/mobius-socket/test/mocha-helpers.js +23 -0
- package/dist/mobius-socket/test/mocha-helpers.js.map +1 -0
- package/dist/mobius-socket/test/promise-tick.js +28 -0
- package/dist/mobius-socket/test/promise-tick.js.map +1 -0
- package/dist/mobius-socket/types.js +7 -0
- package/dist/mobius-socket/types.js.map +1 -0
- package/dist/module/CallingClient/CallingClient.js +141 -10
- package/dist/module/CallingClient/calling/call.js +177 -61
- package/dist/module/CallingClient/calling/callManager.js +27 -7
- package/dist/module/CallingClient/calling/types.js +2 -0
- package/dist/module/CallingClient/constants.js +21 -0
- package/dist/module/CallingClient/line/index.js +2 -2
- package/dist/module/CallingClient/registration/register.js +234 -62
- package/dist/module/CallingClient/registration/webWorker.js +42 -61
- package/dist/module/CallingClient/registration/webWorkerStr.js +47 -82
- package/dist/module/CallingClient/utils/constants.js +30 -0
- package/dist/module/CallingClient/utils/index.js +5 -0
- package/dist/module/CallingClient/utils/mobiusSocketMapper.js +72 -0
- package/dist/module/CallingClient/utils/request.js +165 -0
- package/dist/module/CallingClient/utils/types.js +1 -0
- package/dist/module/CallingClient/utils/wsFeatureFlag.js +41 -0
- package/dist/module/Contacts/ContactsClient.js +1 -1
- package/dist/module/Events/types.js +0 -10
- package/dist/module/Metrics/index.js +48 -1
- package/dist/module/Metrics/types.js +18 -0
- package/dist/module/common/Utils.js +52 -12
- package/dist/module/common/testUtil.js +5 -1
- package/dist/module/common/types.js +2 -0
- package/dist/module/mobius-socket/config.js +15 -0
- package/dist/module/mobius-socket/errors.js +58 -0
- package/dist/module/mobius-socket/index.js +24 -0
- package/dist/module/mobius-socket/mobius-socket.js +589 -0
- package/dist/module/mobius-socket/socket/constants.js +26 -0
- package/dist/module/mobius-socket/socket/index.js +4 -0
- package/dist/module/mobius-socket/socket/socket-base.js +368 -0
- package/dist/module/mobius-socket/socket/socket.js +9 -0
- package/dist/module/mobius-socket/socket/socket.shim.js +12 -0
- package/dist/module/mobius-socket/socket/types.js +1 -0
- package/dist/module/mobius-socket/types.js +1 -0
- package/dist/types/CallingClient/CallingClient.d.ts +7 -0
- package/dist/types/CallingClient/CallingClient.d.ts.map +1 -1
- package/dist/types/CallingClient/calling/call.d.ts +12 -0
- package/dist/types/CallingClient/calling/call.d.ts.map +1 -1
- package/dist/types/CallingClient/calling/callManager.d.ts +3 -2
- package/dist/types/CallingClient/calling/callManager.d.ts.map +1 -1
- package/dist/types/CallingClient/calling/types.d.ts +34 -9
- package/dist/types/CallingClient/calling/types.d.ts.map +1 -1
- package/dist/types/CallingClient/constants.d.ts +21 -0
- package/dist/types/CallingClient/constants.d.ts.map +1 -1
- package/dist/types/CallingClient/line/index.d.ts +1 -1
- package/dist/types/CallingClient/line/index.d.ts.map +1 -1
- package/dist/types/CallingClient/registration/register.d.ts +7 -1
- package/dist/types/CallingClient/registration/register.d.ts.map +1 -1
- package/dist/types/CallingClient/registration/types.d.ts +4 -2
- package/dist/types/CallingClient/registration/types.d.ts.map +1 -1
- package/dist/types/CallingClient/registration/webWorker.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/CallingClient/utils/constants.d.ts +30 -0
- package/dist/types/CallingClient/utils/constants.d.ts.map +1 -0
- package/dist/types/CallingClient/utils/index.d.ts +6 -0
- package/dist/types/CallingClient/utils/index.d.ts.map +1 -0
- package/dist/types/CallingClient/utils/mobiusSocketMapper.d.ts +5 -0
- package/dist/types/CallingClient/utils/mobiusSocketMapper.d.ts.map +1 -0
- package/dist/types/CallingClient/utils/request.d.ts +24 -0
- package/dist/types/CallingClient/utils/request.d.ts.map +1 -0
- package/dist/types/CallingClient/utils/types.d.ts +29 -0
- package/dist/types/CallingClient/utils/types.d.ts.map +1 -0
- package/dist/types/CallingClient/utils/wsFeatureFlag.d.ts +4 -0
- package/dist/types/CallingClient/utils/wsFeatureFlag.d.ts.map +1 -0
- package/dist/types/Events/types.d.ts +4 -11
- package/dist/types/Events/types.d.ts.map +1 -1
- package/dist/types/Metrics/index.d.ts.map +1 -1
- package/dist/types/Metrics/types.d.ts +19 -2
- package/dist/types/Metrics/types.d.ts.map +1 -1
- package/dist/types/SDKConnector/types.d.ts +24 -0
- package/dist/types/SDKConnector/types.d.ts.map +1 -1
- package/dist/types/common/Utils.d.ts +9 -2
- package/dist/types/common/Utils.d.ts.map +1 -1
- package/dist/types/common/testUtil.d.ts +4 -1
- package/dist/types/common/testUtil.d.ts.map +1 -1
- package/dist/types/common/types.d.ts +3 -0
- package/dist/types/common/types.d.ts.map +1 -1
- package/dist/types/mobius-socket/config.d.ts +17 -0
- package/dist/types/mobius-socket/config.d.ts.map +1 -0
- package/dist/types/mobius-socket/errors.d.ts +32 -0
- package/dist/types/mobius-socket/errors.d.ts.map +1 -0
- package/dist/types/mobius-socket/index.d.ts +14 -0
- package/dist/types/mobius-socket/index.d.ts.map +1 -0
- package/dist/types/mobius-socket/mobius-socket.d.ts +48 -0
- package/dist/types/mobius-socket/mobius-socket.d.ts.map +1 -0
- package/dist/types/mobius-socket/socket/constants.d.ts +27 -0
- package/dist/types/mobius-socket/socket/constants.d.ts.map +1 -0
- package/dist/types/mobius-socket/socket/index.d.ts +5 -0
- package/dist/types/mobius-socket/socket/index.d.ts.map +1 -0
- package/dist/types/mobius-socket/socket/socket-base.d.ts +43 -0
- package/dist/types/mobius-socket/socket/socket-base.d.ts.map +1 -0
- package/dist/types/mobius-socket/socket/socket.d.ts +6 -0
- package/dist/types/mobius-socket/socket/socket.d.ts.map +1 -0
- package/dist/types/mobius-socket/socket/socket.shim.d.ts +6 -0
- package/dist/types/mobius-socket/socket/socket.shim.d.ts.map +1 -0
- package/dist/types/mobius-socket/socket/types.d.ts +61 -0
- package/dist/types/mobius-socket/socket/types.d.ts.map +1 -0
- package/dist/types/mobius-socket/types.d.ts +21 -0
- package/dist/types/mobius-socket/types.d.ts.map +1 -0
- package/package.json +20 -5
- package/src/mobius-socket/socket/socket.shim.ts +22 -0
- package/src/mobius-socket/socket/socket.ts +14 -0
|
@@ -35,14 +35,16 @@ var _SDKConnector = _interopRequireDefault(require("../SDKConnector"));
|
|
|
35
35
|
var _impl = require("../Events/impl");
|
|
36
36
|
var _types2 = require("../Events/types");
|
|
37
37
|
var _types3 = require("../common/types");
|
|
38
|
+
var _types4 = require("./calling/types");
|
|
38
39
|
var _Logger = _interopRequireDefault(require("../Logger"));
|
|
39
40
|
var _callManager = require("./calling/callManager");
|
|
40
41
|
var _constants2 = require("./constants");
|
|
41
42
|
var _line = _interopRequireDefault(require("./line"));
|
|
42
|
-
var
|
|
43
|
+
var _types5 = require("../Metrics/types");
|
|
43
44
|
var _Metrics = require("../Metrics");
|
|
44
45
|
var _windowsChromiumIceWarmupUtils = _interopRequireDefault(require("./windowsChromiumIceWarmupUtils"));
|
|
45
|
-
|
|
46
|
+
var _request = require("./utils/request");
|
|
47
|
+
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 _t11 in e) "default" !== _t11 && {}.hasOwnProperty.call(e, _t11) && ((i = (o = _Object$defineProperty) && _Object$getOwnPropertyDescriptor(e, _t11)) && (i.get || i.set) ? o(f, _t11, i) : f[_t11] = e[_t11]); return f; })(e, t); }
|
|
46
48
|
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof _Symbol && r[_Symbol$iterator] || r["@@iterator"]; if (!t) { if (_Array$isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t.return || t.return(); } finally { if (u) throw o; } } }; }
|
|
47
49
|
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? _Array$from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
48
50
|
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
@@ -73,12 +75,16 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
73
75
|
(0, _defineProperty2.default)(_this, "callManager", void 0);
|
|
74
76
|
(0, _defineProperty2.default)(_this, "metricManager", void 0);
|
|
75
77
|
(0, _defineProperty2.default)(_this, "sdkConfig", void 0);
|
|
78
|
+
(0, _defineProperty2.default)(_this, "serviceData", void 0);
|
|
76
79
|
(0, _defineProperty2.default)(_this, "primaryMobiusUris", void 0);
|
|
77
80
|
(0, _defineProperty2.default)(_this, "backupMobiusUris", void 0);
|
|
81
|
+
(0, _defineProperty2.default)(_this, "primaryWssMobiusUris", void 0);
|
|
82
|
+
(0, _defineProperty2.default)(_this, "backupWssMobiusUris", void 0);
|
|
78
83
|
(0, _defineProperty2.default)(_this, "mobiusClusters", void 0);
|
|
79
84
|
(0, _defineProperty2.default)(_this, "mobiusHost", void 0);
|
|
80
85
|
(0, _defineProperty2.default)(_this, "mediaEngine", void 0);
|
|
81
86
|
(0, _defineProperty2.default)(_this, "lineDict", {});
|
|
87
|
+
(0, _defineProperty2.default)(_this, "apiRequest", void 0);
|
|
82
88
|
(0, _defineProperty2.default)(_this, "isNetworkDown", false);
|
|
83
89
|
(0, _defineProperty2.default)(_this, "networkDownTimestamp", '');
|
|
84
90
|
(0, _defineProperty2.default)(_this, "networkUpTimestamp", '');
|
|
@@ -122,7 +128,7 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
122
128
|
method: _constants2.METHODS.MERCURY_OFFLINE
|
|
123
129
|
});
|
|
124
130
|
_this.mercuryDownTimestamp = new Date().toISOString();
|
|
125
|
-
_this.metricManager.submitConnectionMetrics(
|
|
131
|
+
_this.metricManager.submitConnectionMetrics(_types5.METRIC_EVENT.CONNECTION_ERROR, _types5.CONNECTION_ACTION.MERCURY_DOWN, _types5.METRIC_TYPE.BEHAVIORAL, _this.mercuryDownTimestamp, _this.mercuryUpTimestamp);
|
|
126
132
|
});
|
|
127
133
|
(0, _defineProperty2.default)(_this, "handleMercuryOnline", /*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee3() {
|
|
128
134
|
var callCheckInterval;
|
|
@@ -174,7 +180,7 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
174
180
|
_context3.next = 1;
|
|
175
181
|
return _this.checkCallStatus();
|
|
176
182
|
case 1:
|
|
177
|
-
_this.metricManager.submitConnectionMetrics(
|
|
183
|
+
_this.metricManager.submitConnectionMetrics(_types5.METRIC_EVENT.CONNECTION_ERROR, _types5.CONNECTION_ACTION.NETWORK_FLAP, _types5.METRIC_TYPE.BEHAVIORAL, _this.networkDownTimestamp, _this.networkUpTimestamp);
|
|
178
184
|
_context3.next = 4;
|
|
179
185
|
break;
|
|
180
186
|
case 2:
|
|
@@ -185,13 +191,63 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
185
191
|
_context3.next = 3;
|
|
186
192
|
return _this.checkCallStatus();
|
|
187
193
|
case 3:
|
|
188
|
-
_this.metricManager.submitConnectionMetrics(
|
|
194
|
+
_this.metricManager.submitConnectionMetrics(_types5.METRIC_EVENT.CONNECTION_ERROR, _types5.CONNECTION_ACTION.MERCURY_UP, _types5.METRIC_TYPE.BEHAVIORAL, _this.mercuryDownTimestamp, _this.mercuryUpTimestamp);
|
|
189
195
|
case 4:
|
|
190
196
|
case "end":
|
|
191
197
|
return _context3.stop();
|
|
192
198
|
}
|
|
193
199
|
}, _callee3);
|
|
194
200
|
})));
|
|
201
|
+
(0, _defineProperty2.default)(_this, "handleMobiusAsyncEvent", /*#__PURE__*/function () {
|
|
202
|
+
var _ref4 = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee4(event) {
|
|
203
|
+
var loggerContext, eventType, line;
|
|
204
|
+
return _regenerator.default.wrap(function (_context4) {
|
|
205
|
+
while (1) switch (_context4.prev = _context4.next) {
|
|
206
|
+
case 0:
|
|
207
|
+
loggerContext = {
|
|
208
|
+
file: _constants2.CALLING_CLIENT_FILE,
|
|
209
|
+
method: _constants2.METHODS.HANDLE_MOBIUS_ASYNC_EVENT
|
|
210
|
+
};
|
|
211
|
+
eventType = event === null || event === void 0 ? void 0 : event.data.eventType;
|
|
212
|
+
_Logger.default.trace("Mobius async event received - eventType: ".concat(eventType !== null && eventType !== void 0 ? eventType : 'undefined'), loggerContext);
|
|
213
|
+
if (eventType) {
|
|
214
|
+
_context4.next = 1;
|
|
215
|
+
break;
|
|
216
|
+
}
|
|
217
|
+
_Logger.default.warn('Dropping unsupported mobius socket payload', loggerContext);
|
|
218
|
+
return _context4.abrupt("return");
|
|
219
|
+
case 1:
|
|
220
|
+
if (!(eventType === _types4.MobiusEventType.REGISTRATION_DOWN)) {
|
|
221
|
+
_context4.next = 4;
|
|
222
|
+
break;
|
|
223
|
+
}
|
|
224
|
+
_Logger.default.warn("Received ".concat(eventType, " event from Mobius."), loggerContext);
|
|
225
|
+
line = (0, _values.default)(_this.lineDict)[0];
|
|
226
|
+
if (line) {
|
|
227
|
+
_context4.next = 2;
|
|
228
|
+
break;
|
|
229
|
+
}
|
|
230
|
+
_Logger.default.warn('No line found, skipping registration down event', loggerContext);
|
|
231
|
+
return _context4.abrupt("return");
|
|
232
|
+
case 2:
|
|
233
|
+
_context4.next = 3;
|
|
234
|
+
return line.registration.handleRegistrationDownEvent(event);
|
|
235
|
+
case 3:
|
|
236
|
+
_this.metricManager.submitMobiusSocketMetric(_types5.METRIC_EVENT.MOBIUS_SOCKET_ERROR, _types5.MOBIUS_SOCKET_ACTION.REGISTRATION_DOWN, _types5.METRIC_TYPE.BEHAVIORAL, undefined, event === null || event === void 0 ? void 0 : event.trackingId, undefined, eventType);
|
|
237
|
+
return _context4.abrupt("return");
|
|
238
|
+
case 4:
|
|
239
|
+
_this.callManager.dequeueWsEvents(event);
|
|
240
|
+
_Logger.default.trace("Mobius async event dispatched to CallManager - eventType: ".concat(eventType), loggerContext);
|
|
241
|
+
case 5:
|
|
242
|
+
case "end":
|
|
243
|
+
return _context4.stop();
|
|
244
|
+
}
|
|
245
|
+
}, _callee4);
|
|
246
|
+
}));
|
|
247
|
+
return function (_x) {
|
|
248
|
+
return _ref4.apply(this, arguments);
|
|
249
|
+
};
|
|
250
|
+
}());
|
|
195
251
|
/**
|
|
196
252
|
* Handler registered for ALL_CALLS_CLEARED event emitted by callManager.
|
|
197
253
|
*
|
|
@@ -199,10 +255,10 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
199
255
|
* will be attempted here on receiving a notification from callManager that all
|
|
200
256
|
* calls are cleaned up.
|
|
201
257
|
*/
|
|
202
|
-
(0, _defineProperty2.default)(_this, "callsClearedHandler", /*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
258
|
+
(0, _defineProperty2.default)(_this, "callsClearedHandler", /*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee6() {
|
|
203
259
|
var registration;
|
|
204
|
-
return _regenerator.default.wrap(function (
|
|
205
|
-
while (1) switch (
|
|
260
|
+
return _regenerator.default.wrap(function (_context6) {
|
|
261
|
+
while (1) switch (_context6.prev = _context6.next) {
|
|
206
262
|
case 0:
|
|
207
263
|
_Logger.default.info(_constants.METHOD_START_MESSAGE, {
|
|
208
264
|
file: _constants2.CALLING_CLIENT_FILE,
|
|
@@ -212,35 +268,35 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
212
268
|
// it will change once we have proper lineId and multiple lines as well
|
|
213
269
|
registration = (0, _values.default)(_this.lineDict)[0].registration;
|
|
214
270
|
if (registration.isDeviceRegistered()) {
|
|
215
|
-
|
|
271
|
+
_context6.next = 1;
|
|
216
272
|
break;
|
|
217
273
|
}
|
|
218
|
-
|
|
219
|
-
return _this.mutex.runExclusive(/*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
220
|
-
return _regenerator.default.wrap(function (
|
|
221
|
-
while (1) switch (
|
|
274
|
+
_context6.next = 1;
|
|
275
|
+
return _this.mutex.runExclusive(/*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee5() {
|
|
276
|
+
return _regenerator.default.wrap(function (_context5) {
|
|
277
|
+
while (1) switch (_context5.prev = _context5.next) {
|
|
222
278
|
case 0:
|
|
223
279
|
if (!registration.isReconnectPending()) {
|
|
224
|
-
|
|
280
|
+
_context5.next = 1;
|
|
225
281
|
break;
|
|
226
282
|
}
|
|
227
283
|
_Logger.default.info('All calls cleared, reconnecting', {
|
|
228
284
|
file: _constants2.CALLING_CLIENT_FILE,
|
|
229
285
|
method: _constants2.CALLS_CLEARED_HANDLER_UTIL
|
|
230
286
|
});
|
|
231
|
-
|
|
287
|
+
_context5.next = 1;
|
|
232
288
|
return registration.reconnectOnFailure(_constants2.CALLS_CLEARED_HANDLER_UTIL);
|
|
233
289
|
case 1:
|
|
234
290
|
case "end":
|
|
235
|
-
return
|
|
291
|
+
return _context5.stop();
|
|
236
292
|
}
|
|
237
|
-
},
|
|
293
|
+
}, _callee5);
|
|
238
294
|
})));
|
|
239
295
|
case 1:
|
|
240
296
|
case "end":
|
|
241
|
-
return
|
|
297
|
+
return _context6.stop();
|
|
242
298
|
}
|
|
243
|
-
},
|
|
299
|
+
}, _callee6);
|
|
244
300
|
})));
|
|
245
301
|
_this.sdkConnector = _SDKConnector.default;
|
|
246
302
|
if (!_this.sdkConnector.getWebex()) {
|
|
@@ -254,15 +310,15 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
254
310
|
_this.mutex = new _asyncMutex.Mutex();
|
|
255
311
|
_this.webex = _this.sdkConnector.getWebex();
|
|
256
312
|
_this.sdkConfig = config;
|
|
257
|
-
|
|
313
|
+
_this.serviceData = (_this$sdkConfig = _this.sdkConfig) !== null && _this$sdkConfig !== void 0 && (_this$sdkConfig$servi = _this$sdkConfig.serviceData) !== null && _this$sdkConfig$servi !== void 0 && _this$sdkConfig$servi.indicator ? _this.sdkConfig.serviceData : {
|
|
258
314
|
indicator: _types3.ServiceIndicator.CALLING,
|
|
259
315
|
domain: ''
|
|
260
316
|
};
|
|
261
317
|
var logLevel = (_this$sdkConfig2 = _this.sdkConfig) !== null && _this$sdkConfig2 !== void 0 && (_this$sdkConfig2$logg = _this$sdkConfig2.logger) !== null && _this$sdkConfig2$logg !== void 0 && _this$sdkConfig2$logg.level ? _this.sdkConfig.logger.level : _types.LOGGER.ERROR;
|
|
262
318
|
_Logger.default.setLogger(logLevel, _constants2.CALLING_CLIENT_FILE);
|
|
263
|
-
(0, _Utils.validateServiceData)(serviceData);
|
|
264
|
-
_this.callManager = (0, _callManager.getCallManager)(_this.webex, serviceData.indicator);
|
|
265
|
-
_this.metricManager = (0, _Metrics.getMetricManager)(_this.webex, serviceData.indicator);
|
|
319
|
+
(0, _Utils.validateServiceData)(_this.serviceData);
|
|
320
|
+
_this.callManager = (0, _callManager.getCallManager)(_this.webex, _this.serviceData.indicator);
|
|
321
|
+
_this.metricManager = (0, _Metrics.getMetricManager)(_this.webex, _this.serviceData.indicator);
|
|
266
322
|
_this.mediaEngine = Media;
|
|
267
323
|
var adaptedLogger = {
|
|
268
324
|
log: function log() {
|
|
@@ -305,8 +361,13 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
305
361
|
_this.mediaEngine.setLogger(adaptedLogger);
|
|
306
362
|
_this.primaryMobiusUris = [];
|
|
307
363
|
_this.backupMobiusUris = [];
|
|
364
|
+
_this.primaryWssMobiusUris = [];
|
|
365
|
+
_this.backupWssMobiusUris = [];
|
|
308
366
|
_this.mobiusClusters = _this.webex.internal.services.getMobiusClusters();
|
|
309
367
|
_this.mobiusHost = '';
|
|
368
|
+
_this.apiRequest = _request.APIRequest.getInstance({
|
|
369
|
+
webex: _this.webex
|
|
370
|
+
});
|
|
310
371
|
_this.registerSessionsListener();
|
|
311
372
|
_this.registerCallsClearedListener();
|
|
312
373
|
return _this;
|
|
@@ -328,27 +389,34 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
328
389
|
return (0, _createClass2.default)(CallingClient, [{
|
|
329
390
|
key: "init",
|
|
330
391
|
value: (function () {
|
|
331
|
-
var _init = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
392
|
+
var _init = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee7() {
|
|
332
393
|
var _window, _window$navigator;
|
|
333
|
-
var ua, _t;
|
|
334
|
-
return _regenerator.default.wrap(function (
|
|
335
|
-
while (1) switch (
|
|
394
|
+
var loggerContext, ua, _this$sdkConfig3, rtmsDomain, _t;
|
|
395
|
+
return _regenerator.default.wrap(function (_context7) {
|
|
396
|
+
while (1) switch (_context7.prev = _context7.next) {
|
|
336
397
|
case 0:
|
|
398
|
+
loggerContext = {
|
|
399
|
+
file: _constants2.CALLING_CLIENT_FILE,
|
|
400
|
+
method: _constants2.METHODS.INIT
|
|
401
|
+
};
|
|
402
|
+
_Logger.default.info(_constants.METHOD_START_MESSAGE, loggerContext);
|
|
403
|
+
|
|
404
|
+
// Only for Windows Chromium based browsers we need to do the ICE warmup
|
|
337
405
|
if (!(typeof window !== 'undefined' && (_window = window) !== null && _window !== void 0 && (_window$navigator = _window.navigator) !== null && _window$navigator !== void 0 && _window$navigator.userAgent)) {
|
|
338
|
-
|
|
406
|
+
_context7.next = 4;
|
|
339
407
|
break;
|
|
340
408
|
}
|
|
341
409
|
ua = window.navigator.userAgent;
|
|
342
410
|
if (!ua.toLowerCase().includes('windows')) {
|
|
343
|
-
|
|
411
|
+
_context7.next = 4;
|
|
344
412
|
break;
|
|
345
413
|
}
|
|
346
414
|
_Logger.default.info('Starting ICE warmup for Windows Chromium based browser', {
|
|
347
415
|
file: _constants2.CALLING_CLIENT_FILE,
|
|
348
416
|
method: 'init'
|
|
349
417
|
});
|
|
350
|
-
|
|
351
|
-
|
|
418
|
+
_context7.prev = 1;
|
|
419
|
+
_context7.next = 2;
|
|
352
420
|
return (0, _windowsChromiumIceWarmupUtils.default)({
|
|
353
421
|
iceServers: [],
|
|
354
422
|
timeoutMs: 1000
|
|
@@ -358,28 +426,52 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
358
426
|
file: _constants2.CALLING_CLIENT_FILE,
|
|
359
427
|
method: 'init'
|
|
360
428
|
});
|
|
361
|
-
|
|
429
|
+
_context7.next = 4;
|
|
362
430
|
break;
|
|
363
431
|
case 3:
|
|
364
|
-
|
|
365
|
-
_t =
|
|
432
|
+
_context7.prev = 3;
|
|
433
|
+
_t = _context7["catch"](1);
|
|
366
434
|
_Logger.default.warn("ICE warmup failed: ".concat(_t), {
|
|
367
435
|
file: _constants2.CALLING_CLIENT_FILE,
|
|
368
436
|
method: 'init'
|
|
369
437
|
});
|
|
370
438
|
case 4:
|
|
371
|
-
|
|
439
|
+
_context7.next = 5;
|
|
372
440
|
return this.getMobiusServers();
|
|
373
441
|
case 5:
|
|
374
|
-
|
|
375
|
-
|
|
442
|
+
if (!this.apiRequest.isSocketEnabled()) {
|
|
443
|
+
_context7.next = 7;
|
|
444
|
+
break;
|
|
445
|
+
}
|
|
446
|
+
_context7.next = 6;
|
|
447
|
+
return this.connectToMobiusSocket();
|
|
376
448
|
case 6:
|
|
377
|
-
this.
|
|
449
|
+
this.apiRequest.registerMobiusSocketListener(this.handleMobiusAsyncEvent);
|
|
378
450
|
case 7:
|
|
451
|
+
// Auto-fetch RTMS domain from service catalog for contact-center flows
|
|
452
|
+
if (this.serviceData.indicator === _types3.ServiceIndicator.CONTACT_CENTER && !this.serviceData.domain) {
|
|
453
|
+
rtmsDomain = this.getRTMSDomain();
|
|
454
|
+
this.serviceData.domain = rtmsDomain;
|
|
455
|
+
if ((_this$sdkConfig3 = this.sdkConfig) !== null && _this$sdkConfig3 !== void 0 && _this$sdkConfig3.serviceData) {
|
|
456
|
+
this.sdkConfig.serviceData.domain = this.serviceData.domain;
|
|
457
|
+
}
|
|
458
|
+
}
|
|
459
|
+
if ((0, _Utils.isValidServiceDomain)(this.serviceData)) {
|
|
460
|
+
_context7.next = 8;
|
|
461
|
+
break;
|
|
462
|
+
}
|
|
463
|
+
throw new Error('Invalid service domain.');
|
|
464
|
+
case 8:
|
|
465
|
+
_context7.next = 9;
|
|
466
|
+
return this.createLine();
|
|
467
|
+
case 9:
|
|
468
|
+
this.setupNetworkEventListeners();
|
|
469
|
+
_Logger.default.log('CallingClient initialization complete', loggerContext);
|
|
470
|
+
case 10:
|
|
379
471
|
case "end":
|
|
380
|
-
return
|
|
472
|
+
return _context7.stop();
|
|
381
473
|
}
|
|
382
|
-
},
|
|
474
|
+
}, _callee7, this, [[1, 3]]);
|
|
383
475
|
}));
|
|
384
476
|
function init() {
|
|
385
477
|
return _init.apply(this, arguments);
|
|
@@ -387,24 +479,53 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
387
479
|
return init;
|
|
388
480
|
}()
|
|
389
481
|
/**
|
|
390
|
-
*
|
|
482
|
+
* Retrieves the RTMS domain from the service catalog for contact-center flows.
|
|
483
|
+
*
|
|
484
|
+
* @returns The RTMS domain from catalog when available.
|
|
391
485
|
*/
|
|
392
486
|
)
|
|
487
|
+
}, {
|
|
488
|
+
key: "getRTMSDomain",
|
|
489
|
+
value: function getRTMSDomain() {
|
|
490
|
+
_Logger.default.info('Fetching RTMS domain from service catalog', {
|
|
491
|
+
file: _constants2.CALLING_CLIENT_FILE,
|
|
492
|
+
method: _constants2.METHODS.GET_RTMS_DOMAIN
|
|
493
|
+
});
|
|
494
|
+
try {
|
|
495
|
+
var rtmsURL = this.webex.internal.services.get(_constants2.WCC_CALLING_RTMS_DOMAIN);
|
|
496
|
+
var url = new URL(rtmsURL);
|
|
497
|
+
_Logger.default.info("RTMS domain resolved from catalog: ".concat(url.hostname), {
|
|
498
|
+
file: _constants2.CALLING_CLIENT_FILE,
|
|
499
|
+
method: _constants2.METHODS.GET_RTMS_DOMAIN
|
|
500
|
+
});
|
|
501
|
+
return url.hostname;
|
|
502
|
+
} catch (error) {
|
|
503
|
+
_Logger.default.warn("Failed to fetch RTMS domain from service catalog: ".concat(error), {
|
|
504
|
+
file: _constants2.CALLING_CLIENT_FILE,
|
|
505
|
+
method: _constants2.METHODS.GET_RTMS_DOMAIN
|
|
506
|
+
});
|
|
507
|
+
return '';
|
|
508
|
+
}
|
|
509
|
+
}
|
|
510
|
+
|
|
511
|
+
/**
|
|
512
|
+
* Ping a reliable external endpoint with a short timeout to infer connectivity.
|
|
513
|
+
*/
|
|
393
514
|
}, {
|
|
394
515
|
key: "checkNetworkReachability",
|
|
395
516
|
value: (function () {
|
|
396
|
-
var _checkNetworkReachability = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
517
|
+
var _checkNetworkReachability = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee8() {
|
|
397
518
|
var controller, timeoutId, _t2;
|
|
398
|
-
return _regenerator.default.wrap(function (
|
|
399
|
-
while (1) switch (
|
|
519
|
+
return _regenerator.default.wrap(function (_context8) {
|
|
520
|
+
while (1) switch (_context8.prev = _context8.next) {
|
|
400
521
|
case 0:
|
|
401
|
-
|
|
522
|
+
_context8.prev = 0;
|
|
402
523
|
controller = new AbortController();
|
|
403
524
|
timeoutId = setTimeout(function () {
|
|
404
525
|
return controller.abort();
|
|
405
526
|
}, 3000); // Using a common connectivity check endpoint that returns 204 with minimal payload.
|
|
406
527
|
// no-cors mode yields an opaque response but a successful fetch implies reachability.
|
|
407
|
-
|
|
528
|
+
_context8.next = 1;
|
|
408
529
|
return fetch('https://www.google.com/generate_204', {
|
|
409
530
|
method: 'GET',
|
|
410
531
|
cache: 'no-cache',
|
|
@@ -413,20 +534,20 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
413
534
|
});
|
|
414
535
|
case 1:
|
|
415
536
|
clearTimeout(timeoutId);
|
|
416
|
-
return
|
|
537
|
+
return _context8.abrupt("return", true);
|
|
417
538
|
case 2:
|
|
418
|
-
|
|
419
|
-
_t2 =
|
|
539
|
+
_context8.prev = 2;
|
|
540
|
+
_t2 = _context8["catch"](0);
|
|
420
541
|
_Logger.default.warn("Network connectivity probe failed: ".concat(_t2), {
|
|
421
542
|
file: _constants2.CALLING_CLIENT_FILE,
|
|
422
543
|
method: 'pingExternal'
|
|
423
544
|
});
|
|
424
|
-
return
|
|
545
|
+
return _context8.abrupt("return", false);
|
|
425
546
|
case 3:
|
|
426
547
|
case "end":
|
|
427
|
-
return
|
|
548
|
+
return _context8.stop();
|
|
428
549
|
}
|
|
429
|
-
},
|
|
550
|
+
}, _callee8, null, [[0, 2]]);
|
|
430
551
|
}));
|
|
431
552
|
function checkNetworkReachability() {
|
|
432
553
|
return _checkNetworkReachability.apply(this, arguments);
|
|
@@ -436,10 +557,10 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
436
557
|
}, {
|
|
437
558
|
key: "checkCallStatus",
|
|
438
559
|
value: function () {
|
|
439
|
-
var _checkCallStatus = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
560
|
+
var _checkCallStatus = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee9() {
|
|
440
561
|
var loggerContext, calls, _iterator, _step, _loop, _t3;
|
|
441
|
-
return _regenerator.default.wrap(function (
|
|
442
|
-
while (1) switch (
|
|
562
|
+
return _regenerator.default.wrap(function (_context0) {
|
|
563
|
+
while (1) switch (_context0.prev = _context0.next) {
|
|
443
564
|
case 0:
|
|
444
565
|
loggerContext = {
|
|
445
566
|
file: _constants2.CALLING_CLIENT_FILE,
|
|
@@ -447,11 +568,11 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
447
568
|
};
|
|
448
569
|
calls = (0, _values.default)(this.callManager.getActiveCalls());
|
|
449
570
|
_iterator = _createForOfIteratorHelper(calls);
|
|
450
|
-
|
|
571
|
+
_context0.prev = 1;
|
|
451
572
|
_loop = /*#__PURE__*/_regenerator.default.mark(function _loop() {
|
|
452
573
|
var call;
|
|
453
|
-
return _regenerator.default.wrap(function (
|
|
454
|
-
while (1) switch (
|
|
574
|
+
return _regenerator.default.wrap(function (_context9) {
|
|
575
|
+
while (1) switch (_context9.prev = _context9.next) {
|
|
455
576
|
case 0:
|
|
456
577
|
call = _step.value;
|
|
457
578
|
call.postStatus().then(function () {
|
|
@@ -468,36 +589,36 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
468
589
|
});
|
|
469
590
|
case 1:
|
|
470
591
|
case "end":
|
|
471
|
-
return
|
|
592
|
+
return _context9.stop();
|
|
472
593
|
}
|
|
473
594
|
}, _loop);
|
|
474
595
|
});
|
|
475
596
|
_iterator.s();
|
|
476
597
|
case 2:
|
|
477
598
|
if ((_step = _iterator.n()).done) {
|
|
478
|
-
|
|
599
|
+
_context0.next = 4;
|
|
479
600
|
break;
|
|
480
601
|
}
|
|
481
|
-
return
|
|
602
|
+
return _context0.delegateYield(_loop(), "t0", 3);
|
|
482
603
|
case 3:
|
|
483
|
-
|
|
604
|
+
_context0.next = 2;
|
|
484
605
|
break;
|
|
485
606
|
case 4:
|
|
486
|
-
|
|
607
|
+
_context0.next = 6;
|
|
487
608
|
break;
|
|
488
609
|
case 5:
|
|
489
|
-
|
|
490
|
-
_t3 =
|
|
610
|
+
_context0.prev = 5;
|
|
611
|
+
_t3 = _context0["catch"](1);
|
|
491
612
|
_iterator.e(_t3);
|
|
492
613
|
case 6:
|
|
493
|
-
|
|
614
|
+
_context0.prev = 6;
|
|
494
615
|
_iterator.f();
|
|
495
|
-
return
|
|
616
|
+
return _context0.finish(6);
|
|
496
617
|
case 7:
|
|
497
618
|
case "end":
|
|
498
|
-
return
|
|
619
|
+
return _context0.stop();
|
|
499
620
|
}
|
|
500
|
-
},
|
|
621
|
+
}, _callee9, this, [[1, 5, 6, 7]]);
|
|
501
622
|
}));
|
|
502
623
|
function checkCallStatus() {
|
|
503
624
|
return _checkCallStatus.apply(this, arguments);
|
|
@@ -526,19 +647,19 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
526
647
|
}, {
|
|
527
648
|
key: "getClientRegionInfo",
|
|
528
649
|
value: (function () {
|
|
529
|
-
var _getClientRegionInfo = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
650
|
+
var _getClientRegionInfo = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee0() {
|
|
530
651
|
var _this3 = this;
|
|
531
652
|
var abort, regionInfo, _response$headers, _response$headers$tra, _response$headers2, response, clientRegionInfo, _t4;
|
|
532
|
-
return _regenerator.default.wrap(function (
|
|
533
|
-
while (1) switch (
|
|
653
|
+
return _regenerator.default.wrap(function (_context1) {
|
|
654
|
+
while (1) switch (_context1.prev = _context1.next) {
|
|
534
655
|
case 0:
|
|
535
656
|
_Logger.default.info(_constants.METHOD_START_MESSAGE, {
|
|
536
657
|
file: _constants2.CALLING_CLIENT_FILE,
|
|
537
658
|
method: _constants2.METHODS.GET_CLIENT_REGION_INFO
|
|
538
659
|
});
|
|
539
660
|
regionInfo = {};
|
|
540
|
-
|
|
541
|
-
|
|
661
|
+
_context1.prev = 1;
|
|
662
|
+
_context1.next = 2;
|
|
542
663
|
return this.webex.request({
|
|
543
664
|
uri: "".concat(_constants2.DISCOVERY_URL),
|
|
544
665
|
method: _types3.HTTP_METHODS.GET,
|
|
@@ -546,7 +667,7 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
546
667
|
headers: (0, _defineProperty2.default)({}, _constants2.SPARK_USER_AGENT, null)
|
|
547
668
|
});
|
|
548
669
|
case 2:
|
|
549
|
-
response =
|
|
670
|
+
response = _context1.sent;
|
|
550
671
|
clientRegionInfo = response.body;
|
|
551
672
|
regionInfo.clientRegion = (clientRegionInfo === null || clientRegionInfo === void 0 ? void 0 : clientRegionInfo.clientRegion) || '';
|
|
552
673
|
regionInfo.countryCode = (clientRegionInfo === null || clientRegionInfo === void 0 ? void 0 : clientRegionInfo.countryCode) || '';
|
|
@@ -554,46 +675,46 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
554
675
|
file: _constants2.CALLING_CLIENT_FILE,
|
|
555
676
|
method: _constants2.METHODS.GET_CLIENT_REGION_INFO
|
|
556
677
|
});
|
|
557
|
-
this.metricManager.submitRegionInfoMetric(
|
|
558
|
-
|
|
678
|
+
this.metricManager.submitRegionInfoMetric(_types5.METRIC_EVENT.MOBIUS_DISCOVERY, _types5.MOBIUS_SERVER_ACTION.REGION_INFO, _types5.METRIC_TYPE.BEHAVIORAL, this.mobiusHost, clientRegionInfo.clientRegion, clientRegionInfo.countryCode, (_response$headers$tra = response === null || response === void 0 ? void 0 : (_response$headers2 = response.headers) === null || _response$headers2 === void 0 ? void 0 : _response$headers2.trackingid) !== null && _response$headers$tra !== void 0 ? _response$headers$tra : '');
|
|
679
|
+
_context1.next = 6;
|
|
559
680
|
break;
|
|
560
681
|
case 3:
|
|
561
|
-
|
|
562
|
-
_t4 =
|
|
682
|
+
_context1.prev = 3;
|
|
683
|
+
_t4 = _context1["catch"](1);
|
|
563
684
|
_Logger.default.error("Failed to get client region info: ".concat((0, _stringify.default)(_t4)), {
|
|
564
685
|
method: _constants2.METHODS.GET_CLIENT_REGION_INFO,
|
|
565
686
|
file: _constants2.CALLING_CLIENT_FILE
|
|
566
687
|
});
|
|
567
688
|
|
|
568
689
|
// eslint-disable-next-line no-await-in-loop
|
|
569
|
-
|
|
690
|
+
_context1.next = 4;
|
|
570
691
|
return (0, _Utils.handleCallingClientErrors)(_t4, function (clientError) {
|
|
571
692
|
var _headers$trackingId, _headers2;
|
|
572
|
-
_this3.metricManager.submitRegistrationMetric(
|
|
693
|
+
_this3.metricManager.submitRegistrationMetric(_types5.METRIC_EVENT.REGISTRATION_ERROR, _types5.REG_ACTION.REGISTER, _types5.METRIC_TYPE.BEHAVIORAL, _constants2.GET_MOBIUS_SERVERS_UTIL, 'UNKNOWN', (_headers$trackingId = (_headers2 = _t4.headers) === null || _headers2 === void 0 ? void 0 : _headers2.trackingId) !== null && _headers$trackingId !== void 0 ? _headers$trackingId : '', undefined, clientError);
|
|
573
694
|
_this3.emit(_types2.CALLING_CLIENT_EVENT_KEYS.ERROR, clientError);
|
|
574
695
|
}, {
|
|
575
696
|
method: _constants2.GET_MOBIUS_SERVERS_UTIL,
|
|
576
697
|
file: _constants2.CALLING_CLIENT_FILE
|
|
577
698
|
});
|
|
578
699
|
case 4:
|
|
579
|
-
abort =
|
|
700
|
+
abort = _context1.sent;
|
|
580
701
|
regionInfo.clientRegion = '';
|
|
581
702
|
regionInfo.countryCode = '';
|
|
582
703
|
if (!abort) {
|
|
583
|
-
|
|
704
|
+
_context1.next = 6;
|
|
584
705
|
break;
|
|
585
706
|
}
|
|
586
|
-
|
|
707
|
+
_context1.next = 5;
|
|
587
708
|
return (0, _Utils.uploadLogs)();
|
|
588
709
|
case 5:
|
|
589
|
-
return
|
|
710
|
+
return _context1.abrupt("return", regionInfo);
|
|
590
711
|
case 6:
|
|
591
|
-
return
|
|
712
|
+
return _context1.abrupt("return", regionInfo);
|
|
592
713
|
case 7:
|
|
593
714
|
case "end":
|
|
594
|
-
return
|
|
715
|
+
return _context1.stop();
|
|
595
716
|
}
|
|
596
|
-
},
|
|
717
|
+
}, _callee0, this, [[1, 3]]);
|
|
597
718
|
}));
|
|
598
719
|
function getClientRegionInfo() {
|
|
599
720
|
return _getClientRegionInfo.apply(this, arguments);
|
|
@@ -607,15 +728,15 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
607
728
|
}, {
|
|
608
729
|
key: "getMobiusServers",
|
|
609
730
|
value: (function () {
|
|
610
|
-
var _getMobiusServers = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
611
|
-
var _this$
|
|
612
|
-
_this$sdkConfig3$disc,
|
|
613
|
-
_this$sdkConfig4,
|
|
731
|
+
var _getMobiusServers = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee1() {
|
|
732
|
+
var _this$sdkConfig4,
|
|
614
733
|
_this$sdkConfig4$disc,
|
|
734
|
+
_this$sdkConfig5,
|
|
735
|
+
_this$sdkConfig5$disc,
|
|
615
736
|
_this4 = this;
|
|
616
|
-
var useDefault, clientRegion, countryCode, _this$
|
|
617
|
-
return _regenerator.default.wrap(function (
|
|
618
|
-
while (1) switch (
|
|
737
|
+
var useDefault, clientRegion, countryCode, _this$sdkConfig6, _this$sdkConfig6$disc, _this$sdkConfig7, _this$sdkConfig7$disc, _this$webex$internal$, regionInfo, _iterator2, _step2, _loop2, _ret, _t6;
|
|
738
|
+
return _regenerator.default.wrap(function (_context11) {
|
|
739
|
+
while (1) switch (_context11.prev = _context11.next) {
|
|
619
740
|
case 0:
|
|
620
741
|
_Logger.default.info(_constants.METHOD_START_MESSAGE, {
|
|
621
742
|
file: _constants2.CALLING_CLIENT_FILE,
|
|
@@ -629,33 +750,33 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
629
750
|
5. Otherwise send registration
|
|
630
751
|
*/
|
|
631
752
|
useDefault = false;
|
|
632
|
-
if (!((_this$
|
|
633
|
-
|
|
753
|
+
if (!((_this$sdkConfig4 = this.sdkConfig) !== null && _this$sdkConfig4 !== void 0 && (_this$sdkConfig4$disc = _this$sdkConfig4.discovery) !== null && _this$sdkConfig4$disc !== void 0 && _this$sdkConfig4$disc.country && (_this$sdkConfig5 = this.sdkConfig) !== null && _this$sdkConfig5 !== void 0 && (_this$sdkConfig5$disc = _this$sdkConfig5.discovery) !== null && _this$sdkConfig5$disc !== void 0 && _this$sdkConfig5$disc.region)) {
|
|
754
|
+
_context11.next = 1;
|
|
634
755
|
break;
|
|
635
756
|
}
|
|
636
757
|
_Logger.default.log('Updating region and country from the SDK config', {
|
|
637
758
|
file: _constants2.CALLING_CLIENT_FILE,
|
|
638
759
|
method: _constants2.GET_MOBIUS_SERVERS_UTIL
|
|
639
760
|
});
|
|
640
|
-
clientRegion = (_this$
|
|
641
|
-
countryCode = (_this$
|
|
761
|
+
clientRegion = (_this$sdkConfig6 = this.sdkConfig) === null || _this$sdkConfig6 === void 0 ? void 0 : (_this$sdkConfig6$disc = _this$sdkConfig6.discovery) === null || _this$sdkConfig6$disc === void 0 ? void 0 : _this$sdkConfig6$disc.region;
|
|
762
|
+
countryCode = (_this$sdkConfig7 = this.sdkConfig) === null || _this$sdkConfig7 === void 0 ? void 0 : (_this$sdkConfig7$disc = _this$sdkConfig7.discovery) === null || _this$sdkConfig7$disc === void 0 ? void 0 : _this$sdkConfig7$disc.country;
|
|
642
763
|
this.mobiusHost = ((_this$webex$internal$ = this.webex.internal.services._serviceUrls) === null || _this$webex$internal$ === void 0 ? void 0 : _this$webex$internal$.mobius) || this.webex.internal.services.get(this.webex.internal.services._activeServices.mobius);
|
|
643
|
-
|
|
764
|
+
_context11.next = 3;
|
|
644
765
|
break;
|
|
645
766
|
case 1:
|
|
646
767
|
_Logger.default.log('Updating region and country through Region discovery', {
|
|
647
768
|
file: _constants2.CALLING_CLIENT_FILE,
|
|
648
769
|
method: _constants2.GET_MOBIUS_SERVERS_UTIL
|
|
649
770
|
});
|
|
650
|
-
|
|
771
|
+
_context11.next = 2;
|
|
651
772
|
return this.getClientRegionInfo();
|
|
652
773
|
case 2:
|
|
653
|
-
regionInfo =
|
|
774
|
+
regionInfo = _context11.sent;
|
|
654
775
|
clientRegion = regionInfo.clientRegion;
|
|
655
776
|
countryCode = regionInfo.countryCode;
|
|
656
777
|
case 3:
|
|
657
778
|
if (!(clientRegion && countryCode)) {
|
|
658
|
-
|
|
779
|
+
_context11.next = 12;
|
|
659
780
|
break;
|
|
660
781
|
}
|
|
661
782
|
_Logger.default.log("Found Region: ".concat(clientRegion, " and country: ").concat(countryCode, ", going to fetch Mobius server"), {
|
|
@@ -663,11 +784,11 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
663
784
|
method: _constants2.GET_MOBIUS_SERVERS_UTIL
|
|
664
785
|
});
|
|
665
786
|
_iterator2 = _createForOfIteratorHelper(this.mobiusClusters);
|
|
666
|
-
|
|
787
|
+
_context11.prev = 4;
|
|
667
788
|
_loop2 = /*#__PURE__*/_regenerator.default.mark(function _loop2() {
|
|
668
789
|
var mobius, _response$headers3, _response$headers$tra2, _response$headers4, response, mobiusServers, mobiusUris, abort, _t5;
|
|
669
|
-
return _regenerator.default.wrap(function (
|
|
670
|
-
while (1) switch (
|
|
790
|
+
return _regenerator.default.wrap(function (_context10) {
|
|
791
|
+
while (1) switch (_context10.prev = _context10.next) {
|
|
671
792
|
case 0:
|
|
672
793
|
mobius = _step2.value;
|
|
673
794
|
if (mobius.host) {
|
|
@@ -675,8 +796,8 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
675
796
|
} else {
|
|
676
797
|
_this4.mobiusHost = mobius;
|
|
677
798
|
}
|
|
678
|
-
|
|
679
|
-
|
|
799
|
+
_context10.prev = 1;
|
|
800
|
+
_context10.next = 2;
|
|
680
801
|
return _this4.webex.request({
|
|
681
802
|
uri: "".concat(_this4.mobiusHost).concat(_constants2.URL_ENDPOINT, "?regionCode=").concat(clientRegion, "&countryCode=").concat(countryCode),
|
|
682
803
|
method: _types3.HTTP_METHODS.GET,
|
|
@@ -684,89 +805,91 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
684
805
|
service: _types3.ALLOWED_SERVICES.MOBIUS
|
|
685
806
|
});
|
|
686
807
|
case 2:
|
|
687
|
-
response =
|
|
808
|
+
response = _context10.sent;
|
|
688
809
|
_Logger.default.log("Mobius Server found for the region. Response trackingId: ".concat(response === null || response === void 0 ? void 0 : (_response$headers3 = response.headers) === null || _response$headers3 === void 0 ? void 0 : _response$headers3.trackingid), {
|
|
689
810
|
file: _constants2.CALLING_CLIENT_FILE,
|
|
690
811
|
method: _constants2.GET_MOBIUS_SERVERS_UTIL
|
|
691
812
|
});
|
|
692
813
|
mobiusServers = response.body; // Metrics for mobius servers
|
|
693
|
-
_this4.metricManager.submitMobiusServersMetric(
|
|
814
|
+
_this4.metricManager.submitMobiusServersMetric(_types5.METRIC_EVENT.MOBIUS_DISCOVERY, _types5.MOBIUS_SERVER_ACTION.MOBIUS_SERVERS, _types5.METRIC_TYPE.BEHAVIORAL, mobiusServers, (_response$headers$tra2 = response === null || response === void 0 ? void 0 : (_response$headers4 = response.headers) === null || _response$headers4 === void 0 ? void 0 : _response$headers4.trackingid) !== null && _response$headers$tra2 !== void 0 ? _response$headers$tra2 : '');
|
|
694
815
|
|
|
695
816
|
/* update arrays of Mobius Uris. */
|
|
696
817
|
mobiusUris = (0, _Utils.filterMobiusUris)(mobiusServers, _this4.mobiusHost);
|
|
697
818
|
_this4.primaryMobiusUris = mobiusUris.primary;
|
|
698
819
|
_this4.backupMobiusUris = mobiusUris.backup;
|
|
820
|
+
_this4.primaryWssMobiusUris = mobiusUris.primaryWss;
|
|
821
|
+
_this4.backupWssMobiusUris = mobiusUris.backupWss;
|
|
699
822
|
_Logger.default.log("Final list of Mobius Servers, primary: ".concat(mobiusUris.primary, " and backup: ").concat(mobiusUris.backup), {
|
|
700
823
|
file: _constants2.CALLING_CLIENT_FILE,
|
|
701
824
|
method: _constants2.GET_MOBIUS_SERVERS_UTIL
|
|
702
825
|
});
|
|
703
|
-
return
|
|
826
|
+
return _context10.abrupt("return", 0);
|
|
704
827
|
case 3:
|
|
705
|
-
|
|
706
|
-
_t5 =
|
|
828
|
+
_context10.prev = 3;
|
|
829
|
+
_t5 = _context10["catch"](1);
|
|
707
830
|
_Logger.default.error("Failed to get Mobius servers: ".concat((0, _stringify.default)(_t5)), {
|
|
708
831
|
method: _constants2.METHODS.GET_MOBIUS_SERVERS,
|
|
709
832
|
file: _constants2.CALLING_CLIENT_FILE
|
|
710
833
|
});
|
|
711
834
|
|
|
712
835
|
// eslint-disable-next-line no-await-in-loop
|
|
713
|
-
|
|
836
|
+
_context10.next = 4;
|
|
714
837
|
return (0, _Utils.handleCallingClientErrors)(_t5, function (clientError) {
|
|
715
838
|
var _headers$trackingId2, _headers4;
|
|
716
|
-
_this4.metricManager.submitRegistrationMetric(
|
|
839
|
+
_this4.metricManager.submitRegistrationMetric(_types5.METRIC_EVENT.REGISTRATION_ERROR, _types5.REG_ACTION.REGISTER, _types5.METRIC_TYPE.BEHAVIORAL, _constants2.GET_MOBIUS_SERVERS_UTIL, 'UNKNOWN', (_headers$trackingId2 = (_headers4 = _t5.headers) === null || _headers4 === void 0 ? void 0 : _headers4.trackingId) !== null && _headers$trackingId2 !== void 0 ? _headers$trackingId2 : '', undefined, clientError);
|
|
717
840
|
_this4.emit(_types2.CALLING_CLIENT_EVENT_KEYS.ERROR, clientError);
|
|
718
841
|
}, {
|
|
719
842
|
method: _constants2.GET_MOBIUS_SERVERS_UTIL,
|
|
720
843
|
file: _constants2.CALLING_CLIENT_FILE
|
|
721
844
|
});
|
|
722
845
|
case 4:
|
|
723
|
-
abort =
|
|
846
|
+
abort = _context10.sent;
|
|
724
847
|
if (!abort) {
|
|
725
|
-
|
|
848
|
+
_context10.next = 6;
|
|
726
849
|
break;
|
|
727
850
|
}
|
|
728
851
|
useDefault = true;
|
|
729
852
|
// eslint-disable-next-line no-await-in-loop
|
|
730
|
-
|
|
853
|
+
_context10.next = 5;
|
|
731
854
|
return (0, _Utils.uploadLogs)();
|
|
732
855
|
case 5:
|
|
733
|
-
return
|
|
856
|
+
return _context10.abrupt("return", 0);
|
|
734
857
|
case 6:
|
|
735
858
|
case "end":
|
|
736
|
-
return
|
|
859
|
+
return _context10.stop();
|
|
737
860
|
}
|
|
738
861
|
}, _loop2, null, [[1, 3]]);
|
|
739
862
|
});
|
|
740
863
|
_iterator2.s();
|
|
741
864
|
case 5:
|
|
742
865
|
if ((_step2 = _iterator2.n()).done) {
|
|
743
|
-
|
|
866
|
+
_context11.next = 8;
|
|
744
867
|
break;
|
|
745
868
|
}
|
|
746
|
-
return
|
|
869
|
+
return _context11.delegateYield(_loop2(), "t0", 6);
|
|
747
870
|
case 6:
|
|
748
|
-
_ret =
|
|
871
|
+
_ret = _context11.t0;
|
|
749
872
|
if (!(_ret === 0)) {
|
|
750
|
-
|
|
873
|
+
_context11.next = 7;
|
|
751
874
|
break;
|
|
752
875
|
}
|
|
753
|
-
return
|
|
876
|
+
return _context11.abrupt("continue", 8);
|
|
754
877
|
case 7:
|
|
755
|
-
|
|
878
|
+
_context11.next = 5;
|
|
756
879
|
break;
|
|
757
880
|
case 8:
|
|
758
|
-
|
|
881
|
+
_context11.next = 10;
|
|
759
882
|
break;
|
|
760
883
|
case 9:
|
|
761
|
-
|
|
762
|
-
_t6 =
|
|
884
|
+
_context11.prev = 9;
|
|
885
|
+
_t6 = _context11["catch"](4);
|
|
763
886
|
_iterator2.e(_t6);
|
|
764
887
|
case 10:
|
|
765
|
-
|
|
888
|
+
_context11.prev = 10;
|
|
766
889
|
_iterator2.f();
|
|
767
|
-
return
|
|
890
|
+
return _context11.finish(10);
|
|
768
891
|
case 11:
|
|
769
|
-
|
|
892
|
+
_context11.next = 13;
|
|
770
893
|
break;
|
|
771
894
|
case 12:
|
|
772
895
|
/* Setting this to true because region info is possibly undefined */
|
|
@@ -786,9 +909,9 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
786
909
|
}
|
|
787
910
|
case 14:
|
|
788
911
|
case "end":
|
|
789
|
-
return
|
|
912
|
+
return _context11.stop();
|
|
790
913
|
}
|
|
791
|
-
},
|
|
914
|
+
}, _callee1, this, [[4, 9, 10, 11]]);
|
|
792
915
|
}));
|
|
793
916
|
function getMobiusServers() {
|
|
794
917
|
return _getMobiusServers.apply(this, arguments);
|
|
@@ -796,14 +919,149 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
796
919
|
return getMobiusServers;
|
|
797
920
|
}()
|
|
798
921
|
/**
|
|
799
|
-
*
|
|
800
|
-
*
|
|
801
|
-
*
|
|
922
|
+
* Connects to the Mobius WebSocket using WSS URIs discovered during Mobius server discovery.
|
|
923
|
+
* Attempts primary WSS URIs first, then falls back to backup WSS URIs.
|
|
924
|
+
* If all attempts fail, logs a warning and continues without a socket connection.
|
|
802
925
|
*/
|
|
803
926
|
)
|
|
927
|
+
}, {
|
|
928
|
+
key: "connectToMobiusSocket",
|
|
929
|
+
value: (function () {
|
|
930
|
+
var _connectToMobiusSocket = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee10() {
|
|
931
|
+
var loggerContext, _iterator3, _step3, wssUri, _iterator4, _step4, _wssUri, _t7, _t8, _t9, _t0;
|
|
932
|
+
return _regenerator.default.wrap(function (_context12) {
|
|
933
|
+
while (1) switch (_context12.prev = _context12.next) {
|
|
934
|
+
case 0:
|
|
935
|
+
loggerContext = {
|
|
936
|
+
file: _constants2.CALLING_CLIENT_FILE,
|
|
937
|
+
method: _constants2.METHODS.CONNECT_TO_MOBIUS_SOCKET
|
|
938
|
+
};
|
|
939
|
+
_Logger.default.info(_constants.METHOD_START_MESSAGE, loggerContext);
|
|
940
|
+
if (!(!this.primaryWssMobiusUris.length && !this.backupWssMobiusUris.length)) {
|
|
941
|
+
_context12.next = 1;
|
|
942
|
+
break;
|
|
943
|
+
}
|
|
944
|
+
_Logger.default.warn('No WSS URIs available from Mobius discovery, skipping socket connection', loggerContext);
|
|
945
|
+
return _context12.abrupt("return");
|
|
946
|
+
case 1:
|
|
947
|
+
if (!this.primaryWssMobiusUris.length) {
|
|
948
|
+
_context12.next = 12;
|
|
949
|
+
break;
|
|
950
|
+
}
|
|
951
|
+
_Logger.default.log("Attempting Mobius socket connection using primary WSS URIs (".concat(this.primaryWssMobiusUris.length, " available)"), loggerContext);
|
|
952
|
+
_iterator3 = _createForOfIteratorHelper(this.primaryWssMobiusUris);
|
|
953
|
+
_context12.prev = 2;
|
|
954
|
+
_iterator3.s();
|
|
955
|
+
case 3:
|
|
956
|
+
if ((_step3 = _iterator3.n()).done) {
|
|
957
|
+
_context12.next = 8;
|
|
958
|
+
break;
|
|
959
|
+
}
|
|
960
|
+
wssUri = _step3.value;
|
|
961
|
+
_context12.prev = 4;
|
|
962
|
+
_Logger.default.log("Trying primary WSS URI: ".concat(wssUri), loggerContext);
|
|
963
|
+
// eslint-disable-next-line no-await-in-loop
|
|
964
|
+
_context12.next = 5;
|
|
965
|
+
return this.apiRequest.connectToMobiusSocket(wssUri);
|
|
966
|
+
case 5:
|
|
967
|
+
_Logger.default.log("Successfully connected to Mobius socket on primary WSS URI: ".concat(wssUri), loggerContext);
|
|
968
|
+
return _context12.abrupt("return");
|
|
969
|
+
case 6:
|
|
970
|
+
_context12.prev = 6;
|
|
971
|
+
_t7 = _context12["catch"](4);
|
|
972
|
+
_Logger.default.warn("Primary WSS URI connection failed for ".concat(wssUri, ": ").concat(_t7), loggerContext);
|
|
973
|
+
case 7:
|
|
974
|
+
_context12.next = 3;
|
|
975
|
+
break;
|
|
976
|
+
case 8:
|
|
977
|
+
_context12.next = 10;
|
|
978
|
+
break;
|
|
979
|
+
case 9:
|
|
980
|
+
_context12.prev = 9;
|
|
981
|
+
_t8 = _context12["catch"](2);
|
|
982
|
+
_iterator3.e(_t8);
|
|
983
|
+
case 10:
|
|
984
|
+
_context12.prev = 10;
|
|
985
|
+
_iterator3.f();
|
|
986
|
+
return _context12.finish(10);
|
|
987
|
+
case 11:
|
|
988
|
+
_Logger.default.warn('All primary WSS URI connection attempts failed', loggerContext);
|
|
989
|
+
_context12.next = 13;
|
|
990
|
+
break;
|
|
991
|
+
case 12:
|
|
992
|
+
_Logger.default.warn('No primary WSS URIs available, skipping to backup', loggerContext);
|
|
993
|
+
case 13:
|
|
994
|
+
if (!this.backupWssMobiusUris.length) {
|
|
995
|
+
_context12.next = 24;
|
|
996
|
+
break;
|
|
997
|
+
}
|
|
998
|
+
_Logger.default.log("Attempting Mobius socket connection using backup WSS URIs (".concat(this.backupWssMobiusUris.length, " available)"), loggerContext);
|
|
999
|
+
_iterator4 = _createForOfIteratorHelper(this.backupWssMobiusUris);
|
|
1000
|
+
_context12.prev = 14;
|
|
1001
|
+
_iterator4.s();
|
|
1002
|
+
case 15:
|
|
1003
|
+
if ((_step4 = _iterator4.n()).done) {
|
|
1004
|
+
_context12.next = 20;
|
|
1005
|
+
break;
|
|
1006
|
+
}
|
|
1007
|
+
_wssUri = _step4.value;
|
|
1008
|
+
_context12.prev = 16;
|
|
1009
|
+
_Logger.default.log("Trying backup WSS URI: ".concat(_wssUri), loggerContext);
|
|
1010
|
+
// eslint-disable-next-line no-await-in-loop
|
|
1011
|
+
_context12.next = 17;
|
|
1012
|
+
return this.apiRequest.connectToMobiusSocket(_wssUri);
|
|
1013
|
+
case 17:
|
|
1014
|
+
_Logger.default.log("Successfully connected to Mobius socket on backup WSS URI: ".concat(_wssUri), loggerContext);
|
|
1015
|
+
return _context12.abrupt("return");
|
|
1016
|
+
case 18:
|
|
1017
|
+
_context12.prev = 18;
|
|
1018
|
+
_t9 = _context12["catch"](16);
|
|
1019
|
+
_Logger.default.warn("Backup WSS URI connection failed for ".concat(_wssUri, ": ").concat(_t9), loggerContext);
|
|
1020
|
+
case 19:
|
|
1021
|
+
_context12.next = 15;
|
|
1022
|
+
break;
|
|
1023
|
+
case 20:
|
|
1024
|
+
_context12.next = 22;
|
|
1025
|
+
break;
|
|
1026
|
+
case 21:
|
|
1027
|
+
_context12.prev = 21;
|
|
1028
|
+
_t0 = _context12["catch"](14);
|
|
1029
|
+
_iterator4.e(_t0);
|
|
1030
|
+
case 22:
|
|
1031
|
+
_context12.prev = 22;
|
|
1032
|
+
_iterator4.f();
|
|
1033
|
+
return _context12.finish(22);
|
|
1034
|
+
case 23:
|
|
1035
|
+
_Logger.default.warn('All backup WSS URI connection attempts failed', loggerContext);
|
|
1036
|
+
_context12.next = 25;
|
|
1037
|
+
break;
|
|
1038
|
+
case 24:
|
|
1039
|
+
_Logger.default.warn('No backup WSS URIs available', loggerContext);
|
|
1040
|
+
case 25:
|
|
1041
|
+
// Throwing an error is not required here. Connection will be attempted again during registration if no connection is established.
|
|
1042
|
+
// We might remove this connection attempt logic during optimization since we are anyway going to try to connect to Mobius during
|
|
1043
|
+
// registration and without registration the connection will be closed automatically by the mobius server.
|
|
1044
|
+
_Logger.default.warn('All Mobius socket connection attempts exhausted for both primary and backup, continuing without socket', loggerContext);
|
|
1045
|
+
case 26:
|
|
1046
|
+
case "end":
|
|
1047
|
+
return _context12.stop();
|
|
1048
|
+
}
|
|
1049
|
+
}, _callee10, this, [[2, 9, 10, 11], [4, 6], [14, 21, 22, 23], [16, 18]]);
|
|
1050
|
+
}));
|
|
1051
|
+
function connectToMobiusSocket() {
|
|
1052
|
+
return _connectToMobiusSocket.apply(this, arguments);
|
|
1053
|
+
}
|
|
1054
|
+
return connectToMobiusSocket;
|
|
1055
|
+
}())
|
|
804
1056
|
}, {
|
|
805
1057
|
key: "registerCallsClearedListener",
|
|
806
|
-
value:
|
|
1058
|
+
value:
|
|
1059
|
+
/**
|
|
1060
|
+
* Registers a listener/handler for ALL_CALLS_CLEARED
|
|
1061
|
+
* event emitted by callManager when all the calls
|
|
1062
|
+
* present on sdk are cleaned up.
|
|
1063
|
+
*/
|
|
1064
|
+
function registerCallsClearedListener() {
|
|
807
1065
|
_Logger.default.info(_constants.METHOD_START_MESSAGE, {
|
|
808
1066
|
file: _constants2.CALLING_CLIENT_FILE,
|
|
809
1067
|
method: _constants2.METHODS.REGISTER_CALLS_CLEARED_LISTENER
|
|
@@ -839,25 +1097,25 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
839
1097
|
method: _constants2.METHODS.REGISTER_SESSIONS_LISTENER
|
|
840
1098
|
});
|
|
841
1099
|
this.sdkConnector.registerListener(_types2.MOBIUS_EVENT_KEYS.CALL_SESSION_EVENT_INCLUSIVE, /*#__PURE__*/function () {
|
|
842
|
-
var
|
|
1100
|
+
var _ref7 = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee11(event) {
|
|
843
1101
|
var sessionArr, i;
|
|
844
|
-
return _regenerator.default.wrap(function (
|
|
845
|
-
while (1) switch (
|
|
1102
|
+
return _regenerator.default.wrap(function (_context13) {
|
|
1103
|
+
while (1) switch (_context13.prev = _context13.next) {
|
|
846
1104
|
case 0:
|
|
847
1105
|
if (!(event && event.data.userSessions.userSessions)) {
|
|
848
|
-
|
|
1106
|
+
_context13.next = 2;
|
|
849
1107
|
break;
|
|
850
1108
|
}
|
|
851
1109
|
sessionArr = event === null || event === void 0 ? void 0 : event.data.userSessions.userSessions;
|
|
852
1110
|
if (!(sessionArr.length === 1)) {
|
|
853
|
-
|
|
1111
|
+
_context13.next = 1;
|
|
854
1112
|
break;
|
|
855
1113
|
}
|
|
856
1114
|
if (!(sessionArr[0].sessionType !== _types2.SessionType.WEBEX_CALLING)) {
|
|
857
|
-
|
|
1115
|
+
_context13.next = 1;
|
|
858
1116
|
break;
|
|
859
1117
|
}
|
|
860
|
-
return
|
|
1118
|
+
return _context13.abrupt("return");
|
|
861
1119
|
case 1:
|
|
862
1120
|
for (i = 0; i < sessionArr.length; i += 1) {
|
|
863
1121
|
if (sessionArr[i].sessionType !== _types2.SessionType.WEBEX_CALLING) {
|
|
@@ -867,12 +1125,12 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
867
1125
|
_this5.emit(_types2.CALLING_CLIENT_EVENT_KEYS.USER_SESSION_INFO, event);
|
|
868
1126
|
case 2:
|
|
869
1127
|
case "end":
|
|
870
|
-
return
|
|
1128
|
+
return _context13.stop();
|
|
871
1129
|
}
|
|
872
|
-
},
|
|
1130
|
+
}, _callee11);
|
|
873
1131
|
}));
|
|
874
|
-
return function (
|
|
875
|
-
return
|
|
1132
|
+
return function (_x2) {
|
|
1133
|
+
return _ref7.apply(this, arguments);
|
|
876
1134
|
};
|
|
877
1135
|
}());
|
|
878
1136
|
}
|
|
@@ -884,23 +1142,23 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
884
1142
|
}, {
|
|
885
1143
|
key: "createLine",
|
|
886
1144
|
value: (function () {
|
|
887
|
-
var _createLine = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
888
|
-
var _this$
|
|
1145
|
+
var _createLine = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee12() {
|
|
1146
|
+
var _this$sdkConfig8;
|
|
889
1147
|
var line;
|
|
890
|
-
return _regenerator.default.wrap(function (
|
|
891
|
-
while (1) switch (
|
|
1148
|
+
return _regenerator.default.wrap(function (_context14) {
|
|
1149
|
+
while (1) switch (_context14.prev = _context14.next) {
|
|
892
1150
|
case 0:
|
|
893
1151
|
_Logger.default.info(_constants.METHOD_START_MESSAGE, {
|
|
894
1152
|
file: _constants2.CALLING_CLIENT_FILE,
|
|
895
1153
|
method: _constants2.METHODS.CREATE_LINE
|
|
896
1154
|
});
|
|
897
|
-
line = new _line.default(this.webex.internal.device.userId, this.webex.internal.device.url, this.mutex, this.
|
|
1155
|
+
line = new _line.default(this.webex.internal.device.userId, this.webex.internal.device.url, this.mutex, this.apiRequest.isSocketEnabled() ? (0, _Utils.normalizeMobiusUris)(this.primaryWssMobiusUris) : this.primaryMobiusUris, this.apiRequest.isSocketEnabled() ? (0, _Utils.normalizeMobiusUris)(this.backupWssMobiusUris) : this.backupMobiusUris, this.getLoggingLevel(), this.serviceData, (_this$sdkConfig8 = this.sdkConfig) === null || _this$sdkConfig8 === void 0 ? void 0 : _this$sdkConfig8.jwe);
|
|
898
1156
|
this.lineDict[line.lineId] = line;
|
|
899
1157
|
case 1:
|
|
900
1158
|
case "end":
|
|
901
|
-
return
|
|
1159
|
+
return _context14.stop();
|
|
902
1160
|
}
|
|
903
|
-
},
|
|
1161
|
+
}, _callee12, this);
|
|
904
1162
|
}));
|
|
905
1163
|
function createLine() {
|
|
906
1164
|
return _createLine.apply(this, arguments);
|
|
@@ -924,14 +1182,14 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
924
1182
|
}, {
|
|
925
1183
|
key: "getDevices",
|
|
926
1184
|
value: (function () {
|
|
927
|
-
var _getDevices = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
928
|
-
var userid, mobiusUrls, finalError,
|
|
929
|
-
return _regenerator.default.wrap(function (
|
|
930
|
-
while (1) switch (
|
|
1185
|
+
var _getDevices = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee13(userId) {
|
|
1186
|
+
var userid, mobiusUrls, finalError, _iterator5, _step5, mobiusUrl, normalizedMobiusUrl, uri, _body$devices, response, body, _t1, _t10;
|
|
1187
|
+
return _regenerator.default.wrap(function (_context15) {
|
|
1188
|
+
while (1) switch (_context15.prev = _context15.next) {
|
|
931
1189
|
case 0:
|
|
932
1190
|
userid = userId || this.webex.internal.device.userId;
|
|
933
1191
|
if (userid) {
|
|
934
|
-
|
|
1192
|
+
_context15.next = 1;
|
|
935
1193
|
break;
|
|
936
1194
|
}
|
|
937
1195
|
throw new Error('userId is required to fetch devices');
|
|
@@ -942,24 +1200,24 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
942
1200
|
});
|
|
943
1201
|
mobiusUrls = [].concat((0, _toConsumableArray2.default)(this.primaryMobiusUris), (0, _toConsumableArray2.default)(this.backupMobiusUris));
|
|
944
1202
|
if (!(mobiusUrls.length === 0)) {
|
|
945
|
-
|
|
1203
|
+
_context15.next = 2;
|
|
946
1204
|
break;
|
|
947
1205
|
}
|
|
948
1206
|
throw new Error('Mobius URLs are not available');
|
|
949
1207
|
case 2:
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
1208
|
+
_iterator5 = _createForOfIteratorHelper(mobiusUrls);
|
|
1209
|
+
_context15.prev = 3;
|
|
1210
|
+
_iterator5.s();
|
|
953
1211
|
case 4:
|
|
954
|
-
if ((
|
|
955
|
-
|
|
1212
|
+
if ((_step5 = _iterator5.n()).done) {
|
|
1213
|
+
_context15.next = 10;
|
|
956
1214
|
break;
|
|
957
1215
|
}
|
|
958
|
-
mobiusUrl =
|
|
1216
|
+
mobiusUrl = _step5.value;
|
|
959
1217
|
normalizedMobiusUrl = mobiusUrl.replace(/\/+$/, '/');
|
|
960
1218
|
uri = "".concat(normalizedMobiusUrl).concat(_constants2.DEVICES_ENDPOINT_RESOURCE, "?userid=").concat(encodeURIComponent(userid));
|
|
961
|
-
|
|
962
|
-
|
|
1219
|
+
_context15.prev = 5;
|
|
1220
|
+
_context15.next = 6;
|
|
963
1221
|
return this.webex.request({
|
|
964
1222
|
uri: uri,
|
|
965
1223
|
method: _types3.HTTP_METHODS.GET,
|
|
@@ -967,9 +1225,9 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
967
1225
|
headers: (0, _defineProperty2.default)((0, _defineProperty2.default)({}, _constants2.CISCO_DEVICE_URL, this.webex.internal.device.url), _constants2.SPARK_USER_AGENT, _constants2.CALLING_USER_AGENT)
|
|
968
1226
|
});
|
|
969
1227
|
case 6:
|
|
970
|
-
response =
|
|
1228
|
+
response = _context15.sent;
|
|
971
1229
|
if (!(response.statusCode !== 200)) {
|
|
972
|
-
|
|
1230
|
+
_context15.next = 7;
|
|
973
1231
|
break;
|
|
974
1232
|
}
|
|
975
1233
|
throw new Error("API call failed with ".concat(response.statusCode));
|
|
@@ -977,25 +1235,25 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
977
1235
|
body = response.body; // Hydrate registration deviceInfo for deregister/restore flows
|
|
978
1236
|
(0, _values.default)(this.lineDict)[0].registration.setDeviceInfo(body);
|
|
979
1237
|
(0, _values.default)(this.lineDict)[0].registration.setActiveMobiusUrl(normalizedMobiusUrl);
|
|
980
|
-
return
|
|
1238
|
+
return _context15.abrupt("return", (_body$devices = body.devices) !== null && _body$devices !== void 0 ? _body$devices : []);
|
|
981
1239
|
case 8:
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
finalError =
|
|
1240
|
+
_context15.prev = 8;
|
|
1241
|
+
_t1 = _context15["catch"](5);
|
|
1242
|
+
finalError = _t1;
|
|
985
1243
|
case 9:
|
|
986
|
-
|
|
1244
|
+
_context15.next = 4;
|
|
987
1245
|
break;
|
|
988
1246
|
case 10:
|
|
989
|
-
|
|
1247
|
+
_context15.next = 12;
|
|
990
1248
|
break;
|
|
991
1249
|
case 11:
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
|
|
1250
|
+
_context15.prev = 11;
|
|
1251
|
+
_t10 = _context15["catch"](3);
|
|
1252
|
+
_iterator5.e(_t10);
|
|
995
1253
|
case 12:
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
return
|
|
1254
|
+
_context15.prev = 12;
|
|
1255
|
+
_iterator5.f();
|
|
1256
|
+
return _context15.finish(12);
|
|
999
1257
|
case 13:
|
|
1000
1258
|
_Logger.default.error("Failed to fetch devices for userId ".concat(userId, ": ").concat((0, _stringify.default)(finalError)), {
|
|
1001
1259
|
file: _constants2.CALLING_CLIENT_FILE,
|
|
@@ -1004,11 +1262,11 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
1004
1262
|
throw finalError;
|
|
1005
1263
|
case 14:
|
|
1006
1264
|
case "end":
|
|
1007
|
-
return
|
|
1265
|
+
return _context15.stop();
|
|
1008
1266
|
}
|
|
1009
|
-
},
|
|
1267
|
+
}, _callee13, this, [[3, 11, 12, 13], [5, 8]]);
|
|
1010
1268
|
}));
|
|
1011
|
-
function getDevices(
|
|
1269
|
+
function getDevices(_x3) {
|
|
1012
1270
|
return _getDevices.apply(this, arguments);
|
|
1013
1271
|
}
|
|
1014
1272
|
return getDevices;
|
|
@@ -1061,27 +1319,27 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
1061
1319
|
}, {
|
|
1062
1320
|
key: "uploadLogs",
|
|
1063
1321
|
value: (function () {
|
|
1064
|
-
var _uploadLogs2 = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
1322
|
+
var _uploadLogs2 = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee14() {
|
|
1065
1323
|
var result;
|
|
1066
|
-
return _regenerator.default.wrap(function (
|
|
1067
|
-
while (1) switch (
|
|
1324
|
+
return _regenerator.default.wrap(function (_context16) {
|
|
1325
|
+
while (1) switch (_context16.prev = _context16.next) {
|
|
1068
1326
|
case 0:
|
|
1069
|
-
|
|
1327
|
+
_context16.next = 1;
|
|
1070
1328
|
return (0, _Utils.uploadLogs)({}, true);
|
|
1071
1329
|
case 1:
|
|
1072
|
-
result =
|
|
1330
|
+
result = _context16.sent;
|
|
1073
1331
|
if (result) {
|
|
1074
|
-
|
|
1332
|
+
_context16.next = 2;
|
|
1075
1333
|
break;
|
|
1076
1334
|
}
|
|
1077
1335
|
throw new Error('Failed to upload logs: No response received.');
|
|
1078
1336
|
case 2:
|
|
1079
|
-
return
|
|
1337
|
+
return _context16.abrupt("return", result);
|
|
1080
1338
|
case 3:
|
|
1081
1339
|
case "end":
|
|
1082
|
-
return
|
|
1340
|
+
return _context16.stop();
|
|
1083
1341
|
}
|
|
1084
|
-
},
|
|
1342
|
+
}, _callee14);
|
|
1085
1343
|
}));
|
|
1086
1344
|
function uploadLogs() {
|
|
1087
1345
|
return _uploadLogs2.apply(this, arguments);
|
|
@@ -1096,24 +1354,24 @@ var CallingClient = exports.CallingClient = /*#__PURE__*/function (_Eventing) {
|
|
|
1096
1354
|
* @param config - Config to start the CallingClient with.
|
|
1097
1355
|
*/
|
|
1098
1356
|
var createClient = exports.createClient = /*#__PURE__*/function () {
|
|
1099
|
-
var
|
|
1357
|
+
var _ref8 = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee15(webex, config) {
|
|
1100
1358
|
var callingClientInstance;
|
|
1101
|
-
return _regenerator.default.wrap(function (
|
|
1102
|
-
while (1) switch (
|
|
1359
|
+
return _regenerator.default.wrap(function (_context17) {
|
|
1360
|
+
while (1) switch (_context17.prev = _context17.next) {
|
|
1103
1361
|
case 0:
|
|
1104
1362
|
callingClientInstance = new CallingClient(webex, config);
|
|
1105
|
-
|
|
1363
|
+
_context17.next = 1;
|
|
1106
1364
|
return callingClientInstance.init();
|
|
1107
1365
|
case 1:
|
|
1108
|
-
return
|
|
1366
|
+
return _context17.abrupt("return", callingClientInstance);
|
|
1109
1367
|
case 2:
|
|
1110
1368
|
case "end":
|
|
1111
|
-
return
|
|
1369
|
+
return _context17.stop();
|
|
1112
1370
|
}
|
|
1113
|
-
},
|
|
1371
|
+
}, _callee15);
|
|
1114
1372
|
}));
|
|
1115
|
-
return function createClient(
|
|
1116
|
-
return
|
|
1373
|
+
return function createClient(_x4, _x5) {
|
|
1374
|
+
return _ref8.apply(this, arguments);
|
|
1117
1375
|
};
|
|
1118
1376
|
}();
|
|
1119
1377
|
//# sourceMappingURL=CallingClient.js.map
|