@webex/calling 3.8.1-web-workers-keepalive.2 → 3.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/dist/CallSettings/WxCallBackendConnector.js +2 -2
  2. package/dist/CallSettings/WxCallBackendConnector.js.map +1 -1
  3. package/dist/CallSettings/WxCallBackendConnector.test.js +94 -27
  4. package/dist/CallSettings/WxCallBackendConnector.test.js.map +1 -1
  5. package/dist/CallSettings/types.js.map +1 -1
  6. package/dist/CallingClient/CallingClient.js +56 -21
  7. package/dist/CallingClient/CallingClient.js.map +1 -1
  8. package/dist/CallingClient/CallingClient.test.js +162 -98
  9. package/dist/CallingClient/CallingClient.test.js.map +1 -1
  10. package/dist/CallingClient/constants.js +3 -4
  11. package/dist/CallingClient/constants.js.map +1 -1
  12. package/dist/CallingClient/registration/register.js +278 -198
  13. package/dist/CallingClient/registration/register.js.map +1 -1
  14. package/dist/CallingClient/registration/register.test.js +168 -85
  15. package/dist/CallingClient/registration/register.test.js.map +1 -1
  16. package/dist/CallingClient/registration/types.js.map +1 -1
  17. package/dist/common/Utils.js +13 -7
  18. package/dist/common/Utils.js.map +1 -1
  19. package/dist/common/Utils.test.js +265 -119
  20. package/dist/common/Utils.test.js.map +1 -1
  21. package/dist/module/CallSettings/WxCallBackendConnector.js +1 -1
  22. package/dist/module/CallingClient/CallingClient.js +23 -8
  23. package/dist/module/CallingClient/constants.js +1 -2
  24. package/dist/module/CallingClient/registration/register.js +39 -6
  25. package/dist/module/common/Utils.js +8 -1
  26. package/dist/types/CallSettings/types.d.ts +1 -1
  27. package/dist/types/CallSettings/types.d.ts.map +1 -1
  28. package/dist/types/CallingClient/CallingClient.d.ts.map +1 -1
  29. package/dist/types/CallingClient/constants.d.ts +1 -2
  30. package/dist/types/CallingClient/constants.d.ts.map +1 -1
  31. package/dist/types/CallingClient/registration/register.d.ts +1 -0
  32. package/dist/types/CallingClient/registration/register.d.ts.map +1 -1
  33. package/dist/types/CallingClient/registration/types.d.ts.map +1 -1
  34. package/dist/types/common/Utils.d.ts.map +1 -1
  35. package/package.json +4 -5
@@ -357,7 +357,7 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
357
357
  method: _constants2.FAILOVER_UTIL
358
358
  };
359
359
  interval = this.getRegRetryInterval(attempt);
360
- TIMER_THRESHOLD = this.isCCFlow ? _constants2.REG_TRY_BACKUP_TIMER_VAL_FOR_CC_IN_SEC : _constants2.REG_TRY_BACKUP_TIMER_VAL_IN_SEC;
360
+ TIMER_THRESHOLD = _constants2.REG_TRY_BACKUP_TIMER_VAL_IN_SEC;
361
361
  if (timeElapsed + interval > TIMER_THRESHOLD) {
362
362
  excessVal = timeElapsed + interval - TIMER_THRESHOLD;
363
363
  interval -= excessVal;
@@ -494,7 +494,83 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
494
494
  this.failbackTimer = undefined;
495
495
  }
496
496
  }
497
-
497
+ }, {
498
+ key: "isPrimaryActive",
499
+ value: function () {
500
+ var _isPrimaryActive = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee10() {
501
+ var status, _iterator, _step, mobiusUrl, baseUri, response, _ref5, statusCode;
502
+ return _regenerator.default.wrap(function _callee10$(_context10) {
503
+ while (1) switch (_context10.prev = _context10.next) {
504
+ case 0:
505
+ _iterator = _createForOfIteratorHelper(this.primaryMobiusUris);
506
+ _context10.prev = 1;
507
+ _iterator.s();
508
+ case 3:
509
+ if ((_step = _iterator.n()).done) {
510
+ _context10.next = 23;
511
+ break;
512
+ }
513
+ mobiusUrl = _step.value;
514
+ _context10.prev = 5;
515
+ baseUri = mobiusUrl.replace(_constants2.URL_ENDPOINT, '/'); // eslint-disable-next-line no-await-in-loop
516
+ _context10.next = 9;
517
+ return this.webex.request({
518
+ uri: "".concat(baseUri, "ping"),
519
+ method: _types2.HTTP_METHODS.GET,
520
+ headers: (0, _defineProperty2.default)((0, _defineProperty2.default)({}, _constants2.CISCO_DEVICE_URL, this.webex.internal.device.url), _constants2.SPARK_USER_AGENT, _constants2.CALLING_USER_AGENT),
521
+ service: _types2.ALLOWED_SERVICES.MOBIUS
522
+ });
523
+ case 9:
524
+ response = _context10.sent;
525
+ _ref5 = response, statusCode = _ref5.statusCode;
526
+ if (!(statusCode === 200)) {
527
+ _context10.next = 15;
528
+ break;
529
+ }
530
+ _Logger.default.info("Ping successful for primary Mobius: ".concat(mobiusUrl), {
531
+ file: _constants2.REGISTRATION_FILE,
532
+ method: _constants2.FAILBACK_UTIL
533
+ });
534
+ status = 'up';
535
+ return _context10.abrupt("break", 23);
536
+ case 15:
537
+ _context10.next = 21;
538
+ break;
539
+ case 17:
540
+ _context10.prev = 17;
541
+ _context10.t0 = _context10["catch"](5);
542
+ _Logger.default.warn("Ping failed for primary Mobius: ".concat(mobiusUrl, " with error: ").concat(_context10.t0), {
543
+ file: _constants2.REGISTRATION_FILE,
544
+ method: _constants2.FAILBACK_UTIL
545
+ });
546
+ status = 'down';
547
+ case 21:
548
+ _context10.next = 3;
549
+ break;
550
+ case 23:
551
+ _context10.next = 28;
552
+ break;
553
+ case 25:
554
+ _context10.prev = 25;
555
+ _context10.t1 = _context10["catch"](1);
556
+ _iterator.e(_context10.t1);
557
+ case 28:
558
+ _context10.prev = 28;
559
+ _iterator.f();
560
+ return _context10.finish(28);
561
+ case 31:
562
+ return _context10.abrupt("return", status === 'up');
563
+ case 32:
564
+ case "end":
565
+ return _context10.stop();
566
+ }
567
+ }, _callee10, this, [[1, 25, 28, 31], [5, 17]]);
568
+ }));
569
+ function isPrimaryActive() {
570
+ return _isPrimaryActive.apply(this, arguments);
571
+ }
572
+ return isPrimaryActive;
573
+ }()
498
574
  /**
499
575
  * Returns true if device is registered with a backup mobius.
500
576
  */
