@webex/calling 3.8.0 → 3.8.1-next.10
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/CallHistory/CallHistory.js +100 -63
- package/dist/CallHistory/CallHistory.js.map +1 -1
- package/dist/CallHistory/CallHistory.test.js +115 -19
- package/dist/CallHistory/CallHistory.test.js.map +1 -1
- package/dist/CallHistory/constants.js +9 -1
- package/dist/CallHistory/constants.js.map +1 -1
- package/dist/CallSettings/CallSettings.js +46 -13
- package/dist/CallSettings/CallSettings.js.map +1 -1
- package/dist/CallSettings/UcmBackendConnector.js +62 -18
- package/dist/CallSettings/UcmBackendConnector.js.map +1 -1
- package/dist/CallSettings/UcmBackendConnector.test.js +70 -7
- package/dist/CallSettings/UcmBackendConnector.test.js.map +1 -1
- package/dist/CallSettings/WxCallBackendConnector.js +153 -103
- package/dist/CallSettings/WxCallBackendConnector.js.map +1 -1
- package/dist/CallSettings/WxCallBackendConnector.test.js +52 -15
- package/dist/CallSettings/WxCallBackendConnector.test.js.map +1 -1
- package/dist/CallSettings/constants.js +15 -1
- package/dist/CallSettings/constants.js.map +1 -1
- package/dist/CallingClient/CallingClient.js +220 -159
- package/dist/CallingClient/CallingClient.js.map +1 -1
- package/dist/CallingClient/CallingClient.test.js +58 -27
- package/dist/CallingClient/CallingClient.test.js.map +1 -1
- package/dist/CallingClient/calling/call.js +251 -189
- package/dist/CallingClient/calling/call.js.map +1 -1
- package/dist/CallingClient/calling/call.test.js +96 -41
- package/dist/CallingClient/calling/call.test.js.map +1 -1
- package/dist/CallingClient/calling/callManager.js +73 -48
- package/dist/CallingClient/calling/callManager.js.map +1 -1
- package/dist/CallingClient/calling/callManager.test.js +96 -37
- package/dist/CallingClient/calling/callManager.test.js.map +1 -1
- package/dist/CallingClient/constants.js +105 -3
- package/dist/CallingClient/constants.js.map +1 -1
- package/dist/CallingClient/line/index.js +47 -18
- package/dist/CallingClient/line/index.js.map +1 -1
- package/dist/CallingClient/line/line.test.js +6 -12
- package/dist/CallingClient/line/line.test.js.map +1 -1
- package/dist/CallingClient/registration/register.js +590 -522
- package/dist/CallingClient/registration/register.js.map +1 -1
- package/dist/CallingClient/registration/register.test.js +821 -394
- 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 +115 -0
- package/dist/CallingClient/registration/webWorker.js.map +1 -0
- package/dist/CallingClient/registration/webWorker.test.js +256 -0
- package/dist/CallingClient/registration/webWorker.test.js.map +1 -0
- package/dist/CallingClient/registration/webWorkerStr.js +15 -0
- package/dist/CallingClient/registration/webWorkerStr.js.map +1 -0
- package/dist/Contacts/ContactsClient.js +156 -102
- package/dist/Contacts/ContactsClient.js.map +1 -1
- package/dist/Contacts/ContactsClient.test.js +197 -49
- package/dist/Contacts/ContactsClient.test.js.map +1 -1
- package/dist/Contacts/constants.js +11 -1
- package/dist/Contacts/constants.js.map +1 -1
- package/dist/Errors/types.js +2 -0
- package/dist/Errors/types.js.map +1 -1
- package/dist/Events/impl/index.js +1 -1
- package/dist/Events/impl/index.js.map +1 -1
- package/dist/Metrics/index.js +102 -41
- package/dist/Metrics/index.js.map +1 -1
- package/dist/Metrics/index.test.js +10 -4
- package/dist/Metrics/index.test.js.map +1 -1
- package/dist/Metrics/types.js +4 -1
- package/dist/Metrics/types.js.map +1 -1
- package/dist/SDKConnector/types.js.map +1 -1
- package/dist/Voicemail/BroadworksBackendConnector.js +154 -91
- package/dist/Voicemail/BroadworksBackendConnector.js.map +1 -1
- package/dist/Voicemail/BroadworksBackendConnector.test.js +99 -19
- package/dist/Voicemail/BroadworksBackendConnector.test.js.map +1 -1
- package/dist/Voicemail/UcmBackendConnector.js +105 -54
- package/dist/Voicemail/UcmBackendConnector.js.map +1 -1
- package/dist/Voicemail/UcmBackendConnector.test.js +127 -17
- package/dist/Voicemail/UcmBackendConnector.test.js.map +1 -1
- package/dist/Voicemail/Voicemail.js +198 -79
- package/dist/Voicemail/Voicemail.js.map +1 -1
- package/dist/Voicemail/Voicemail.test.js +188 -23
- package/dist/Voicemail/Voicemail.test.js.map +1 -1
- package/dist/Voicemail/WxCallBackendConnector.js +277 -161
- package/dist/Voicemail/WxCallBackendConnector.js.map +1 -1
- package/dist/Voicemail/WxCallBackendConnector.test.js +268 -10
- package/dist/Voicemail/WxCallBackendConnector.test.js.map +1 -1
- package/dist/Voicemail/constants.js +25 -1
- package/dist/Voicemail/constants.js.map +1 -1
- package/dist/Voicemail/types.js.map +1 -1
- package/dist/common/Utils.js +168 -104
- package/dist/common/Utils.js.map +1 -1
- package/dist/common/Utils.test.js +199 -35
- package/dist/common/Utils.test.js.map +1 -1
- package/dist/common/constants.js +2 -1
- package/dist/common/constants.js.map +1 -1
- package/dist/common/testUtil.js +3 -0
- package/dist/common/testUtil.js.map +1 -1
- package/dist/common/types.js +8 -1
- package/dist/common/types.js.map +1 -1
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -1
- package/dist/module/CallHistory/CallHistory.js +32 -13
- package/dist/module/CallHistory/constants.js +6 -0
- package/dist/module/CallSettings/CallSettings.js +36 -3
- package/dist/module/CallSettings/UcmBackendConnector.js +50 -5
- package/dist/module/CallSettings/WxCallBackendConnector.js +54 -18
- package/dist/module/CallSettings/constants.js +12 -0
- package/dist/module/CallingClient/CallingClient.js +54 -16
- package/dist/module/CallingClient/calling/call.js +172 -121
- package/dist/module/CallingClient/calling/callManager.js +51 -26
- package/dist/module/CallingClient/constants.js +102 -2
- package/dist/module/CallingClient/line/index.js +37 -8
- package/dist/module/CallingClient/registration/register.js +151 -112
- package/dist/module/CallingClient/registration/webWorker.js +59 -0
- package/dist/module/CallingClient/registration/webWorkerStr.js +93 -0
- package/dist/module/Contacts/ContactsClient.js +65 -21
- package/dist/module/Contacts/constants.js +10 -0
- package/dist/module/Errors/types.js +2 -0
- package/dist/module/Events/impl/index.js +1 -1
- package/dist/module/Metrics/index.js +57 -2
- package/dist/module/Metrics/types.js +3 -0
- package/dist/module/Voicemail/BroadworksBackendConnector.js +66 -17
- package/dist/module/Voicemail/UcmBackendConnector.js +51 -11
- package/dist/module/Voicemail/Voicemail.js +109 -9
- package/dist/module/Voicemail/WxCallBackendConnector.js +67 -18
- package/dist/module/Voicemail/constants.js +21 -0
- package/dist/module/common/Utils.js +51 -12
- package/dist/module/common/constants.js +1 -0
- package/dist/module/common/testUtil.js +3 -0
- package/dist/module/common/types.js +7 -0
- package/dist/module/index.js +1 -0
- package/dist/types/CallHistory/CallHistory.d.ts.map +1 -1
- package/dist/types/CallHistory/constants.d.ts +6 -0
- package/dist/types/CallHistory/constants.d.ts.map +1 -1
- package/dist/types/CallSettings/CallSettings.d.ts.map +1 -1
- package/dist/types/CallSettings/UcmBackendConnector.d.ts.map +1 -1
- package/dist/types/CallSettings/WxCallBackendConnector.d.ts.map +1 -1
- package/dist/types/CallSettings/constants.d.ts +12 -0
- package/dist/types/CallSettings/constants.d.ts.map +1 -1
- package/dist/types/CallingClient/CallingClient.d.ts +2 -3
- package/dist/types/CallingClient/CallingClient.d.ts.map +1 -1
- package/dist/types/CallingClient/calling/call.d.ts.map +1 -1
- package/dist/types/CallingClient/calling/callManager.d.ts.map +1 -1
- package/dist/types/CallingClient/constants.d.ts +102 -2
- package/dist/types/CallingClient/constants.d.ts.map +1 -1
- package/dist/types/CallingClient/line/index.d.ts.map +1 -1
- package/dist/types/CallingClient/registration/register.d.ts +4 -3
- package/dist/types/CallingClient/registration/register.d.ts.map +1 -1
- package/dist/types/CallingClient/registration/types.d.ts +1 -0
- package/dist/types/CallingClient/registration/types.d.ts.map +1 -1
- package/dist/types/CallingClient/registration/webWorker.d.ts +2 -0
- package/dist/types/CallingClient/registration/webWorker.d.ts.map +1 -0
- package/dist/types/CallingClient/registration/webWorkerStr.d.ts +3 -0
- package/dist/types/CallingClient/registration/webWorkerStr.d.ts.map +1 -0
- package/dist/types/Contacts/ContactsClient.d.ts.map +1 -1
- package/dist/types/Contacts/constants.d.ts +10 -0
- package/dist/types/Contacts/constants.d.ts.map +1 -1
- package/dist/types/Errors/types.d.ts +2 -0
- package/dist/types/Errors/types.d.ts.map +1 -1
- package/dist/types/Metrics/index.d.ts +1 -1
- package/dist/types/Metrics/index.d.ts.map +1 -1
- package/dist/types/Metrics/types.d.ts +7 -2
- package/dist/types/Metrics/types.d.ts.map +1 -1
- package/dist/types/SDKConnector/types.d.ts +11 -2
- package/dist/types/SDKConnector/types.d.ts.map +1 -1
- package/dist/types/Voicemail/BroadworksBackendConnector.d.ts.map +1 -1
- package/dist/types/Voicemail/UcmBackendConnector.d.ts.map +1 -1
- package/dist/types/Voicemail/Voicemail.d.ts +1 -1
- package/dist/types/Voicemail/Voicemail.d.ts.map +1 -1
- package/dist/types/Voicemail/WxCallBackendConnector.d.ts +3 -1
- package/dist/types/Voicemail/WxCallBackendConnector.d.ts.map +1 -1
- package/dist/types/Voicemail/constants.d.ts +21 -0
- package/dist/types/Voicemail/constants.d.ts.map +1 -1
- package/dist/types/Voicemail/types.d.ts +1 -1
- package/dist/types/Voicemail/types.d.ts.map +1 -1
- package/dist/types/common/Utils.d.ts +4 -4
- package/dist/types/common/Utils.d.ts.map +1 -1
- package/dist/types/common/constants.d.ts +1 -0
- package/dist/types/common/constants.d.ts.map +1 -1
- package/dist/types/common/testUtil.d.ts +3 -0
- package/dist/types/common/testUtil.d.ts.map +1 -1
- package/dist/types/common/types.d.ts +24 -0
- package/dist/types/common/types.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +4 -3
|
@@ -23,16 +23,17 @@ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs2/he
|
|
|
23
23
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/createClass"));
|
|
24
24
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
|
|
25
25
|
var _uuid = require("uuid");
|
|
26
|
-
var
|
|
26
|
+
var _constants = require("../../common/constants");
|
|
27
27
|
var _common = require("../../common");
|
|
28
|
-
var
|
|
28
|
+
var _webWorkerStr = _interopRequireDefault(require("./webWorkerStr"));
|
|
29
|
+
var _types = require("../../Metrics/types");
|
|
29
30
|
var _Metrics = require("../../Metrics");
|
|
30
31
|
var _calling = require("../calling");
|
|
31
32
|
var _Logger = _interopRequireDefault(require("../../Logger"));
|
|
32
33
|
var _SDKConnector = _interopRequireDefault(require("../../SDKConnector"));
|
|
33
|
-
var
|
|
34
|
-
var
|
|
35
|
-
var
|
|
34
|
+
var _types2 = require("../../common/types");
|
|
35
|
+
var _constants2 = require("../constants");
|
|
36
|
+
var _types3 = require("../line/types");
|
|
36
37
|
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof _Symbol !== "undefined" && o[_Symbol$iterator] || o["@@iterator"]; if (!it) { if (_Array$isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, 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 normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
37
38
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return _Array$from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
38
39
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
@@ -54,7 +55,6 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
54
55
|
(0, _defineProperty2.default)(this, "registrationStatus", void 0);
|
|
55
56
|
(0, _defineProperty2.default)(this, "failbackTimer", void 0);
|
|
56
57
|
(0, _defineProperty2.default)(this, "activeMobiusUrl", void 0);
|
|
57
|
-
(0, _defineProperty2.default)(this, "keepaliveTimer", void 0);
|
|
58
58
|
(0, _defineProperty2.default)(this, "rehomingIntervalMin", void 0);
|
|
59
59
|
(0, _defineProperty2.default)(this, "rehomingIntervalMax", void 0);
|
|
60
60
|
(0, _defineProperty2.default)(this, "mutex", void 0);
|
|
@@ -69,20 +69,23 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
69
69
|
(0, _defineProperty2.default)(this, "jwe", void 0);
|
|
70
70
|
(0, _defineProperty2.default)(this, "isCCFlow", false);
|
|
71
71
|
(0, _defineProperty2.default)(this, "failoverImmediately", false);
|
|
72
|
+
(0, _defineProperty2.default)(this, "retryAfter", void 0);
|
|
73
|
+
(0, _defineProperty2.default)(this, "scheduled429Retry", false);
|
|
74
|
+
(0, _defineProperty2.default)(this, "webWorker", void 0);
|
|
72
75
|
this.jwe = jwe;
|
|
73
76
|
this.sdkConnector = _SDKConnector.default;
|
|
74
77
|
this.serviceData = serviceData;
|
|
75
|
-
this.isCCFlow = serviceData.indicator ===
|
|
78
|
+
this.isCCFlow = serviceData.indicator === _types2.ServiceIndicator.CONTACT_CENTER;
|
|
76
79
|
if (!this.sdkConnector.getWebex()) {
|
|
77
80
|
_SDKConnector.default.setWebex(webex);
|
|
78
81
|
}
|
|
79
82
|
this.webex = this.sdkConnector.getWebex();
|
|
80
83
|
this.userId = this.webex.internal.device.userId;
|
|
81
|
-
this.registrationStatus =
|
|
84
|
+
this.registrationStatus = _types2.RegistrationStatus.IDLE;
|
|
82
85
|
this.failback429RetryAttempts = 0;
|
|
83
|
-
_Logger.default.setLogger(logLevel,
|
|
84
|
-
this.rehomingIntervalMin =
|
|
85
|
-
this.rehomingIntervalMax =
|
|
86
|
+
_Logger.default.setLogger(logLevel, _constants2.REGISTRATION_FILE);
|
|
87
|
+
this.rehomingIntervalMin = _constants2.DEFAULT_REHOMING_INTERVAL_MIN;
|
|
88
|
+
this.rehomingIntervalMax = _constants2.DEFAULT_REHOMING_INTERVAL_MAX;
|
|
86
89
|
this.mutex = mutex;
|
|
87
90
|
this.callManager = (0, _calling.getCallManager)(this.webex, serviceData.indicator);
|
|
88
91
|
this.metricManager = (0, _Metrics.getMetricManager)(this.webex, serviceData.indicator);
|
|
@@ -98,9 +101,9 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
98
101
|
}, {
|
|
99
102
|
key: "setActiveMobiusUrl",
|
|
100
103
|
value: function setActiveMobiusUrl(url) {
|
|
101
|
-
_Logger.default.info("
|
|
102
|
-
method:
|
|
103
|
-
file:
|
|
104
|
+
_Logger.default.info("".concat(_constants.METHOD_START_MESSAGE, " with ").concat(url), {
|
|
105
|
+
method: _constants2.METHODS.UPDATE_ACTIVE_MOBIUS,
|
|
106
|
+
file: _constants2.REGISTRATION_FILE
|
|
104
107
|
});
|
|
105
108
|
this.activeMobiusUrl = url;
|
|
106
109
|
this.callManager.updateActiveMobius(url);
|
|
@@ -108,95 +111,73 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
108
111
|
}, {
|
|
109
112
|
key: "setMobiusServers",
|
|
110
113
|
value: function setMobiusServers(primaryMobiusUris, backupMobiusUris) {
|
|
114
|
+
_Logger.default.log(_constants.METHOD_START_MESSAGE, {
|
|
115
|
+
method: _constants2.METHODS.SET_MOBIUS_SERVERS,
|
|
116
|
+
file: _constants2.REGISTRATION_FILE
|
|
117
|
+
});
|
|
111
118
|
this.primaryMobiusUris = primaryMobiusUris;
|
|
112
119
|
this.backupMobiusUris = backupMobiusUris;
|
|
113
120
|
}
|
|
114
121
|
|
|
115
|
-
/**
|
|
116
|
-
* Implementation of sending keepalive.
|
|
117
|
-
*
|
|
118
|
-
*/
|
|
119
|
-
}, {
|
|
120
|
-
key: "postKeepAlive",
|
|
121
|
-
value: (function () {
|
|
122
|
-
var _postKeepAlive = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(url) {
|
|
123
|
-
return _regenerator.default.wrap(function _callee$(_context) {
|
|
124
|
-
while (1) switch (_context.prev = _context.next) {
|
|
125
|
-
case 0:
|
|
126
|
-
return _context.abrupt("return", this.webex.request({
|
|
127
|
-
uri: "".concat(url, "/status"),
|
|
128
|
-
method: _types3.HTTP_METHODS.POST,
|
|
129
|
-
headers: (0, _defineProperty2.default)((0, _defineProperty2.default)({}, _constants.CISCO_DEVICE_URL, this.webex.internal.device.url), _constants.SPARK_USER_AGENT, _constants.CALLING_USER_AGENT),
|
|
130
|
-
service: _types3.ALLOWED_SERVICES.MOBIUS
|
|
131
|
-
}));
|
|
132
|
-
case 1:
|
|
133
|
-
case "end":
|
|
134
|
-
return _context.stop();
|
|
135
|
-
}
|
|
136
|
-
}, _callee, this);
|
|
137
|
-
}));
|
|
138
|
-
function postKeepAlive(_x) {
|
|
139
|
-
return _postKeepAlive.apply(this, arguments);
|
|
140
|
-
}
|
|
141
|
-
return postKeepAlive;
|
|
142
|
-
}()
|
|
143
122
|
/**
|
|
144
123
|
* Implementation of delete device.
|
|
145
124
|
*
|
|
146
125
|
*/
|
|
147
|
-
)
|
|
148
126
|
}, {
|
|
149
127
|
key: "deleteRegistration",
|
|
150
128
|
value: (function () {
|
|
151
|
-
var _deleteRegistration = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
129
|
+
var _deleteRegistration = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(url, deviceId, deviceUrl) {
|
|
152
130
|
var _response;
|
|
153
131
|
var response;
|
|
154
|
-
return _regenerator.default.wrap(function
|
|
155
|
-
while (1) switch (
|
|
132
|
+
return _regenerator.default.wrap(function _callee$(_context) {
|
|
133
|
+
while (1) switch (_context.prev = _context.next) {
|
|
156
134
|
case 0:
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
135
|
+
_context.prev = 0;
|
|
136
|
+
_context.t0 = fetch;
|
|
137
|
+
_context.t1 = "".concat(url).concat(_constants2.DEVICES_ENDPOINT_RESOURCE, "/").concat(deviceId);
|
|
138
|
+
_context.t2 = _types2.HTTP_METHODS.DELETE;
|
|
139
|
+
_context.t3 = _defineProperty2.default;
|
|
140
|
+
_context.t4 = _defineProperty2.default;
|
|
141
|
+
_context.t5 = _defineProperty2.default;
|
|
142
|
+
_context.t6 = (0, _defineProperty2.default)({}, _constants2.CISCO_DEVICE_URL, deviceUrl);
|
|
143
|
+
_context.next = 10;
|
|
166
144
|
return this.webex.credentials.getUserToken();
|
|
167
145
|
case 10:
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
method:
|
|
177
|
-
headers:
|
|
146
|
+
_context.t7 = _context.sent;
|
|
147
|
+
_context.t8 = (0, _context.t5)(_context.t6, "Authorization", _context.t7);
|
|
148
|
+
_context.t9 = "".concat(_constants2.WEBEX_WEB_CLIENT, "_").concat((0, _uuid.v4)());
|
|
149
|
+
_context.t10 = (0, _context.t4)(_context.t8, "trackingId", _context.t9);
|
|
150
|
+
_context.t11 = _constants2.SPARK_USER_AGENT;
|
|
151
|
+
_context.t12 = _constants2.CALLING_USER_AGENT;
|
|
152
|
+
_context.t13 = (0, _context.t3)(_context.t10, _context.t11, _context.t12);
|
|
153
|
+
_context.t14 = {
|
|
154
|
+
method: _context.t2,
|
|
155
|
+
headers: _context.t13
|
|
178
156
|
};
|
|
179
|
-
|
|
180
|
-
return (0,
|
|
157
|
+
_context.next = 20;
|
|
158
|
+
return (0, _context.t0)(_context.t1, _context.t14);
|
|
181
159
|
case 20:
|
|
182
|
-
response =
|
|
183
|
-
|
|
160
|
+
response = _context.sent;
|
|
161
|
+
_context.next = 26;
|
|
184
162
|
break;
|
|
185
163
|
case 23:
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
_Logger.default.warn("Delete failed with Mobius", {
|
|
164
|
+
_context.prev = 23;
|
|
165
|
+
_context.t15 = _context["catch"](0);
|
|
166
|
+
_Logger.default.warn("Delete failed with Mobius ".concat(_context.t15), {
|
|
167
|
+
file: _constants2.REGISTRATION_FILE,
|
|
168
|
+
method: _constants2.METHODS.DEREGISTER
|
|
169
|
+
});
|
|
189
170
|
case 26:
|
|
190
|
-
this.setStatus(
|
|
191
|
-
this.lineEmitter(
|
|
192
|
-
return
|
|
171
|
+
this.setStatus(_types2.RegistrationStatus.INACTIVE);
|
|
172
|
+
this.lineEmitter(_types3.LINE_EVENTS.UNREGISTERED);
|
|
173
|
+
return _context.abrupt("return", (_response = response) === null || _response === void 0 ? void 0 : _response.json());
|
|
193
174
|
case 29:
|
|
194
175
|
case "end":
|
|
195
|
-
return
|
|
176
|
+
return _context.stop();
|
|
196
177
|
}
|
|
197
|
-
},
|
|
178
|
+
}, _callee, this, [[0, 23]]);
|
|
198
179
|
}));
|
|
199
|
-
function deleteRegistration(_x2, _x3
|
|
180
|
+
function deleteRegistration(_x, _x2, _x3) {
|
|
200
181
|
return _deleteRegistration.apply(this, arguments);
|
|
201
182
|
}
|
|
202
183
|
return deleteRegistration;
|
|
@@ -209,10 +190,10 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
209
190
|
}, {
|
|
210
191
|
key: "postRegistration",
|
|
211
192
|
value: (function () {
|
|
212
|
-
var _postRegistration = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
193
|
+
var _postRegistration = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(url) {
|
|
213
194
|
var deviceInfo;
|
|
214
|
-
return _regenerator.default.wrap(function
|
|
215
|
-
while (1) switch (
|
|
195
|
+
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
196
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
216
197
|
case 0:
|
|
217
198
|
deviceInfo = {
|
|
218
199
|
userId: this.userId,
|
|
@@ -221,20 +202,20 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
221
202
|
jwe: this.jwe
|
|
222
203
|
}) : this.serviceData
|
|
223
204
|
};
|
|
224
|
-
return
|
|
205
|
+
return _context2.abrupt("return", this.webex.request({
|
|
225
206
|
uri: "".concat(url, "device"),
|
|
226
|
-
method:
|
|
227
|
-
headers: (0, _defineProperty2.default)((0, _defineProperty2.default)({},
|
|
207
|
+
method: _types2.HTTP_METHODS.POST,
|
|
208
|
+
headers: (0, _defineProperty2.default)((0, _defineProperty2.default)({}, _constants2.CISCO_DEVICE_URL, deviceInfo.clientDeviceUri), _constants2.SPARK_USER_AGENT, _constants2.CALLING_USER_AGENT),
|
|
228
209
|
body: deviceInfo,
|
|
229
|
-
service:
|
|
210
|
+
service: _types2.ALLOWED_SERVICES.MOBIUS
|
|
230
211
|
}));
|
|
231
212
|
case 2:
|
|
232
213
|
case "end":
|
|
233
|
-
return
|
|
214
|
+
return _context2.stop();
|
|
234
215
|
}
|
|
235
|
-
},
|
|
216
|
+
}, _callee2, this);
|
|
236
217
|
}));
|
|
237
|
-
function postRegistration(
|
|
218
|
+
function postRegistration(_x4) {
|
|
238
219
|
return _postRegistration.apply(this, arguments);
|
|
239
220
|
}
|
|
240
221
|
return postRegistration;
|
|
@@ -247,82 +228,89 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
247
228
|
}, {
|
|
248
229
|
key: "restorePreviousRegistration",
|
|
249
230
|
value: (function () {
|
|
250
|
-
var _restorePreviousRegistration = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
231
|
+
var _restorePreviousRegistration = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(caller) {
|
|
251
232
|
var abort;
|
|
252
|
-
return _regenerator.default.wrap(function
|
|
253
|
-
while (1) switch (
|
|
233
|
+
return _regenerator.default.wrap(function _callee3$(_context3) {
|
|
234
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
254
235
|
case 0:
|
|
255
236
|
abort = false;
|
|
256
237
|
if (!this.activeMobiusUrl) {
|
|
257
|
-
|
|
238
|
+
_context3.next = 5;
|
|
258
239
|
break;
|
|
259
240
|
}
|
|
260
|
-
|
|
241
|
+
_context3.next = 4;
|
|
261
242
|
return this.attemptRegistrationWithServers(caller, [this.activeMobiusUrl]);
|
|
262
243
|
case 4:
|
|
263
|
-
abort =
|
|
244
|
+
abort = _context3.sent;
|
|
264
245
|
case 5:
|
|
265
|
-
return
|
|
246
|
+
return _context3.abrupt("return", abort);
|
|
266
247
|
case 6:
|
|
267
248
|
case "end":
|
|
268
|
-
return
|
|
249
|
+
return _context3.stop();
|
|
269
250
|
}
|
|
270
|
-
},
|
|
251
|
+
}, _callee3, this);
|
|
271
252
|
}));
|
|
272
|
-
function restorePreviousRegistration(
|
|
253
|
+
function restorePreviousRegistration(_x5) {
|
|
273
254
|
return _restorePreviousRegistration.apply(this, arguments);
|
|
274
255
|
}
|
|
275
256
|
return restorePreviousRegistration;
|
|
276
257
|
}()
|
|
277
258
|
/**
|
|
278
|
-
*
|
|
279
|
-
* request did not even land on primary mobius to know if it
|
|
280
|
-
* can handle this device registration now, in such cases this
|
|
281
|
-
* method is called to retry sooner than the rehoming timer value.
|
|
259
|
+
*
|
|
282
260
|
*/
|
|
283
261
|
)
|
|
284
262
|
}, {
|
|
285
|
-
key: "
|
|
263
|
+
key: "handle429Retry",
|
|
286
264
|
value: (function () {
|
|
287
|
-
var
|
|
265
|
+
var _handle429Retry = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4(retryAfter, caller) {
|
|
288
266
|
var interval, abort;
|
|
289
|
-
return _regenerator.default.wrap(function
|
|
290
|
-
while (1) switch (
|
|
267
|
+
return _regenerator.default.wrap(function _callee4$(_context4) {
|
|
268
|
+
while (1) switch (_context4.prev = _context4.next) {
|
|
291
269
|
case 0:
|
|
292
|
-
if (!(
|
|
293
|
-
|
|
270
|
+
if (!(caller === _constants2.FAILBACK_UTIL)) {
|
|
271
|
+
_context4.next = 17;
|
|
294
272
|
break;
|
|
295
273
|
}
|
|
296
|
-
|
|
297
|
-
|
|
274
|
+
if (!(this.failback429RetryAttempts >= _constants2.REG_FAILBACK_429_MAX_RETRIES)) {
|
|
275
|
+
_context4.next = 3;
|
|
276
|
+
break;
|
|
277
|
+
}
|
|
278
|
+
return _context4.abrupt("return");
|
|
279
|
+
case 3:
|
|
298
280
|
this.clearFailbackTimer();
|
|
299
281
|
this.failback429RetryAttempts += 1;
|
|
300
282
|
_Logger.default.log("Received 429 while rehoming, 429 retry count : ".concat(this.failback429RetryAttempts), {
|
|
301
|
-
file:
|
|
302
|
-
method:
|
|
283
|
+
file: _constants2.REGISTRATION_FILE,
|
|
284
|
+
method: _constants2.REG_429_RETRY_UTIL
|
|
303
285
|
});
|
|
304
286
|
interval = this.getRegRetryInterval(this.failback429RetryAttempts);
|
|
305
287
|
this.startFailbackTimer(interval);
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
288
|
+
this.scheduled429Retry = true;
|
|
289
|
+
_context4.next = 11;
|
|
290
|
+
return this.restorePreviousRegistration(_constants2.REG_429_RETRY_UTIL);
|
|
291
|
+
case 11:
|
|
292
|
+
abort = _context4.sent;
|
|
310
293
|
if (!(!abort && !this.isDeviceRegistered())) {
|
|
311
|
-
|
|
294
|
+
_context4.next = 15;
|
|
312
295
|
break;
|
|
313
296
|
}
|
|
314
|
-
|
|
315
|
-
return this.restartRegistration(
|
|
316
|
-
case
|
|
297
|
+
_context4.next = 15;
|
|
298
|
+
return this.restartRegistration(_constants2.REG_429_RETRY_UTIL);
|
|
299
|
+
case 15:
|
|
300
|
+
_context4.next = 18;
|
|
301
|
+
break;
|
|
302
|
+
case 17:
|
|
303
|
+
this.retryAfter = retryAfter;
|
|
304
|
+
case 18:
|
|
317
305
|
case "end":
|
|
318
|
-
return
|
|
306
|
+
return _context4.stop();
|
|
319
307
|
}
|
|
320
|
-
},
|
|
308
|
+
}, _callee4, this);
|
|
321
309
|
}));
|
|
322
|
-
function
|
|
323
|
-
return
|
|
310
|
+
function handle429Retry(_x6, _x7) {
|
|
311
|
+
return _handle429Retry.apply(this, arguments);
|
|
324
312
|
}
|
|
325
|
-
return
|
|
313
|
+
return handle429Retry;
|
|
326
314
|
}()
|
|
327
315
|
/**
|
|
328
316
|
* Calculates and returns a random interval value using input argument
|
|
@@ -335,7 +323,7 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
335
323
|
key: "getRegRetryInterval",
|
|
336
324
|
value: function getRegRetryInterval() {
|
|
337
325
|
var attempt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;
|
|
338
|
-
return
|
|
326
|
+
return _constants2.BASE_REG_RETRY_TIMER_VAL_IN_SEC + Math.pow(_constants2.BASE_REG_TIMER_MFACTOR, attempt) + Math.floor((Math.random() * (_constants2.REG_RANDOM_T_FACTOR_UPPER_LIMIT - _constants2.SEC_TO_MSEC_MFACTOR + 1) + _constants2.SEC_TO_MSEC_MFACTOR) / _constants2.SEC_TO_MSEC_MFACTOR);
|
|
339
327
|
}
|
|
340
328
|
|
|
341
329
|
/**
|
|
@@ -348,7 +336,7 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
348
336
|
}, {
|
|
349
337
|
key: "startFailoverTimer",
|
|
350
338
|
value: (function () {
|
|
351
|
-
var _startFailoverTimer = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
339
|
+
var _startFailoverTimer = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee9() {
|
|
352
340
|
var _this = this;
|
|
353
341
|
var attempt,
|
|
354
342
|
timeElapsed,
|
|
@@ -358,119 +346,136 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
358
346
|
excessVal,
|
|
359
347
|
abort,
|
|
360
348
|
scheduledTime,
|
|
361
|
-
|
|
362
|
-
return _regenerator.default.wrap(function
|
|
363
|
-
while (1) switch (
|
|
349
|
+
_args9 = arguments;
|
|
350
|
+
return _regenerator.default.wrap(function _callee9$(_context9) {
|
|
351
|
+
while (1) switch (_context9.prev = _context9.next) {
|
|
364
352
|
case 0:
|
|
365
|
-
attempt =
|
|
366
|
-
timeElapsed =
|
|
353
|
+
attempt = _args9.length > 0 && _args9[0] !== undefined ? _args9[0] : 1;
|
|
354
|
+
timeElapsed = _args9.length > 1 && _args9[1] !== undefined ? _args9[1] : 0;
|
|
367
355
|
loggerContext = {
|
|
368
|
-
file:
|
|
369
|
-
method:
|
|
356
|
+
file: _constants2.REGISTRATION_FILE,
|
|
357
|
+
method: _constants2.FAILOVER_UTIL
|
|
370
358
|
};
|
|
371
359
|
interval = this.getRegRetryInterval(attempt);
|
|
372
|
-
TIMER_THRESHOLD = this.isCCFlow ?
|
|
360
|
+
TIMER_THRESHOLD = this.isCCFlow ? _constants2.REG_TRY_BACKUP_TIMER_VAL_FOR_CC_IN_SEC : _constants2.REG_TRY_BACKUP_TIMER_VAL_IN_SEC;
|
|
373
361
|
if (timeElapsed + interval > TIMER_THRESHOLD) {
|
|
374
362
|
excessVal = timeElapsed + interval - TIMER_THRESHOLD;
|
|
375
363
|
interval -= excessVal;
|
|
376
364
|
}
|
|
377
|
-
if (
|
|
378
|
-
|
|
365
|
+
if (this.retryAfter != null && interval < this.retryAfter) {
|
|
366
|
+
this.failoverImmediately = this.retryAfter + timeElapsed > TIMER_THRESHOLD;
|
|
367
|
+
}
|
|
368
|
+
if (!(interval > _constants2.BASE_REG_RETRY_TIMER_VAL_IN_SEC && !this.failoverImmediately)) {
|
|
369
|
+
_context9.next = 14;
|
|
379
370
|
break;
|
|
380
371
|
}
|
|
381
372
|
scheduledTime = Math.floor((0, _now.default)() / 1000);
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
373
|
+
if (this.retryAfter != null) {
|
|
374
|
+
interval = Math.max(interval, this.retryAfter);
|
|
375
|
+
}
|
|
376
|
+
setTimeout( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee6() {
|
|
377
|
+
return _regenerator.default.wrap(function _callee6$(_context6) {
|
|
378
|
+
while (1) switch (_context6.prev = _context6.next) {
|
|
385
379
|
case 0:
|
|
386
|
-
|
|
387
|
-
return _this.mutex.runExclusive( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
380
|
+
_context6.next = 2;
|
|
381
|
+
return _this.mutex.runExclusive( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5() {
|
|
388
382
|
var currentTime;
|
|
389
|
-
return _regenerator.default.wrap(function
|
|
390
|
-
while (1) switch (
|
|
383
|
+
return _regenerator.default.wrap(function _callee5$(_context5) {
|
|
384
|
+
while (1) switch (_context5.prev = _context5.next) {
|
|
391
385
|
case 0:
|
|
392
|
-
|
|
393
|
-
return _this.attemptRegistrationWithServers(
|
|
386
|
+
_context5.next = 2;
|
|
387
|
+
return _this.attemptRegistrationWithServers(_constants2.FAILOVER_UTIL);
|
|
394
388
|
case 2:
|
|
395
|
-
abort =
|
|
389
|
+
abort = _context5.sent;
|
|
396
390
|
currentTime = Math.floor((0, _now.default)() / 1000);
|
|
397
391
|
if (!(!abort && !_this.isDeviceRegistered())) {
|
|
398
|
-
|
|
392
|
+
_context5.next = 7;
|
|
399
393
|
break;
|
|
400
394
|
}
|
|
401
|
-
|
|
395
|
+
_context5.next = 7;
|
|
402
396
|
return _this.startFailoverTimer(attempt + 1, timeElapsed + (currentTime - scheduledTime));
|
|
403
397
|
case 7:
|
|
404
398
|
case "end":
|
|
405
|
-
return
|
|
399
|
+
return _context5.stop();
|
|
406
400
|
}
|
|
407
|
-
},
|
|
401
|
+
}, _callee5);
|
|
408
402
|
})));
|
|
409
403
|
case 2:
|
|
410
404
|
case "end":
|
|
411
|
-
return
|
|
405
|
+
return _context6.stop();
|
|
412
406
|
}
|
|
413
|
-
},
|
|
414
|
-
})), interval *
|
|
407
|
+
}, _callee6);
|
|
408
|
+
})), interval * _constants2.SEC_TO_MSEC_MFACTOR);
|
|
415
409
|
_Logger.default.log("Scheduled retry with primary in ".concat(interval, " seconds, number of attempts : ").concat(attempt), loggerContext);
|
|
416
|
-
|
|
410
|
+
_context9.next = 26;
|
|
417
411
|
break;
|
|
418
|
-
case
|
|
412
|
+
case 14:
|
|
419
413
|
if (!this.backupMobiusUris.length) {
|
|
420
|
-
|
|
414
|
+
_context9.next = 23;
|
|
421
415
|
break;
|
|
422
416
|
}
|
|
423
|
-
_Logger.default.
|
|
417
|
+
_Logger.default.info('Failing over to backup servers.', loggerContext);
|
|
424
418
|
this.failoverImmediately = false;
|
|
425
|
-
|
|
426
|
-
return this.attemptRegistrationWithServers(
|
|
427
|
-
case
|
|
428
|
-
abort =
|
|
419
|
+
_context9.next = 19;
|
|
420
|
+
return this.attemptRegistrationWithServers(_constants2.FAILOVER_UTIL, this.backupMobiusUris);
|
|
421
|
+
case 19:
|
|
422
|
+
abort = _context9.sent;
|
|
429
423
|
if (!abort && !this.isDeviceRegistered()) {
|
|
430
424
|
interval = this.getRegRetryInterval();
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
425
|
+
if (this.retryAfter != null && this.retryAfter < _constants2.RETRY_TIMER_UPPER_LIMIT) {
|
|
426
|
+
interval = interval < this.retryAfter ? this.retryAfter : interval;
|
|
427
|
+
}
|
|
428
|
+
setTimeout( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee8() {
|
|
429
|
+
return _regenerator.default.wrap(function _callee8$(_context8) {
|
|
430
|
+
while (1) switch (_context8.prev = _context8.next) {
|
|
434
431
|
case 0:
|
|
435
|
-
|
|
436
|
-
return _this.mutex.runExclusive( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
437
|
-
return _regenerator.default.wrap(function
|
|
438
|
-
while (1) switch (
|
|
432
|
+
_context8.next = 2;
|
|
433
|
+
return _this.mutex.runExclusive( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee7() {
|
|
434
|
+
return _regenerator.default.wrap(function _callee7$(_context7) {
|
|
435
|
+
while (1) switch (_context7.prev = _context7.next) {
|
|
439
436
|
case 0:
|
|
440
|
-
|
|
441
|
-
return _this.attemptRegistrationWithServers(
|
|
437
|
+
_context7.next = 2;
|
|
438
|
+
return _this.attemptRegistrationWithServers(_constants2.FAILOVER_UTIL, _this.backupMobiusUris);
|
|
442
439
|
case 2:
|
|
443
|
-
abort =
|
|
444
|
-
if (!abort && !_this.isDeviceRegistered()) {
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
}, loggerContext);
|
|
440
|
+
abort = _context7.sent;
|
|
441
|
+
if (!(!abort && !_this.isDeviceRegistered())) {
|
|
442
|
+
_context7.next = 7;
|
|
443
|
+
break;
|
|
448
444
|
}
|
|
449
|
-
|
|
445
|
+
_context7.next = 6;
|
|
446
|
+
return (0, _common.uploadLogs)();
|
|
447
|
+
case 6:
|
|
448
|
+
(0, _common.emitFinalFailure)(function (clientError) {
|
|
449
|
+
_this.lineEmitter(_types3.LINE_EVENTS.ERROR, undefined, clientError);
|
|
450
|
+
}, loggerContext);
|
|
451
|
+
case 7:
|
|
450
452
|
case "end":
|
|
451
|
-
return
|
|
453
|
+
return _context7.stop();
|
|
452
454
|
}
|
|
453
|
-
},
|
|
455
|
+
}, _callee7);
|
|
454
456
|
})));
|
|
455
457
|
case 2:
|
|
456
458
|
case "end":
|
|
457
|
-
return
|
|
459
|
+
return _context8.stop();
|
|
458
460
|
}
|
|
459
|
-
},
|
|
460
|
-
})), interval *
|
|
461
|
+
}, _callee8);
|
|
462
|
+
})), interval * _constants2.SEC_TO_MSEC_MFACTOR);
|
|
461
463
|
_Logger.default.log("Scheduled retry with backup servers in ".concat(interval, " seconds."), loggerContext);
|
|
462
464
|
}
|
|
463
|
-
|
|
465
|
+
_context9.next = 26;
|
|
464
466
|
break;
|
|
465
|
-
case
|
|
467
|
+
case 23:
|
|
468
|
+
_context9.next = 25;
|
|
469
|
+
return (0, _common.uploadLogs)();
|
|
470
|
+
case 25:
|
|
466
471
|
(0, _common.emitFinalFailure)(function (clientError) {
|
|
467
|
-
_this.lineEmitter(
|
|
472
|
+
_this.lineEmitter(_types3.LINE_EVENTS.ERROR, undefined, clientError);
|
|
468
473
|
}, loggerContext);
|
|
469
|
-
case
|
|
474
|
+
case 26:
|
|
470
475
|
case "end":
|
|
471
|
-
return
|
|
476
|
+
return _context9.stop();
|
|
472
477
|
}
|
|
473
|
-
},
|
|
478
|
+
}, _callee9, this);
|
|
474
479
|
}));
|
|
475
480
|
function startFailoverTimer() {
|
|
476
481
|
return _startFailoverTimer.apply(this, arguments);
|
|
@@ -520,7 +525,7 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
520
525
|
if (!this.failbackTimer) {
|
|
521
526
|
this.failback429RetryAttempts = 0;
|
|
522
527
|
var intervalInMinutes = this.getFailbackInterval();
|
|
523
|
-
this.startFailbackTimer(intervalInMinutes *
|
|
528
|
+
this.startFailbackTimer(intervalInMinutes * _constants2.MINUTES_TO_SEC_MFACTOR);
|
|
524
529
|
}
|
|
525
530
|
} else {
|
|
526
531
|
this.failback429RetryAttempts = 0;
|
|
@@ -536,19 +541,19 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
536
541
|
key: "startFailbackTimer",
|
|
537
542
|
value: function startFailbackTimer(intervalInSeconds) {
|
|
538
543
|
var _this2 = this;
|
|
539
|
-
this.failbackTimer = setTimeout( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
540
|
-
return _regenerator.default.wrap(function
|
|
541
|
-
while (1) switch (
|
|
544
|
+
this.failbackTimer = setTimeout( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee10() {
|
|
545
|
+
return _regenerator.default.wrap(function _callee10$(_context10) {
|
|
546
|
+
while (1) switch (_context10.prev = _context10.next) {
|
|
542
547
|
case 0:
|
|
543
|
-
return
|
|
548
|
+
return _context10.abrupt("return", _this2.executeFailback());
|
|
544
549
|
case 1:
|
|
545
550
|
case "end":
|
|
546
|
-
return
|
|
551
|
+
return _context10.stop();
|
|
547
552
|
}
|
|
548
|
-
},
|
|
549
|
-
})), intervalInSeconds *
|
|
553
|
+
}, _callee10);
|
|
554
|
+
})), intervalInSeconds * _constants2.SEC_TO_MSEC_MFACTOR);
|
|
550
555
|
_Logger.default.log("Failback scheduled after ".concat(intervalInSeconds, " seconds."), {
|
|
551
|
-
file:
|
|
556
|
+
file: _constants2.REGISTRATION_FILE,
|
|
552
557
|
method: this.startFailbackTimer.name
|
|
553
558
|
});
|
|
554
559
|
}
|
|
@@ -560,84 +565,86 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
560
565
|
}, {
|
|
561
566
|
key: "executeFailback",
|
|
562
567
|
value: (function () {
|
|
563
|
-
var _executeFailback = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
568
|
+
var _executeFailback = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee12() {
|
|
564
569
|
var _this3 = this;
|
|
565
|
-
return _regenerator.default.wrap(function
|
|
566
|
-
while (1) switch (
|
|
570
|
+
return _regenerator.default.wrap(function _callee12$(_context12) {
|
|
571
|
+
while (1) switch (_context12.prev = _context12.next) {
|
|
567
572
|
case 0:
|
|
568
|
-
|
|
569
|
-
return this.mutex.runExclusive( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
573
|
+
_context12.next = 2;
|
|
574
|
+
return this.mutex.runExclusive( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee11() {
|
|
570
575
|
var abort, abortNew;
|
|
571
|
-
return _regenerator.default.wrap(function
|
|
572
|
-
while (1) switch (
|
|
576
|
+
return _regenerator.default.wrap(function _callee11$(_context11) {
|
|
577
|
+
while (1) switch (_context11.prev = _context11.next) {
|
|
573
578
|
case 0:
|
|
574
579
|
if (!_this3.isFailbackRequired()) {
|
|
575
|
-
|
|
580
|
+
_context11.next = 28;
|
|
576
581
|
break;
|
|
577
582
|
}
|
|
578
583
|
if (!((0, _keys.default)(_this3.callManager.getActiveCalls()).length === 0)) {
|
|
579
|
-
|
|
584
|
+
_context11.next = 25;
|
|
580
585
|
break;
|
|
581
586
|
}
|
|
582
587
|
_Logger.default.info("Attempting failback to primary.", {
|
|
583
|
-
file:
|
|
588
|
+
file: _constants2.REGISTRATION_FILE,
|
|
584
589
|
method: _this3.executeFailback.name
|
|
585
590
|
});
|
|
586
|
-
|
|
591
|
+
_context11.next = 5;
|
|
587
592
|
return _this3.deregister();
|
|
588
593
|
case 5:
|
|
589
|
-
|
|
590
|
-
return _this3.attemptRegistrationWithServers(
|
|
594
|
+
_context11.next = 7;
|
|
595
|
+
return _this3.attemptRegistrationWithServers(_constants2.FAILBACK_UTIL);
|
|
591
596
|
case 7:
|
|
592
|
-
abort =
|
|
593
|
-
if (!(
|
|
594
|
-
|
|
597
|
+
abort = _context11.sent;
|
|
598
|
+
if (!(_this3.scheduled429Retry || abort || _this3.isDeviceRegistered())) {
|
|
599
|
+
_context11.next = 10;
|
|
595
600
|
break;
|
|
596
601
|
}
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
602
|
+
return _context11.abrupt("return");
|
|
603
|
+
case 10:
|
|
604
|
+
_context11.next = 12;
|
|
605
|
+
return _this3.restorePreviousRegistration(_constants2.FAILBACK_UTIL);
|
|
606
|
+
case 12:
|
|
607
|
+
abortNew = _context11.sent;
|
|
601
608
|
if (!abortNew) {
|
|
602
|
-
|
|
609
|
+
_context11.next = 16;
|
|
603
610
|
break;
|
|
604
611
|
}
|
|
605
612
|
_this3.clearFailbackTimer();
|
|
606
|
-
return
|
|
607
|
-
case
|
|
613
|
+
return _context11.abrupt("return");
|
|
614
|
+
case 16:
|
|
608
615
|
if (_this3.isDeviceRegistered()) {
|
|
609
|
-
|
|
616
|
+
_context11.next = 21;
|
|
610
617
|
break;
|
|
611
618
|
}
|
|
612
|
-
|
|
619
|
+
_context11.next = 19;
|
|
613
620
|
return _this3.restartRegistration(_this3.executeFailback.name);
|
|
614
|
-
case
|
|
615
|
-
|
|
621
|
+
case 19:
|
|
622
|
+
_context11.next = 23;
|
|
616
623
|
break;
|
|
617
|
-
case
|
|
624
|
+
case 21:
|
|
618
625
|
_this3.failbackTimer = undefined;
|
|
619
626
|
_this3.initiateFailback();
|
|
620
|
-
case
|
|
621
|
-
|
|
627
|
+
case 23:
|
|
628
|
+
_context11.next = 28;
|
|
622
629
|
break;
|
|
623
|
-
case
|
|
630
|
+
case 25:
|
|
624
631
|
_Logger.default.info('Active calls present, deferring failback to next cycle.', {
|
|
625
|
-
file:
|
|
632
|
+
file: _constants2.REGISTRATION_FILE,
|
|
626
633
|
method: _this3.executeFailback.name
|
|
627
634
|
});
|
|
628
635
|
_this3.failbackTimer = undefined;
|
|
629
636
|
_this3.initiateFailback();
|
|
630
|
-
case
|
|
637
|
+
case 28:
|
|
631
638
|
case "end":
|
|
632
|
-
return
|
|
639
|
+
return _context11.stop();
|
|
633
640
|
}
|
|
634
|
-
},
|
|
641
|
+
}, _callee11);
|
|
635
642
|
})));
|
|
636
643
|
case 2:
|
|
637
644
|
case "end":
|
|
638
|
-
return
|
|
645
|
+
return _context12.stop();
|
|
639
646
|
}
|
|
640
|
-
},
|
|
647
|
+
}, _callee12, this);
|
|
641
648
|
}));
|
|
642
649
|
function executeFailback() {
|
|
643
650
|
return _executeFailback.apply(this, arguments);
|
|
@@ -655,8 +662,8 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
655
662
|
key: "setIntervalValues",
|
|
656
663
|
value: function setIntervalValues(deviceInfo) {
|
|
657
664
|
if (this.primaryMobiusUris.indexOf(this.activeMobiusUrl) !== -1) {
|
|
658
|
-
this.rehomingIntervalMin = deviceInfo !== null && deviceInfo !== void 0 && deviceInfo.rehomingIntervalMin ? deviceInfo.rehomingIntervalMin :
|
|
659
|
-
this.rehomingIntervalMax = deviceInfo !== null && deviceInfo !== void 0 && deviceInfo.rehomingIntervalMax ? deviceInfo.rehomingIntervalMax :
|
|
665
|
+
this.rehomingIntervalMin = deviceInfo !== null && deviceInfo !== void 0 && deviceInfo.rehomingIntervalMin ? deviceInfo.rehomingIntervalMin : _constants2.DEFAULT_REHOMING_INTERVAL_MIN;
|
|
666
|
+
this.rehomingIntervalMax = deviceInfo !== null && deviceInfo !== void 0 && deviceInfo.rehomingIntervalMax ? deviceInfo.rehomingIntervalMax : _constants2.DEFAULT_REHOMING_INTERVAL_MAX;
|
|
660
667
|
}
|
|
661
668
|
}
|
|
662
669
|
|
|
@@ -679,7 +686,7 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
679
686
|
}, {
|
|
680
687
|
key: "isDeviceRegistered",
|
|
681
688
|
value: function isDeviceRegistered() {
|
|
682
|
-
return this.registrationStatus ===
|
|
689
|
+
return this.registrationStatus === _types2.RegistrationStatus.ACTIVE;
|
|
683
690
|
}
|
|
684
691
|
}, {
|
|
685
692
|
key: "getStatus",
|
|
@@ -700,10 +707,10 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
700
707
|
}, {
|
|
701
708
|
key: "restartRegistration",
|
|
702
709
|
value: (function () {
|
|
703
|
-
var _restartRegistration = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
710
|
+
var _restartRegistration = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee13(caller) {
|
|
704
711
|
var abort;
|
|
705
|
-
return _regenerator.default.wrap(function
|
|
706
|
-
while (1) switch (
|
|
712
|
+
return _regenerator.default.wrap(function _callee13$(_context13) {
|
|
713
|
+
while (1) switch (_context13.prev = _context13.next) {
|
|
707
714
|
case 0:
|
|
708
715
|
/*
|
|
709
716
|
* Cancel any failback timer running
|
|
@@ -711,23 +718,23 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
711
718
|
*/
|
|
712
719
|
this.clearFailbackTimer();
|
|
713
720
|
this.failback429RetryAttempts = 0;
|
|
714
|
-
|
|
721
|
+
_context13.next = 4;
|
|
715
722
|
return this.attemptRegistrationWithServers(caller, this.primaryMobiusUris);
|
|
716
723
|
case 4:
|
|
717
|
-
abort =
|
|
724
|
+
abort = _context13.sent;
|
|
718
725
|
if (!(!abort && !this.isDeviceRegistered())) {
|
|
719
|
-
|
|
726
|
+
_context13.next = 8;
|
|
720
727
|
break;
|
|
721
728
|
}
|
|
722
|
-
|
|
729
|
+
_context13.next = 8;
|
|
723
730
|
return this.startFailoverTimer();
|
|
724
731
|
case 8:
|
|
725
732
|
case "end":
|
|
726
|
-
return
|
|
733
|
+
return _context13.stop();
|
|
727
734
|
}
|
|
728
|
-
},
|
|
735
|
+
}, _callee13, this);
|
|
729
736
|
}));
|
|
730
|
-
function restartRegistration(
|
|
737
|
+
function restartRegistration(_x8) {
|
|
731
738
|
return _restartRegistration.apply(this, arguments);
|
|
732
739
|
}
|
|
733
740
|
return restartRegistration;
|
|
@@ -741,64 +748,68 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
741
748
|
}, {
|
|
742
749
|
key: "handleConnectionRestoration",
|
|
743
750
|
value: (function () {
|
|
744
|
-
var _handleConnectionRestoration = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
751
|
+
var _handleConnectionRestoration = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee15(retry) {
|
|
745
752
|
var _this4 = this;
|
|
746
|
-
return _regenerator.default.wrap(function
|
|
747
|
-
while (1) switch (
|
|
753
|
+
return _regenerator.default.wrap(function _callee15$(_context15) {
|
|
754
|
+
while (1) switch (_context15.prev = _context15.next) {
|
|
748
755
|
case 0:
|
|
749
|
-
|
|
750
|
-
|
|
756
|
+
_Logger.default.info(_constants.METHOD_START_MESSAGE, {
|
|
757
|
+
method: _constants2.METHODS.HANDLE_CONNECTION_RESTORATION,
|
|
758
|
+
file: _constants2.REGISTRATION_FILE
|
|
759
|
+
});
|
|
760
|
+
_context15.next = 3;
|
|
761
|
+
return this.mutex.runExclusive( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee14() {
|
|
751
762
|
var abort;
|
|
752
|
-
return _regenerator.default.wrap(function
|
|
753
|
-
while (1) switch (
|
|
763
|
+
return _regenerator.default.wrap(function _callee14$(_context14) {
|
|
764
|
+
while (1) switch (_context14.prev = _context14.next) {
|
|
754
765
|
case 0:
|
|
755
766
|
if (!retry) {
|
|
756
|
-
|
|
767
|
+
_context14.next = 14;
|
|
757
768
|
break;
|
|
758
769
|
}
|
|
759
|
-
_Logger.default.
|
|
760
|
-
file:
|
|
770
|
+
_Logger.default.log('Mercury connection is up again, re-registering with Webex Calling if needed', {
|
|
771
|
+
file: _constants2.REGISTRATION_FILE,
|
|
761
772
|
method: _this4.handleConnectionRestoration.name
|
|
762
773
|
});
|
|
763
774
|
_this4.clearKeepaliveTimer();
|
|
764
775
|
if (!_this4.isDeviceRegistered()) {
|
|
765
|
-
|
|
776
|
+
_context14.next = 6;
|
|
766
777
|
break;
|
|
767
778
|
}
|
|
768
|
-
|
|
779
|
+
_context14.next = 6;
|
|
769
780
|
return _this4.deregister();
|
|
770
781
|
case 6:
|
|
771
782
|
if (!_this4.activeMobiusUrl) {
|
|
772
|
-
|
|
783
|
+
_context14.next = 13;
|
|
773
784
|
break;
|
|
774
785
|
}
|
|
775
|
-
|
|
786
|
+
_context14.next = 9;
|
|
776
787
|
return _this4.restorePreviousRegistration(_this4.handleConnectionRestoration.name);
|
|
777
788
|
case 9:
|
|
778
|
-
abort =
|
|
789
|
+
abort = _context14.sent;
|
|
779
790
|
if (!(!abort && !_this4.isDeviceRegistered())) {
|
|
780
|
-
|
|
791
|
+
_context14.next = 13;
|
|
781
792
|
break;
|
|
782
793
|
}
|
|
783
|
-
|
|
794
|
+
_context14.next = 13;
|
|
784
795
|
return _this4.restartRegistration(_this4.handleConnectionRestoration.name);
|
|
785
796
|
case 13:
|
|
786
797
|
retry = false;
|
|
787
798
|
case 14:
|
|
788
799
|
case "end":
|
|
789
|
-
return
|
|
800
|
+
return _context14.stop();
|
|
790
801
|
}
|
|
791
|
-
},
|
|
802
|
+
}, _callee14);
|
|
792
803
|
})));
|
|
793
|
-
case 2:
|
|
794
|
-
return _context16.abrupt("return", retry);
|
|
795
804
|
case 3:
|
|
805
|
+
return _context15.abrupt("return", retry);
|
|
806
|
+
case 4:
|
|
796
807
|
case "end":
|
|
797
|
-
return
|
|
808
|
+
return _context15.stop();
|
|
798
809
|
}
|
|
799
|
-
},
|
|
810
|
+
}, _callee15, this);
|
|
800
811
|
}));
|
|
801
|
-
function handleConnectionRestoration(
|
|
812
|
+
function handleConnectionRestoration(_x9) {
|
|
802
813
|
return _handleConnectionRestoration.apply(this, arguments);
|
|
803
814
|
}
|
|
804
815
|
return handleConnectionRestoration;
|
|
@@ -814,53 +825,53 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
814
825
|
value: function restoreRegistrationCallBack() {
|
|
815
826
|
var _this5 = this;
|
|
816
827
|
return /*#__PURE__*/function () {
|
|
817
|
-
var _ref8 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
828
|
+
var _ref8 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee16(restoreData, caller) {
|
|
818
829
|
var logContext, restore, finalError;
|
|
819
|
-
return _regenerator.default.wrap(function
|
|
820
|
-
while (1) switch (
|
|
830
|
+
return _regenerator.default.wrap(function _callee16$(_context16) {
|
|
831
|
+
while (1) switch (_context16.prev = _context16.next) {
|
|
821
832
|
case 0:
|
|
822
833
|
logContext = {
|
|
823
|
-
file:
|
|
834
|
+
file: _constants2.REGISTRATION_FILE,
|
|
824
835
|
method: caller
|
|
825
836
|
};
|
|
826
837
|
if (_this5.isRegRetry()) {
|
|
827
|
-
|
|
838
|
+
_context16.next = 17;
|
|
828
839
|
break;
|
|
829
840
|
}
|
|
830
841
|
_Logger.default.info('Registration restoration in progress.', logContext);
|
|
831
842
|
restore = _this5.getExistingDevice(restoreData);
|
|
832
843
|
if (!restore) {
|
|
833
|
-
|
|
844
|
+
_context16.next = 14;
|
|
834
845
|
break;
|
|
835
846
|
}
|
|
836
847
|
_this5.setRegRetry(true);
|
|
837
|
-
|
|
848
|
+
_context16.next = 8;
|
|
838
849
|
return _this5.deregister();
|
|
839
850
|
case 8:
|
|
840
|
-
|
|
851
|
+
_context16.next = 10;
|
|
841
852
|
return _this5.restorePreviousRegistration(caller);
|
|
842
853
|
case 10:
|
|
843
|
-
finalError =
|
|
854
|
+
finalError = _context16.sent;
|
|
844
855
|
_this5.setRegRetry(false);
|
|
845
856
|
if (_this5.isDeviceRegistered()) {
|
|
846
857
|
_Logger.default.info('Registration restored successfully.', logContext);
|
|
847
858
|
}
|
|
848
|
-
return
|
|
859
|
+
return _context16.abrupt("return", finalError);
|
|
849
860
|
case 14:
|
|
850
|
-
_this5.lineEmitter(
|
|
851
|
-
|
|
861
|
+
_this5.lineEmitter(_types3.LINE_EVENTS.UNREGISTERED);
|
|
862
|
+
_context16.next = 18;
|
|
852
863
|
break;
|
|
853
864
|
case 17:
|
|
854
|
-
_this5.lineEmitter(
|
|
865
|
+
_this5.lineEmitter(_types3.LINE_EVENTS.UNREGISTERED);
|
|
855
866
|
case 18:
|
|
856
|
-
return
|
|
867
|
+
return _context16.abrupt("return", false);
|
|
857
868
|
case 19:
|
|
858
869
|
case "end":
|
|
859
|
-
return
|
|
870
|
+
return _context16.stop();
|
|
860
871
|
}
|
|
861
|
-
},
|
|
872
|
+
}, _callee16);
|
|
862
873
|
}));
|
|
863
|
-
return function (
|
|
874
|
+
return function (_x10, _x11) {
|
|
864
875
|
return _ref8.apply(this, arguments);
|
|
865
876
|
};
|
|
866
877
|
}();
|
|
@@ -873,30 +884,30 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
873
884
|
}, {
|
|
874
885
|
key: "triggerRegistration",
|
|
875
886
|
value: (function () {
|
|
876
|
-
var _triggerRegistration = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
887
|
+
var _triggerRegistration = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee17() {
|
|
877
888
|
var abort;
|
|
878
|
-
return _regenerator.default.wrap(function
|
|
879
|
-
while (1) switch (
|
|
889
|
+
return _regenerator.default.wrap(function _callee17$(_context17) {
|
|
890
|
+
while (1) switch (_context17.prev = _context17.next) {
|
|
880
891
|
case 0:
|
|
881
892
|
if (!(this.primaryMobiusUris.length > 0)) {
|
|
882
|
-
|
|
893
|
+
_context17.next = 7;
|
|
883
894
|
break;
|
|
884
895
|
}
|
|
885
|
-
|
|
886
|
-
return this.attemptRegistrationWithServers(
|
|
896
|
+
_context17.next = 3;
|
|
897
|
+
return this.attemptRegistrationWithServers(_constants2.REGISTRATION_UTIL, this.primaryMobiusUris);
|
|
887
898
|
case 3:
|
|
888
|
-
abort =
|
|
899
|
+
abort = _context17.sent;
|
|
889
900
|
if (!(!this.isDeviceRegistered() && !abort)) {
|
|
890
|
-
|
|
901
|
+
_context17.next = 7;
|
|
891
902
|
break;
|
|
892
903
|
}
|
|
893
|
-
|
|
904
|
+
_context17.next = 7;
|
|
894
905
|
return this.startFailoverTimer();
|
|
895
906
|
case 7:
|
|
896
907
|
case "end":
|
|
897
|
-
return
|
|
908
|
+
return _context17.stop();
|
|
898
909
|
}
|
|
899
|
-
},
|
|
910
|
+
}, _callee17, this);
|
|
900
911
|
}));
|
|
901
912
|
function triggerRegistration() {
|
|
902
913
|
return _triggerRegistration.apply(this, arguments);
|
|
@@ -915,143 +926,154 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
915
926
|
}, {
|
|
916
927
|
key: "attemptRegistrationWithServers",
|
|
917
928
|
value: (function () {
|
|
918
|
-
var _attemptRegistrationWithServers = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
929
|
+
var _attemptRegistrationWithServers = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee18(caller) {
|
|
919
930
|
var _this6 = this;
|
|
920
931
|
var servers,
|
|
921
932
|
abort,
|
|
922
933
|
_iterator,
|
|
923
934
|
_step,
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
resp,
|
|
927
|
-
body,
|
|
928
|
-
error,
|
|
935
|
+
_loop,
|
|
936
|
+
_ret,
|
|
929
937
|
_args19 = arguments;
|
|
930
|
-
return _regenerator.default.wrap(function
|
|
938
|
+
return _regenerator.default.wrap(function _callee18$(_context19) {
|
|
931
939
|
while (1) switch (_context19.prev = _context19.next) {
|
|
932
940
|
case 0:
|
|
933
941
|
servers = _args19.length > 1 && _args19[1] !== undefined ? _args19[1] : this.primaryMobiusUris;
|
|
934
942
|
abort = false;
|
|
943
|
+
this.retryAfter = undefined;
|
|
935
944
|
if (!this.failoverImmediately) {
|
|
936
|
-
_context19.next =
|
|
945
|
+
_context19.next = 5;
|
|
937
946
|
break;
|
|
938
947
|
}
|
|
939
948
|
return _context19.abrupt("return", abort);
|
|
940
|
-
case
|
|
949
|
+
case 5:
|
|
941
950
|
if (!this.isDeviceRegistered()) {
|
|
942
|
-
_context19.next =
|
|
951
|
+
_context19.next = 8;
|
|
943
952
|
break;
|
|
944
953
|
}
|
|
945
|
-
_Logger.default.
|
|
946
|
-
file:
|
|
947
|
-
method:
|
|
954
|
+
_Logger.default.info("[".concat(caller, "] : Device already registered with : ").concat(this.activeMobiusUrl), {
|
|
955
|
+
file: _constants2.REGISTRATION_FILE,
|
|
956
|
+
method: _constants2.REGISTER_UTIL
|
|
948
957
|
});
|
|
949
958
|
return _context19.abrupt("return", abort);
|
|
950
|
-
case
|
|
959
|
+
case 8:
|
|
951
960
|
_iterator = _createForOfIteratorHelper(servers);
|
|
952
|
-
_context19.prev =
|
|
961
|
+
_context19.prev = 9;
|
|
962
|
+
_loop = /*#__PURE__*/_regenerator.default.mark(function _loop() {
|
|
963
|
+
var _this6$backupMobiusUr;
|
|
964
|
+
var url, serverType, _this6$deviceInfo$dev, _resp$headers$trackin, _resp$headers, _this6$deviceInfo$dev2, resp, body;
|
|
965
|
+
return _regenerator.default.wrap(function _loop$(_context18) {
|
|
966
|
+
while (1) switch (_context18.prev = _context18.next) {
|
|
967
|
+
case 0:
|
|
968
|
+
url = _step.value;
|
|
969
|
+
serverType = _this6.primaryMobiusUris.includes(url) && 'PRIMARY' || ((_this6$backupMobiusUr = _this6.backupMobiusUris) === null || _this6$backupMobiusUr === void 0 ? void 0 : _this6$backupMobiusUr.includes(url)) && 'BACKUP' || 'UNKNOWN';
|
|
970
|
+
_context18.prev = 2;
|
|
971
|
+
abort = false;
|
|
972
|
+
_this6.registrationStatus = _types2.RegistrationStatus.INACTIVE;
|
|
973
|
+
_this6.lineEmitter(_types3.LINE_EVENTS.CONNECTING);
|
|
974
|
+
_Logger.default.info("[".concat(caller, "] : Mobius url to contact: ").concat(url), {
|
|
975
|
+
file: _constants2.REGISTRATION_FILE,
|
|
976
|
+
method: _constants2.REGISTER_UTIL
|
|
977
|
+
});
|
|
978
|
+
// eslint-disable-next-line no-await-in-loop
|
|
979
|
+
_context18.next = 9;
|
|
980
|
+
return _this6.postRegistration(url);
|
|
981
|
+
case 9:
|
|
982
|
+
resp = _context18.sent;
|
|
983
|
+
_this6.deviceInfo = resp.body;
|
|
984
|
+
_this6.registrationStatus = _types2.RegistrationStatus.ACTIVE;
|
|
985
|
+
_this6.lineEmitter(_types3.LINE_EVENTS.REGISTERED, resp.body);
|
|
986
|
+
_Logger.default.log("Registration successful for deviceId: ".concat((_this6$deviceInfo$dev = _this6.deviceInfo.device) === null || _this6$deviceInfo$dev === void 0 ? void 0 : _this6$deviceInfo$dev.deviceId, " userId: ").concat(_this6.userId), {
|
|
987
|
+
file: _constants2.REGISTRATION_FILE,
|
|
988
|
+
method: _constants2.METHODS.REGISTER
|
|
989
|
+
});
|
|
990
|
+
_this6.setActiveMobiusUrl(url);
|
|
991
|
+
_this6.setIntervalValues(_this6.deviceInfo);
|
|
992
|
+
_this6.metricManager.setDeviceInfo(_this6.deviceInfo);
|
|
993
|
+
_this6.metricManager.submitRegistrationMetric(_types.METRIC_EVENT.REGISTRATION, _types.REG_ACTION.REGISTER, _types.METRIC_TYPE.BEHAVIORAL, caller, serverType, (_resp$headers$trackin = (_resp$headers = resp.headers) === null || _resp$headers === void 0 ? void 0 : _resp$headers.trackingid) !== null && _resp$headers$trackin !== void 0 ? _resp$headers$trackin : '', undefined, undefined);
|
|
994
|
+
_this6.startKeepaliveTimer((_this6$deviceInfo$dev2 = _this6.deviceInfo.device) === null || _this6$deviceInfo$dev2 === void 0 ? void 0 : _this6$deviceInfo$dev2.uri, _this6.deviceInfo.keepaliveInterval, serverType);
|
|
995
|
+
_this6.initiateFailback();
|
|
996
|
+
return _context18.abrupt("return", 0);
|
|
997
|
+
case 23:
|
|
998
|
+
_context18.prev = 23;
|
|
999
|
+
_context18.t0 = _context18["catch"](2);
|
|
1000
|
+
body = _context18.t0; // eslint-disable-next-line no-await-in-loop, @typescript-eslint/no-unused-vars
|
|
1001
|
+
_context18.next = 28;
|
|
1002
|
+
return (0, _common.handleRegistrationErrors)(body, function (clientError, finalError) {
|
|
1003
|
+
var _body$headers$trackin, _body$headers;
|
|
1004
|
+
if (finalError) {
|
|
1005
|
+
_this6.lineEmitter(_types3.LINE_EVENTS.ERROR, undefined, clientError);
|
|
1006
|
+
} else {
|
|
1007
|
+
_this6.lineEmitter(_types3.LINE_EVENTS.UNREGISTERED);
|
|
1008
|
+
}
|
|
1009
|
+
_this6.metricManager.submitRegistrationMetric(_types.METRIC_EVENT.REGISTRATION_ERROR, _types.REG_ACTION.REGISTER, _types.METRIC_TYPE.BEHAVIORAL, caller, serverType, (_body$headers$trackin = (_body$headers = body.headers) === null || _body$headers === void 0 ? void 0 : _body$headers.trackingid) !== null && _body$headers$trackin !== void 0 ? _body$headers$trackin : '', undefined, clientError);
|
|
1010
|
+
}, {
|
|
1011
|
+
method: caller,
|
|
1012
|
+
file: _constants2.REGISTRATION_FILE
|
|
1013
|
+
}, function (retryAfter, retryCaller) {
|
|
1014
|
+
return _this6.handle429Retry(retryAfter, retryCaller);
|
|
1015
|
+
}, _this6.restoreRegistrationCallBack());
|
|
1016
|
+
case 28:
|
|
1017
|
+
abort = _context18.sent;
|
|
1018
|
+
if (!(_this6.registrationStatus === _types2.RegistrationStatus.ACTIVE)) {
|
|
1019
|
+
_context18.next = 32;
|
|
1020
|
+
break;
|
|
1021
|
+
}
|
|
1022
|
+
_Logger.default.info("[".concat(caller, "] : Device is already restored, active mobius url: ").concat(_this6.activeMobiusUrl), {
|
|
1023
|
+
file: _constants2.REGISTRATION_FILE,
|
|
1024
|
+
method: _this6.attemptRegistrationWithServers.name
|
|
1025
|
+
});
|
|
1026
|
+
return _context18.abrupt("return", 0);
|
|
1027
|
+
case 32:
|
|
1028
|
+
if (!abort) {
|
|
1029
|
+
_context18.next = 35;
|
|
1030
|
+
break;
|
|
1031
|
+
}
|
|
1032
|
+
_this6.setStatus(_types2.RegistrationStatus.INACTIVE);
|
|
1033
|
+
return _context18.abrupt("return", 0);
|
|
1034
|
+
case 35:
|
|
1035
|
+
case "end":
|
|
1036
|
+
return _context18.stop();
|
|
1037
|
+
}
|
|
1038
|
+
}, _loop, null, [[2, 23]]);
|
|
1039
|
+
});
|
|
953
1040
|
_iterator.s();
|
|
954
|
-
case
|
|
1041
|
+
case 12:
|
|
955
1042
|
if ((_step = _iterator.n()).done) {
|
|
956
|
-
_context19.next =
|
|
957
|
-
break;
|
|
958
|
-
}
|
|
959
|
-
url = _step.value;
|
|
960
|
-
_context19.prev = 12;
|
|
961
|
-
abort = false;
|
|
962
|
-
this.registrationStatus = _types3.RegistrationStatus.INACTIVE;
|
|
963
|
-
this.lineEmitter(_types4.LINE_EVENTS.CONNECTING);
|
|
964
|
-
_Logger.default.log("[".concat(caller, "] : Mobius url to contact: ").concat(url), {
|
|
965
|
-
file: _constants.REGISTRATION_FILE,
|
|
966
|
-
method: this.attemptRegistrationWithServers.name
|
|
967
|
-
});
|
|
968
|
-
// eslint-disable-next-line no-await-in-loop
|
|
969
|
-
_context19.next = 19;
|
|
970
|
-
return this.postRegistration(url);
|
|
971
|
-
case 19:
|
|
972
|
-
resp = _context19.sent;
|
|
973
|
-
this.deviceInfo = resp.body;
|
|
974
|
-
this.registrationStatus = _types3.RegistrationStatus.ACTIVE;
|
|
975
|
-
this.lineEmitter(_types4.LINE_EVENTS.REGISTERED, resp.body);
|
|
976
|
-
this.setActiveMobiusUrl(url);
|
|
977
|
-
this.setIntervalValues(this.deviceInfo);
|
|
978
|
-
this.metricManager.setDeviceInfo(this.deviceInfo);
|
|
979
|
-
this.metricManager.submitRegistrationMetric(_types2.METRIC_EVENT.REGISTRATION, _types2.REG_ACTION.REGISTER, _types2.METRIC_TYPE.BEHAVIORAL, undefined);
|
|
980
|
-
this.startKeepaliveTimer((_this$deviceInfo$devi = this.deviceInfo.device) === null || _this$deviceInfo$devi === void 0 ? void 0 : _this$deviceInfo$devi.uri, this.deviceInfo.keepaliveInterval);
|
|
981
|
-
this.initiateFailback();
|
|
982
|
-
return _context19.abrupt("break", 55);
|
|
983
|
-
case 32:
|
|
984
|
-
_context19.prev = 32;
|
|
985
|
-
_context19.t0 = _context19["catch"](12);
|
|
986
|
-
body = _context19.t0; // eslint-disable-next-line no-await-in-loop, @typescript-eslint/no-unused-vars
|
|
987
|
-
_context19.next = 37;
|
|
988
|
-
return (0, _common.handleRegistrationErrors)(body, function (clientError, finalError) {
|
|
989
|
-
if (finalError) {
|
|
990
|
-
_this6.lineEmitter(_types4.LINE_EVENTS.ERROR, undefined, clientError);
|
|
991
|
-
} else {
|
|
992
|
-
_this6.lineEmitter(_types4.LINE_EVENTS.UNREGISTERED);
|
|
993
|
-
}
|
|
994
|
-
_this6.metricManager.submitRegistrationMetric(_types2.METRIC_EVENT.REGISTRATION_ERROR, _types2.REG_ACTION.REGISTER, _types2.METRIC_TYPE.BEHAVIORAL, clientError);
|
|
995
|
-
}, {
|
|
996
|
-
method: this.attemptRegistrationWithServers.name,
|
|
997
|
-
file: _constants.REGISTRATION_FILE
|
|
998
|
-
}, this.restoreRegistrationCallBack());
|
|
999
|
-
case 37:
|
|
1000
|
-
abort = _context19.sent;
|
|
1001
|
-
if (!(this.registrationStatus === _types3.RegistrationStatus.ACTIVE)) {
|
|
1002
|
-
_context19.next = 41;
|
|
1043
|
+
_context19.next = 19;
|
|
1003
1044
|
break;
|
|
1004
1045
|
}
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
|
|
1010
|
-
case 41:
|
|
1011
|
-
if (!abort) {
|
|
1012
|
-
_context19.next = 46;
|
|
1046
|
+
return _context19.delegateYield(_loop(), "t0", 14);
|
|
1047
|
+
case 14:
|
|
1048
|
+
_ret = _context19.t0;
|
|
1049
|
+
if (!(_ret === 0)) {
|
|
1050
|
+
_context19.next = 17;
|
|
1013
1051
|
break;
|
|
1014
1052
|
}
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
if (!(caller === this.executeFailback.name)) {
|
|
1019
|
-
_context19.next = 53;
|
|
1020
|
-
break;
|
|
1021
|
-
}
|
|
1022
|
-
error = body.statusCode;
|
|
1023
|
-
if (!(error === _types.ERROR_CODE.TOO_MANY_REQUESTS)) {
|
|
1024
|
-
_context19.next = 53;
|
|
1025
|
-
break;
|
|
1026
|
-
}
|
|
1027
|
-
_context19.next = 51;
|
|
1028
|
-
return this.scheduleFailback429Retry();
|
|
1029
|
-
case 51:
|
|
1030
|
-
abort = true;
|
|
1031
|
-
return _context19.abrupt("break", 55);
|
|
1032
|
-
case 53:
|
|
1033
|
-
_context19.next = 10;
|
|
1053
|
+
return _context19.abrupt("break", 19);
|
|
1054
|
+
case 17:
|
|
1055
|
+
_context19.next = 12;
|
|
1034
1056
|
break;
|
|
1035
|
-
case
|
|
1036
|
-
_context19.next =
|
|
1057
|
+
case 19:
|
|
1058
|
+
_context19.next = 24;
|
|
1037
1059
|
break;
|
|
1038
|
-
case
|
|
1039
|
-
_context19.prev =
|
|
1040
|
-
_context19.t1 = _context19["catch"](
|
|
1060
|
+
case 21:
|
|
1061
|
+
_context19.prev = 21;
|
|
1062
|
+
_context19.t1 = _context19["catch"](9);
|
|
1041
1063
|
_iterator.e(_context19.t1);
|
|
1042
|
-
case
|
|
1043
|
-
_context19.prev =
|
|
1064
|
+
case 24:
|
|
1065
|
+
_context19.prev = 24;
|
|
1044
1066
|
_iterator.f();
|
|
1045
|
-
return _context19.finish(
|
|
1046
|
-
case
|
|
1067
|
+
return _context19.finish(24);
|
|
1068
|
+
case 27:
|
|
1047
1069
|
return _context19.abrupt("return", abort);
|
|
1048
|
-
case
|
|
1070
|
+
case 28:
|
|
1049
1071
|
case "end":
|
|
1050
1072
|
return _context19.stop();
|
|
1051
1073
|
}
|
|
1052
|
-
},
|
|
1074
|
+
}, _callee18, this, [[9, 21, 24, 27]]);
|
|
1053
1075
|
}));
|
|
1054
|
-
function attemptRegistrationWithServers(
|
|
1076
|
+
function attemptRegistrationWithServers(_x12) {
|
|
1055
1077
|
return _attemptRegistrationWithServers.apply(this, arguments);
|
|
1056
1078
|
}
|
|
1057
1079
|
return attemptRegistrationWithServers;
|
|
@@ -1063,103 +1085,138 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
1063
1085
|
)
|
|
1064
1086
|
}, {
|
|
1065
1087
|
key: "startKeepaliveTimer",
|
|
1066
|
-
value: function
|
|
1067
|
-
var
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
|
|
1072
|
-
var logContext;
|
|
1073
|
-
return _regenerator.default.wrap(function _callee21$(_context21) {
|
|
1074
|
-
while (1) switch (_context21.prev = _context21.next) {
|
|
1088
|
+
value: (function () {
|
|
1089
|
+
var _startKeepaliveTimer = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee21(url, interval, serverType) {
|
|
1090
|
+
var _this7 = this;
|
|
1091
|
+
var RETRY_COUNT_THRESHOLD;
|
|
1092
|
+
return _regenerator.default.wrap(function _callee21$(_context22) {
|
|
1093
|
+
while (1) switch (_context22.prev = _context22.next) {
|
|
1075
1094
|
case 0:
|
|
1076
|
-
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
return _regenerator.default.wrap(function _callee20$(_context20) {
|
|
1084
|
-
while (1) switch (_context20.prev = _context20.next) {
|
|
1095
|
+
this.clearKeepaliveTimer();
|
|
1096
|
+
RETRY_COUNT_THRESHOLD = this.isCCFlow ? 4 : 5;
|
|
1097
|
+
_context22.next = 4;
|
|
1098
|
+
return this.mutex.runExclusive( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee20() {
|
|
1099
|
+
var accessToken, blob, blobUrl;
|
|
1100
|
+
return _regenerator.default.wrap(function _callee20$(_context21) {
|
|
1101
|
+
while (1) switch (_context21.prev = _context21.next) {
|
|
1085
1102
|
case 0:
|
|
1086
|
-
if (!
|
|
1087
|
-
|
|
1103
|
+
if (!_this7.isDeviceRegistered()) {
|
|
1104
|
+
_context21.next = 5;
|
|
1088
1105
|
break;
|
|
1089
1106
|
}
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
|
|
1130
|
-
|
|
1131
|
-
|
|
1107
|
+
_context21.next = 3;
|
|
1108
|
+
return _this7.webex.credentials.getUserToken();
|
|
1109
|
+
case 3:
|
|
1110
|
+
accessToken = _context21.sent;
|
|
1111
|
+
if (!_this7.webWorker) {
|
|
1112
|
+
blob = new Blob([_webWorkerStr.default], {
|
|
1113
|
+
type: 'application/javascript'
|
|
1114
|
+
});
|
|
1115
|
+
blobUrl = URL.createObjectURL(blob);
|
|
1116
|
+
_this7.webWorker = new Worker(blobUrl);
|
|
1117
|
+
URL.revokeObjectURL(blobUrl);
|
|
1118
|
+
_this7.webWorker.postMessage({
|
|
1119
|
+
type: _types2.WorkerMessageType.START_KEEPALIVE,
|
|
1120
|
+
accessToken: String(accessToken),
|
|
1121
|
+
deviceUrl: String(_this7.webex.internal.device.url),
|
|
1122
|
+
interval: interval,
|
|
1123
|
+
retryCountThreshold: RETRY_COUNT_THRESHOLD,
|
|
1124
|
+
url: url
|
|
1125
|
+
});
|
|
1126
|
+
_this7.webWorker.onmessage = /*#__PURE__*/function () {
|
|
1127
|
+
var _ref10 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee19(event) {
|
|
1128
|
+
var logContext, error, abort;
|
|
1129
|
+
return _regenerator.default.wrap(function _callee19$(_context20) {
|
|
1130
|
+
while (1) switch (_context20.prev = _context20.next) {
|
|
1131
|
+
case 0:
|
|
1132
|
+
logContext = {
|
|
1133
|
+
file: _constants2.REGISTRATION_FILE,
|
|
1134
|
+
method: _this7.startKeepaliveTimer.name
|
|
1135
|
+
};
|
|
1136
|
+
if (event.data.type === _types2.WorkerMessageType.KEEPALIVE_SUCCESS) {
|
|
1137
|
+
_Logger.default.info("Sent Keepalive, status: ".concat(event.data.statusCode), logContext);
|
|
1138
|
+
_this7.lineEmitter(_types3.LINE_EVENTS.RECONNECTED);
|
|
1139
|
+
}
|
|
1140
|
+
if (!(event.data.type === _types2.WorkerMessageType.KEEPALIVE_FAILURE)) {
|
|
1141
|
+
_context20.next = 20;
|
|
1142
|
+
break;
|
|
1143
|
+
}
|
|
1144
|
+
error = event.data.err;
|
|
1145
|
+
_Logger.default.warn("Keep-alive missed ".concat(event.data.keepAliveRetryCount, " times. Status -> ").concat(error.statusCode, " "), logContext);
|
|
1146
|
+
_context20.next = 7;
|
|
1147
|
+
return (0, _common.handleRegistrationErrors)(error, function (clientError, finalError) {
|
|
1148
|
+
var _error$headers$tracki, _error$headers;
|
|
1149
|
+
if (finalError) {
|
|
1150
|
+
_this7.lineEmitter(_types3.LINE_EVENTS.ERROR, undefined, clientError);
|
|
1151
|
+
}
|
|
1152
|
+
_this7.metricManager.submitRegistrationMetric(_types.METRIC_EVENT.REGISTRATION, _types.REG_ACTION.KEEPALIVE_FAILURE, _types.METRIC_TYPE.BEHAVIORAL, _constants2.KEEPALIVE_UTIL, serverType, (_error$headers$tracki = (_error$headers = error.headers) === null || _error$headers === void 0 ? void 0 : _error$headers.trackingid) !== null && _error$headers$tracki !== void 0 ? _error$headers$tracki : '', event.data.keepAliveRetryCount, clientError);
|
|
1153
|
+
}, {
|
|
1154
|
+
method: _constants2.KEEPALIVE_UTIL,
|
|
1155
|
+
file: _constants2.REGISTRATION_FILE
|
|
1156
|
+
});
|
|
1157
|
+
case 7:
|
|
1158
|
+
abort = _context20.sent;
|
|
1159
|
+
if (!(abort || event.data.keepAliveRetryCount >= RETRY_COUNT_THRESHOLD)) {
|
|
1160
|
+
_context20.next = 19;
|
|
1161
|
+
break;
|
|
1162
|
+
}
|
|
1163
|
+
_this7.failoverImmediately = _this7.isCCFlow;
|
|
1164
|
+
_this7.setStatus(_types2.RegistrationStatus.INACTIVE);
|
|
1165
|
+
_this7.clearKeepaliveTimer();
|
|
1166
|
+
_this7.clearFailbackTimer();
|
|
1167
|
+
_this7.lineEmitter(_types3.LINE_EVENTS.UNREGISTERED);
|
|
1168
|
+
if (abort) {
|
|
1169
|
+
_context20.next = 17;
|
|
1170
|
+
break;
|
|
1171
|
+
}
|
|
1172
|
+
_context20.next = 17;
|
|
1173
|
+
return _this7.reconnectOnFailure(_constants2.KEEPALIVE_UTIL);
|
|
1174
|
+
case 17:
|
|
1175
|
+
_context20.next = 20;
|
|
1176
|
+
break;
|
|
1177
|
+
case 19:
|
|
1178
|
+
_this7.lineEmitter(_types3.LINE_EVENTS.RECONNECTING);
|
|
1179
|
+
case 20:
|
|
1180
|
+
case "end":
|
|
1181
|
+
return _context20.stop();
|
|
1182
|
+
}
|
|
1183
|
+
}, _callee19);
|
|
1184
|
+
}));
|
|
1185
|
+
return function (_x16) {
|
|
1186
|
+
return _ref10.apply(this, arguments);
|
|
1187
|
+
};
|
|
1188
|
+
}();
|
|
1132
1189
|
}
|
|
1133
|
-
|
|
1134
|
-
return _this7.reconnectOnFailure(_this7.startKeepaliveTimer.name);
|
|
1135
|
-
case 27:
|
|
1136
|
-
_context20.next = 30;
|
|
1137
|
-
break;
|
|
1138
|
-
case 29:
|
|
1139
|
-
_this7.lineEmitter(_types4.LINE_EVENTS.RECONNECTING);
|
|
1140
|
-
case 30:
|
|
1190
|
+
case 5:
|
|
1141
1191
|
case "end":
|
|
1142
|
-
return
|
|
1192
|
+
return _context21.stop();
|
|
1143
1193
|
}
|
|
1144
|
-
}, _callee20
|
|
1194
|
+
}, _callee20);
|
|
1145
1195
|
})));
|
|
1146
|
-
case
|
|
1196
|
+
case 4:
|
|
1147
1197
|
case "end":
|
|
1148
|
-
return
|
|
1198
|
+
return _context22.stop();
|
|
1149
1199
|
}
|
|
1150
|
-
}, _callee21);
|
|
1151
|
-
}))
|
|
1152
|
-
|
|
1153
|
-
|
|
1200
|
+
}, _callee21, this);
|
|
1201
|
+
}));
|
|
1202
|
+
function startKeepaliveTimer(_x13, _x14, _x15) {
|
|
1203
|
+
return _startKeepaliveTimer.apply(this, arguments);
|
|
1204
|
+
}
|
|
1205
|
+
return startKeepaliveTimer;
|
|
1206
|
+
}()
|
|
1154
1207
|
/**
|
|
1155
1208
|
* Clears the keepalive timer if running.
|
|
1156
1209
|
*/
|
|
1210
|
+
)
|
|
1157
1211
|
}, {
|
|
1158
1212
|
key: "clearKeepaliveTimer",
|
|
1159
1213
|
value: function clearKeepaliveTimer() {
|
|
1160
|
-
if (this.
|
|
1161
|
-
|
|
1162
|
-
|
|
1214
|
+
if (this.webWorker) {
|
|
1215
|
+
this.webWorker.postMessage({
|
|
1216
|
+
type: _types2.WorkerMessageType.CLEAR_KEEPALIVE
|
|
1217
|
+
});
|
|
1218
|
+
this.webWorker.terminate();
|
|
1219
|
+
this.webWorker = undefined;
|
|
1163
1220
|
}
|
|
1164
1221
|
}
|
|
1165
1222
|
}, {
|
|
@@ -1171,28 +1228,35 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
1171
1228
|
key: "deregister",
|
|
1172
1229
|
value: function () {
|
|
1173
1230
|
var _deregister = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee22() {
|
|
1174
|
-
var _this$deviceInfo$
|
|
1175
|
-
return _regenerator.default.wrap(function _callee22$(
|
|
1176
|
-
while (1) switch (
|
|
1231
|
+
var _this$deviceInfo$devi, _this$deviceInfo$devi2;
|
|
1232
|
+
return _regenerator.default.wrap(function _callee22$(_context23) {
|
|
1233
|
+
while (1) switch (_context23.prev = _context23.next) {
|
|
1177
1234
|
case 0:
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
return this.deleteRegistration(this.activeMobiusUrl, (_this$deviceInfo$
|
|
1235
|
+
_context23.prev = 0;
|
|
1236
|
+
_context23.next = 3;
|
|
1237
|
+
return this.deleteRegistration(this.activeMobiusUrl, (_this$deviceInfo$devi = this.deviceInfo.device) === null || _this$deviceInfo$devi === void 0 ? void 0 : _this$deviceInfo$devi.deviceId, (_this$deviceInfo$devi2 = this.deviceInfo.device) === null || _this$deviceInfo$devi2 === void 0 ? void 0 : _this$deviceInfo$devi2.clientDeviceUri);
|
|
1181
1238
|
case 3:
|
|
1182
|
-
|
|
1239
|
+
_Logger.default.log('Registration successfully deregistered', {
|
|
1240
|
+
file: _constants2.REGISTRATION_FILE,
|
|
1241
|
+
method: _constants2.METHODS.DEREGISTER
|
|
1242
|
+
});
|
|
1243
|
+
_context23.next = 9;
|
|
1183
1244
|
break;
|
|
1184
|
-
case
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
_Logger.default.warn("Delete failed with Mobius", {
|
|
1188
|
-
|
|
1245
|
+
case 6:
|
|
1246
|
+
_context23.prev = 6;
|
|
1247
|
+
_context23.t0 = _context23["catch"](0);
|
|
1248
|
+
_Logger.default.warn("Delete failed with Mobius: ".concat(_context23.t0), {
|
|
1249
|
+
file: _constants2.REGISTRATION_FILE,
|
|
1250
|
+
method: _constants2.METHODS.DEREGISTER
|
|
1251
|
+
});
|
|
1252
|
+
case 9:
|
|
1189
1253
|
this.clearKeepaliveTimer();
|
|
1190
|
-
this.setStatus(
|
|
1191
|
-
case
|
|
1254
|
+
this.setStatus(_types2.RegistrationStatus.INACTIVE);
|
|
1255
|
+
case 11:
|
|
1192
1256
|
case "end":
|
|
1193
|
-
return
|
|
1257
|
+
return _context23.stop();
|
|
1194
1258
|
}
|
|
1195
|
-
}, _callee22, this, [[0,
|
|
1259
|
+
}, _callee22, this, [[0, 6]]);
|
|
1196
1260
|
}));
|
|
1197
1261
|
function deregister() {
|
|
1198
1262
|
return _deregister.apply(this, arguments);
|
|
@@ -1200,8 +1264,8 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
1200
1264
|
return deregister;
|
|
1201
1265
|
}()
|
|
1202
1266
|
/**
|
|
1203
|
-
*
|
|
1204
|
-
*
|
|
1267
|
+
* Indicates whether the calling client is in a mode
|
|
1268
|
+
* to retry registration.
|
|
1205
1269
|
*/
|
|
1206
1270
|
}, {
|
|
1207
1271
|
key: "isRegRetry",
|
|
@@ -1231,14 +1295,14 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
1231
1295
|
this.deviceInfo = {
|
|
1232
1296
|
userId: restoreData.userId,
|
|
1233
1297
|
device: restoreData.devices[0],
|
|
1234
|
-
keepaliveInterval:
|
|
1235
|
-
rehomingIntervalMax:
|
|
1236
|
-
rehomingIntervalMin:
|
|
1298
|
+
keepaliveInterval: _constants2.DEFAULT_KEEPALIVE_INTERVAL,
|
|
1299
|
+
rehomingIntervalMax: _constants2.DEFAULT_REHOMING_INTERVAL_MAX,
|
|
1300
|
+
rehomingIntervalMin: _constants2.DEFAULT_REHOMING_INTERVAL_MIN
|
|
1237
1301
|
};
|
|
1238
|
-
var stringToReplace = "".concat(
|
|
1302
|
+
var stringToReplace = "".concat(_constants2.DEVICES_ENDPOINT_RESOURCE, "/").concat(restoreData.devices[0].deviceId);
|
|
1239
1303
|
var uri = restoreData.devices[0].uri.replace(stringToReplace, '');
|
|
1240
1304
|
this.setActiveMobiusUrl(uri);
|
|
1241
|
-
this.registrationStatus =
|
|
1305
|
+
this.registrationStatus = _types2.RegistrationStatus.ACTIVE;
|
|
1242
1306
|
return true;
|
|
1243
1307
|
}
|
|
1244
1308
|
return false;
|
|
@@ -1258,44 +1322,48 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
1258
1322
|
value: (function () {
|
|
1259
1323
|
var _reconnectOnFailure = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee23(caller) {
|
|
1260
1324
|
var abort;
|
|
1261
|
-
return _regenerator.default.wrap(function _callee23$(
|
|
1262
|
-
while (1) switch (
|
|
1325
|
+
return _regenerator.default.wrap(function _callee23$(_context24) {
|
|
1326
|
+
while (1) switch (_context24.prev = _context24.next) {
|
|
1263
1327
|
case 0:
|
|
1328
|
+
_Logger.default.info(_constants.METHOD_START_MESSAGE, {
|
|
1329
|
+
method: _constants2.METHODS.RECONNECT_ON_FAILURE,
|
|
1330
|
+
file: _constants2.REGISTRATION_FILE
|
|
1331
|
+
});
|
|
1264
1332
|
this.reconnectPending = false;
|
|
1265
1333
|
if (this.isDeviceRegistered()) {
|
|
1266
|
-
|
|
1334
|
+
_context24.next = 14;
|
|
1267
1335
|
break;
|
|
1268
1336
|
}
|
|
1269
1337
|
if (!((0, _keys.default)(this.callManager.getActiveCalls()).length === 0)) {
|
|
1270
|
-
|
|
1338
|
+
_context24.next = 12;
|
|
1271
1339
|
break;
|
|
1272
1340
|
}
|
|
1273
|
-
|
|
1341
|
+
_context24.next = 6;
|
|
1274
1342
|
return this.restorePreviousRegistration(caller);
|
|
1275
|
-
case
|
|
1276
|
-
abort =
|
|
1343
|
+
case 6:
|
|
1344
|
+
abort = _context24.sent;
|
|
1277
1345
|
if (!(!abort && !this.isDeviceRegistered())) {
|
|
1278
|
-
|
|
1346
|
+
_context24.next = 10;
|
|
1279
1347
|
break;
|
|
1280
1348
|
}
|
|
1281
|
-
|
|
1349
|
+
_context24.next = 10;
|
|
1282
1350
|
return this.restartRegistration(caller);
|
|
1283
|
-
case
|
|
1284
|
-
|
|
1351
|
+
case 10:
|
|
1352
|
+
_context24.next = 14;
|
|
1285
1353
|
break;
|
|
1286
|
-
case
|
|
1354
|
+
case 12:
|
|
1287
1355
|
this.reconnectPending = true;
|
|
1288
1356
|
_Logger.default.info('Active call(s) present, deferred reconnect till call cleanup.', {
|
|
1289
|
-
file:
|
|
1290
|
-
method:
|
|
1357
|
+
file: _constants2.REGISTRATION_FILE,
|
|
1358
|
+
method: _constants2.METHODS.RECONNECT_ON_FAILURE
|
|
1291
1359
|
});
|
|
1292
|
-
case
|
|
1360
|
+
case 14:
|
|
1293
1361
|
case "end":
|
|
1294
|
-
return
|
|
1362
|
+
return _context24.stop();
|
|
1295
1363
|
}
|
|
1296
1364
|
}, _callee23, this);
|
|
1297
1365
|
}));
|
|
1298
|
-
function reconnectOnFailure(
|
|
1366
|
+
function reconnectOnFailure(_x17) {
|
|
1299
1367
|
return _reconnectOnFailure.apply(this, arguments);
|
|
1300
1368
|
}
|
|
1301
1369
|
return reconnectOnFailure;
|