diff options
| author | Pliable Pixels <pliablepixels@gmail.com> | 2017-12-27 15:36:28 -0500 |
|---|---|---|
| committer | Pliable Pixels <pliablepixels@gmail.com> | 2017-12-27 15:36:28 -0500 |
| commit | 60fe1f991d780dfe68f0072891e061da548667ba (patch) | |
| tree | 8d6fb9dd286ed66e763256fbac171f1bef43d6de /www/js | |
| parent | 1af01a05ee5692f0af13e815acf171215cf869b7 (diff) | |
#579 - implemented simple linear timer of 10 seconds
Diffstat (limited to 'www/js')
| -rw-r--r-- | www/js/EventServer.js | 50 |
1 files changed, 36 insertions, 14 deletions
diff --git a/www/js/EventServer.js b/www/js/EventServer.js index 45bca98b..d4aa6374 100644 --- a/www/js/EventServer.js +++ b/www/js/EventServer.js @@ -18,6 +18,7 @@ angular.module('zmApp.controllers') var localNotificationId = 0; var firstError = true; var pushInited = false; + var isTimerOn = false; //-------------------------------------------------------------------------- // called when the websocket is opened @@ -91,6 +92,9 @@ angular.module('zmApp.controllers') $rootScope.isAlarm = 0; $rootScope.alarmCount = "0"; + isTimerOn = false; + + var d = $q.defer(); var loginData = NVRDataModel.getLogin(); @@ -109,7 +113,7 @@ angular.module('zmApp.controllers') if (typeof ws !== 'undefined') { - NVRDataModel.debug("Event server already initialized"); + NVRDataModel.debug("websocket already initialized ?!?"); d.resolve("true"); return d.promise; } @@ -137,21 +141,30 @@ angular.module('zmApp.controllers') // we don't need this check as I changed reconnect interval to 60s //if ((Date.now() - lastEventServerCheck > 30000.0) || firstError) - if (1) + + NVRDataModel.debug("Websocket Errorhandler called"); + $timeout(function() { - NVRDataModel.debug("Websocket Errorhandler called"); - $timeout(function() - { - NVRDataModel.displayBanner('error', ['Event Server connection error']); - }, 3000); // leave 3 seconds for transitions - firstError = false; - lastEventServerCheck = Date.now(); - if (typeof ws !== 'undefined') ws.close(); - ws = undefined; - - // NVRDataModel.log ("Will try to reconnect in 10 sec.."); - // $timeout ( init, 10000 ); + NVRDataModel.displayBanner('error', ['Event Server connection error']); + }, 3000); // leave 3 seconds for transitions + firstError = false; + lastEventServerCheck = Date.now(); + if (typeof ws !== 'undefined'){ + NVRDataModel.debug ("-->Forcing socket close"); + ws.close(true); + + } + + ws = undefined; + + NVRDataModel.log ("Will try to reconnect in 10 sec.."); + if (!isTimerOn) + { + $timeout ( init, 10000 ); + isTimerOn = true; } + + //console.log ("VALUE TIME " + lastEventServerCheck); //console.log ("NOW TIME " + Date.now()); }); @@ -162,6 +175,15 @@ angular.module('zmApp.controllers') NVRDataModel.log("Websocket closed"); ws = undefined; + var ld = NVRDataModel.getLogin(); + + if (ld.isUseEventServer && !isTimerOn) { + // this means remote error, because zmN still + // wants it on + $timeout ( init, 10000 ); + isTimerOn = true; + } + }); // Handles responses back from ZM ES |