@@ -541,16 +617,16 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
541
617
  key: "startFailbackTimer",
542
618
  value: function startFailbackTimer(intervalInSeconds) {
543
619
  var _this2 = this;
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) {
620
+ this.failbackTimer = setTimeout( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee11() {
621
+ return _regenerator.default.wrap(function _callee11$(_context11) {
622
+ while (1) switch (_context11.prev = _context11.next) {
547
623
  case 0:
548
- return _context10.abrupt("return", _this2.executeFailback());
624
+ return _context11.abrupt("return", _this2.executeFailback());
549
625
  case 1:
550
626
  case "end":
551
- return _context10.stop();
627
+ return _context11.stop();
552
628
  }
553
- }, _callee10);
629
+ }, _callee11);
554
630
  })), intervalInSeconds * _constants2.SEC_TO_MSEC_MFACTOR);
555
631
  _Logger.default.log("Failback scheduled after ".concat(intervalInSeconds, " seconds."), {
556
632
  file: _constants2.REGISTRATION_FILE,
@@ -565,86 +641,90 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
565
641
  }, {
566
642
  key: "executeFailback",
567
643
  value: (function () {
568
- var _executeFailback = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee12() {
644
+ var _executeFailback = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee13() {
569
645
  var _this3 = this;
570
- return _regenerator.default.wrap(function _callee12$(_context12) {
571
- while (1) switch (_context12.prev = _context12.next) {
646
+ return _regenerator.default.wrap(function _callee13$(_context13) {
647
+ while (1) switch (_context13.prev = _context13.next) {
572
648
  case 0:
573
- _context12.next = 2;
574
- return this.mutex.runExclusive( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee11() {
575
- var abort, abortNew;
576
- return _regenerator.default.wrap(function _callee11$(_context11) {
577
- while (1) switch (_context11.prev = _context11.next) {
649
+ _context13.next = 2;
650
+ return this.mutex.runExclusive( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee12() {
651
+ var primaryServerStatus, abort, abortNew;
652
+ return _regenerator.default.wrap(function _callee12$(_context12) {
653
+ while (1) switch (_context12.prev = _context12.next) {
578
654
  case 0:
579
655
  if (!_this3.isFailbackRequired()) {
580
- _context11.next = 28;
656
+ _context12.next = 31;
581
657
  break;
582
658
  }
583
- if (!((0, _keys.default)(_this3.callManager.getActiveCalls()).length === 0)) {
584
- _context11.next = 25;
659
+ _context12.next = 3;
660
+ return _this3.isPrimaryActive();
661
+ case 3:
662
+ primaryServerStatus = _context12.sent;
663
+ if (!((0, _keys.default)(_this3.callManager.getActiveCalls()).length === 0 && primaryServerStatus)) {
664
+ _context12.next = 28;
585
665
  break;
586
666
  }
587
667
  _Logger.default.info("Attempting failback to primary.", {
588
668
  file: _constants2.REGISTRATION_FILE,
589
669
  method: _this3.executeFailback.name
590
670
  });
591
- _context11.next = 5;
671
+ _context12.next = 8;
592
672
  return _this3.deregister();
593
- case 5:
594
- _context11.next = 7;
673
+ case 8:
674
+ _context12.next = 10;
595
675
  return _this3.attemptRegistrationWithServers(_constants2.FAILBACK_UTIL);
596
- case 7:
597
- abort = _context11.sent;
676
+ case 10:
677
+ abort = _context12.sent;
598
678
  if (!(_this3.scheduled429Retry || abort || _this3.isDeviceRegistered())) {
599
- _context11.next = 10;
679
+ _context12.next = 13;
600
680
  break;
601
681
  }
602
- return _context11.abrupt("return");
603
- case 10:
604
- _context11.next = 12;
682
+ return _context12.abrupt("return");
683
+ case 13:
684
+ _context12.next = 15;
605
685
  return _this3.restorePreviousRegistration(_constants2.FAILBACK_UTIL);
606
- case 12:
607
- abortNew = _context11.sent;
686
+ case 15:
687
+ abortNew = _context12.sent;
608
688
  if (!abortNew) {
609
- _context11.next = 16;
689
+ _context12.next = 19;
610
690
  break;
611
691
  }
612
692
  _this3.clearFailbackTimer();
613
- return _context11.abrupt("return");
614
- case 16:
693
+ return _context12.abrupt("return");
694
+ case 19:
615
695
  if (_this3.isDeviceRegistered()) {
616
- _context11.next = 21;
696
+ _context12.next = 24;
617
697
  break;
618
698
  }
619
- _context11.next = 19;
699
+ _context12.next = 22;
620
700
  return _this3.restartRegistration(_this3.executeFailback.name);
621
- case 19:
622
- _context11.next = 23;
701
+ case 22:
702
+ _context12.next = 26;
623
703
  break;
624
- case 21:
704
+ case 24:
625
705
  _this3.failbackTimer = undefined;
626
706
  _this3.initiateFailback();
627
- case 23:
628
- _context11.next = 28;
707
+ case 26:
708
+ _context12.next = 31;
629
709
  break;
630
- case 25:
631
- _Logger.default.info('Active calls present, deferring failback to next cycle.', {
710
+ case 28:
711
+ _Logger.default.info('Active calls present or primary Mobius is down, deferring failback to next cycle.', {
632
712
  file: _constants2.REGISTRATION_FILE,
633
713
  method: _this3.executeFailback.name
634
714
  });
635
715
  _this3.failbackTimer = undefined;
636
716
  _this3.initiateFailback();
637
- case 28:
717
+ case 31:
638
718
  case "end":
639
- return _context11.stop();
719
+ return _context12.stop();
640
720
  }
641
- }, _callee11);
721
+ }, _callee12);
642
722
  })));
643
723
  case 2:
644
724
  case "end":
645
- return _context12.stop();
725
+ return _context13.stop();
646
726
  }
647
- }, _callee12, this);
727
+ }, _callee13, this);
648
728
  }));
649
729
  function executeFailback() {
650
730
  return _executeFailback.apply(this, arguments);
@@ -707,10 +787,10 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
707
787
  }, {
708
788
  key: "restartRegistration",
709
789
  value: (function () {
710
- var _restartRegistration = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee13(caller) {
790
+ var _restartRegistration = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee14(caller) {
711
791
  var abort;
712
- return _regenerator.default.wrap(function _callee13$(_context13) {
713
- while (1) switch (_context13.prev = _context13.next) {
792
+ return _regenerator.default.wrap(function _callee14$(_context14) {
793
+ while (1) switch (_context14.prev = _context14.next) {
714
794
  case 0:
715
795
  /*
716
796
  * Cancel any failback timer running
@@ -718,21 +798,21 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
718
798
  */
719
799
  this.clearFailbackTimer();
720
800
  this.failback429RetryAttempts = 0;
721
- _context13.next = 4;
801
+ _context14.next = 4;
722
802
  return this.attemptRegistrationWithServers(caller, this.primaryMobiusUris);
723
803
  case 4:
724
- abort = _context13.sent;
804
+ abort = _context14.sent;
725
805
  if (!(!abort && !this.isDeviceRegistered())) {
726
- _context13.next = 8;
806
+ _context14.next = 8;
727
807
  break;
728
808
  }
729
- _context13.next = 8;
809
+ _context14.next = 8;
730
810
  return this.startFailoverTimer();
731
811
  case 8:
732
812
  case "end":
733
- return _context13.stop();
813
+ return _context14.stop();
734
814
  }
735
- }, _callee13, this);
815
+ }, _callee14, this);
736
816
  }));
737
817
  function restartRegistration(_x8) {
738
818
  return _restartRegistration.apply(this, arguments);
@@ -748,23 +828,23 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
748
828
  }, {
749
829
  key: "handleConnectionRestoration",
750
830
  value: (function () {
751
- var _handleConnectionRestoration = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee15(retry) {
831
+ var _handleConnectionRestoration = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee16(retry) {
752
832
  var _this4 = this;
753
- return _regenerator.default.wrap(function _callee15$(_context15) {
754
- while (1) switch (_context15.prev = _context15.next) {
833
+ return _regenerator.default.wrap(function _callee16$(_context16) {
834
+ while (1) switch (_context16.prev = _context16.next) {
755
835
  case 0:
756
836
  _Logger.default.info(_constants.METHOD_START_MESSAGE, {
757
837
  method: _constants2.METHODS.HANDLE_CONNECTION_RESTORATION,
758
838
  file: _constants2.REGISTRATION_FILE
759
839
  });
760
- _context15.next = 3;
761
- return this.mutex.runExclusive( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee14() {
840
+ _context16.next = 3;
841
+ return this.mutex.runExclusive( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee15() {
762
842
  var abort;
763
- return _regenerator.default.wrap(function _callee14$(_context14) {
764
- while (1) switch (_context14.prev = _context14.next) {
843
+ return _regenerator.default.wrap(function _callee15$(_context15) {
844
+ while (1) switch (_context15.prev = _context15.next) {
765
845
  case 0:
766
846
  if (!retry) {
767
- _context14.next = 14;
847
+ _context15.next = 14;
768
848
  break;
769
849
  }
770
850
  _Logger.default.log('Mercury connection is up again, re-registering with Webex Calling if needed', {
@@ -773,41 +853,41 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
773
853
  });
774
854
  _this4.clearKeepaliveTimer();
775
855
  if (!_this4.isDeviceRegistered()) {
776
- _context14.next = 6;
856
+ _context15.next = 6;
777
857
  break;
778
858
  }
779
- _context14.next = 6;
859
+ _context15.next = 6;
780
860
  return _this4.deregister();
781
861
  case 6:
782
862
  if (!_this4.activeMobiusUrl) {
783
- _context14.next = 13;
863
+ _context15.next = 13;
784
864
  break;
785
865
  }
786
- _context14.next = 9;
866
+ _context15.next = 9;
787
867
  return _this4.restorePreviousRegistration(_this4.handleConnectionRestoration.name);
788
868
  case 9:
789
- abort = _context14.sent;
869
+ abort = _context15.sent;
790
870
  if (!(!abort && !_this4.isDeviceRegistered())) {
791
- _context14.next = 13;
871
+ _context15.next = 13;
792
872
  break;
793
873
  }
794
- _context14.next = 13;
874
+ _context15.next = 13;
795
875
  return _this4.restartRegistration(_this4.handleConnectionRestoration.name);
796
876
  case 13:
797
877
  retry = false;
798
878
  case 14:
799
879
  case "end":
800
- return _context14.stop();
880
+ return _context15.stop();
801
881
  }
802
- }, _callee14);
882
+ }, _callee15);
803
883
  })));
804
884
  case 3:
805
- return _context15.abrupt("return", retry);
885
+ return _context16.abrupt("return", retry);
806
886
  case 4:
807
887
  case "end":
808
- return _context15.stop();
888
+ return _context16.stop();
809
889
  }
810
- }, _callee15, this);
890
+ }, _callee16, this);
811
891
  }));
812
892
  function handleConnectionRestoration(_x9) {
813
893
  return _handleConnectionRestoration.apply(this, arguments);
@@ -825,54 +905,54 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
825
905
  value: function restoreRegistrationCallBack() {
826
906
  var _this5 = this;
827
907
  return /*#__PURE__*/function () {
828
- var _ref8 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee16(restoreData, caller) {
908
+ var _ref9 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee17(restoreData, caller) {
829
909
  var logContext, restore, finalError;
830
- return _regenerator.default.wrap(function _callee16$(_context16) {
831
- while (1) switch (_context16.prev = _context16.next) {
910
+ return _regenerator.default.wrap(function _callee17$(_context17) {
911
+ while (1) switch (_context17.prev = _context17.next) {
832
912
  case 0:
833
913
  logContext = {
834
914
  file: _constants2.REGISTRATION_FILE,
835
915
  method: caller
836
916
  };
837
917
  if (_this5.isRegRetry()) {
838
- _context16.next = 17;
918
+ _context17.next = 17;
839
919
  break;
840
920
  }
841
921
  _Logger.default.info('Registration restoration in progress.', logContext);
842
922
  restore = _this5.getExistingDevice(restoreData);
843
923
  if (!restore) {
844
- _context16.next = 14;
924
+ _context17.next = 14;
845
925
  break;
846
926
  }
847
927
  _this5.setRegRetry(true);
848
- _context16.next = 8;
928
+ _context17.next = 8;
849
929
  return _this5.deregister();
850
930
  case 8:
851
- _context16.next = 10;
931
+ _context17.next = 10;
852
932
  return _this5.restorePreviousRegistration(caller);
853
933
  case 10:
854
- finalError = _context16.sent;
934
+ finalError = _context17.sent;
855
935
  _this5.setRegRetry(false);
856
936
  if (_this5.isDeviceRegistered()) {
857
937
  _Logger.default.info('Registration restored successfully.', logContext);
858
938
  }
859
- return _context16.abrupt("return", finalError);
939
+ return _context17.abrupt("return", finalError);
860
940
  case 14:
861
941
  _this5.lineEmitter(_types3.LINE_EVENTS.UNREGISTERED);
862
- _context16.next = 18;
942
+ _context17.next = 18;
863
943
  break;
864
944
  case 17:
865
945
  _this5.lineEmitter(_types3.LINE_EVENTS.UNREGISTERED);
866
946
  case 18:
867
- return _context16.abrupt("return", false);
947
+ return _context17.abrupt("return", false);
868
948
  case 19:
869
949
  case "end":
870
- return _context16.stop();
950
+ return _context17.stop();
871
951
  }
872
- }, _callee16);
952
+ }, _callee17);
873
953
  }));
874
954
  return function (_x10, _x11) {
875
- return _ref8.apply(this, arguments);
955
+ return _ref9.apply(this, arguments);
876
956
  };
877
957
  }();
878
958
  }
@@ -884,30 +964,30 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
884
964
  }, {
885
965
  key: "triggerRegistration",
886
966
  value: (function () {
887
- var _triggerRegistration = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee17() {
967
+ var _triggerRegistration = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee18() {
888
968
  var abort;
889
- return _regenerator.default.wrap(function _callee17$(_context17) {
890
- while (1) switch (_context17.prev = _context17.next) {
969
+ return _regenerator.default.wrap(function _callee18$(_context18) {
970
+ while (1) switch (_context18.prev = _context18.next) {
891
971
  case 0:
892
972
  if (!(this.primaryMobiusUris.length > 0)) {
893
- _context17.next = 7;
973
+ _context18.next = 7;
894
974
  break;
895
975
  }
896
- _context17.next = 3;
976
+ _context18.next = 3;
897
977
  return this.attemptRegistrationWithServers(_constants2.REGISTRATION_UTIL, this.primaryMobiusUris);
898
978
  case 3:
899
- abort = _context17.sent;
979
+ abort = _context18.sent;
900
980
  if (!(!this.isDeviceRegistered() && !abort)) {
901
- _context17.next = 7;
981
+ _context18.next = 7;
902
982
  break;
903
983
  }
904
- _context17.next = 7;
984
+ _context18.next = 7;
905
985
  return this.startFailoverTimer();
906
986
  case 7:
907
987
  case "end":
908
- return _context17.stop();
988
+ return _context18.stop();
909
989
  }
910
- }, _callee17, this);
990
+ }, _callee18, this);
911
991
  }));
912
992
  function triggerRegistration() {
913
993
  return _triggerRegistration.apply(this, arguments);
@@ -926,48 +1006,48 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
926
1006
  }, {
927
1007
  key: "attemptRegistrationWithServers",
928
1008
  value: (function () {
929
- var _attemptRegistrationWithServers = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee18(caller) {
1009
+ var _attemptRegistrationWithServers = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee19(caller) {
930
1010
  var _this6 = this;
931
1011
  var servers,
932
1012
  abort,
933
- _iterator,
934
- _step,
1013
+ _iterator2,
1014
+ _step2,
935
1015
  _loop,
936
1016
  _ret,
937
- _args19 = arguments;
938
- return _regenerator.default.wrap(function _callee18$(_context19) {
939
- while (1) switch (_context19.prev = _context19.next) {
1017
+ _args20 = arguments;
1018
+ return _regenerator.default.wrap(function _callee19$(_context20) {
1019
+ while (1) switch (_context20.prev = _context20.next) {
940
1020
  case 0:
941
- servers = _args19.length > 1 && _args19[1] !== undefined ? _args19[1] : this.primaryMobiusUris;
1021
+ servers = _args20.length > 1 && _args20[1] !== undefined ? _args20[1] : this.primaryMobiusUris;
942
1022
  abort = false;
943
1023
  this.retryAfter = undefined;
944
1024
  if (!this.failoverImmediately) {
945
- _context19.next = 5;
1025
+ _context20.next = 5;
946
1026
  break;
947
1027
  }
948
- return _context19.abrupt("return", abort);
1028
+ return _context20.abrupt("return", abort);
949
1029
  case 5:
950
1030
  if (!this.isDeviceRegistered()) {
951
- _context19.next = 8;
1031
+ _context20.next = 8;
952
1032
  break;
953
1033
  }
954
1034
  _Logger.default.info("[".concat(caller, "] : Device already registered with : ").concat(this.activeMobiusUrl), {
955
1035
  file: _constants2.REGISTRATION_FILE,
956
1036
  method: _constants2.REGISTER_UTIL
957
1037
  });
958
- return _context19.abrupt("return", abort);
1038
+ return _context20.abrupt("return", abort);
959
1039
  case 8:
960
- _iterator = _createForOfIteratorHelper(servers);
961
- _context19.prev = 9;
1040
+ _iterator2 = _createForOfIteratorHelper(servers);
1041
+ _context20.prev = 9;
962
1042
  _loop = /*#__PURE__*/_regenerator.default.mark(function _loop() {
963
1043
  var _this6$backupMobiusUr;
964
1044
  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) {
1045
+ return _regenerator.default.wrap(function _loop$(_context19) {
1046
+ while (1) switch (_context19.prev = _context19.next) {
967
1047
  case 0:
968
- url = _step.value;
1048
+ url = _step2.value;
969
1049
  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;
1050
+ _context19.prev = 2;
971
1051
  abort = false;
972
1052
  _this6.registrationStatus = _types2.RegistrationStatus.INACTIVE;
973
1053
  _this6.lineEmitter(_types3.LINE_EVENTS.CONNECTING);
@@ -976,10 +1056,10 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
976
1056
  method: _constants2.REGISTER_UTIL
977
1057
  });
978
1058
  // eslint-disable-next-line no-await-in-loop
979
- _context18.next = 9;
1059
+ _context19.next = 9;
980
1060
  return _this6.postRegistration(url);
981
1061
  case 9:
982
- resp = _context18.sent;
1062
+ resp = _context19.sent;
983
1063
  _this6.deviceInfo = resp.body;
984
1064
  _this6.registrationStatus = _types2.RegistrationStatus.ACTIVE;
985
1065
  _this6.lineEmitter(_types3.LINE_EVENTS.REGISTERED, resp.body);
@@ -993,12 +1073,12 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
993
1073
  _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
1074
  _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
1075
  _this6.initiateFailback();
996
- return _context18.abrupt("return", 0);
1076
+ return _context19.abrupt("return", 0);
997
1077
  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;
1078
+ _context19.prev = 23;
1079
+ _context19.t0 = _context19["catch"](2);
1080
+ body = _context19.t0; // eslint-disable-next-line no-await-in-loop, @typescript-eslint/no-unused-vars
1081
+ _context19.next = 28;
1002
1082
  return (0, _common.handleRegistrationErrors)(body, function (clientError, finalError) {
1003
1083
  var _body$headers$trackin, _body$headers;
1004
1084
  if (finalError) {
@@ -1014,64 +1094,64 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
1014
1094
  return _this6.handle429Retry(retryAfter, retryCaller);
1015
1095
  }, _this6.restoreRegistrationCallBack());
1016
1096
  case 28:
1017
- abort = _context18.sent;
1097
+ abort = _context19.sent;
1018
1098
  if (!(_this6.registrationStatus === _types2.RegistrationStatus.ACTIVE)) {
1019
- _context18.next = 32;
1099
+ _context19.next = 32;
1020
1100
  break;
1021
1101
  }
1022
1102
  _Logger.default.info("[".concat(caller, "] : Device is already restored, active mobius url: ").concat(_this6.activeMobiusUrl), {
1023
1103
  file: _constants2.REGISTRATION_FILE,
1024
1104
  method: _this6.attemptRegistrationWithServers.name
1025
1105
  });
1026
- return _context18.abrupt("return", 0);
1106
+ return _context19.abrupt("return", 0);
1027
1107
  case 32:
1028
1108
  if (!abort) {
1029
- _context18.next = 35;
1109
+ _context19.next = 35;
1030
1110
  break;
1031
1111
  }
1032
1112
  _this6.setStatus(_types2.RegistrationStatus.INACTIVE);
1033
- return _context18.abrupt("return", 0);
1113
+ return _context19.abrupt("return", 0);
1034
1114
  case 35:
1035
1115
  case "end":
1036
- return _context18.stop();
1116
+ return _context19.stop();
1037
1117
  }
1038
1118
  }, _loop, null, [[2, 23]]);
1039
1119
  });
1040
- _iterator.s();
1120
+ _iterator2.s();
1041
1121
  case 12:
1042
- if ((_step = _iterator.n()).done) {
1043
- _context19.next = 19;
1122
+ if ((_step2 = _iterator2.n()).done) {
1123
+ _context20.next = 19;
1044
1124
  break;
1045
1125
  }
1046
- return _context19.delegateYield(_loop(), "t0", 14);
1126
+ return _context20.delegateYield(_loop(), "t0", 14);
1047
1127
  case 14:
1048
- _ret = _context19.t0;
1128
+ _ret = _context20.t0;
1049
1129
  if (!(_ret === 0)) {
1050
- _context19.next = 17;
1130
+ _context20.next = 17;
1051
1131
  break;
1052
1132
  }
1053
- return _context19.abrupt("break", 19);
1133
+ return _context20.abrupt("break", 19);
1054
1134
  case 17:
1055
- _context19.next = 12;
1135
+ _context20.next = 12;
1056
1136
  break;
1057
1137
  case 19:
1058
- _context19.next = 24;
1138
+ _context20.next = 24;
1059
1139
  break;
1060
1140
  case 21:
1061
- _context19.prev = 21;
1062
- _context19.t1 = _context19["catch"](9);
1063
- _iterator.e(_context19.t1);
1141
+ _context20.prev = 21;
1142
+ _context20.t1 = _context20["catch"](9);
1143
+ _iterator2.e(_context20.t1);
1064
1144
  case 24:
1065
- _context19.prev = 24;
1066
- _iterator.f();
1067
- return _context19.finish(24);
1145
+ _context20.prev = 24;
1146
+ _iterator2.f();
1147
+ return _context20.finish(24);
1068
1148
  case 27:
1069
- return _context19.abrupt("return", abort);
1149
+ return _context20.abrupt("return", abort);
1070
1150
  case 28:
1071
1151
  case "end":
1072
- return _context19.stop();
1152
+ return _context20.stop();
1073
1153
  }
1074
- }, _callee18, this, [[9, 21, 24, 27]]);
1154
+ }, _callee19, this, [[9, 21, 24, 27]]);
1075
1155
  }));
1076
1156
  function attemptRegistrationWithServers(_x12) {
1077
1157
  return _attemptRegistrationWithServers.apply(this, arguments);
@@ -1086,28 +1166,28 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
1086
1166
  }, {
1087
1167
  key: "startKeepaliveTimer",
1088
1168
  value: (function () {
1089
- var _startKeepaliveTimer = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee21(url, interval, serverType) {
1169
+ var _startKeepaliveTimer = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee22(url, interval, serverType) {
1090
1170
  var _this7 = this;
1091
1171
  var RETRY_COUNT_THRESHOLD;
1092
- return _regenerator.default.wrap(function _callee21$(_context22) {
1093
- while (1) switch (_context22.prev = _context22.next) {
1172
+ return _regenerator.default.wrap(function _callee22$(_context23) {
1173
+ while (1) switch (_context23.prev = _context23.next) {
1094
1174
  case 0:
1095
1175
  this.clearKeepaliveTimer();
1096
1176
  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() {
1177
+ _context23.next = 4;
1178
+ return this.mutex.runExclusive( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee21() {
1099
1179
  var accessToken, blob, blobUrl;
1100
- return _regenerator.default.wrap(function _callee20$(_context21) {
1101
- while (1) switch (_context21.prev = _context21.next) {
1180
+ return _regenerator.default.wrap(function _callee21$(_context22) {
1181
+ while (1) switch (_context22.prev = _context22.next) {
1102
1182
  case 0:
1103
1183
  if (!_this7.isDeviceRegistered()) {
1104
- _context21.next = 5;
1184
+ _context22.next = 5;
1105
1185
  break;
1106
1186
  }
1107
- _context21.next = 3;
1187
+ _context22.next = 3;
1108
1188
  return _this7.webex.credentials.getUserToken();
1109
1189
  case 3:
1110
- accessToken = _context21.sent;
1190
+ accessToken = _context22.sent;
1111
1191
  if (!_this7.webWorker) {
1112
1192
  blob = new Blob([_webWorkerStr.default], {
1113
1193
  type: 'application/javascript'
@@ -1124,10 +1204,10 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
1124
1204
  url: url
1125
1205
  });
1126
1206
  _this7.webWorker.onmessage = /*#__PURE__*/function () {
1127
- var _ref10 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee19(event) {
1207
+ var _ref11 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee20(event) {
1128
1208
  var logContext, error, abort;
1129
- return _regenerator.default.wrap(function _callee19$(_context20) {
1130
- while (1) switch (_context20.prev = _context20.next) {
1209
+ return _regenerator.default.wrap(function _callee20$(_context21) {
1210
+ while (1) switch (_context21.prev = _context21.next) {
1131
1211
  case 0:
1132
1212
  logContext = {
1133
1213
  file: _constants2.REGISTRATION_FILE,
@@ -1138,12 +1218,12 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
1138
1218
  _this7.lineEmitter(_types3.LINE_EVENTS.RECONNECTED);
1139
1219
  }
1140
1220
  if (!(event.data.type === _types2.WorkerMessageType.KEEPALIVE_FAILURE)) {
1141
- _context20.next = 20;
1221
+ _context21.next = 20;
1142
1222
  break;
1143
1223
  }
1144
1224
  error = event.data.err;
1145
1225
  _Logger.default.warn("Keep-alive missed ".concat(event.data.keepAliveRetryCount, " times. Status -> ").concat(error.statusCode, " "), logContext);
1146
- _context20.next = 7;
1226
+ _context21.next = 7;
1147
1227
  return (0, _common.handleRegistrationErrors)(error, function (clientError, finalError) {
1148
1228
  var _error$headers$tracki, _error$headers;
1149
1229
  if (finalError) {
@@ -1155,9 +1235,9 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
1155
1235
  file: _constants2.REGISTRATION_FILE
1156
1236
  });
1157
1237
  case 7:
1158
- abort = _context20.sent;
1238
+ abort = _context21.sent;
1159
1239
  if (!(abort || event.data.keepAliveRetryCount >= RETRY_COUNT_THRESHOLD)) {
1160
- _context20.next = 19;
1240
+ _context21.next = 19;
1161
1241
  break;
1162
1242
  }
1163
1243
  _this7.failoverImmediately = _this7.isCCFlow;
@@ -1166,38 +1246,38 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
1166
1246
  _this7.clearFailbackTimer();
1167
1247
  _this7.lineEmitter(_types3.LINE_EVENTS.UNREGISTERED);
1168
1248
  if (abort) {
1169
- _context20.next = 17;
1249
+ _context21.next = 17;
1170
1250
  break;
1171
1251
  }
1172
- _context20.next = 17;
1252
+ _context21.next = 17;
1173
1253
  return _this7.reconnectOnFailure(_constants2.KEEPALIVE_UTIL);
1174
1254
  case 17:
1175
- _context20.next = 20;
1255
+ _context21.next = 20;
1176
1256
  break;
1177
1257
  case 19:
1178
1258
  _this7.lineEmitter(_types3.LINE_EVENTS.RECONNECTING);
1179
1259
  case 20:
1180
1260
  case "end":
1181
- return _context20.stop();
1261
+ return _context21.stop();
1182
1262
  }
1183
- }, _callee19);
1263
+ }, _callee20);
1184
1264
  }));
1185
1265
  return function (_x16) {
1186
- return _ref10.apply(this, arguments);
1266
+ return _ref11.apply(this, arguments);
1187
1267
  };
1188
1268
  }();
1189
1269
  }
1190
1270
  case 5:
1191
1271
  case "end":
1192
- return _context21.stop();
1272
+ return _context22.stop();
1193
1273
  }
1194
- }, _callee20);
1274
+ }, _callee21);
1195
1275
  })));
1196
1276
  case 4:
1197
1277
  case "end":
1198
- return _context22.stop();
1278
+ return _context23.stop();
1199
1279
  }
1200
- }, _callee21, this);
1280
+ }, _callee22, this);
1201
1281
  }));
1202
1282
  function startKeepaliveTimer(_x13, _x14, _x15) {
1203
1283
  return _startKeepaliveTimer.apply(this, arguments);
@@ -1227,25 +1307,25 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
1227
1307
  }, {
1228
1308
  key: "deregister",
1229
1309
  value: function () {
1230
- var _deregister = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee22() {
1310
+ var _deregister = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee23() {
1231
1311
  var _this$deviceInfo$devi, _this$deviceInfo$devi2;
1232
- return _regenerator.default.wrap(function _callee22$(_context23) {
1233
- while (1) switch (_context23.prev = _context23.next) {
1312
+ return _regenerator.default.wrap(function _callee23$(_context24) {
1313
+ while (1) switch (_context24.prev = _context24.next) {
1234
1314
  case 0:
1235
- _context23.prev = 0;
1236
- _context23.next = 3;
1315
+ _context24.prev = 0;
1316
+ _context24.next = 3;
1237
1317
  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);
1238
1318
  case 3:
1239
1319
  _Logger.default.log('Registration successfully deregistered', {
1240
1320
  file: _constants2.REGISTRATION_FILE,
1241
1321
  method: _constants2.METHODS.DEREGISTER
1242
1322
  });
1243
- _context23.next = 9;
1323
+ _context24.next = 9;
1244
1324
  break;
1245
1325
  case 6:
1246
- _context23.prev = 6;
1247
- _context23.t0 = _context23["catch"](0);
1248
- _Logger.default.warn("Delete failed with Mobius: ".concat(_context23.t0), {
1326
+ _context24.prev = 6;
1327
+ _context24.t0 = _context24["catch"](0);
1328
+ _Logger.default.warn("Delete failed with Mobius: ".concat(_context24.t0), {
1249
1329
  file: _constants2.REGISTRATION_FILE,
1250
1330
  method: _constants2.METHODS.DEREGISTER
1251
1331
  });
@@ -1254,9 +1334,9 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
1254
1334
  this.setStatus(_types2.RegistrationStatus.INACTIVE);
1255
1335
  case 11:
1256
1336
  case "end":
1257
- return _context23.stop();
1337
+ return _context24.stop();
1258
1338
  }
1259
- }, _callee22, this, [[0, 6]]);
1339
+ }, _callee23, this, [[0, 6]]);
1260
1340
  }));
1261
1341
  function deregister() {
1262
1342
  return _deregister.apply(this, arguments);
@@ -1320,10 +1400,10 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
1320
1400
  }, {
1321
1401
  key: "reconnectOnFailure",
1322
1402
  value: (function () {
1323
- var _reconnectOnFailure = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee23(caller) {
1403
+ var _reconnectOnFailure = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee24(caller) {
1324
1404
  var abort;
1325
- return _regenerator.default.wrap(function _callee23$(_context24) {
1326
- while (1) switch (_context24.prev = _context24.next) {
1405
+ return _regenerator.default.wrap(function _callee24$(_context25) {
1406
+ while (1) switch (_context25.prev = _context25.next) {
1327
1407
  case 0:
1328
1408
  _Logger.default.info(_constants.METHOD_START_MESSAGE, {
1329
1409
  method: _constants2.METHODS.RECONNECT_ON_FAILURE,
@@ -1331,25 +1411,25 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
1331
1411
  });
1332
1412
  this.reconnectPending = false;
1333
1413
  if (this.isDeviceRegistered()) {
1334
- _context24.next = 14;
1414
+ _context25.next = 14;
1335
1415
  break;
1336
1416
  }
1337
1417
  if (!((0, _keys.default)(this.callManager.getActiveCalls()).length === 0)) {
1338
- _context24.next = 12;
1418
+ _context25.next = 12;
1339
1419
  break;
1340
1420
  }
1341
- _context24.next = 6;
1421
+ _context25.next = 6;
1342
1422
  return this.restorePreviousRegistration(caller);
1343
1423
  case 6:
1344
- abort = _context24.sent;
1424
+ abort = _context25.sent;
1345
1425
  if (!(!abort && !this.isDeviceRegistered())) {
1346
- _context24.next = 10;
1426
+ _context25.next = 10;
1347
1427
  break;
1348
1428
  }
1349
- _context24.next = 10;
1429
+ _context25.next = 10;
1350
1430
  return this.restartRegistration(caller);
1351
1431
  case 10:
1352
- _context24.next = 14;
1432
+ _context25.next = 14;
1353
1433
  break;
1354
1434
  case 12:
1355
1435
  this.reconnectPending = true;
@@ -1359,9 +1439,9 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
1359
1439
  });
1360
1440
  case 14:
1361
1441
  case "end":
1362
- return _context24.stop();
1442
+ return _context25.stop();
1363
1443
  }
1364
- }, _callee23, this);
1444
+ }, _callee24, this);
1365
1445
  }));
1366
1446
  function reconnectOnFailure(_x17) {
1367
1447
  return _reconnectOnFailure.apply(this, arguments);