@webex/calling 3.10.0-next.15 → 3.10.0-next.17
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/constants.js +3 -2
- package/dist/CallingClient/constants.js.map +1 -1
- package/dist/CallingClient/registration/register.js +434 -337
- package/dist/CallingClient/registration/register.js.map +1 -1
- package/dist/CallingClient/registration/register.test.js +245 -181
- package/dist/CallingClient/registration/register.test.js.map +1 -1
- package/dist/CallingClient/registration/types.js.map +1 -1
- package/dist/SDKConnector/types.js.map +1 -1
- package/dist/module/CallingClient/constants.js +1 -0
- package/dist/module/CallingClient/registration/register.js +65 -1
- package/dist/types/CallingClient/constants.d.ts +1 -0
- package/dist/types/CallingClient/constants.d.ts.map +1 -1
- package/dist/types/CallingClient/registration/register.d.ts +4 -0
- package/dist/types/CallingClient/registration/register.d.ts.map +1 -1
- package/dist/types/CallingClient/registration/types.d.ts +6 -0
- package/dist/types/CallingClient/registration/types.d.ts.map +1 -1
- package/dist/types/SDKConnector/types.d.ts +6 -0
- package/dist/types/SDKConnector/types.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -95,6 +95,80 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
95
95
|
this.backupMobiusUris = [];
|
|
96
96
|
}
|
|
97
97
|
return (0, _createClass2.default)(Registration, [{
|
|
98
|
+
key: "getFailoverCacheKey",
|
|
99
|
+
value: function getFailoverCacheKey() {
|
|
100
|
+
return "".concat(_constants2.FAILOVER_CACHE_PREFIX, ".").concat(this.userId || 'unknown');
|
|
101
|
+
}
|
|
102
|
+
}, {
|
|
103
|
+
key: "saveFailoverState",
|
|
104
|
+
value: function saveFailoverState(failoverState) {
|
|
105
|
+
try {
|
|
106
|
+
localStorage.setItem(this.getFailoverCacheKey(), (0, _stringify.default)(failoverState));
|
|
107
|
+
} catch (error) {
|
|
108
|
+
_Logger.default.warn("Storing failover state in cache failed with error: ".concat(String(error)), {
|
|
109
|
+
file: _constants2.REGISTRATION_FILE,
|
|
110
|
+
method: 'saveFailoverState'
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}, {
|
|
115
|
+
key: "clearFailoverState",
|
|
116
|
+
value: function clearFailoverState() {
|
|
117
|
+
try {
|
|
118
|
+
localStorage.removeItem(this.getFailoverCacheKey());
|
|
119
|
+
} catch (_unused) {
|
|
120
|
+
_Logger.default.warn('Clearing failover state from localStorage failed', {
|
|
121
|
+
file: _constants2.REGISTRATION_FILE,
|
|
122
|
+
method: 'clearFailoverState'
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
}, {
|
|
127
|
+
key: "resumeFailover",
|
|
128
|
+
value: function () {
|
|
129
|
+
var _resumeFailover = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee() {
|
|
130
|
+
var cachedState, failoverState, currentTime, newElapsed, _t;
|
|
131
|
+
return _regenerator.default.wrap(function (_context) {
|
|
132
|
+
while (1) switch (_context.prev = _context.next) {
|
|
133
|
+
case 0:
|
|
134
|
+
_context.prev = 0;
|
|
135
|
+
cachedState = localStorage.getItem(this.getFailoverCacheKey());
|
|
136
|
+
failoverState = cachedState ? JSON.parse(cachedState) : undefined;
|
|
137
|
+
if (!(failoverState && !this.isDeviceRegistered())) {
|
|
138
|
+
_context.next = 2;
|
|
139
|
+
break;
|
|
140
|
+
}
|
|
141
|
+
currentTime = Math.floor((0, _now.default)() / 1000);
|
|
142
|
+
newElapsed = failoverState.timeElapsed + (currentTime - failoverState.retryScheduledTime);
|
|
143
|
+
this.clearFailoverState();
|
|
144
|
+
_context.next = 1;
|
|
145
|
+
return this.startFailoverTimer(failoverState.attempt, newElapsed);
|
|
146
|
+
case 1:
|
|
147
|
+
return _context.abrupt("return", true);
|
|
148
|
+
case 2:
|
|
149
|
+
_context.next = 4;
|
|
150
|
+
break;
|
|
151
|
+
case 3:
|
|
152
|
+
_context.prev = 3;
|
|
153
|
+
_t = _context["catch"](0);
|
|
154
|
+
_Logger.default.warn("No failover state found in cache", {
|
|
155
|
+
file: _constants2.REGISTRATION_FILE,
|
|
156
|
+
method: 'triggerRegistration'
|
|
157
|
+
});
|
|
158
|
+
case 4:
|
|
159
|
+
return _context.abrupt("return", false);
|
|
160
|
+
case 5:
|
|
161
|
+
case "end":
|
|
162
|
+
return _context.stop();
|
|
163
|
+
}
|
|
164
|
+
}, _callee, this, [[0, 3]]);
|
|
165
|
+
}));
|
|
166
|
+
function resumeFailover() {
|
|
167
|
+
return _resumeFailover.apply(this, arguments);
|
|
168
|
+
}
|
|
169
|
+
return resumeFailover;
|
|
170
|
+
}()
|
|
171
|
+
}, {
|
|
98
172
|
key: "getActiveMobiusUrl",
|
|
99
173
|
value: function getActiveMobiusUrl() {
|
|
100
174
|
return this.activeMobiusUrl;
|
|
@@ -127,51 +201,51 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
127
201
|
}, {
|
|
128
202
|
key: "deleteRegistration",
|
|
129
203
|
value: (function () {
|
|
130
|
-
var _deleteRegistration = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
204
|
+
var _deleteRegistration = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee2(url, deviceId, deviceUrl) {
|
|
131
205
|
var _response;
|
|
132
|
-
var response,
|
|
133
|
-
return _regenerator.default.wrap(function (
|
|
134
|
-
while (1) switch (
|
|
206
|
+
var response, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t0;
|
|
207
|
+
return _regenerator.default.wrap(function (_context2) {
|
|
208
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
135
209
|
case 0:
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
_t4 = _defineProperty2.default;
|
|
210
|
+
_context2.prev = 0;
|
|
211
|
+
_t2 = fetch;
|
|
212
|
+
_t3 = "".concat(url).concat(_constants2.DEVICES_ENDPOINT_RESOURCE, "/").concat(deviceId);
|
|
213
|
+
_t4 = _types2.HTTP_METHODS.DELETE;
|
|
141
214
|
_t5 = _defineProperty2.default;
|
|
142
215
|
_t6 = _defineProperty2.default;
|
|
143
|
-
_t7 =
|
|
144
|
-
|
|
216
|
+
_t7 = _defineProperty2.default;
|
|
217
|
+
_t8 = (0, _defineProperty2.default)({}, _constants2.CISCO_DEVICE_URL, deviceUrl);
|
|
218
|
+
_context2.next = 1;
|
|
145
219
|
return this.webex.credentials.getUserToken();
|
|
146
220
|
case 1:
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
return
|
|
150
|
-
method:
|
|
151
|
-
headers:
|
|
221
|
+
_t9 = _t5(_t6(_t7(_t8, "Authorization", _context2.sent), "trackingId", "".concat(_constants2.WEBEX_WEB_CLIENT, "_").concat((0, _uuid.v4)())), _constants2.SPARK_USER_AGENT, _constants2.CALLING_USER_AGENT);
|
|
222
|
+
_context2.next = 2;
|
|
223
|
+
return _t2(_t3, {
|
|
224
|
+
method: _t4,
|
|
225
|
+
headers: _t9
|
|
152
226
|
});
|
|
153
227
|
case 2:
|
|
154
|
-
response =
|
|
155
|
-
|
|
228
|
+
response = _context2.sent;
|
|
229
|
+
_context2.next = 4;
|
|
156
230
|
break;
|
|
157
231
|
case 3:
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
_Logger.default.warn("Delete failed with Mobius: ".concat((0, _stringify.default)(
|
|
232
|
+
_context2.prev = 3;
|
|
233
|
+
_t0 = _context2["catch"](0);
|
|
234
|
+
_Logger.default.warn("Delete failed with Mobius: ".concat((0, _stringify.default)(_t0)), {
|
|
161
235
|
file: _constants2.REGISTRATION_FILE,
|
|
162
236
|
method: _constants2.METHODS.DELETE_REGISTRATION
|
|
163
237
|
});
|
|
164
|
-
|
|
238
|
+
_context2.next = 4;
|
|
165
239
|
return (0, _common.uploadLogs)();
|
|
166
240
|
case 4:
|
|
167
241
|
this.setStatus(_types2.RegistrationStatus.INACTIVE);
|
|
168
242
|
this.lineEmitter(_types3.LINE_EVENTS.UNREGISTERED);
|
|
169
|
-
return
|
|
243
|
+
return _context2.abrupt("return", (_response = response) === null || _response === void 0 ? void 0 : _response.json());
|
|
170
244
|
case 5:
|
|
171
245
|
case "end":
|
|
172
|
-
return
|
|
246
|
+
return _context2.stop();
|
|
173
247
|
}
|
|
174
|
-
},
|
|
248
|
+
}, _callee2, this, [[0, 3]]);
|
|
175
249
|
}));
|
|
176
250
|
function deleteRegistration(_x, _x2, _x3) {
|
|
177
251
|
return _deleteRegistration.apply(this, arguments);
|
|
@@ -186,10 +260,10 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
186
260
|
}, {
|
|
187
261
|
key: "postRegistration",
|
|
188
262
|
value: (function () {
|
|
189
|
-
var _postRegistration = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
263
|
+
var _postRegistration = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee3(url) {
|
|
190
264
|
var deviceInfo;
|
|
191
|
-
return _regenerator.default.wrap(function (
|
|
192
|
-
while (1) switch (
|
|
265
|
+
return _regenerator.default.wrap(function (_context3) {
|
|
266
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
193
267
|
case 0:
|
|
194
268
|
deviceInfo = {
|
|
195
269
|
userId: this.userId,
|
|
@@ -198,7 +272,7 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
198
272
|
jwe: this.jwe
|
|
199
273
|
}) : this.serviceData
|
|
200
274
|
};
|
|
201
|
-
return
|
|
275
|
+
return _context3.abrupt("return", this.webex.request({
|
|
202
276
|
uri: "".concat(url, "device"),
|
|
203
277
|
method: _types2.HTTP_METHODS.POST,
|
|
204
278
|
headers: (0, _defineProperty2.default)((0, _defineProperty2.default)({}, _constants2.CISCO_DEVICE_URL, deviceInfo.clientDeviceUri), _constants2.SPARK_USER_AGENT, _constants2.CALLING_USER_AGENT),
|
|
@@ -207,9 +281,9 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
207
281
|
}));
|
|
208
282
|
case 1:
|
|
209
283
|
case "end":
|
|
210
|
-
return
|
|
284
|
+
return _context3.stop();
|
|
211
285
|
}
|
|
212
|
-
},
|
|
286
|
+
}, _callee3, this);
|
|
213
287
|
}));
|
|
214
288
|
function postRegistration(_x4) {
|
|
215
289
|
return _postRegistration.apply(this, arguments);
|
|
@@ -224,68 +298,68 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
224
298
|
}, {
|
|
225
299
|
key: "restorePreviousRegistration",
|
|
226
300
|
value: (function () {
|
|
227
|
-
var _restorePreviousRegistration = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
301
|
+
var _restorePreviousRegistration = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee5(caller) {
|
|
228
302
|
var _this = this;
|
|
229
303
|
var abort;
|
|
230
|
-
return _regenerator.default.wrap(function (
|
|
231
|
-
while (1) switch (
|
|
304
|
+
return _regenerator.default.wrap(function (_context5) {
|
|
305
|
+
while (1) switch (_context5.prev = _context5.next) {
|
|
232
306
|
case 0:
|
|
233
307
|
abort = false;
|
|
234
308
|
if (!this.activeMobiusUrl) {
|
|
235
|
-
|
|
309
|
+
_context5.next = 6;
|
|
236
310
|
break;
|
|
237
311
|
}
|
|
238
|
-
|
|
312
|
+
_context5.next = 1;
|
|
239
313
|
return this.attemptRegistrationWithServers(caller, [this.activeMobiusUrl]);
|
|
240
314
|
case 1:
|
|
241
|
-
abort =
|
|
315
|
+
abort = _context5.sent;
|
|
242
316
|
if (!this.retryAfter) {
|
|
243
|
-
|
|
317
|
+
_context5.next = 6;
|
|
244
318
|
break;
|
|
245
319
|
}
|
|
246
320
|
if (!(this.retryAfter < _constants2.RETRY_TIMER_UPPER_LIMIT)) {
|
|
247
|
-
|
|
321
|
+
_context5.next = 2;
|
|
248
322
|
break;
|
|
249
323
|
}
|
|
250
324
|
// If retry-after is less than threshold, honor it and schedule retry
|
|
251
|
-
setTimeout(/*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
252
|
-
return _regenerator.default.wrap(function (
|
|
253
|
-
while (1) switch (
|
|
325
|
+
setTimeout(/*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee4() {
|
|
326
|
+
return _regenerator.default.wrap(function (_context4) {
|
|
327
|
+
while (1) switch (_context4.prev = _context4.next) {
|
|
254
328
|
case 0:
|
|
255
|
-
|
|
329
|
+
_context4.next = 1;
|
|
256
330
|
return _this.restartRegistration(caller);
|
|
257
331
|
case 1:
|
|
258
332
|
case "end":
|
|
259
|
-
return
|
|
333
|
+
return _context4.stop();
|
|
260
334
|
}
|
|
261
|
-
},
|
|
335
|
+
}, _callee4);
|
|
262
336
|
})), this.retryAfter * 1000);
|
|
263
|
-
|
|
337
|
+
_context5.next = 5;
|
|
264
338
|
break;
|
|
265
339
|
case 2:
|
|
266
340
|
if (!(this.primaryMobiusUris.includes(this.activeMobiusUrl) && this.backupMobiusUris.length > 0)) {
|
|
267
|
-
|
|
341
|
+
_context5.next = 4;
|
|
268
342
|
break;
|
|
269
343
|
}
|
|
270
|
-
|
|
344
|
+
_context5.next = 3;
|
|
271
345
|
return this.attemptRegistrationWithServers(caller, this.backupMobiusUris);
|
|
272
346
|
case 3:
|
|
273
|
-
abort =
|
|
274
|
-
|
|
347
|
+
abort = _context5.sent;
|
|
348
|
+
_context5.next = 5;
|
|
275
349
|
break;
|
|
276
350
|
case 4:
|
|
277
351
|
// If we are using backup and got 429, restart registration
|
|
278
352
|
this.restartRegistration(caller);
|
|
279
353
|
case 5:
|
|
280
354
|
this.retryAfter = undefined;
|
|
281
|
-
return
|
|
355
|
+
return _context5.abrupt("return", true);
|
|
282
356
|
case 6:
|
|
283
|
-
return
|
|
357
|
+
return _context5.abrupt("return", abort);
|
|
284
358
|
case 7:
|
|
285
359
|
case "end":
|
|
286
|
-
return
|
|
360
|
+
return _context5.stop();
|
|
287
361
|
}
|
|
288
|
-
},
|
|
362
|
+
}, _callee5, this);
|
|
289
363
|
}));
|
|
290
364
|
function restorePreviousRegistration(_x5) {
|
|
291
365
|
return _restorePreviousRegistration.apply(this, arguments);
|
|
@@ -299,30 +373,30 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
299
373
|
}, {
|
|
300
374
|
key: "handle404KeepaliveFailure",
|
|
301
375
|
value: (function () {
|
|
302
|
-
var _handle404KeepaliveFailure = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
376
|
+
var _handle404KeepaliveFailure = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee6(caller) {
|
|
303
377
|
var abort;
|
|
304
|
-
return _regenerator.default.wrap(function (
|
|
305
|
-
while (1) switch (
|
|
378
|
+
return _regenerator.default.wrap(function (_context6) {
|
|
379
|
+
while (1) switch (_context6.prev = _context6.next) {
|
|
306
380
|
case 0:
|
|
307
381
|
if (!(caller === _constants2.KEEPALIVE_UTIL)) {
|
|
308
|
-
|
|
382
|
+
_context6.next = 2;
|
|
309
383
|
break;
|
|
310
384
|
}
|
|
311
|
-
|
|
385
|
+
_context6.next = 1;
|
|
312
386
|
return this.attemptRegistrationWithServers(caller);
|
|
313
387
|
case 1:
|
|
314
|
-
abort =
|
|
388
|
+
abort = _context6.sent;
|
|
315
389
|
if (!(!abort && !this.isDeviceRegistered())) {
|
|
316
|
-
|
|
390
|
+
_context6.next = 2;
|
|
317
391
|
break;
|
|
318
392
|
}
|
|
319
|
-
|
|
393
|
+
_context6.next = 2;
|
|
320
394
|
return this.startFailoverTimer();
|
|
321
395
|
case 2:
|
|
322
396
|
case "end":
|
|
323
|
-
return
|
|
397
|
+
return _context6.stop();
|
|
324
398
|
}
|
|
325
|
-
},
|
|
399
|
+
}, _callee6, this);
|
|
326
400
|
}));
|
|
327
401
|
function handle404KeepaliveFailure(_x6) {
|
|
328
402
|
return _handle404KeepaliveFailure.apply(this, arguments);
|
|
@@ -336,21 +410,21 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
336
410
|
}, {
|
|
337
411
|
key: "handle429Retry",
|
|
338
412
|
value: (function () {
|
|
339
|
-
var _handle429Retry = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
413
|
+
var _handle429Retry = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee8(retryAfter, caller) {
|
|
340
414
|
var _this2 = this;
|
|
341
415
|
var interval, abort;
|
|
342
|
-
return _regenerator.default.wrap(function (
|
|
343
|
-
while (1) switch (
|
|
416
|
+
return _regenerator.default.wrap(function (_context8) {
|
|
417
|
+
while (1) switch (_context8.prev = _context8.next) {
|
|
344
418
|
case 0:
|
|
345
419
|
if (!(caller === _constants2.FAILBACK_UTIL)) {
|
|
346
|
-
|
|
420
|
+
_context8.next = 4;
|
|
347
421
|
break;
|
|
348
422
|
}
|
|
349
423
|
if (!(this.failback429RetryAttempts >= _constants2.REG_FAILBACK_429_MAX_RETRIES)) {
|
|
350
|
-
|
|
424
|
+
_context8.next = 1;
|
|
351
425
|
break;
|
|
352
426
|
}
|
|
353
|
-
return
|
|
427
|
+
return _context8.abrupt("return");
|
|
354
428
|
case 1:
|
|
355
429
|
this.clearFailbackTimer();
|
|
356
430
|
this.failback429RetryAttempts += 1;
|
|
@@ -361,26 +435,26 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
361
435
|
interval = this.getRegRetryInterval(this.failback429RetryAttempts);
|
|
362
436
|
this.startFailbackTimer(interval);
|
|
363
437
|
this.scheduled429Retry = true;
|
|
364
|
-
|
|
438
|
+
_context8.next = 2;
|
|
365
439
|
return this.restorePreviousRegistration(_constants2.REG_429_RETRY_UTIL);
|
|
366
440
|
case 2:
|
|
367
|
-
abort =
|
|
441
|
+
abort = _context8.sent;
|
|
368
442
|
if (!(!abort && !this.isDeviceRegistered())) {
|
|
369
|
-
|
|
443
|
+
_context8.next = 3;
|
|
370
444
|
break;
|
|
371
445
|
}
|
|
372
|
-
|
|
446
|
+
_context8.next = 3;
|
|
373
447
|
return this.restartRegistration(_constants2.REG_429_RETRY_UTIL);
|
|
374
448
|
case 3:
|
|
375
|
-
|
|
449
|
+
_context8.next = 5;
|
|
376
450
|
break;
|
|
377
451
|
case 4:
|
|
378
452
|
if (caller === _constants2.KEEPALIVE_UTIL) {
|
|
379
453
|
this.clearKeepaliveTimer();
|
|
380
|
-
setTimeout(/*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
454
|
+
setTimeout(/*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee7() {
|
|
381
455
|
var _this2$deviceInfo$dev;
|
|
382
|
-
return _regenerator.default.wrap(function (
|
|
383
|
-
while (1) switch (
|
|
456
|
+
return _regenerator.default.wrap(function (_context7) {
|
|
457
|
+
while (1) switch (_context7.prev = _context7.next) {
|
|
384
458
|
case 0:
|
|
385
459
|
_Logger.default.log("Resuming keepalive after ".concat(retryAfter, " seconds"), {
|
|
386
460
|
file: _constants2.REGISTRATION_FILE,
|
|
@@ -388,22 +462,22 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
388
462
|
});
|
|
389
463
|
|
|
390
464
|
// Resume the keepalive after waiting for the retry after period
|
|
391
|
-
|
|
465
|
+
_context7.next = 1;
|
|
392
466
|
return _this2.startKeepaliveTimer((_this2$deviceInfo$dev = _this2.deviceInfo.device) === null || _this2$deviceInfo$dev === void 0 ? void 0 : _this2$deviceInfo$dev.uri, _this2.deviceInfo.keepaliveInterval, 'UNKNOWN');
|
|
393
467
|
case 1:
|
|
394
468
|
case "end":
|
|
395
|
-
return
|
|
469
|
+
return _context7.stop();
|
|
396
470
|
}
|
|
397
|
-
},
|
|
471
|
+
}, _callee7);
|
|
398
472
|
})), retryAfter * 1000);
|
|
399
473
|
} else {
|
|
400
474
|
this.retryAfter = retryAfter;
|
|
401
475
|
}
|
|
402
476
|
case 5:
|
|
403
477
|
case "end":
|
|
404
|
-
return
|
|
478
|
+
return _context8.stop();
|
|
405
479
|
}
|
|
406
|
-
},
|
|
480
|
+
}, _callee8, this);
|
|
407
481
|
}));
|
|
408
482
|
function handle429Retry(_x7, _x8) {
|
|
409
483
|
return _handle429Retry.apply(this, arguments);
|
|
@@ -434,7 +508,7 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
434
508
|
}, {
|
|
435
509
|
key: "startFailoverTimer",
|
|
436
510
|
value: (function () {
|
|
437
|
-
var _startFailoverTimer = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
511
|
+
var _startFailoverTimer = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee11() {
|
|
438
512
|
var _this3 = this;
|
|
439
513
|
var attempt,
|
|
440
514
|
timeElapsed,
|
|
@@ -444,12 +518,12 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
444
518
|
excessVal,
|
|
445
519
|
abort,
|
|
446
520
|
scheduledTime,
|
|
447
|
-
|
|
448
|
-
return _regenerator.default.wrap(function (
|
|
449
|
-
while (1) switch (
|
|
521
|
+
_args11 = arguments;
|
|
522
|
+
return _regenerator.default.wrap(function (_context11) {
|
|
523
|
+
while (1) switch (_context11.prev = _context11.next) {
|
|
450
524
|
case 0:
|
|
451
|
-
attempt =
|
|
452
|
-
timeElapsed =
|
|
525
|
+
attempt = _args11.length > 0 && _args11[0] !== undefined ? _args11[0] : 1;
|
|
526
|
+
timeElapsed = _args11.length > 1 && _args11[1] !== undefined ? _args11[1] : 0;
|
|
453
527
|
loggerContext = {
|
|
454
528
|
file: _constants2.REGISTRATION_FILE,
|
|
455
529
|
method: _constants2.FAILOVER_UTIL
|
|
@@ -464,83 +538,95 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
464
538
|
this.failoverImmediately = this.retryAfter + timeElapsed > TIMER_THRESHOLD;
|
|
465
539
|
}
|
|
466
540
|
if (!(interval > _constants2.BASE_REG_RETRY_TIMER_VAL_IN_SEC && !this.failoverImmediately)) {
|
|
467
|
-
|
|
541
|
+
_context11.next = 1;
|
|
468
542
|
break;
|
|
469
543
|
}
|
|
470
544
|
scheduledTime = Math.floor((0, _now.default)() / 1000);
|
|
471
545
|
if (this.retryAfter != null) {
|
|
472
546
|
interval = Math.max(interval, this.retryAfter);
|
|
473
547
|
}
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
548
|
+
this.saveFailoverState({
|
|
549
|
+
attempt: attempt,
|
|
550
|
+
timeElapsed: timeElapsed,
|
|
551
|
+
retryScheduledTime: scheduledTime,
|
|
552
|
+
serverType: 'primary'
|
|
553
|
+
});
|
|
554
|
+
setTimeout(/*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee0() {
|
|
555
|
+
return _regenerator.default.wrap(function (_context0) {
|
|
556
|
+
while (1) switch (_context0.prev = _context0.next) {
|
|
477
557
|
case 0:
|
|
478
|
-
|
|
479
|
-
return _this3.mutex.runExclusive(/*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
558
|
+
_context0.next = 1;
|
|
559
|
+
return _this3.mutex.runExclusive(/*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee9() {
|
|
480
560
|
var currentTime;
|
|
481
|
-
return _regenerator.default.wrap(function (
|
|
482
|
-
while (1) switch (
|
|
561
|
+
return _regenerator.default.wrap(function (_context9) {
|
|
562
|
+
while (1) switch (_context9.prev = _context9.next) {
|
|
483
563
|
case 0:
|
|
484
|
-
|
|
564
|
+
_context9.next = 1;
|
|
485
565
|
return _this3.attemptRegistrationWithServers(_constants2.FAILOVER_UTIL);
|
|
486
566
|
case 1:
|
|
487
|
-
abort =
|
|
567
|
+
abort = _context9.sent;
|
|
488
568
|
currentTime = Math.floor((0, _now.default)() / 1000);
|
|
489
569
|
if (!(!abort && !_this3.isDeviceRegistered())) {
|
|
490
|
-
|
|
570
|
+
_context9.next = 2;
|
|
491
571
|
break;
|
|
492
572
|
}
|
|
493
|
-
|
|
573
|
+
_context9.next = 2;
|
|
494
574
|
return _this3.startFailoverTimer(attempt + 1, timeElapsed + (currentTime - scheduledTime));
|
|
495
575
|
case 2:
|
|
496
576
|
case "end":
|
|
497
|
-
return
|
|
577
|
+
return _context9.stop();
|
|
498
578
|
}
|
|
499
|
-
},
|
|
579
|
+
}, _callee9);
|
|
500
580
|
})));
|
|
501
581
|
case 1:
|
|
502
582
|
case "end":
|
|
503
|
-
return
|
|
583
|
+
return _context0.stop();
|
|
504
584
|
}
|
|
505
|
-
},
|
|
585
|
+
}, _callee0);
|
|
506
586
|
})), interval * _constants2.SEC_TO_MSEC_MFACTOR);
|
|
507
587
|
_Logger.default.log("Scheduled retry with primary in ".concat(interval, " seconds, number of attempts : ").concat(attempt), loggerContext);
|
|
508
|
-
|
|
588
|
+
_context11.next = 5;
|
|
509
589
|
break;
|
|
510
590
|
case 1:
|
|
511
591
|
if (!this.backupMobiusUris.length) {
|
|
512
|
-
|
|
592
|
+
_context11.next = 3;
|
|
513
593
|
break;
|
|
514
594
|
}
|
|
595
|
+
this.saveFailoverState({
|
|
596
|
+
attempt: attempt,
|
|
597
|
+
timeElapsed: timeElapsed,
|
|
598
|
+
retryScheduledTime: Math.floor((0, _now.default)() / 1000),
|
|
599
|
+
serverType: 'backup'
|
|
600
|
+
});
|
|
515
601
|
_Logger.default.info('Failing over to backup servers.', loggerContext);
|
|
516
602
|
this.failoverImmediately = false;
|
|
517
|
-
|
|
603
|
+
_context11.next = 2;
|
|
518
604
|
return this.attemptRegistrationWithServers(_constants2.FAILOVER_UTIL, this.backupMobiusUris);
|
|
519
605
|
case 2:
|
|
520
|
-
abort =
|
|
606
|
+
abort = _context11.sent;
|
|
521
607
|
if (!abort && !this.isDeviceRegistered()) {
|
|
522
608
|
interval = this.getRegRetryInterval();
|
|
523
609
|
if (this.retryAfter != null && this.retryAfter < _constants2.RETRY_TIMER_UPPER_LIMIT) {
|
|
524
610
|
interval = interval < this.retryAfter ? this.retryAfter : interval;
|
|
525
611
|
}
|
|
526
|
-
setTimeout(/*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
527
|
-
return _regenerator.default.wrap(function (
|
|
528
|
-
while (1) switch (
|
|
612
|
+
setTimeout(/*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee10() {
|
|
613
|
+
return _regenerator.default.wrap(function (_context10) {
|
|
614
|
+
while (1) switch (_context10.prev = _context10.next) {
|
|
529
615
|
case 0:
|
|
530
|
-
|
|
531
|
-
return _this3.mutex.runExclusive(/*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
532
|
-
return _regenerator.default.wrap(function (
|
|
533
|
-
while (1) switch (
|
|
616
|
+
_context10.next = 1;
|
|
617
|
+
return _this3.mutex.runExclusive(/*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee1() {
|
|
618
|
+
return _regenerator.default.wrap(function (_context1) {
|
|
619
|
+
while (1) switch (_context1.prev = _context1.next) {
|
|
534
620
|
case 0:
|
|
535
|
-
|
|
621
|
+
_context1.next = 1;
|
|
536
622
|
return _this3.attemptRegistrationWithServers(_constants2.FAILOVER_UTIL, _this3.backupMobiusUris);
|
|
537
623
|
case 1:
|
|
538
|
-
abort =
|
|
624
|
+
abort = _context1.sent;
|
|
539
625
|
if (!(!abort && !_this3.isDeviceRegistered())) {
|
|
540
|
-
|
|
626
|
+
_context1.next = 3;
|
|
541
627
|
break;
|
|
542
628
|
}
|
|
543
|
-
|
|
629
|
+
_context1.next = 2;
|
|
544
630
|
return (0, _common.uploadLogs)();
|
|
545
631
|
case 2:
|
|
546
632
|
(0, _common.emitFinalFailure)(function (clientError) {
|
|
@@ -548,22 +634,22 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
548
634
|
}, loggerContext);
|
|
549
635
|
case 3:
|
|
550
636
|
case "end":
|
|
551
|
-
return
|
|
637
|
+
return _context1.stop();
|
|
552
638
|
}
|
|
553
|
-
},
|
|
639
|
+
}, _callee1);
|
|
554
640
|
})));
|
|
555
641
|
case 1:
|
|
556
642
|
case "end":
|
|
557
|
-
return
|
|
643
|
+
return _context10.stop();
|
|
558
644
|
}
|
|
559
|
-
},
|
|
645
|
+
}, _callee10);
|
|
560
646
|
})), interval * _constants2.SEC_TO_MSEC_MFACTOR);
|
|
561
647
|
_Logger.default.log("Scheduled retry with backup servers in ".concat(interval, " seconds."), loggerContext);
|
|
562
648
|
}
|
|
563
|
-
|
|
649
|
+
_context11.next = 5;
|
|
564
650
|
break;
|
|
565
651
|
case 3:
|
|
566
|
-
|
|
652
|
+
_context11.next = 4;
|
|
567
653
|
return (0, _common.uploadLogs)();
|
|
568
654
|
case 4:
|
|
569
655
|
(0, _common.emitFinalFailure)(function (clientError) {
|
|
@@ -571,9 +657,9 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
571
657
|
}, loggerContext);
|
|
572
658
|
case 5:
|
|
573
659
|
case "end":
|
|
574
|
-
return
|
|
660
|
+
return _context11.stop();
|
|
575
661
|
}
|
|
576
|
-
},
|
|
662
|
+
}, _callee11, this);
|
|
577
663
|
}));
|
|
578
664
|
function startFailoverTimer() {
|
|
579
665
|
return _startFailoverTimer.apply(this, arguments);
|
|
@@ -595,23 +681,23 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
595
681
|
}, {
|
|
596
682
|
key: "isPrimaryActive",
|
|
597
683
|
value: function () {
|
|
598
|
-
var _isPrimaryActive = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
599
|
-
var status, _iterator, _step, mobiusUrl, baseUri, response, _ref7, statusCode,
|
|
600
|
-
return _regenerator.default.wrap(function (
|
|
601
|
-
while (1) switch (
|
|
684
|
+
var _isPrimaryActive = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee12() {
|
|
685
|
+
var status, _iterator, _step, mobiusUrl, baseUri, response, _ref7, statusCode, _t1, _t10;
|
|
686
|
+
return _regenerator.default.wrap(function (_context12) {
|
|
687
|
+
while (1) switch (_context12.prev = _context12.next) {
|
|
602
688
|
case 0:
|
|
603
689
|
_iterator = _createForOfIteratorHelper(this.primaryMobiusUris);
|
|
604
|
-
|
|
690
|
+
_context12.prev = 1;
|
|
605
691
|
_iterator.s();
|
|
606
692
|
case 2:
|
|
607
693
|
if ((_step = _iterator.n()).done) {
|
|
608
|
-
|
|
694
|
+
_context12.next = 8;
|
|
609
695
|
break;
|
|
610
696
|
}
|
|
611
697
|
mobiusUrl = _step.value;
|
|
612
|
-
|
|
698
|
+
_context12.prev = 3;
|
|
613
699
|
baseUri = mobiusUrl.replace(_constants2.URL_ENDPOINT, '/'); // eslint-disable-next-line no-await-in-loop
|
|
614
|
-
|
|
700
|
+
_context12.next = 4;
|
|
615
701
|
return this.webex.request({
|
|
616
702
|
uri: "".concat(baseUri, "ping"),
|
|
617
703
|
method: _types2.HTTP_METHODS.GET,
|
|
@@ -619,10 +705,10 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
619
705
|
service: _types2.ALLOWED_SERVICES.MOBIUS
|
|
620
706
|
});
|
|
621
707
|
case 4:
|
|
622
|
-
response =
|
|
708
|
+
response = _context12.sent;
|
|
623
709
|
_ref7 = response, statusCode = _ref7.statusCode;
|
|
624
710
|
if (!(statusCode === 200)) {
|
|
625
|
-
|
|
711
|
+
_context12.next = 5;
|
|
626
712
|
break;
|
|
627
713
|
}
|
|
628
714
|
_Logger.default.info("Ping successful for primary Mobius: ".concat(mobiusUrl), {
|
|
@@ -630,39 +716,39 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
630
716
|
method: _constants2.FAILBACK_UTIL
|
|
631
717
|
});
|
|
632
718
|
status = 'up';
|
|
633
|
-
return
|
|
719
|
+
return _context12.abrupt("continue", 8);
|
|
634
720
|
case 5:
|
|
635
|
-
|
|
721
|
+
_context12.next = 7;
|
|
636
722
|
break;
|
|
637
723
|
case 6:
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
_Logger.default.warn("Ping failed for primary Mobius: ".concat(mobiusUrl, " with error: ").concat((0, _stringify.default)(
|
|
724
|
+
_context12.prev = 6;
|
|
725
|
+
_t1 = _context12["catch"](3);
|
|
726
|
+
_Logger.default.warn("Ping failed for primary Mobius: ".concat(mobiusUrl, " with error: ").concat((0, _stringify.default)(_t1)), {
|
|
641
727
|
file: _constants2.REGISTRATION_FILE,
|
|
642
728
|
method: _constants2.FAILBACK_UTIL
|
|
643
729
|
});
|
|
644
730
|
status = 'down';
|
|
645
731
|
case 7:
|
|
646
|
-
|
|
732
|
+
_context12.next = 2;
|
|
647
733
|
break;
|
|
648
734
|
case 8:
|
|
649
|
-
|
|
735
|
+
_context12.next = 10;
|
|
650
736
|
break;
|
|
651
737
|
case 9:
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
_iterator.e(
|
|
738
|
+
_context12.prev = 9;
|
|
739
|
+
_t10 = _context12["catch"](1);
|
|
740
|
+
_iterator.e(_t10);
|
|
655
741
|
case 10:
|
|
656
|
-
|
|
742
|
+
_context12.prev = 10;
|
|
657
743
|
_iterator.f();
|
|
658
|
-
return
|
|
744
|
+
return _context12.finish(10);
|
|
659
745
|
case 11:
|
|
660
|
-
return
|
|
746
|
+
return _context12.abrupt("return", status === 'up');
|
|
661
747
|
case 12:
|
|
662
748
|
case "end":
|
|
663
|
-
return
|
|
749
|
+
return _context12.stop();
|
|
664
750
|
}
|
|
665
|
-
},
|
|
751
|
+
}, _callee12, this, [[1, 9, 10, 11], [3, 6]]);
|
|
666
752
|
}));
|
|
667
753
|
function isPrimaryActive() {
|
|
668
754
|
return _isPrimaryActive.apply(this, arguments);
|
|
@@ -715,16 +801,16 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
715
801
|
key: "startFailbackTimer",
|
|
716
802
|
value: function startFailbackTimer(intervalInSeconds) {
|
|
717
803
|
var _this4 = this;
|
|
718
|
-
this.failbackTimer = setTimeout(/*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
719
|
-
return _regenerator.default.wrap(function (
|
|
720
|
-
while (1) switch (
|
|
804
|
+
this.failbackTimer = setTimeout(/*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee13() {
|
|
805
|
+
return _regenerator.default.wrap(function (_context13) {
|
|
806
|
+
while (1) switch (_context13.prev = _context13.next) {
|
|
721
807
|
case 0:
|
|
722
|
-
return
|
|
808
|
+
return _context13.abrupt("return", _this4.executeFailback());
|
|
723
809
|
case 1:
|
|
724
810
|
case "end":
|
|
725
|
-
return
|
|
811
|
+
return _context13.stop();
|
|
726
812
|
}
|
|
727
|
-
},
|
|
813
|
+
}, _callee13);
|
|
728
814
|
})), intervalInSeconds * _constants2.SEC_TO_MSEC_MFACTOR);
|
|
729
815
|
_Logger.default.log("Failback scheduled after ".concat(intervalInSeconds, " seconds."), {
|
|
730
816
|
file: _constants2.REGISTRATION_FILE,
|
|
@@ -739,71 +825,71 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
739
825
|
}, {
|
|
740
826
|
key: "executeFailback",
|
|
741
827
|
value: (function () {
|
|
742
|
-
var _executeFailback = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
828
|
+
var _executeFailback = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee15() {
|
|
743
829
|
var _this5 = this;
|
|
744
|
-
return _regenerator.default.wrap(function (
|
|
745
|
-
while (1) switch (
|
|
830
|
+
return _regenerator.default.wrap(function (_context15) {
|
|
831
|
+
while (1) switch (_context15.prev = _context15.next) {
|
|
746
832
|
case 0:
|
|
747
|
-
|
|
748
|
-
return this.mutex.runExclusive(/*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
833
|
+
_context15.next = 1;
|
|
834
|
+
return this.mutex.runExclusive(/*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee14() {
|
|
749
835
|
var primaryServerStatus, abort, abortNew;
|
|
750
|
-
return _regenerator.default.wrap(function (
|
|
751
|
-
while (1) switch (
|
|
836
|
+
return _regenerator.default.wrap(function (_context14) {
|
|
837
|
+
while (1) switch (_context14.prev = _context14.next) {
|
|
752
838
|
case 0:
|
|
753
839
|
if (!_this5.isFailbackRequired()) {
|
|
754
|
-
|
|
840
|
+
_context14.next = 11;
|
|
755
841
|
break;
|
|
756
842
|
}
|
|
757
|
-
|
|
843
|
+
_context14.next = 1;
|
|
758
844
|
return _this5.isPrimaryActive();
|
|
759
845
|
case 1:
|
|
760
|
-
primaryServerStatus =
|
|
846
|
+
primaryServerStatus = _context14.sent;
|
|
761
847
|
if (!((0, _keys.default)(_this5.callManager.getActiveCalls()).length === 0 && primaryServerStatus)) {
|
|
762
|
-
|
|
848
|
+
_context14.next = 10;
|
|
763
849
|
break;
|
|
764
850
|
}
|
|
765
851
|
_Logger.default.info("Attempting failback to primary.", {
|
|
766
852
|
file: _constants2.REGISTRATION_FILE,
|
|
767
853
|
method: _this5.executeFailback.name
|
|
768
854
|
});
|
|
769
|
-
|
|
855
|
+
_context14.next = 2;
|
|
770
856
|
return _this5.deregister();
|
|
771
857
|
case 2:
|
|
772
|
-
|
|
858
|
+
_context14.next = 3;
|
|
773
859
|
return _this5.attemptRegistrationWithServers(_constants2.FAILBACK_UTIL);
|
|
774
860
|
case 3:
|
|
775
|
-
abort =
|
|
861
|
+
abort = _context14.sent;
|
|
776
862
|
if (!(_this5.scheduled429Retry || abort || _this5.isDeviceRegistered())) {
|
|
777
|
-
|
|
863
|
+
_context14.next = 4;
|
|
778
864
|
break;
|
|
779
865
|
}
|
|
780
|
-
return
|
|
866
|
+
return _context14.abrupt("return");
|
|
781
867
|
case 4:
|
|
782
|
-
|
|
868
|
+
_context14.next = 5;
|
|
783
869
|
return _this5.restorePreviousRegistration(_constants2.FAILBACK_UTIL);
|
|
784
870
|
case 5:
|
|
785
|
-
abortNew =
|
|
871
|
+
abortNew = _context14.sent;
|
|
786
872
|
if (!abortNew) {
|
|
787
|
-
|
|
873
|
+
_context14.next = 6;
|
|
788
874
|
break;
|
|
789
875
|
}
|
|
790
876
|
_this5.clearFailbackTimer();
|
|
791
|
-
return
|
|
877
|
+
return _context14.abrupt("return");
|
|
792
878
|
case 6:
|
|
793
879
|
if (_this5.isDeviceRegistered()) {
|
|
794
|
-
|
|
880
|
+
_context14.next = 8;
|
|
795
881
|
break;
|
|
796
882
|
}
|
|
797
|
-
|
|
883
|
+
_context14.next = 7;
|
|
798
884
|
return _this5.restartRegistration(_this5.executeFailback.name);
|
|
799
885
|
case 7:
|
|
800
|
-
|
|
886
|
+
_context14.next = 9;
|
|
801
887
|
break;
|
|
802
888
|
case 8:
|
|
803
889
|
_this5.failbackTimer = undefined;
|
|
804
890
|
_this5.initiateFailback();
|
|
805
891
|
case 9:
|
|
806
|
-
|
|
892
|
+
_context14.next = 11;
|
|
807
893
|
break;
|
|
808
894
|
case 10:
|
|
809
895
|
_Logger.default.info('Active calls present or primary Mobius is down, deferring failback to next cycle.', {
|
|
@@ -814,15 +900,15 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
814
900
|
_this5.initiateFailback();
|
|
815
901
|
case 11:
|
|
816
902
|
case "end":
|
|
817
|
-
return
|
|
903
|
+
return _context14.stop();
|
|
818
904
|
}
|
|
819
|
-
},
|
|
905
|
+
}, _callee14);
|
|
820
906
|
})));
|
|
821
907
|
case 1:
|
|
822
908
|
case "end":
|
|
823
|
-
return
|
|
909
|
+
return _context15.stop();
|
|
824
910
|
}
|
|
825
|
-
},
|
|
911
|
+
}, _callee15, this);
|
|
826
912
|
}));
|
|
827
913
|
function executeFailback() {
|
|
828
914
|
return _executeFailback.apply(this, arguments);
|
|
@@ -885,10 +971,10 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
885
971
|
}, {
|
|
886
972
|
key: "restartRegistration",
|
|
887
973
|
value: (function () {
|
|
888
|
-
var _restartRegistration = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
974
|
+
var _restartRegistration = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee16(caller) {
|
|
889
975
|
var abort;
|
|
890
|
-
return _regenerator.default.wrap(function (
|
|
891
|
-
while (1) switch (
|
|
976
|
+
return _regenerator.default.wrap(function (_context16) {
|
|
977
|
+
while (1) switch (_context16.prev = _context16.next) {
|
|
892
978
|
case 0:
|
|
893
979
|
/*
|
|
894
980
|
* Cancel any failback timer running
|
|
@@ -896,21 +982,21 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
896
982
|
*/
|
|
897
983
|
this.clearFailbackTimer();
|
|
898
984
|
this.failback429RetryAttempts = 0;
|
|
899
|
-
|
|
985
|
+
_context16.next = 1;
|
|
900
986
|
return this.attemptRegistrationWithServers(caller, this.primaryMobiusUris);
|
|
901
987
|
case 1:
|
|
902
|
-
abort =
|
|
988
|
+
abort = _context16.sent;
|
|
903
989
|
if (!(!abort && !this.isDeviceRegistered())) {
|
|
904
|
-
|
|
990
|
+
_context16.next = 2;
|
|
905
991
|
break;
|
|
906
992
|
}
|
|
907
|
-
|
|
993
|
+
_context16.next = 2;
|
|
908
994
|
return this.startFailoverTimer();
|
|
909
995
|
case 2:
|
|
910
996
|
case "end":
|
|
911
|
-
return
|
|
997
|
+
return _context16.stop();
|
|
912
998
|
}
|
|
913
|
-
},
|
|
999
|
+
}, _callee16, this);
|
|
914
1000
|
}));
|
|
915
1001
|
function restartRegistration(_x9) {
|
|
916
1002
|
return _restartRegistration.apply(this, arguments);
|
|
@@ -926,23 +1012,23 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
926
1012
|
}, {
|
|
927
1013
|
key: "handleConnectionRestoration",
|
|
928
1014
|
value: (function () {
|
|
929
|
-
var _handleConnectionRestoration = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
1015
|
+
var _handleConnectionRestoration = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee18(retry) {
|
|
930
1016
|
var _this6 = this;
|
|
931
|
-
return _regenerator.default.wrap(function (
|
|
932
|
-
while (1) switch (
|
|
1017
|
+
return _regenerator.default.wrap(function (_context18) {
|
|
1018
|
+
while (1) switch (_context18.prev = _context18.next) {
|
|
933
1019
|
case 0:
|
|
934
1020
|
_Logger.default.info(_constants.METHOD_START_MESSAGE, {
|
|
935
1021
|
method: _constants2.METHODS.HANDLE_CONNECTION_RESTORATION,
|
|
936
1022
|
file: _constants2.REGISTRATION_FILE
|
|
937
1023
|
});
|
|
938
|
-
|
|
939
|
-
return this.mutex.runExclusive(/*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
1024
|
+
_context18.next = 1;
|
|
1025
|
+
return this.mutex.runExclusive(/*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee17() {
|
|
940
1026
|
var abort;
|
|
941
|
-
return _regenerator.default.wrap(function (
|
|
942
|
-
while (1) switch (
|
|
1027
|
+
return _regenerator.default.wrap(function (_context17) {
|
|
1028
|
+
while (1) switch (_context17.prev = _context17.next) {
|
|
943
1029
|
case 0:
|
|
944
1030
|
if (!retry) {
|
|
945
|
-
|
|
1031
|
+
_context17.next = 4;
|
|
946
1032
|
break;
|
|
947
1033
|
}
|
|
948
1034
|
_Logger.default.log('Network is up again, re-registering with Webex Calling if needed', {
|
|
@@ -951,41 +1037,41 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
951
1037
|
});
|
|
952
1038
|
_this6.clearKeepaliveTimer();
|
|
953
1039
|
if (!_this6.isDeviceRegistered()) {
|
|
954
|
-
|
|
1040
|
+
_context17.next = 1;
|
|
955
1041
|
break;
|
|
956
1042
|
}
|
|
957
|
-
|
|
1043
|
+
_context17.next = 1;
|
|
958
1044
|
return _this6.deregister();
|
|
959
1045
|
case 1:
|
|
960
1046
|
if (!_this6.activeMobiusUrl) {
|
|
961
|
-
|
|
1047
|
+
_context17.next = 3;
|
|
962
1048
|
break;
|
|
963
1049
|
}
|
|
964
|
-
|
|
1050
|
+
_context17.next = 2;
|
|
965
1051
|
return _this6.restorePreviousRegistration(_constants2.METHODS.HANDLE_CONNECTION_RESTORATION);
|
|
966
1052
|
case 2:
|
|
967
|
-
abort =
|
|
1053
|
+
abort = _context17.sent;
|
|
968
1054
|
if (!(!abort && !_this6.isDeviceRegistered())) {
|
|
969
|
-
|
|
1055
|
+
_context17.next = 3;
|
|
970
1056
|
break;
|
|
971
1057
|
}
|
|
972
|
-
|
|
1058
|
+
_context17.next = 3;
|
|
973
1059
|
return _this6.restartRegistration(_constants2.METHODS.HANDLE_CONNECTION_RESTORATION);
|
|
974
1060
|
case 3:
|
|
975
1061
|
retry = false;
|
|
976
1062
|
case 4:
|
|
977
1063
|
case "end":
|
|
978
|
-
return
|
|
1064
|
+
return _context17.stop();
|
|
979
1065
|
}
|
|
980
|
-
},
|
|
1066
|
+
}, _callee17);
|
|
981
1067
|
})));
|
|
982
1068
|
case 1:
|
|
983
|
-
return
|
|
1069
|
+
return _context18.abrupt("return", retry);
|
|
984
1070
|
case 2:
|
|
985
1071
|
case "end":
|
|
986
|
-
return
|
|
1072
|
+
return _context18.stop();
|
|
987
1073
|
}
|
|
988
|
-
},
|
|
1074
|
+
}, _callee18, this);
|
|
989
1075
|
}));
|
|
990
1076
|
function handleConnectionRestoration(_x0) {
|
|
991
1077
|
return _handleConnectionRestoration.apply(this, arguments);
|
|
@@ -1003,51 +1089,51 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
1003
1089
|
value: function restoreRegistrationCallBack() {
|
|
1004
1090
|
var _this7 = this;
|
|
1005
1091
|
return /*#__PURE__*/function () {
|
|
1006
|
-
var _ref1 = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
1092
|
+
var _ref1 = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee19(restoreData, caller) {
|
|
1007
1093
|
var logContext, restore, finalError;
|
|
1008
|
-
return _regenerator.default.wrap(function (
|
|
1009
|
-
while (1) switch (
|
|
1094
|
+
return _regenerator.default.wrap(function (_context19) {
|
|
1095
|
+
while (1) switch (_context19.prev = _context19.next) {
|
|
1010
1096
|
case 0:
|
|
1011
1097
|
logContext = {
|
|
1012
1098
|
file: _constants2.REGISTRATION_FILE,
|
|
1013
1099
|
method: caller
|
|
1014
1100
|
};
|
|
1015
1101
|
if (_this7.isRegRetry()) {
|
|
1016
|
-
|
|
1102
|
+
_context19.next = 4;
|
|
1017
1103
|
break;
|
|
1018
1104
|
}
|
|
1019
1105
|
_Logger.default.info('Registration restoration in progress.', logContext);
|
|
1020
1106
|
restore = _this7.getExistingDevice(restoreData);
|
|
1021
1107
|
if (!restore) {
|
|
1022
|
-
|
|
1108
|
+
_context19.next = 3;
|
|
1023
1109
|
break;
|
|
1024
1110
|
}
|
|
1025
1111
|
_this7.setRegRetry(true);
|
|
1026
|
-
|
|
1112
|
+
_context19.next = 1;
|
|
1027
1113
|
return _this7.deregister();
|
|
1028
1114
|
case 1:
|
|
1029
|
-
|
|
1115
|
+
_context19.next = 2;
|
|
1030
1116
|
return _this7.restorePreviousRegistration(caller);
|
|
1031
1117
|
case 2:
|
|
1032
|
-
finalError =
|
|
1118
|
+
finalError = _context19.sent;
|
|
1033
1119
|
_this7.setRegRetry(false);
|
|
1034
1120
|
if (_this7.isDeviceRegistered()) {
|
|
1035
1121
|
_Logger.default.info('Registration restored successfully.', logContext);
|
|
1036
1122
|
}
|
|
1037
|
-
return
|
|
1123
|
+
return _context19.abrupt("return", finalError);
|
|
1038
1124
|
case 3:
|
|
1039
1125
|
_this7.lineEmitter(_types3.LINE_EVENTS.UNREGISTERED);
|
|
1040
|
-
|
|
1126
|
+
_context19.next = 5;
|
|
1041
1127
|
break;
|
|
1042
1128
|
case 4:
|
|
1043
1129
|
_this7.lineEmitter(_types3.LINE_EVENTS.UNREGISTERED);
|
|
1044
1130
|
case 5:
|
|
1045
|
-
return
|
|
1131
|
+
return _context19.abrupt("return", false);
|
|
1046
1132
|
case 6:
|
|
1047
1133
|
case "end":
|
|
1048
|
-
return
|
|
1134
|
+
return _context19.stop();
|
|
1049
1135
|
}
|
|
1050
|
-
},
|
|
1136
|
+
}, _callee19);
|
|
1051
1137
|
}));
|
|
1052
1138
|
return function (_x1, _x10) {
|
|
1053
1139
|
return _ref1.apply(this, arguments);
|
|
@@ -1062,30 +1148,39 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
1062
1148
|
}, {
|
|
1063
1149
|
key: "triggerRegistration",
|
|
1064
1150
|
value: (function () {
|
|
1065
|
-
var _triggerRegistration = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
1151
|
+
var _triggerRegistration = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee20() {
|
|
1066
1152
|
var abort;
|
|
1067
|
-
return _regenerator.default.wrap(function (
|
|
1068
|
-
while (1) switch (
|
|
1153
|
+
return _regenerator.default.wrap(function (_context20) {
|
|
1154
|
+
while (1) switch (_context20.prev = _context20.next) {
|
|
1069
1155
|
case 0:
|
|
1156
|
+
_context20.next = 1;
|
|
1157
|
+
return this.resumeFailover();
|
|
1158
|
+
case 1:
|
|
1159
|
+
if (!_context20.sent) {
|
|
1160
|
+
_context20.next = 2;
|
|
1161
|
+
break;
|
|
1162
|
+
}
|
|
1163
|
+
return _context20.abrupt("return");
|
|
1164
|
+
case 2:
|
|
1070
1165
|
if (!(this.primaryMobiusUris.length > 0)) {
|
|
1071
|
-
|
|
1166
|
+
_context20.next = 4;
|
|
1072
1167
|
break;
|
|
1073
1168
|
}
|
|
1074
|
-
|
|
1169
|
+
_context20.next = 3;
|
|
1075
1170
|
return this.attemptRegistrationWithServers(_constants2.REGISTRATION_UTIL, this.primaryMobiusUris);
|
|
1076
|
-
case
|
|
1077
|
-
abort =
|
|
1171
|
+
case 3:
|
|
1172
|
+
abort = _context20.sent;
|
|
1078
1173
|
if (!(!this.isDeviceRegistered() && !abort)) {
|
|
1079
|
-
|
|
1174
|
+
_context20.next = 4;
|
|
1080
1175
|
break;
|
|
1081
1176
|
}
|
|
1082
|
-
|
|
1177
|
+
_context20.next = 4;
|
|
1083
1178
|
return this.startFailoverTimer();
|
|
1084
|
-
case
|
|
1179
|
+
case 4:
|
|
1085
1180
|
case "end":
|
|
1086
|
-
return
|
|
1181
|
+
return _context20.stop();
|
|
1087
1182
|
}
|
|
1088
|
-
},
|
|
1183
|
+
}, _callee20, this);
|
|
1089
1184
|
}));
|
|
1090
1185
|
function triggerRegistration() {
|
|
1091
1186
|
return _triggerRegistration.apply(this, arguments);
|
|
@@ -1104,7 +1199,7 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
1104
1199
|
}, {
|
|
1105
1200
|
key: "attemptRegistrationWithServers",
|
|
1106
1201
|
value: (function () {
|
|
1107
|
-
var _attemptRegistrationWithServers = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
1202
|
+
var _attemptRegistrationWithServers = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee21(caller) {
|
|
1108
1203
|
var _this8 = this;
|
|
1109
1204
|
var servers,
|
|
1110
1205
|
abort,
|
|
@@ -1112,41 +1207,41 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
1112
1207
|
_step2,
|
|
1113
1208
|
_loop,
|
|
1114
1209
|
_ret,
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
return _regenerator.default.wrap(function (
|
|
1118
|
-
while (1) switch (
|
|
1210
|
+
_args22 = arguments,
|
|
1211
|
+
_t12;
|
|
1212
|
+
return _regenerator.default.wrap(function (_context22) {
|
|
1213
|
+
while (1) switch (_context22.prev = _context22.next) {
|
|
1119
1214
|
case 0:
|
|
1120
|
-
servers =
|
|
1215
|
+
servers = _args22.length > 1 && _args22[1] !== undefined ? _args22[1] : this.primaryMobiusUris;
|
|
1121
1216
|
abort = false;
|
|
1122
1217
|
this.retryAfter = undefined;
|
|
1123
1218
|
if (!this.failoverImmediately) {
|
|
1124
|
-
|
|
1219
|
+
_context22.next = 1;
|
|
1125
1220
|
break;
|
|
1126
1221
|
}
|
|
1127
|
-
return
|
|
1222
|
+
return _context22.abrupt("return", abort);
|
|
1128
1223
|
case 1:
|
|
1129
1224
|
if (!this.isDeviceRegistered()) {
|
|
1130
|
-
|
|
1225
|
+
_context22.next = 2;
|
|
1131
1226
|
break;
|
|
1132
1227
|
}
|
|
1133
1228
|
_Logger.default.info("[".concat(caller, "] : Device already registered with : ").concat(this.activeMobiusUrl), {
|
|
1134
1229
|
file: _constants2.REGISTRATION_FILE,
|
|
1135
1230
|
method: _constants2.REGISTER_UTIL
|
|
1136
1231
|
});
|
|
1137
|
-
return
|
|
1232
|
+
return _context22.abrupt("return", abort);
|
|
1138
1233
|
case 2:
|
|
1139
1234
|
_iterator2 = _createForOfIteratorHelper(servers);
|
|
1140
|
-
|
|
1235
|
+
_context22.prev = 3;
|
|
1141
1236
|
_loop = /*#__PURE__*/_regenerator.default.mark(function _loop() {
|
|
1142
1237
|
var _this8$backupMobiusUr;
|
|
1143
|
-
var url, serverType, _this8$deviceInfo$dev, _resp$headers, _resp$headers$trackin, _resp$headers2, _this8$deviceInfo$dev2, resp, body,
|
|
1144
|
-
return _regenerator.default.wrap(function (
|
|
1145
|
-
while (1) switch (
|
|
1238
|
+
var url, serverType, _this8$deviceInfo$dev, _resp$headers, _resp$headers$trackin, _resp$headers2, _this8$deviceInfo$dev2, resp, body, _t11;
|
|
1239
|
+
return _regenerator.default.wrap(function (_context21) {
|
|
1240
|
+
while (1) switch (_context21.prev = _context21.next) {
|
|
1146
1241
|
case 0:
|
|
1147
1242
|
url = _step2.value;
|
|
1148
1243
|
serverType = _this8.primaryMobiusUris.includes(url) && 'PRIMARY' || ((_this8$backupMobiusUr = _this8.backupMobiusUris) === null || _this8$backupMobiusUr === void 0 ? void 0 : _this8$backupMobiusUr.includes(url)) && 'BACKUP' || 'UNKNOWN';
|
|
1149
|
-
|
|
1244
|
+
_context21.prev = 1;
|
|
1150
1245
|
abort = false;
|
|
1151
1246
|
_this8.registrationStatus = _types2.RegistrationStatus.INACTIVE;
|
|
1152
1247
|
_this8.lineEmitter(_types3.LINE_EVENTS.CONNECTING);
|
|
@@ -1155,10 +1250,11 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
1155
1250
|
method: _constants2.REGISTER_UTIL
|
|
1156
1251
|
});
|
|
1157
1252
|
// eslint-disable-next-line no-await-in-loop
|
|
1158
|
-
|
|
1253
|
+
_context21.next = 2;
|
|
1159
1254
|
return _this8.postRegistration(url);
|
|
1160
1255
|
case 2:
|
|
1161
|
-
resp =
|
|
1256
|
+
resp = _context21.sent;
|
|
1257
|
+
_this8.clearFailoverState();
|
|
1162
1258
|
_this8.deviceInfo = resp.body;
|
|
1163
1259
|
_this8.registrationStatus = _types2.RegistrationStatus.ACTIVE;
|
|
1164
1260
|
_this8.setActiveMobiusUrl(url);
|
|
@@ -1172,12 +1268,12 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
1172
1268
|
_this8.metricManager.submitRegistrationMetric(_types.METRIC_EVENT.REGISTRATION, _types.REG_ACTION.REGISTER, _types.METRIC_TYPE.BEHAVIORAL, caller, serverType, (_resp$headers$trackin = (_resp$headers2 = resp.headers) === null || _resp$headers2 === void 0 ? void 0 : _resp$headers2.trackingid) !== null && _resp$headers$trackin !== void 0 ? _resp$headers$trackin : '', undefined, undefined);
|
|
1173
1269
|
_this8.startKeepaliveTimer((_this8$deviceInfo$dev2 = _this8.deviceInfo.device) === null || _this8$deviceInfo$dev2 === void 0 ? void 0 : _this8$deviceInfo$dev2.uri, _this8.deviceInfo.keepaliveInterval, serverType);
|
|
1174
1270
|
_this8.initiateFailback();
|
|
1175
|
-
return
|
|
1271
|
+
return _context21.abrupt("return", 0);
|
|
1176
1272
|
case 3:
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
body =
|
|
1180
|
-
|
|
1273
|
+
_context21.prev = 3;
|
|
1274
|
+
_t11 = _context21["catch"](1);
|
|
1275
|
+
body = _t11; // eslint-disable-next-line no-await-in-loop, @typescript-eslint/no-unused-vars
|
|
1276
|
+
_context21.next = 4;
|
|
1181
1277
|
return (0, _common.handleRegistrationErrors)(body, function (clientError, finalError) {
|
|
1182
1278
|
var _body$headers$trackin, _body$headers;
|
|
1183
1279
|
if (finalError) {
|
|
@@ -1193,68 +1289,68 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
1193
1289
|
return _this8.handle429Retry(retryAfter, retryCaller);
|
|
1194
1290
|
}, _this8.restoreRegistrationCallBack());
|
|
1195
1291
|
case 4:
|
|
1196
|
-
abort =
|
|
1292
|
+
abort = _context21.sent;
|
|
1197
1293
|
if (!(_this8.registrationStatus === _types2.RegistrationStatus.ACTIVE)) {
|
|
1198
|
-
|
|
1294
|
+
_context21.next = 5;
|
|
1199
1295
|
break;
|
|
1200
1296
|
}
|
|
1201
1297
|
_Logger.default.info("[".concat(caller, "] : Device is already restored, active mobius url: ").concat(_this8.activeMobiusUrl), {
|
|
1202
1298
|
file: _constants2.REGISTRATION_FILE,
|
|
1203
1299
|
method: _this8.attemptRegistrationWithServers.name
|
|
1204
1300
|
});
|
|
1205
|
-
return
|
|
1301
|
+
return _context21.abrupt("return", 0);
|
|
1206
1302
|
case 5:
|
|
1207
1303
|
if (!abort) {
|
|
1208
|
-
|
|
1304
|
+
_context21.next = 7;
|
|
1209
1305
|
break;
|
|
1210
1306
|
}
|
|
1211
1307
|
_this8.setStatus(_types2.RegistrationStatus.INACTIVE);
|
|
1212
1308
|
// eslint-disable-next-line no-await-in-loop
|
|
1213
|
-
|
|
1309
|
+
_context21.next = 6;
|
|
1214
1310
|
return (0, _common.uploadLogs)();
|
|
1215
1311
|
case 6:
|
|
1216
|
-
return
|
|
1312
|
+
return _context21.abrupt("return", 0);
|
|
1217
1313
|
case 7:
|
|
1218
1314
|
case "end":
|
|
1219
|
-
return
|
|
1315
|
+
return _context21.stop();
|
|
1220
1316
|
}
|
|
1221
1317
|
}, _loop, null, [[1, 3]]);
|
|
1222
1318
|
});
|
|
1223
1319
|
_iterator2.s();
|
|
1224
1320
|
case 4:
|
|
1225
1321
|
if ((_step2 = _iterator2.n()).done) {
|
|
1226
|
-
|
|
1322
|
+
_context22.next = 7;
|
|
1227
1323
|
break;
|
|
1228
1324
|
}
|
|
1229
|
-
return
|
|
1325
|
+
return _context22.delegateYield(_loop(), "t0", 5);
|
|
1230
1326
|
case 5:
|
|
1231
|
-
_ret =
|
|
1327
|
+
_ret = _context22.t0;
|
|
1232
1328
|
if (!(_ret === 0)) {
|
|
1233
|
-
|
|
1329
|
+
_context22.next = 6;
|
|
1234
1330
|
break;
|
|
1235
1331
|
}
|
|
1236
|
-
return
|
|
1332
|
+
return _context22.abrupt("continue", 7);
|
|
1237
1333
|
case 6:
|
|
1238
|
-
|
|
1334
|
+
_context22.next = 4;
|
|
1239
1335
|
break;
|
|
1240
1336
|
case 7:
|
|
1241
|
-
|
|
1337
|
+
_context22.next = 9;
|
|
1242
1338
|
break;
|
|
1243
1339
|
case 8:
|
|
1244
|
-
|
|
1245
|
-
|
|
1246
|
-
_iterator2.e(
|
|
1340
|
+
_context22.prev = 8;
|
|
1341
|
+
_t12 = _context22["catch"](3);
|
|
1342
|
+
_iterator2.e(_t12);
|
|
1247
1343
|
case 9:
|
|
1248
|
-
|
|
1344
|
+
_context22.prev = 9;
|
|
1249
1345
|
_iterator2.f();
|
|
1250
|
-
return
|
|
1346
|
+
return _context22.finish(9);
|
|
1251
1347
|
case 10:
|
|
1252
|
-
return
|
|
1348
|
+
return _context22.abrupt("return", abort);
|
|
1253
1349
|
case 11:
|
|
1254
1350
|
case "end":
|
|
1255
|
-
return
|
|
1351
|
+
return _context22.stop();
|
|
1256
1352
|
}
|
|
1257
|
-
},
|
|
1353
|
+
}, _callee21, this, [[3, 8, 9, 10]]);
|
|
1258
1354
|
}));
|
|
1259
1355
|
function attemptRegistrationWithServers(_x11) {
|
|
1260
1356
|
return _attemptRegistrationWithServers.apply(this, arguments);
|
|
@@ -1269,28 +1365,28 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
1269
1365
|
}, {
|
|
1270
1366
|
key: "startKeepaliveTimer",
|
|
1271
1367
|
value: (function () {
|
|
1272
|
-
var _startKeepaliveTimer = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
1368
|
+
var _startKeepaliveTimer = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee24(url, interval, serverType) {
|
|
1273
1369
|
var _this9 = this;
|
|
1274
1370
|
var RETRY_COUNT_THRESHOLD;
|
|
1275
|
-
return _regenerator.default.wrap(function (
|
|
1276
|
-
while (1) switch (
|
|
1371
|
+
return _regenerator.default.wrap(function (_context25) {
|
|
1372
|
+
while (1) switch (_context25.prev = _context25.next) {
|
|
1277
1373
|
case 0:
|
|
1278
1374
|
this.clearKeepaliveTimer();
|
|
1279
1375
|
RETRY_COUNT_THRESHOLD = this.isCCFlow ? 4 : 5;
|
|
1280
|
-
|
|
1281
|
-
return this.mutex.runExclusive(/*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
1376
|
+
_context25.next = 1;
|
|
1377
|
+
return this.mutex.runExclusive(/*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee23() {
|
|
1282
1378
|
var accessToken, blob, blobUrl;
|
|
1283
|
-
return _regenerator.default.wrap(function (
|
|
1284
|
-
while (1) switch (
|
|
1379
|
+
return _regenerator.default.wrap(function (_context24) {
|
|
1380
|
+
while (1) switch (_context24.prev = _context24.next) {
|
|
1285
1381
|
case 0:
|
|
1286
1382
|
if (!_this9.isDeviceRegistered()) {
|
|
1287
|
-
|
|
1383
|
+
_context24.next = 2;
|
|
1288
1384
|
break;
|
|
1289
1385
|
}
|
|
1290
|
-
|
|
1386
|
+
_context24.next = 1;
|
|
1291
1387
|
return _this9.webex.credentials.getUserToken();
|
|
1292
1388
|
case 1:
|
|
1293
|
-
accessToken =
|
|
1389
|
+
accessToken = _context24.sent;
|
|
1294
1390
|
if (!_this9.webWorker) {
|
|
1295
1391
|
blob = new Blob([_webWorkerStr.default], {
|
|
1296
1392
|
type: 'application/javascript'
|
|
@@ -1307,10 +1403,10 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
1307
1403
|
url: url
|
|
1308
1404
|
});
|
|
1309
1405
|
_this9.webWorker.onmessage = /*#__PURE__*/function () {
|
|
1310
|
-
var _ref11 = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
1406
|
+
var _ref11 = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee22(event) {
|
|
1311
1407
|
var logContext, error, abort;
|
|
1312
|
-
return _regenerator.default.wrap(function (
|
|
1313
|
-
while (1) switch (
|
|
1408
|
+
return _regenerator.default.wrap(function (_context23) {
|
|
1409
|
+
while (1) switch (_context23.prev = _context23.next) {
|
|
1314
1410
|
case 0:
|
|
1315
1411
|
logContext = {
|
|
1316
1412
|
file: _constants2.REGISTRATION_FILE,
|
|
@@ -1321,12 +1417,12 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
1321
1417
|
_this9.lineEmitter(_types3.LINE_EVENTS.RECONNECTED);
|
|
1322
1418
|
}
|
|
1323
1419
|
if (!(event.data.type === _types2.WorkerMessageType.KEEPALIVE_FAILURE)) {
|
|
1324
|
-
|
|
1420
|
+
_context23.next = 7;
|
|
1325
1421
|
break;
|
|
1326
1422
|
}
|
|
1327
1423
|
error = event.data.err;
|
|
1328
1424
|
_Logger.default.warn("Keep-alive missed ".concat(event.data.keepAliveRetryCount, " times. Status -> ").concat(error.statusCode, " "), logContext);
|
|
1329
|
-
|
|
1425
|
+
_context23.next = 1;
|
|
1330
1426
|
return (0, _common.handleRegistrationErrors)(error, function (clientError, finalError) {
|
|
1331
1427
|
var _error$headers$tracki, _error$headers;
|
|
1332
1428
|
if (finalError) {
|
|
@@ -1340,9 +1436,9 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
1340
1436
|
return _this9.handle429Retry(retryAfter, retryCaller);
|
|
1341
1437
|
});
|
|
1342
1438
|
case 1:
|
|
1343
|
-
abort =
|
|
1439
|
+
abort = _context23.sent;
|
|
1344
1440
|
if (!(abort || event.data.keepAliveRetryCount >= RETRY_COUNT_THRESHOLD)) {
|
|
1345
|
-
|
|
1441
|
+
_context23.next = 6;
|
|
1346
1442
|
break;
|
|
1347
1443
|
}
|
|
1348
1444
|
_this9.failoverImmediately = _this9.isCCFlow;
|
|
@@ -1350,32 +1446,32 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
1350
1446
|
_this9.clearKeepaliveTimer();
|
|
1351
1447
|
_this9.clearFailbackTimer();
|
|
1352
1448
|
_this9.lineEmitter(_types3.LINE_EVENTS.UNREGISTERED);
|
|
1353
|
-
|
|
1449
|
+
_context23.next = 2;
|
|
1354
1450
|
return (0, _common.uploadLogs)();
|
|
1355
1451
|
case 2:
|
|
1356
1452
|
if (abort) {
|
|
1357
|
-
|
|
1453
|
+
_context23.next = 4;
|
|
1358
1454
|
break;
|
|
1359
1455
|
}
|
|
1360
|
-
|
|
1456
|
+
_context23.next = 3;
|
|
1361
1457
|
return _this9.reconnectOnFailure(_constants2.RECONNECT_ON_FAILURE_UTIL);
|
|
1362
1458
|
case 3:
|
|
1363
|
-
|
|
1459
|
+
_context23.next = 5;
|
|
1364
1460
|
break;
|
|
1365
1461
|
case 4:
|
|
1366
1462
|
if (error.statusCode === 404) {
|
|
1367
1463
|
_this9.handle404KeepaliveFailure(_constants2.KEEPALIVE_UTIL);
|
|
1368
1464
|
}
|
|
1369
1465
|
case 5:
|
|
1370
|
-
|
|
1466
|
+
_context23.next = 7;
|
|
1371
1467
|
break;
|
|
1372
1468
|
case 6:
|
|
1373
1469
|
_this9.lineEmitter(_types3.LINE_EVENTS.RECONNECTING);
|
|
1374
1470
|
case 7:
|
|
1375
1471
|
case "end":
|
|
1376
|
-
return
|
|
1472
|
+
return _context23.stop();
|
|
1377
1473
|
}
|
|
1378
|
-
},
|
|
1474
|
+
}, _callee22);
|
|
1379
1475
|
}));
|
|
1380
1476
|
return function (_x15) {
|
|
1381
1477
|
return _ref11.apply(this, arguments);
|
|
@@ -1384,15 +1480,15 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
1384
1480
|
}
|
|
1385
1481
|
case 2:
|
|
1386
1482
|
case "end":
|
|
1387
|
-
return
|
|
1483
|
+
return _context24.stop();
|
|
1388
1484
|
}
|
|
1389
|
-
},
|
|
1485
|
+
}, _callee23);
|
|
1390
1486
|
})));
|
|
1391
1487
|
case 1:
|
|
1392
1488
|
case "end":
|
|
1393
|
-
return
|
|
1489
|
+
return _context25.stop();
|
|
1394
1490
|
}
|
|
1395
|
-
},
|
|
1491
|
+
}, _callee24, this);
|
|
1396
1492
|
}));
|
|
1397
1493
|
function startKeepaliveTimer(_x12, _x13, _x14) {
|
|
1398
1494
|
return _startKeepaliveTimer.apply(this, arguments);
|
|
@@ -1422,36 +1518,37 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
1422
1518
|
}, {
|
|
1423
1519
|
key: "deregister",
|
|
1424
1520
|
value: function () {
|
|
1425
|
-
var _deregister = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
1426
|
-
var _this$deviceInfo$devi, _this$deviceInfo$devi2,
|
|
1427
|
-
return _regenerator.default.wrap(function (
|
|
1428
|
-
while (1) switch (
|
|
1521
|
+
var _deregister = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee25() {
|
|
1522
|
+
var _this$deviceInfo$devi, _this$deviceInfo$devi2, _t13;
|
|
1523
|
+
return _regenerator.default.wrap(function (_context26) {
|
|
1524
|
+
while (1) switch (_context26.prev = _context26.next) {
|
|
1429
1525
|
case 0:
|
|
1430
|
-
|
|
1431
|
-
|
|
1526
|
+
_context26.prev = 0;
|
|
1527
|
+
_context26.next = 1;
|
|
1432
1528
|
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);
|
|
1433
1529
|
case 1:
|
|
1434
1530
|
_Logger.default.log('Registration successfully deregistered', {
|
|
1435
1531
|
file: _constants2.REGISTRATION_FILE,
|
|
1436
1532
|
method: _constants2.METHODS.DEREGISTER
|
|
1437
1533
|
});
|
|
1438
|
-
|
|
1534
|
+
_context26.next = 3;
|
|
1439
1535
|
break;
|
|
1440
1536
|
case 2:
|
|
1441
|
-
|
|
1442
|
-
|
|
1443
|
-
_Logger.default.warn("Delete failed with Mobius: ".concat((0, _stringify.default)(
|
|
1537
|
+
_context26.prev = 2;
|
|
1538
|
+
_t13 = _context26["catch"](0);
|
|
1539
|
+
_Logger.default.warn("Delete failed with Mobius: ".concat((0, _stringify.default)(_t13)), {
|
|
1444
1540
|
file: _constants2.REGISTRATION_FILE,
|
|
1445
1541
|
method: _constants2.METHODS.DEREGISTER
|
|
1446
1542
|
});
|
|
1447
1543
|
case 3:
|
|
1448
1544
|
this.clearKeepaliveTimer();
|
|
1449
1545
|
this.setStatus(_types2.RegistrationStatus.INACTIVE);
|
|
1546
|
+
this.clearFailoverState();
|
|
1450
1547
|
case 4:
|
|
1451
1548
|
case "end":
|
|
1452
|
-
return
|
|
1549
|
+
return _context26.stop();
|
|
1453
1550
|
}
|
|
1454
|
-
},
|
|
1551
|
+
}, _callee25, this, [[0, 2]]);
|
|
1455
1552
|
}));
|
|
1456
1553
|
function deregister() {
|
|
1457
1554
|
return _deregister.apply(this, arguments);
|
|
@@ -1515,10 +1612,10 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
1515
1612
|
}, {
|
|
1516
1613
|
key: "reconnectOnFailure",
|
|
1517
1614
|
value: (function () {
|
|
1518
|
-
var _reconnectOnFailure = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
1615
|
+
var _reconnectOnFailure = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee26(caller) {
|
|
1519
1616
|
var abort;
|
|
1520
|
-
return _regenerator.default.wrap(function (
|
|
1521
|
-
while (1) switch (
|
|
1617
|
+
return _regenerator.default.wrap(function (_context27) {
|
|
1618
|
+
while (1) switch (_context27.prev = _context27.next) {
|
|
1522
1619
|
case 0:
|
|
1523
1620
|
_Logger.default.info(_constants.METHOD_START_MESSAGE, {
|
|
1524
1621
|
method: _constants2.METHODS.RECONNECT_ON_FAILURE,
|
|
@@ -1526,25 +1623,25 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
1526
1623
|
});
|
|
1527
1624
|
this.reconnectPending = false;
|
|
1528
1625
|
if (this.isDeviceRegistered()) {
|
|
1529
|
-
|
|
1626
|
+
_context27.next = 4;
|
|
1530
1627
|
break;
|
|
1531
1628
|
}
|
|
1532
1629
|
if (!((0, _keys.default)(this.callManager.getActiveCalls()).length === 0)) {
|
|
1533
|
-
|
|
1630
|
+
_context27.next = 3;
|
|
1534
1631
|
break;
|
|
1535
1632
|
}
|
|
1536
|
-
|
|
1633
|
+
_context27.next = 1;
|
|
1537
1634
|
return this.restorePreviousRegistration(caller);
|
|
1538
1635
|
case 1:
|
|
1539
|
-
abort =
|
|
1636
|
+
abort = _context27.sent;
|
|
1540
1637
|
if (!(!abort && !this.isDeviceRegistered())) {
|
|
1541
|
-
|
|
1638
|
+
_context27.next = 2;
|
|
1542
1639
|
break;
|
|
1543
1640
|
}
|
|
1544
|
-
|
|
1641
|
+
_context27.next = 2;
|
|
1545
1642
|
return this.restartRegistration(caller);
|
|
1546
1643
|
case 2:
|
|
1547
|
-
|
|
1644
|
+
_context27.next = 4;
|
|
1548
1645
|
break;
|
|
1549
1646
|
case 3:
|
|
1550
1647
|
this.reconnectPending = true;
|
|
@@ -1554,9 +1651,9 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
|
|
|
1554
1651
|
});
|
|
1555
1652
|
case 4:
|
|
1556
1653
|
case "end":
|
|
1557
|
-
return
|
|
1654
|
+
return _context27.stop();
|
|
1558
1655
|
}
|
|
1559
|
-
},
|
|
1656
|
+
}, _callee26, this);
|
|
1560
1657
|
}));
|
|
1561
1658
|
function reconnectOnFailure(_x16) {
|
|
1562
1659
|
return _reconnectOnFailure.apply(this, arguments);
|