diff --git a/IOB-UT-NEXT/Iob/BaseObj.cs b/IOB-UT-NEXT/Iob/BaseObj.cs index 46d5e478..56cecc0a 100644 --- a/IOB-UT-NEXT/Iob/BaseObj.cs +++ b/IOB-UT-NEXT/Iob/BaseObj.cs @@ -124,36 +124,6 @@ namespace IOB_UT_NEXT.Iob /// public IobConfTree IOBConfFull; - /// - /// dataOra ultima verifica CNC disconnesso... - /// - public DateTime lastDisconnCheck; - - /// - /// Data/ora ultima volta che IOB è stato dichiarato online - /// - public DateTime lastIobOnline = DateTime.Now.AddHours(-1); - - /// - /// Ultima verifica status IOB x forzare display status SRV - /// - public DateTime lastIobStatusDisplUpdate = DateTime.Now; - - /// - /// dataOra ultimo log periodico... - /// - public DateTime lastPeriodicLog; - - /// - /// dataOra ultimo PING inviato verso il PLC... - /// - public DateTime lastPING = DateTime.Now.AddHours(-1); - - /// - /// DataOra ultima lettura da PLC - /// - public DateTime lastReadPLC; - /// /// ULtimo valore inviato (in caso di disconnessione lo reinvia x garantire watchdog...) /// diff --git a/IOB-UT-NEXT/Iob/DateTimeHelper.cs b/IOB-UT-NEXT/Iob/DateTimeHelper.cs index 482b7555..55cfebe5 100644 --- a/IOB-UT-NEXT/Iob/DateTimeHelper.cs +++ b/IOB-UT-NEXT/Iob/DateTimeHelper.cs @@ -32,6 +32,40 @@ namespace IOB_UT_NEXT.Iob /// public DateTime VetoCheckSyncRecipe = DateTime.Now.AddHours(-1); + /// + /// dataOra ultima verifica CNC disconnesso... + /// + public DateTime lastDisconnCheck; + /// + /// Data/ora ultima volta che IOB è stato dichiarato online + /// + public DateTime lastIobOnline = DateTime.Now.AddHours(-1); + + /// + /// Ultima verifica status IOB x forzare display status SRV + /// + public DateTime lastIobStatusDisplUpdate = DateTime.Now; + + /// + /// dataOra ultimo log periodico... + /// + public DateTime lastPeriodicLog; + + /// + /// dataOra ultimo PING inviato verso il PLC... + /// + public DateTime lastPING = DateTime.Now.AddHours(-1); + + + /// + /// Ultimo controllo ping x evitare ping flood... + /// + public DateTime lastPingConn = DateTime.Now.AddMinutes(-10); + + /// + /// DataOra ultima lettura da PLC + /// + public DateTime lastReadPLC; } } diff --git a/IOB-WIN-FANUC/Iob/Fanuc.cs b/IOB-WIN-FANUC/Iob/Fanuc.cs index 47d50602..a6f2b155 100644 --- a/IOB-WIN-FANUC/Iob/Fanuc.cs +++ b/IOB-WIN-FANUC/Iob/Fanuc.cs @@ -1527,14 +1527,14 @@ namespace IOB_WIN_FANUC.Iob if (!connectionOk) { // controllo che il ping sia stato tentato almeno pingTestSec fa... - if (DateTime.Now.Subtract(lastPING).TotalSeconds > utils.CRI("pingTestSec")) + if (DateTime.Now.Subtract(DtHelp.lastPING).TotalSeconds > utils.CRI("pingTestSec")) { if (verboseLog || periodicLog) { lgInfo("FANUC: ConnKO - tryConnect"); } // in primis salvo data ping... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; // ora PING!!! Ping pingSender = new Ping(); IPAddress address = IPAddress.Loopback; diff --git a/IOB-WIN-FILE/IobFile/IobFileSoitaab.cs b/IOB-WIN-FILE/IobFile/IobFileSoitaab.cs index 49e8a916..3e804d87 100644 --- a/IOB-WIN-FILE/IobFile/IobFileSoitaab.cs +++ b/IOB-WIN-FILE/IobFile/IobFileSoitaab.cs @@ -72,7 +72,7 @@ namespace IOB_WIN_FILE.IobFile lgError($"Eccezione in IobFileSoitaab{Environment.NewLine}{exc}"); } - lastPING = DateTime.Now.AddHours(-1); + DtHelp.lastPING = DateTime.Now.AddHours(-1); } #endregion Public Constructors @@ -89,7 +89,7 @@ namespace IOB_WIN_FILE.IobFile DateTime adesso = DateTime.Now; // NON fa nulla... anche se non dovrebbe richiamarlo Dictionary taskDone = new Dictionary(); - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; return taskDone; } @@ -103,7 +103,7 @@ namespace IOB_WIN_FILE.IobFile Dictionary outVal = new Dictionary(); // processo ed accodo! processFluxLogTable(adesso); - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; return outVal; } @@ -145,14 +145,14 @@ namespace IOB_WIN_FILE.IobFile if (!connectionOk) { // controllo che il ping sia stato tentato almeno pingTestSec fa... - if (DateTime.Now.Subtract(lastPING).TotalSeconds > utils.CRI("pingTestSec")) + if (DateTime.Now.Subtract(DtHelp.lastPING).TotalSeconds > utils.CRI("pingTestSec")) { if (verboseLog || periodicLog) { lgInfo("FileSoitaab: ConnKO - tryConnect"); } // in primis salvo data ping... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; // se passa il ping faccio il resto... if (testPingMachine == IPStatus.Success) { @@ -175,7 +175,7 @@ namespace IOB_WIN_FILE.IobFile if (adpRunning) { lgInfo($"Connessione OK alla folder {logDirPath}"); - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; } } else diff --git a/IOB-WIN-FORM/AdapterForm.cs b/IOB-WIN-FORM/AdapterForm.cs index 2a2292ba..e3f11db7 100644 --- a/IOB-WIN-FORM/AdapterForm.cs +++ b/IOB-WIN-FORM/AdapterForm.cs @@ -2169,8 +2169,8 @@ namespace IOB_WIN_FORM counterMAC = iobObj.contapezziPLC, lastUpdate = lastIobStatus.lastUpdate > iobObj.lastWatchDog ? lastIobStatus.lastUpdate : iobObj.lastWatchDog, online = utils.IOB_Online, - lastDataIn = iobObj.lastReadPLC, - lastDataOut = iobObj.lastIobOnline, + lastDataIn = iobObj.DtHelp.lastReadPLC, + lastDataOut = iobObj.DtHelp.lastIobOnline, setupParams = setPar, freeNotes = note }; diff --git a/IOB-WIN-FORM/Iob/Generic.cs b/IOB-WIN-FORM/Iob/Generic.cs index 3acbcff3..b4780ffc 100644 --- a/IOB-WIN-FORM/Iob/Generic.cs +++ b/IOB-WIN-FORM/Iob/Generic.cs @@ -272,10 +272,10 @@ namespace IOB_WIN_FORM.Iob get { bool answ = false; - answ = (DateTime.Now.Subtract(lastPeriodicLog).TotalSeconds > utils.CRI("verboseLogTOut")); + answ = (DateTime.Now.Subtract(DtHelp.lastPeriodicLog).TotalSeconds > utils.CRI("verboseLogTOut")); if (answ) { - lastPeriodicLog = DateTime.Now; + DtHelp.lastPeriodicLog = DateTime.Now; } return answ; @@ -2468,7 +2468,7 @@ namespace IOB_WIN_FORM.Iob newDisplayData currDispData = new newDisplayData(); // controllo contatore invio "keepalive"... invio solo a scadenza int disconnMaxSec = utils.CRI("disconMaxSec"); - if (DateTime.Now.Subtract(lastDisconnCheck).TotalSeconds > disconnMaxSec) + if (DateTime.Now.Subtract(DtHelp.lastDisconnCheck).TotalSeconds > disconnMaxSec) { // resetto tutti i valori BYTE IN/PREV/OUT... così invio macchina spenta... B_input = 0; @@ -2476,7 +2476,7 @@ namespace IOB_WIN_FORM.Iob B_previous = -1; accodaSigIN(ref currDispData); // update controllo - lastDisconnCheck = DateTime.Now; + DtHelp.lastDisconnCheck = DateTime.Now; lgInfo($"Send 00 | disconMaxSec: {disconnMaxSec}"); } raiseRefresh(currDispData); @@ -2839,7 +2839,7 @@ namespace IOB_WIN_FORM.Iob /// public virtual void readSemafori(ref newDisplayData currDispData) { - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; } /// @@ -3170,12 +3170,12 @@ namespace IOB_WIN_FORM.Iob fatto = true; currDispData.semOut = Semaforo.SV; // se oltre 1 min NON era online --> check pezzi! - if (DateTime.Now.Subtract(lastIobOnline).TotalMinutes > 1 && !isMulti) + if (DateTime.Now.Subtract(DtHelp.lastIobOnline).TotalMinutes > 1 && !isMulti) { - lgInfo($"sendDataBlock --> offline timeout ({lastIobOnline}) --> pzCntReload(true)"); + lgInfo($"sendDataBlock --> offline timeout ({DtHelp.lastIobOnline}) --> pzCntReload(true)"); pzCntReload(true); } - lastIobOnline = DateTime.Now; + DtHelp.lastIobOnline = DateTime.Now; } else { @@ -3252,9 +3252,9 @@ namespace IOB_WIN_FORM.Iob // loggo! lgDebug(string.Format("[SEND] {0} -> {1}", queueVal, answ)); // se oltre 1 min NON era online --> check pezzi! - if (DateTime.Now.Subtract(lastIobOnline).TotalMinutes > 1 && !isMulti) + if (DateTime.Now.Subtract(DtHelp.lastIobOnline).TotalMinutes > 1 && !isMulti) { - lgInfo($"sendToMoonPro --> offline timeout ({lastIobOnline}) --> pzCntReload(true)"); + lgInfo($"sendToMoonPro --> offline timeout ({DtHelp.lastIobOnline}) --> pzCntReload(true)"); pzCntReload(true); } // se richiesto effettuo refresh contapezzi @@ -3263,7 +3263,7 @@ namespace IOB_WIN_FORM.Iob pzCntReload(true); needRefreshPzCount = false; } - lastIobOnline = DateTime.Now; + DtHelp.lastIobOnline = DateTime.Now; // se "OK" verde, altrimenti errore --> ROSSO if (answ == "OK") { @@ -3362,9 +3362,9 @@ namespace IOB_WIN_FORM.Iob adpRunning = true; DtHelp.AvvioAdp = adesso; lastWatchDog = scaduto; - lastPING = scaduto; - lastReadPLC = scaduto; - lastDisconnCheck = scaduto; + DtHelp.lastPING = scaduto; + DtHelp.lastReadPLC = scaduto; + DtHelp.lastDisconnCheck = scaduto; TimingData.resetData(); // aggiungo altri defaults setDefaults(resetQueue); @@ -3486,8 +3486,8 @@ namespace IOB_WIN_FORM.Iob // chiudo! parentForm.displayTaskAndLog("Adapter Stopped.", true); DateTime adesso = DateTime.Now; - lastReadPLC = adesso; - lastPING = adesso; + DtHelp.lastReadPLC = adesso; + DtHelp.lastPING = adesso; parentForm.commPlcActive = false; } @@ -9138,7 +9138,7 @@ namespace IOB_WIN_FORM.Iob } // imposto contatori blink a zero... i_counters = new int[32]; - lastPeriodicLog = DateTime.Now; + DtHelp.lastPeriodicLog = DateTime.Now; // fix parametri generali... pzCountDelay = IOBConfFull.Device.PzCountDelay; @@ -9433,14 +9433,14 @@ namespace IOB_WIN_FORM.Iob { // Log se lo stato è cambiato DateTime adesso = DateTime.Now; - if (IobOnline != newStatus || adesso.Subtract(lastIobStatusDisplUpdate).TotalMilliseconds > (baseUtils.nextPauseSendMSec * 10)) + if (IobOnline != newStatus || adesso.Subtract(DtHelp.lastIobStatusDisplUpdate).TotalMilliseconds > (baseUtils.nextPauseSendMSec * 10)) { lgInfo(newStatus ? "IOB ONLINE for server MP/IO" : "IOB OFFLINE for server MP/IO"); IobOnline = newStatus; - lastIobStatusDisplUpdate = adesso; + DtHelp.lastIobStatusDisplUpdate = adesso; if (newStatus) { - lastIobOnline = adesso; + DtHelp.lastIobOnline = adesso; parentForm.commSrvActive = 2; // Stato Online } else diff --git a/IOB-WIN-FORM/Iob/PingWatchDog.cs b/IOB-WIN-FORM/Iob/PingWatchDog.cs index c1cc77e8..45d4b268 100644 --- a/IOB-WIN-FORM/Iob/PingWatchDog.cs +++ b/IOB-WIN-FORM/Iob/PingWatchDog.cs @@ -35,8 +35,8 @@ namespace IOB_WIN_FORM.Iob lastWarnODL = adesso; vetoCheckStatus = adesso; // 2023.09.05 imposto anche primo ping e check disconnected... - lastPING = adesso; - lastDisconnCheck = adesso; + DtHelp.lastPING = adesso; + DtHelp.lastDisconnCheck = adesso; PoweroffTimeoutSec = IOBConfFull.Device.PoweroffTimeOutSec; // imposto i valori da inviare al controllo stato... bInOff = IOBConfFull.Special.PingConf.B_PowerOff; @@ -58,7 +58,7 @@ namespace IOB_WIN_FORM.Iob { // effettuo check ping! DateTime adesso = DateTime.Now; - var lastCheck = lastPING < lastReadPLC ? lastReadPLC : lastReadPLC; + var lastCheck = DtHelp.lastPING < DtHelp.lastReadPLC ? DtHelp.lastReadPLC : DtHelp.lastReadPLC; if (adesso.Subtract(lastCheck).TotalSeconds >= PoweroffTimeoutSec) { // gestione invio anche in caso di disconnessione @@ -78,8 +78,8 @@ namespace IOB_WIN_FORM.Iob { accodaSigIN(ref currDispData); // reset last ping... - lastPING = DateTime.Now; - lastReadPLC = DateTime.Now; + DtHelp.lastPING = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; } } } @@ -99,19 +99,19 @@ namespace IOB_WIN_FORM.Iob if (QueuePing.Count < maxQueuePing) { // in primis salvo data ping comunque... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; // salvo esito ping bool pingOK = testPingMachine == IPStatus.Success; addTest(pingOK); } - if (adesso.Subtract(lastPING).TotalSeconds >= vetoCheckSec) + if (adesso.Subtract(DtHelp.lastPING).TotalSeconds >= vetoCheckSec) { try { currDispData.semIn = Semaforo.SV; // in primis salvo data ping comunque... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; // salvo esito ping bool pingOK = testPingMachine == IPStatus.Success; addTest(pingOK); @@ -120,7 +120,7 @@ namespace IOB_WIN_FORM.Iob if (pingStatusOk()) { connectionOk = true; - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; lastWatchDog = DateTime.Now; } else @@ -158,8 +158,8 @@ namespace IOB_WIN_FORM.Iob // 2023.09.05 imposto anche primo ping e check disconnected... DateTime adesso = DateTime.Now; lastWatchDog = adesso; - lastReadPLC = adesso; - lastDisconnCheck = adesso; + DtHelp.lastReadPLC = adesso; + DtHelp.lastDisconnCheck = adesso; // faccio un primo check POST ritardo tryConnect(); } @@ -174,7 +174,7 @@ namespace IOB_WIN_FORM.Iob if (!connectionOk) { // controllo che il ping sia stato tentato almeno pingTestSec fa... - if (DateTime.Now.Subtract(lastPING).TotalSeconds > utils.CRI("pingTestSec")) + if (DateTime.Now.Subtract(DtHelp.lastPING).TotalSeconds > utils.CRI("pingTestSec")) { if (doLog) { @@ -195,7 +195,7 @@ namespace IOB_WIN_FORM.Iob if (pingStatusOk()) { // in primis salvo data ping... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; connectionOk = true; queueInEnabCurr = true; lgInfo("PING OK"); diff --git a/IOB-WIN-FORM/Iob/Simula.cs b/IOB-WIN-FORM/Iob/Simula.cs index e8414a21..6f54a321 100644 --- a/IOB-WIN-FORM/Iob/Simula.cs +++ b/IOB-WIN-FORM/Iob/Simula.cs @@ -522,7 +522,7 @@ namespace IOB_WIN_FORM.Iob sendDataItemsList(demoItems); // salvo lettura - lastReadPLC = adesso; + DtHelp.lastReadPLC = adesso; lgInfo($"Completato processCustomTaskLF"); } @@ -540,7 +540,7 @@ namespace IOB_WIN_FORM.Iob var currOdl = CurrOdl(); // salvo lettura - lastReadPLC = adesso; + DtHelp.lastReadPLC = adesso; lgInfo($"Completato processCustomTaskMF"); } @@ -1025,7 +1025,7 @@ namespace IOB_WIN_FORM.Iob string autoOdlRes = HttpService.CallUrl(urlFixDailyOdl); // salvo lettura - lastReadPLC = adesso; + DtHelp.lastReadPLC = adesso; lgInfo($"Completato processSlowDataRead"); return answ; } diff --git a/IOB-WIN-FTP/Iob/Ftp.cs b/IOB-WIN-FTP/Iob/Ftp.cs index 4c5a2a6b..e3fce130 100644 --- a/IOB-WIN-FTP/Iob/Ftp.cs +++ b/IOB-WIN-FTP/Iob/Ftp.cs @@ -43,8 +43,8 @@ namespace IOB_WIN_FTP.Iob lastWarnODL = adesso; vetoCheckStatus = adesso; // 2023.09.05 imposto anche primo ping e check disconnected... - lastPING = adesso; - lastDisconnCheck = adesso; + DtHelp.lastPING = adesso; + DtHelp.lastDisconnCheck = adesso; var VETO_PING_SEC = getOptPar("VETO_PING_SEC"); if (!string.IsNullOrEmpty(VETO_PING_SEC)) { @@ -329,7 +329,7 @@ namespace IOB_WIN_FTP.Iob } } } - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; } /// @@ -343,7 +343,7 @@ namespace IOB_WIN_FTP.Iob if (ftpClientMan.IsConfigured) { // salto se fosse attivo il veto ping... - if (lastPING.AddSeconds(vetoPingSec) < adesso) + if (DtHelp.lastPING.AddSeconds(vetoPingSec) < adesso) { // lo stato è come ping machine, x ora puntato a IP unico (WiFi?) byte[] MemBlock = new byte[2]; @@ -351,7 +351,7 @@ namespace IOB_WIN_FTP.Iob { currDispData.semIn = Semaforo.SV; // in primis salvo data ping comunque... - lastPING = adesso; + DtHelp.lastPING = adesso; // salvo esito ping bool pingOK = testPingMachine == IPStatus.Success; @@ -412,7 +412,7 @@ namespace IOB_WIN_FTP.Iob connectionOk = true; } - lastReadPLC = adesso; + DtHelp.lastReadPLC = adesso; lastWatchDog = adesso; } else @@ -445,9 +445,9 @@ namespace IOB_WIN_FTP.Iob // 2023.09.05 imposto anche primo ping e check disconnected... DateTime adesso = DateTime.Now; lastWatchDog = adesso; - //lastPING = adesso; - lastReadPLC = adesso; - lastDisconnCheck = adesso; + //DtHelp.lastPING = adesso; + DtHelp.lastReadPLC = adesso; + DtHelp.lastDisconnCheck = adesso; // faccio un primo check POST ritardo tryConnect(); } @@ -464,7 +464,7 @@ namespace IOB_WIN_FTP.Iob //// resetto coda... //QueuePing = new DataQueue("000", "QueuePing", false); // controllo che il ping sia stato tentato almeno pingTestSec fa... - if (DateTime.Now.Subtract(lastPING).TotalSeconds > vetoPingSec) + if (DateTime.Now.Subtract(DtHelp.lastPING).TotalSeconds > vetoPingSec) { if (doLog) { @@ -481,7 +481,7 @@ namespace IOB_WIN_FTP.Iob if (pingStatusOk()) { // in primis salvo data ping... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; connectionOk = true; queueInEnabCurr = true; lgInfo("FTP - ping OK"); diff --git a/IOB-WIN-KAWASAKI/Iob/Kawasaki.cs b/IOB-WIN-KAWASAKI/Iob/Kawasaki.cs index b45b9186..17f13141 100644 --- a/IOB-WIN-KAWASAKI/Iob/Kawasaki.cs +++ b/IOB-WIN-KAWASAKI/Iob/Kawasaki.cs @@ -309,7 +309,7 @@ namespace IOB_WIN_KAWASAKI.Iob // se trova ok thread o almeno kawasaki connesso --> aggiorno ultima lettura if (threadOk || KAWASAKI_ref.IsConnected) { - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; } } catch @@ -366,14 +366,14 @@ namespace IOB_WIN_KAWASAKI.Iob if (!connectionOk) { // controllo che il ping sia stato tentato almeno pingTestSec fa... - if (DateTime.Now.Subtract(lastPING).TotalSeconds > utils.CRI("pingTestSec")) + if (DateTime.Now.Subtract(DtHelp.lastPING).TotalSeconds > utils.CRI("pingTestSec")) { if (verboseLog || periodicLog) { lgInfo("KAWASAKI: ConnKO - tryConnect"); } // in primis salvo data ping... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; // se passa il ping faccio il resto... if (testPingMachine == IPStatus.Success) { diff --git a/IOB-WIN-MBUS/IobModbustTCP/ModbusTCP.cs b/IOB-WIN-MBUS/IobModbustTCP/ModbusTCP.cs index a24aac2a..96a1dfd5 100644 --- a/IOB-WIN-MBUS/IobModbustTCP/ModbusTCP.cs +++ b/IOB-WIN-MBUS/IobModbustTCP/ModbusTCP.cs @@ -296,7 +296,7 @@ namespace IOB_WIN_MBUS.IobModbusTCP } else { - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; } } else @@ -512,7 +512,7 @@ namespace IOB_WIN_MBUS.IobModbusTCP lgInfo("ModBus TCP: tryConnect step 03"); // controllo che il ping sia stato tentato almeno pingTestSec fa... - if (DateTime.Now.Subtract(lastPING).TotalSeconds > utils.CRI("pingTestSec")) + if (DateTime.Now.Subtract(DtHelp.lastPING).TotalSeconds > utils.CRI("pingTestSec")) { if (doLog) { @@ -521,7 +521,7 @@ namespace IOB_WIN_MBUS.IobModbusTCP lgInfo("ModBus TCP: tryConnect step 04"); // in primis salvo data ping... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; // se passa il ping faccio il resto... if (testPingMachine == IPStatus.Success) { @@ -600,7 +600,7 @@ namespace IOB_WIN_MBUS.IobModbusTCP connectionOk = false; queueInEnabCurr = false; // resetto last ping... - lastPING = DateTime.Now.AddMinutes(-1); + DtHelp.lastPING = DateTime.Now.AddMinutes(-1); } /// @@ -678,10 +678,6 @@ namespace IOB_WIN_MBUS.IobModbusTCP /// protected Dictionary InputRegisterLUT = new Dictionary(); - /// - /// Ultimo controllo ping x evitare ping flood... - /// - protected DateTime lastPingConn = DateTime.Now.AddMinutes(-10); /// /// Esito ultimo ping @@ -1182,7 +1178,7 @@ namespace IOB_WIN_MBUS.IobModbusTCP if (!connectionOk) { // ora tento avvio PLC... SE PING OK... - lastPING = adesso; + DtHelp.lastPING = adesso; IPStatus esitoPing = testPingMachine; if (esitoPing == IPStatus.Success) { @@ -1379,7 +1375,7 @@ namespace IOB_WIN_MBUS.IobModbusTCP { // riduco i controlli ping.. li faccio solo ogni 5 ping period se precedente positivo... DateTime adesso = DateTime.Now; - if (lastPingOk && adesso.Subtract(lastPingConn).TotalMilliseconds < 5 * parametri.pingMsTimeout) + if (lastPingOk && adesso.Subtract(DtHelp.lastPingConn).TotalMilliseconds < 5 * parametri.pingMsTimeout) { answ = lastPingOk; } @@ -1425,7 +1421,7 @@ namespace IOB_WIN_MBUS.IobModbusTCP } } // salvo stato ping - lastPingConn = adesso; + DtHelp.lastPingConn = adesso; } lastPingOk = answ; } @@ -2011,7 +2007,7 @@ namespace IOB_WIN_MBUS.IobModbusTCP lgTrace($"Lettura in blocco Colis | startAddr: {startAddr} | numReg {numReg} | rawData.lenght: {rawData.Length} | {sw.ElapsedMilliseconds}ms"); // salvo statistica... trackReadData(rawData.Length / 8, sw.Elapsed.TotalMilliseconds / 1000); - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; // salvo in LUT i dati... if (rawData.Length > 0) { @@ -2082,7 +2078,7 @@ namespace IOB_WIN_MBUS.IobModbusTCP lgTrace($"Lettura in blocco DiscreteInput | startAddr: {startAddr} | numReg {numReg} | rawData.lenght: {rawData.Length} | {sw.ElapsedMilliseconds}ms"); // salvo statistica... trackReadData(rawData.Length / 8, sw.Elapsed.TotalMilliseconds / 1000); - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; // salvo in LUT i dati... if (rawData.Length > 0) { @@ -2154,7 +2150,7 @@ namespace IOB_WIN_MBUS.IobModbusTCP lgTrace($"Lettura in blocco HoldingRegisters| startAddr: {startAddr} | numReg {numReg} | rawData.lenght: {rawData.Length} | {sw.Elapsed.TotalMilliseconds}ms"); // salvo statistica... trackReadData(rawData.Length * 2, sw.Elapsed.TotalMilliseconds / 1000); - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; // se risposta troppo rapida (< minRespTimeMs, tipicamente 5 msse non impostato in OptPar) indico NON ok e errori... if (sw.Elapsed.TotalMilliseconds < minRespTimeMs) { @@ -2245,7 +2241,7 @@ namespace IOB_WIN_MBUS.IobModbusTCP lgTrace($"Lettura in blocco InputRegisters| startAddr: {startAddr} | numReg {numReg} | rawData.lenght: {rawData.Length} | {sw.ElapsedMilliseconds}ms"); // salvo statistica... trackReadData(rawData.Length * 2, sw.Elapsed.TotalMilliseconds / 1000); - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; // salvo in LUT la versione ESPLOSA 2 byte alla volta... if (rawData.Length > 0) { diff --git a/IOB-WIN-MBUS/IobModbustTCP/ModbusTCPFrer.cs b/IOB-WIN-MBUS/IobModbustTCP/ModbusTCPFrer.cs index 26fa5647..287f0554 100644 --- a/IOB-WIN-MBUS/IobModbustTCP/ModbusTCPFrer.cs +++ b/IOB-WIN-MBUS/IobModbustTCP/ModbusTCPFrer.cs @@ -76,7 +76,7 @@ namespace IOB_WIN_MBUS.IobModbusTCP ----------------------------------------------------- */ DateTime adesso = DateTime.Now; // se ha risposto ad ultima chiamata --> ok - if (connectionOk && adesso.Subtract(lastReadPLC).TotalMinutes < 1) + if (connectionOk && adesso.Subtract(DtHelp.lastReadPLC).TotalMinutes < 1) { B_input = 3; // aggiungo NON emergenza... @@ -86,7 +86,7 @@ namespace IOB_WIN_MBUS.IobModbusTCP { B_input = 0; } - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; lastWatchDog = adesso; } diff --git a/IOB-WIN-MITSUBISHI/Iob/Mitsubishi.cs b/IOB-WIN-MITSUBISHI/Iob/Mitsubishi.cs index f9b041a0..a6d5a7fc 100644 --- a/IOB-WIN-MITSUBISHI/Iob/Mitsubishi.cs +++ b/IOB-WIN-MITSUBISHI/Iob/Mitsubishi.cs @@ -885,14 +885,14 @@ namespace IOB_WIN_MITSUBISHI.Iob if (!connectionOk) { // controllo che il ping sia stato tentato almeno pingTestSec fa... - if (DateTime.Now.Subtract(lastPING).TotalSeconds > utils.CRI("pingTestSec")) + if (DateTime.Now.Subtract(DtHelp.lastPING).TotalSeconds > utils.CRI("pingTestSec")) { if (verboseLog || periodicLog) { lgInfo("MITSUBISHI: ConnKO - tryConnect"); } // in primis salvo data ping... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; // ora PING!!! Ping pingSender = new Ping(); IPAddress address = IPAddress.Loopback; diff --git a/IOB-WIN-MTC/Iob/MTConn.cs b/IOB-WIN-MTC/Iob/MTConn.cs index f7fb6bf7..ce86dcdc 100644 --- a/IOB-WIN-MTC/Iob/MTConn.cs +++ b/IOB-WIN-MTC/Iob/MTConn.cs @@ -175,7 +175,7 @@ namespace IOB_WIN_MTC.Iob public override void readSemafori(ref newDisplayData currDispData) { DateTime adesso = DateTime.Now; - lastReadPLC = adesso; + DtHelp.lastReadPLC = adesso; // verifico non sia in veto invio iniziale... if (queueInEnabCurr) { @@ -248,14 +248,14 @@ namespace IOB_WIN_MTC.Iob // disattivo eventuali sottoscrizioni DeactEvents(); // controllo che il ping sia stato tentato almeno pingTestSec fa... - if (DateTime.Now.Subtract(lastPING).TotalSeconds > utils.CRI("pingTestSec")) + if (DateTime.Now.Subtract(DtHelp.lastPING).TotalSeconds > utils.CRI("pingTestSec")) { if (verboseLog || periodicLog) { lgInfo("MTC: ConnKO - tryConnect"); } // in primis salvo data ping... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; // se passa il ping faccio il resto... if (testPingMachine == IPStatus.Success) { diff --git a/IOB-WIN-OMRON/Iob/Omron.cs b/IOB-WIN-OMRON/Iob/Omron.cs index 4ce1f9e2..e0098393 100644 --- a/IOB-WIN-OMRON/Iob/Omron.cs +++ b/IOB-WIN-OMRON/Iob/Omron.cs @@ -147,14 +147,14 @@ namespace IOB_WIN_OMRON.Iob if (!connectionOk) { // controllo che il ping sia stato tentato almeno pingTestSec fa... - if (DateTime.Now.Subtract(lastPING).TotalSeconds > utils.CRI("pingTestSec")) + if (DateTime.Now.Subtract(DtHelp.lastPING).TotalSeconds > utils.CRI("pingTestSec")) { if (verboseLog || periodicLog) { lgInfo("OMRON: ConnKO - tryConnect"); } // in primis salvo data ping... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; // se passa il ping faccio il resto... if (testPingMachine == IPStatus.Success) { diff --git a/IOB-WIN-OPC-UA/IobOpc/OpcUa.cs b/IOB-WIN-OPC-UA/IobOpc/OpcUa.cs index 3c7913a8..60ab4abc 100644 --- a/IOB-WIN-OPC-UA/IobOpc/OpcUa.cs +++ b/IOB-WIN-OPC-UA/IobOpc/OpcUa.cs @@ -588,14 +588,14 @@ namespace IOB_WIN_OPC_UA.IobOpc if (!connectionOk) { // controllo che il ping sia stato tentato almeno pingTestSec fa... - if (DateTime.Now.Subtract(lastPING).TotalSeconds > utils.CRI("pingTestSec")) + if (DateTime.Now.Subtract(DtHelp.lastPING).TotalSeconds > utils.CRI("pingTestSec")) { if (verboseLog || periodicLog) { lgInfo("OpcUa: ConnKO - tryConnect"); } // in primis salvo data ping... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; // se passa il ping faccio il resto... if (testPingMachine == IPStatus.Success || opcUaParams.forcePingOk) { diff --git a/IOB-WIN-OSAI/Iob/OSAI.cs b/IOB-WIN-OSAI/Iob/OSAI.cs index 4d5e9dac..1072095e 100644 --- a/IOB-WIN-OSAI/Iob/OSAI.cs +++ b/IOB-WIN-OSAI/Iob/OSAI.cs @@ -434,7 +434,7 @@ namespace IOB_WIN_OSAI.Iob if (!connectionOk) { // controllo che il ping sia stato tentato almeno pingTestSec fa... - if (DateTime.Now.Subtract(lastPING).TotalSeconds > utils.CRI("pingTestSec")) + if (DateTime.Now.Subtract(DtHelp.lastPING).TotalSeconds > utils.CRI("pingTestSec")) { if (verboseLog || periodicLog) { @@ -449,7 +449,7 @@ namespace IOB_WIN_OSAI.Iob if (needPing) { // in primis salvo data ping... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; // ora PING!!! IPAddress address = IPAddress.Loopback; IPAddress.TryParse(IOBConfFull.Device.Connect.PingIpAddr, out address); diff --git a/IOB-WIN-SHELLY/Iob/ShellyClientGen1.cs b/IOB-WIN-SHELLY/Iob/ShellyClientGen1.cs index 092bddad..4776ea7f 100644 --- a/IOB-WIN-SHELLY/Iob/ShellyClientGen1.cs +++ b/IOB-WIN-SHELLY/Iob/ShellyClientGen1.cs @@ -47,8 +47,8 @@ namespace IOB_WIN_SHELLY.Iob lastWarnODL = adesso; vetoCheckStatus = adesso; // 2023.09.05 imposto anche primo ping e check disconnected... - lastPING = adesso; - lastDisconnCheck = adesso; + DtHelp.lastPING = adesso; + DtHelp.lastDisconnCheck = adesso; var VETO_PING_SEC = getOptPar("VETO_PING_SEC"); if (!string.IsNullOrEmpty(VETO_PING_SEC)) { @@ -86,14 +86,14 @@ namespace IOB_WIN_SHELLY.Iob { Dictionary outData = new Dictionary(); // verifico che non sia una chiamata troppo frequente, ogni 10 sec minimo... - if (DateTime.Now > lastReadPLC.AddSeconds(shellyCallDelay)) + if (DateTime.Now > DtHelp.lastReadPLC.AddSeconds(shellyCallDelay)) { // chiama lettura status completo e recupera info in memRead e le passa come DynData... lastShellyResp = Task.Run(() => ((Shelly1PmClient)shellyCli).GetSwitchStatus(CancellationToken.None, 0)).Result; // NB: da verificare tipo di chiamata in base al tipo di shelly... TDB ora è cablato x Shelly1PM if (lastShellyResp.IsSuccess) { - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; // recupero da conf memMap e ciclo foreach (var item in IOBConfFull.Memory.mMapRead) { @@ -149,7 +149,7 @@ namespace IOB_WIN_SHELLY.Iob { DateTime adesso = DateTime.Now; // se ha risposto ad ultima chiamata --> ok - if (connectionOk && adesso.Subtract(lastReadPLC).TotalMinutes < 1) + if (connectionOk && adesso.Subtract(DtHelp.lastReadPLC).TotalMinutes < 1) { B_input = 3; // aggiungo NON emergenza... @@ -159,7 +159,7 @@ namespace IOB_WIN_SHELLY.Iob { B_input = 0; } - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; lastWatchDog = adesso; } @@ -169,9 +169,9 @@ namespace IOB_WIN_SHELLY.Iob // 2023.09.05 imposto anche primo ping e check disconnected... DateTime adesso = DateTime.Now; lastWatchDog = adesso; - //lastPING = adesso; - lastReadPLC = adesso; - lastDisconnCheck = adesso; + //DtHelp.lastPING = adesso; + DtHelp.lastReadPLC = adesso; + DtHelp.lastDisconnCheck = adesso; // faccio un primo check POST ritardo tryConnect(); } @@ -188,7 +188,7 @@ namespace IOB_WIN_SHELLY.Iob //// resetto coda... //QueuePing = new DataQueue("000", "QueuePing", false); // controllo che il ping sia stato tentato almeno pingTestSec fa... - if (DateTime.Now.Subtract(lastPING).TotalSeconds > vetoPingSec) + if (DateTime.Now.Subtract(DtHelp.lastPING).TotalSeconds > vetoPingSec) { if (doLog) { @@ -205,7 +205,7 @@ namespace IOB_WIN_SHELLY.Iob if (pingStatusOk() || pingOK) { // in primis salvo data ping... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; connectionOk = true; queueInEnabCurr = true; lgInfo("Shelly - ping OK"); diff --git a/IOB-WIN-SHELLY/Iob/ShellyClientGen2.cs b/IOB-WIN-SHELLY/Iob/ShellyClientGen2.cs index 56777586..a475ba4b 100644 --- a/IOB-WIN-SHELLY/Iob/ShellyClientGen2.cs +++ b/IOB-WIN-SHELLY/Iob/ShellyClientGen2.cs @@ -48,8 +48,8 @@ namespace IOB_WIN_SHELLY.Iob lastWarnODL = adesso; vetoCheckStatus = adesso; // 2023.09.05 imposto anche primo ping e check disconnected... - lastPING = adesso; - lastDisconnCheck = adesso; + DtHelp.lastPING = adesso; + DtHelp.lastDisconnCheck = adesso; var VETO_PING_SEC = getOptPar("VETO_PING_SEC"); if (!string.IsNullOrEmpty(VETO_PING_SEC)) { @@ -87,7 +87,7 @@ namespace IOB_WIN_SHELLY.Iob { Dictionary outData = new Dictionary(); // verifico che non sia una chiamata troppo frequente, ogni 10 sec minimo... - if (DateTime.Now > lastReadPLC.AddSeconds(shellyCallDelay)) + if (DateTime.Now > DtHelp.lastReadPLC.AddSeconds(shellyCallDelay)) { // chiama lettura status valor RT (Potenza, Corrente...) lastShellyRespRT = Task.Run(() => ((ShellyPro3EmClient)shellyCli).GetEmStatus(CancellationToken.None, 0)).Result; @@ -96,7 +96,7 @@ namespace IOB_WIN_SHELLY.Iob // Salvo negli oggetti DynData x EnergyTotal if (lastShellyRespEnergy.IsSuccess) { - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; // recupero da conf memMap e ciclo foreach (var item in IOBConfFull.Memory.mMapRead) { @@ -137,7 +137,7 @@ namespace IOB_WIN_SHELLY.Iob // Salvo negli oggetti DynData x RT if (lastShellyRespRT.IsSuccess) { - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; // recupero da conf memMap e ciclo foreach (var item in IOBConfFull.Memory.mMapRead) { @@ -224,7 +224,7 @@ namespace IOB_WIN_SHELLY.Iob { DateTime adesso = DateTime.Now; // se ha risposto ad ultima chiamata --> ok - if (connectionOk && adesso.Subtract(lastReadPLC).TotalMinutes < 1) + if (connectionOk && adesso.Subtract(DtHelp.lastReadPLC).TotalMinutes < 1) { B_input = 3; // aggiungo NON emergenza... @@ -234,7 +234,7 @@ namespace IOB_WIN_SHELLY.Iob { B_input = 0; } - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; lastWatchDog = adesso; } @@ -244,9 +244,9 @@ namespace IOB_WIN_SHELLY.Iob // 2023.09.05 imposto anche primo ping e check disconnected... DateTime adesso = DateTime.Now; lastWatchDog = adesso; - //lastPING = adesso; - lastReadPLC = adesso; - lastDisconnCheck = adesso; + //DtHelp.lastPING = adesso; + DtHelp.lastReadPLC = adesso; + DtHelp.lastDisconnCheck = adesso; // faccio un primo check POST ritardo tryConnect(); } @@ -263,7 +263,7 @@ namespace IOB_WIN_SHELLY.Iob //// resetto coda... //QueuePing = new DataQueue("000", "QueuePing", false); // controllo che il ping sia stato tentato almeno pingTestSec fa... - if (DateTime.Now.Subtract(lastPING).TotalSeconds > vetoPingSec) + if (DateTime.Now.Subtract(DtHelp.lastPING).TotalSeconds > vetoPingSec) { if (doLog) { @@ -280,7 +280,7 @@ namespace IOB_WIN_SHELLY.Iob if (pingStatusOk() || pingOK) { // in primis salvo data ping... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; connectionOk = true; queueInEnabCurr = true; lgInfo("Shelly - ping OK"); diff --git a/IOB-WIN-SIEMENS/IobSiemens/IobSiemensTorri_legacy.cs b/IOB-WIN-SIEMENS/IobSiemens/IobSiemensTorri_legacy.cs index e83c32f3..fb5a6638 100644 --- a/IOB-WIN-SIEMENS/IobSiemens/IobSiemensTorri_legacy.cs +++ b/IOB-WIN-SIEMENS/IobSiemens/IobSiemensTorri_legacy.cs @@ -372,14 +372,14 @@ namespace IOB_WIN // reimporto parametri PLC se necessario... setParamPlc(); // controllo che il ping sia stato tentato almeno pingTestSec fa... - if (DateTime.Now.Subtract(lastPING).TotalSeconds > utils.CRI("pingTestSec")) + if (DateTime.Now.Subtract(DtHelp.lastPING).TotalSeconds > utils.CRI("pingTestSec")) { if (doLog) { lgInfo("SIEMENS-TORRI: ConnKO - tryConnect"); } // in primis salvo data ping... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; // se passa il ping faccio il resto... if (testPing() == IPStatus.Success) { diff --git a/IOB-WIN-SIEMENS/IobSiemens/Siemens.cs b/IOB-WIN-SIEMENS/IobSiemens/Siemens.cs index 379eaadd..f4dc94be 100644 --- a/IOB-WIN-SIEMENS/IobSiemens/Siemens.cs +++ b/IOB-WIN-SIEMENS/IobSiemens/Siemens.cs @@ -1021,7 +1021,7 @@ namespace IOB_WIN_SIEMENS.IobSiemens lgInfoStartup("SIEMENS: tryConnect step 03"); // controllo che il ping sia stato tentato almeno pingTestSec fa... - if (DateTime.Now.Subtract(lastPING).TotalSeconds > utils.CRI("pingTestSec")) + if (DateTime.Now.Subtract(DtHelp.lastPING).TotalSeconds > utils.CRI("pingTestSec")) { if (doLog) { @@ -1030,7 +1030,7 @@ namespace IOB_WIN_SIEMENS.IobSiemens lgInfoStartup("SIEMENS: tryConnect step 04"); // in primis salvo data ping... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; // se passa il ping faccio il resto... if (testPingMachine == IPStatus.Success) { @@ -1142,11 +1142,6 @@ namespace IOB_WIN_SIEMENS.IobSiemens /// protected Plc currPLC; - /// - /// Ultimo controllo ping x evitare ping flood... - /// - protected DateTime lastPingConn = DateTime.Now.AddMinutes(-10); - /// /// Esito ultimo ping /// @@ -1596,7 +1591,7 @@ namespace IOB_WIN_SIEMENS.IobSiemens bool answ = false; // riduco i controlli ping.. li faccio solo ogni 5 ping period se precedente positivo... DateTime adesso = DateTime.Now; - if (lastPingOk && adesso.Subtract(lastPingConn).TotalMilliseconds < 5 * parametri.pingMsTimeout) + if (lastPingOk && adesso.Subtract(DtHelp.lastPingConn).TotalMilliseconds < 5 * parametri.pingMsTimeout) { answ = lastPingOk; } @@ -1646,7 +1641,7 @@ namespace IOB_WIN_SIEMENS.IobSiemens } // salvo stato ping lastPingOk = answ; - lastPingConn = adesso; + DtHelp.lastPingConn = adesso; } return answ; diff --git a/IOB-WIN-SQL/Iob/IobFileSoitaab.cs b/IOB-WIN-SQL/Iob/IobFileSoitaab.cs index a9bc1b2f..01d7bf2e 100644 --- a/IOB-WIN-SQL/Iob/IobFileSoitaab.cs +++ b/IOB-WIN-SQL/Iob/IobFileSoitaab.cs @@ -72,7 +72,7 @@ namespace IOB_WIN_SQL.IobFile lgError($"Eccezione in IobFileSoitaab{Environment.NewLine}{exc}"); } - lastPING = DateTime.Now.AddHours(-1); + DtHelp.lastPING = DateTime.Now.AddHours(-1); } #endregion Public Constructors @@ -89,7 +89,7 @@ namespace IOB_WIN_SQL.IobFile DateTime adesso = DateTime.Now; // NON fa nulla... anche se non dovrebbe richiamarlo Dictionary taskDone = new Dictionary(); - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; return taskDone; } @@ -103,7 +103,7 @@ namespace IOB_WIN_SQL.IobFile Dictionary outVal = new Dictionary(); // processo ed accodo! processFluxLogTable(adesso); - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; return outVal; } @@ -145,14 +145,14 @@ namespace IOB_WIN_SQL.IobFile if (!connectionOk) { // controllo che il ping sia stato tentato almeno pingTestSec fa... - if (DateTime.Now.Subtract(lastPING).TotalSeconds > utils.CRI("pingTestSec")) + if (DateTime.Now.Subtract(DtHelp.lastPING).TotalSeconds > utils.CRI("pingTestSec")) { if (verboseLog || periodicLog) { lgInfo("FileSoitaab: ConnKO - tryConnect"); } // in primis salvo data ping... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; // se passa il ping faccio il resto... if (testPingMachine == IPStatus.Success) { @@ -175,7 +175,7 @@ namespace IOB_WIN_SQL.IobFile if (adpRunning) { lgInfo($"Connessione OK alla folder {logDirPath}"); - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; } } else diff --git a/IOB-WIN-SQL/IobSql/IcoelDb.cs b/IOB-WIN-SQL/IobSql/IcoelDb.cs index 4630a9f3..db914ed8 100644 --- a/IOB-WIN-SQL/IobSql/IcoelDb.cs +++ b/IOB-WIN-SQL/IobSql/IcoelDb.cs @@ -54,7 +54,7 @@ namespace IOB_WIN_SQL.IobSql // eccezione: NON TROVA EntityFramework 6.0.0 o successivo... why?!? dbProxy = new DbProxy(connSyncState); - lastPING = DateTime.Now.AddHours(-1); + DtHelp.lastPING = DateTime.Now.AddHours(-1); } #endregion Public Constructors @@ -103,7 +103,7 @@ namespace IOB_WIN_SQL.IobSql } } } - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; return taskDone; } @@ -131,7 +131,7 @@ namespace IOB_WIN_SQL.IobSql saveValue(ref outVal, item.Topic, (double)item.CurrVal); } - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; return outVal; } @@ -145,7 +145,7 @@ namespace IOB_WIN_SQL.IobSql lgInfo($"Richiesto processCustomTaskLF"); // effettua sync refreshElencoStati(); - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; } /// @@ -182,14 +182,14 @@ namespace IOB_WIN_SQL.IobSql if (!connectionOk) { // controllo che il ping sia stato tentato almeno pingTestSec fa... - if (DateTime.Now.Subtract(lastPING).TotalSeconds > utils.CRI("pingTestSec")) + if (DateTime.Now.Subtract(DtHelp.lastPING).TotalSeconds > utils.CRI("pingTestSec")) { if (verboseLog || periodicLog) { lgInfo("IcoelSoap: ConnKO - tryConnect"); } // in primis salvo data ping... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; // se passa il ping faccio il resto... if (testPingMachine == IPStatus.Success) { @@ -215,7 +215,7 @@ namespace IOB_WIN_SQL.IobSql if (adpRunning) { lgInfo("Connessione OK"); - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; } } else @@ -275,7 +275,7 @@ namespace IOB_WIN_SQL.IobSql sw.Start(); elencoSyncState = dbProxy.DataController.SyncStateDoImportAll(); sw.Stop(); - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; lgInfo($"DB: esecuzione task dbProxy.DataController.SyncStateGetAll() in {sw.ElapsedMilliseconds} ms"); if (elencoSyncState != null) diff --git a/IOB-WIN-SQL/IobSql/SqlServLantek.cs b/IOB-WIN-SQL/IobSql/SqlServLantek.cs index 3dced9b0..c5e1ac7f 100644 --- a/IOB-WIN-SQL/IobSql/SqlServLantek.cs +++ b/IOB-WIN-SQL/IobSql/SqlServLantek.cs @@ -70,7 +70,7 @@ namespace IOB_WIN_SQL.IobSql // avvio DB controller dbProxy = new DbController(connSyncState); - lastPING = DateTime.Now.AddHours(-1); + DtHelp.lastPING = DateTime.Now.AddHours(-1); } #endregion Public Constructors @@ -212,7 +212,7 @@ namespace IOB_WIN_SQL.IobSql } } } - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; return taskDone; } @@ -226,7 +226,7 @@ namespace IOB_WIN_SQL.IobSql // dizionario vuoto / gestito da altro adapter file-based Dictionary outVal = new Dictionary(); - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; return outVal; } @@ -240,7 +240,7 @@ namespace IOB_WIN_SQL.IobSql // effettua sync execExportAll(); execImportAll(); - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; } /// @@ -287,14 +287,14 @@ namespace IOB_WIN_SQL.IobSql if (!connectionOk) { // controllo che il ping sia stato tentato almeno pingTestSec fa... - if (DateTime.Now.Subtract(lastPING).TotalSeconds > utils.CRI("pingTestSec")) + if (DateTime.Now.Subtract(DtHelp.lastPING).TotalSeconds > utils.CRI("pingTestSec")) { if (verboseLog || periodicLog) { lgInfo("SqlDb LANTEK: ConnKO - tryConnect"); } // in primis salvo data ping... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; // se passa il ping faccio il resto... if (testPingMachine == IPStatus.Success) { @@ -320,7 +320,7 @@ namespace IOB_WIN_SQL.IobSql if (adpRunning) { lgInfo("Connessione OK"); - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; } } else @@ -393,7 +393,7 @@ namespace IOB_WIN_SQL.IobSql elencoSyncState = dbProxy.SyncStateDoExportAll(); sw.Stop(); DateTime adesso = DateTime.Now; - lastReadPLC = adesso; + DtHelp.lastReadPLC = adesso; lgInfo($"DB: esecuzione task dbProxy.SyncStateDoExportAll() in {sw.ElapsedMilliseconds} ms"); if (elencoSyncState != null) @@ -440,7 +440,7 @@ namespace IOB_WIN_SQL.IobSql sw.Start(); elencoSyncState = dbProxy.SyncStateDoImportAll(); sw.Stop(); - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; lgInfo($"DB: esecuzione task dbProxy.SyncStateDoImportAll() in {sw.ElapsedMilliseconds} ms"); if (elencoSyncState != null) diff --git a/IOB-WIN-SQL/IobSql/SqlServPama.cs b/IOB-WIN-SQL/IobSql/SqlServPama.cs index 9ef490bd..2e83d0b9 100644 --- a/IOB-WIN-SQL/IobSql/SqlServPama.cs +++ b/IOB-WIN-SQL/IobSql/SqlServPama.cs @@ -68,7 +68,7 @@ namespace IOB_WIN_SQL.IobSql // eccezione: NON TROVA EntityFramework 6.0.0 o successivo... why?!? dbProxy = new DbController(connSyncState); - lastPING = DateTime.Now.AddHours(-1); + DtHelp.lastPING = DateTime.Now.AddHours(-1); } #endregion Public Constructors @@ -210,7 +210,7 @@ namespace IOB_WIN_SQL.IobSql } } } - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; return taskDone; } @@ -227,7 +227,7 @@ namespace IOB_WIN_SQL.IobSql // processo ed accodo! processFluxLogTable(adesso); - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; return outVal; } @@ -240,7 +240,7 @@ namespace IOB_WIN_SQL.IobSql lgInfo($"Richiesto processCustomTaskLF"); // effettua sync execImportAll(); - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; } /// @@ -289,14 +289,14 @@ namespace IOB_WIN_SQL.IobSql if (!connectionOk) { // controllo che il ping sia stato tentato almeno pingTestSec fa... - if (DateTime.Now.Subtract(lastPING).TotalSeconds > utils.CRI("pingTestSec")) + if (DateTime.Now.Subtract(DtHelp.lastPING).TotalSeconds > utils.CRI("pingTestSec")) { if (verboseLog || periodicLog) { lgInfo("SqlDb PAMA: ConnKO - tryConnect"); } // in primis salvo data ping... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; // se passa il ping faccio il resto... if (testPingMachine == IPStatus.Success) { @@ -322,7 +322,7 @@ namespace IOB_WIN_SQL.IobSql if (adpRunning) { lgInfo("Connessione OK"); - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; } } else @@ -395,7 +395,7 @@ namespace IOB_WIN_SQL.IobSql elencoSyncState = dbProxy.SyncStateDoExportAll(); sw.Stop(); DateTime adesso = DateTime.Now; - lastReadPLC = adesso; + DtHelp.lastReadPLC = adesso; lgInfo($"DB: esecuzione task dbProxy.SyncStateDoExportAll() in {sw.ElapsedMilliseconds} ms"); if (elencoSyncState != null) @@ -442,7 +442,7 @@ namespace IOB_WIN_SQL.IobSql sw.Start(); elencoSyncState = dbProxy.SyncStateDoImportAll(); sw.Stop(); - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; lgInfo($"DB: esecuzione task dbProxy.SyncStateDoImportAll() in {sw.ElapsedMilliseconds} ms"); if (elencoSyncState != null) diff --git a/IOB-WIN-WS/IobWs/Citizen.cs b/IOB-WIN-WS/IobWs/Citizen.cs index da764e01..f67f2341 100644 --- a/IOB-WIN-WS/IobWs/Citizen.cs +++ b/IOB-WIN-WS/IobWs/Citizen.cs @@ -30,9 +30,9 @@ namespace IOB_WIN_WS.IobWs public Citizen(AdapterFormNext caller, IobConfTree IobConfFull) : base(caller, IobConfFull) { lgInfo($"Richiesto Adapter IobRest.RestCitizen con i parametri seguenti | ADDR: {IOBConfFull.Device.Connect.IpAddr} | PORT: {IOBConfFull.Device.Connect.Port}"); - lastPING = DateTime.Now.AddHours(-1); + DtHelp.lastPING = DateTime.Now.AddHours(-1); redKeyAlarm = redisMan.redHash($"IOB:Status:{IOBConfFull.General.CodIOB}:Alarm:LastRead"); - lastPING = DateTime.Now.AddHours(-1); + DtHelp.lastPING = DateTime.Now.AddHours(-1); // predispongo configurazione specifica Rest... lgInfo("Rest - 01"); if (!string.IsNullOrEmpty(getOptPar("REST_CONF"))) @@ -278,14 +278,14 @@ namespace IOB_WIN_WS.IobWs if (!connectionOk) { // controllo che il ping sia stato tentato almeno pingTestSec fa... - if (DateTime.Now.Subtract(lastPING).TotalSeconds > utils.CRI("pingTestSec")) + if (DateTime.Now.Subtract(DtHelp.lastPING).TotalSeconds > utils.CRI("pingTestSec")) { if (verboseLog || periodicLog) { lgInfo("Rest: ConnKO - tryConnect"); } // in primis salvo data ping... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; bool checkMachine = false; // se passa il ping faccio il resto... if (testPingMachine == IPStatus.Success) diff --git a/IOB-WIN-WS/IobWs/EmmegiFPW.cs b/IOB-WIN-WS/IobWs/EmmegiFPW.cs index b88e895a..c2a72ecc 100644 --- a/IOB-WIN-WS/IobWs/EmmegiFPW.cs +++ b/IOB-WIN-WS/IobWs/EmmegiFPW.cs @@ -33,9 +33,9 @@ namespace IOB_WIN_WS.IobWs public EmmegiFPW(AdapterFormNext caller, IobConfTree IobConfFull) : base(caller, IobConfFull) { lgInfo($"Richiesto Adapter IobRest.EmmegiFPW con i parametri seguenti | ADDR: {IOBConfFull.Device.Connect.IpAddr} | PORT: {IOBConfFull.Device.Connect.Port}"); - lastPING = DateTime.Now.AddHours(-1); + DtHelp.lastPING = DateTime.Now.AddHours(-1); redKeyAlarm = redisMan.redHash($"IOB:Status:{IOBConfFull.General.CodIOB}:Alarm:LastRead"); - lastPING = DateTime.Now.AddHours(-1); + DtHelp.lastPING = DateTime.Now.AddHours(-1); // predispongo configurazione specifica Rest... lgInfo("01 - Rest"); if (!string.IsNullOrEmpty(getOptPar("REST_CONF"))) @@ -221,14 +221,14 @@ namespace IOB_WIN_WS.IobWs if (!connectionOk) { // controllo che il ping sia stato tentato almeno pingTestSec fa... - if (DateTime.Now.Subtract(lastPING).TotalSeconds > utils.CRI("pingTestSec")) + if (DateTime.Now.Subtract(DtHelp.lastPING).TotalSeconds > utils.CRI("pingTestSec")) { if (verboseLog || periodicLog) { lgInfo("Rest: ConnKO - tryConnect"); } // in primis salvo data ping... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; // se passa il ping faccio il resto... if (testPingMachine == IPStatus.Success) { diff --git a/IOB-WIN-WS/IobWs/Gomba.cs b/IOB-WIN-WS/IobWs/Gomba.cs index d21984c5..4efc4448 100644 --- a/IOB-WIN-WS/IobWs/Gomba.cs +++ b/IOB-WIN-WS/IobWs/Gomba.cs @@ -31,7 +31,7 @@ namespace IOB_WIN_WS.IobWs { lgInfo($"Richiesto Adapter IobSoap.Gomba con i parametri seguenti | ADDR: {IOBConfFull.Device.Connect.IpAddr} | PORT: {IOBConfFull.Device.Connect.Port}"); redKeyPesate = redisMan.redHash($"IOB:Status:{IOBConfFull.General.CodIOB}:ListPesate"); - lastPING = DateTime.Now.AddHours(-1); + DtHelp.lastPING = DateTime.Now.AddHours(-1); // verifico se sia attiva gestione riduzione FluxLog... if (!string.IsNullOrEmpty(getOptJsonKVP("numLastWeight"))) { @@ -190,7 +190,7 @@ namespace IOB_WIN_WS.IobWs lgInfo($"getDynData | SOAP: effettuata chiamata reqWeightList in {sw.Elapsed.TotalMilliseconds}ms | {dataFrom} --> {dataTo} | {listPesateCurr.Count} rec"); } // indico esecuzione e proseguo - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; return outVal; } @@ -234,14 +234,14 @@ namespace IOB_WIN_WS.IobWs if (!connectionOk) { // controllo che il ping sia stato tentato almeno pingTestSec fa... - if (DateTime.Now.Subtract(lastPING).TotalSeconds > utils.CRI("pingTestSec")) + if (DateTime.Now.Subtract(DtHelp.lastPING).TotalSeconds > utils.CRI("pingTestSec")) { if (verboseLog || periodicLog) { lgInfo("Gomba: ConnKO - tryConnect"); } // in primis salvo data ping... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; // se passa il ping faccio il resto... if (testPingMachine == IPStatus.Success) { diff --git a/IOB-WIN-WS/IobWs/IcoelSoap.cs b/IOB-WIN-WS/IobWs/IcoelSoap.cs index d79c69ba..6030121d 100644 --- a/IOB-WIN-WS/IobWs/IcoelSoap.cs +++ b/IOB-WIN-WS/IobWs/IcoelSoap.cs @@ -43,7 +43,7 @@ namespace IOB_WIN_WS.IobWs */ IcoelSizer = new Connector(IOBConfFull.Device.Connect.IpAddr, IOBConfFull.Device.Connect.Port); - lastPING = DateTime.Now.AddHours(-1); + DtHelp.lastPING = DateTime.Now.AddHours(-1); } #endregion Public Constructors @@ -154,7 +154,7 @@ namespace IOB_WIN_WS.IobWs saveValueString(ref outVal, item.Key, item.Value); } - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; return outVal; } @@ -188,7 +188,7 @@ namespace IOB_WIN_WS.IobWs } } - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; } /// @@ -258,14 +258,14 @@ namespace IOB_WIN_WS.IobWs if (!connectionOk) { // controllo che il ping sia stato tentato almeno pingTestSec fa... - if (DateTime.Now.Subtract(lastPING).TotalSeconds > utils.CRI("pingTestSec")) + if (DateTime.Now.Subtract(DtHelp.lastPING).TotalSeconds > utils.CRI("pingTestSec")) { if (verboseLog || periodicLog) { lgInfo("IcoelSoap: ConnKO - tryConnect"); } // in primis salvo data ping... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; // se passa il ping faccio il resto... if (testPingMachine == IPStatus.Success) { @@ -395,7 +395,7 @@ namespace IOB_WIN_WS.IobWs lgTrace("SOAP: effettuata chiamata IcoelSizer.GetLayoutForVarietyList()"); } - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; } #endregion Protected Methods diff --git a/IOB-WIN-WS/IobWs/RestBase.cs b/IOB-WIN-WS/IobWs/RestBase.cs index aff50844..ea646980 100644 --- a/IOB-WIN-WS/IobWs/RestBase.cs +++ b/IOB-WIN-WS/IobWs/RestBase.cs @@ -30,7 +30,7 @@ namespace IOB_WIN_WS.IobWs public RestBase(AdapterFormNext caller, IobConfTree IobConfFull) : base(caller, IobConfFull) { lgInfo($"Richiesto Adapter IobRest.Base con i parametri seguenti | ADDR: {IOBConfFull.Device.Connect.IpAddr} | PORT: {IOBConfFull.Device.Connect.Port}"); - lastPING = DateTime.Now.AddHours(-1); + DtHelp.lastPING = DateTime.Now.AddHours(-1); // predispongo configurazione specifica Rest... if (!string.IsNullOrEmpty(getOptPar("REST_CONF"))) { @@ -125,7 +125,7 @@ namespace IOB_WIN_WS.IobWs // valore non presente in vers default... se gestito fare override Dictionary outVal = new Dictionary(); // indico esecuzione e proseguo - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; return outVal; } @@ -136,7 +136,7 @@ namespace IOB_WIN_WS.IobWs public override void readSemafori(ref newDisplayData currDispData) { DateTime adesso = DateTime.Now; - lastReadPLC = adesso; + DtHelp.lastReadPLC = adesso; // verifico non sia in veto invio iniziale... if (queueInEnabCurr) { @@ -171,14 +171,14 @@ namespace IOB_WIN_WS.IobWs if (!connectionOk) { // controllo che il ping sia stato tentato almeno pingTestSec fa... - if (DateTime.Now.Subtract(lastPING).TotalSeconds > utils.CRI("pingTestSec")) + if (DateTime.Now.Subtract(DtHelp.lastPING).TotalSeconds > utils.CRI("pingTestSec")) { if (verboseLog || periodicLog) { lgInfo("Rest: ConnKO - tryConnect"); } // in primis salvo data ping... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; // se passa il ping faccio il resto... if (testPingMachine == IPStatus.Success) { diff --git a/IOB-WIN/AdapterForm.cs b/IOB-WIN/AdapterForm.cs index 70377d58..6786ab59 100644 --- a/IOB-WIN/AdapterForm.cs +++ b/IOB-WIN/AdapterForm.cs @@ -1235,7 +1235,7 @@ namespace IOB_WIN counterMAC = iobObj.contapezziPLC, lastUpdate = lastIobStatus.lastUpdate, online = utils.IOB_Online, - lastDataIn = iobObj.lastReadPLC + lastDataIn = iobObj.DtHelp.lastReadPLC }; // se diverso SALVO! if (lastIobStatus.online != currIobStatus.online || lastIobStatus.lastDataIn != currIobStatus.lastDataIn || lastIobStatus.counterIOB != currIobStatus.counterIOB || lastIobStatus.counterMAC != currIobStatus.counterMAC || lastIobStatus.queueEvLen != currIobStatus.queueEvLen || lastIobStatus.queueFlLen != currIobStatus.queueFlLen || lastIobStatus.queueAlLen != currIobStatus.queueAlLen || lastIobStatus.queueMsLen != currIobStatus.queueMsLen) diff --git a/IOB-WIN/IobGeneric.cs b/IOB-WIN/IobGeneric.cs index 5910479e..3c307a5a 100644 --- a/IOB-WIN/IobGeneric.cs +++ b/IOB-WIN/IobGeneric.cs @@ -222,27 +222,27 @@ namespace IOB_WIN /// /// dataOra ultima verifica CNC disconnesso... /// - public DateTime lastDisconnCheck; + public DateTime DtHelp.lastDisconnCheck; /// /// Data/ora ultima volta che IOB è stato dichairato online /// - public DateTime lastIobOnline = DateTime.Now.AddHours(-1); + public DateTime DtHelp.lastIobOnline = DateTime.Now.AddHours(-1); /// /// dataOra ultimo log periodico... /// - public DateTime lastPeriodicLog; + public DateTime DtHelp.lastPeriodicLog; /// /// dataOra ultimo PING inviato verso il PLC... /// - public DateTime lastPING; + public DateTime DtHelp.lastPING; /// /// DataOra ultima lettura da PLC /// - public DateTime lastReadPLC; + public DateTime DtHelp.lastReadPLC; /// /// ULtimo valore inviato (in caso di disconnessione lo reinvia x garantire watchdog...) @@ -464,7 +464,7 @@ namespace IOB_WIN // se online imposto veto check a 5 x tempo reinvio... if (answ) { - lastIobOnline = DateTime.Now; + DtHelp.lastIobOnline = DateTime.Now; } DtHelp.VetoCheckIOB = DateTime.Now.AddMilliseconds(baseUtils.nextPauseSendMSec * 5); } @@ -1044,10 +1044,10 @@ namespace IOB_WIN get { bool answ = false; - answ = (DateTime.Now.Subtract(lastPeriodicLog).TotalSeconds > utils.CRI("verboseLogTOut")); + answ = (DateTime.Now.Subtract(DtHelp.lastPeriodicLog).TotalSeconds > utils.CRI("verboseLogTOut")); if (answ) { - lastPeriodicLog = DateTime.Now; + DtHelp.lastPeriodicLog = DateTime.Now; } return answ; @@ -1786,7 +1786,7 @@ namespace IOB_WIN } // imposto contatori blink a zero... i_counters = new int[32]; - lastPeriodicLog = DateTime.Now; + DtHelp.lastPeriodicLog = DateTime.Now; // fix parametri generali... enablePrgName = true; } @@ -3852,7 +3852,7 @@ namespace IOB_WIN // init obj display newDisplayData currDispData = new newDisplayData(); // controllo contatore invio "keepalive"... invio solo a scadenza - if (DateTime.Now.Subtract(lastDisconnCheck).TotalSeconds > utils.CRI("disconMaxSec")) + if (DateTime.Now.Subtract(DtHelp.lastDisconnCheck).TotalSeconds > utils.CRI("disconMaxSec")) { // resetto tutti i vlaori BYTE IN/PREV/OUT... così invio macchina spenta... B_input = 0; @@ -3860,7 +3860,7 @@ namespace IOB_WIN B_previous = 0; accodaSigIN(ref currDispData); // update controllo - lastDisconnCheck = DateTime.Now; + DtHelp.lastDisconnCheck = DateTime.Now; } raiseRefresh(currDispData); } @@ -4118,7 +4118,7 @@ namespace IOB_WIN if (connectionOk) { readSemafori(ref currDispData); - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; } else { @@ -4142,7 +4142,7 @@ namespace IOB_WIN /// public virtual void readSemafori(ref newDisplayData currDispData) { - lastReadPLC = DateTime.Now; + DtHelp.lastReadPLC = DateTime.Now; } /// @@ -4268,12 +4268,12 @@ namespace IOB_WIN { currDispData.semOut = Semaforo.SV; // se oltre 1 min NON era online --> check pezzi! - if (DateTime.Now.Subtract(lastIobOnline).TotalMinutes > 1 && !isMulti) + if (DateTime.Now.Subtract(DtHelp.lastIobOnline).TotalMinutes > 1 && !isMulti) { - lgInfo($"sendDataBlock --> offline timeout ({lastIobOnline}) --> pzCntReload(true)"); + lgInfo($"sendDataBlock --> offline timeout ({DtHelp.lastIobOnline}) --> pzCntReload(true)"); pzCntReload(true); } - lastIobOnline = DateTime.Now; + DtHelp.lastIobOnline = DateTime.Now; } else { @@ -4344,9 +4344,9 @@ namespace IOB_WIN // loggo! lgInfo(string.Format("[SEND] {0} -> {1}", queueVal, answ)); // se oltre 1 min NON era online --> check pezzi! - if (DateTime.Now.Subtract(lastIobOnline).TotalMinutes > 1 && !isMulti) + if (DateTime.Now.Subtract(DtHelp.lastIobOnline).TotalMinutes > 1 && !isMulti) { - lgInfo($"sendToMoonPro --> offline timeaout ({lastIobOnline}) --> pzCntReload(true)"); + lgInfo($"sendToMoonPro --> offline timeaout ({DtHelp.lastIobOnline}) --> pzCntReload(true)"); pzCntReload(true); } // se richiesto effettuo refresh contapezzi @@ -4355,7 +4355,7 @@ namespace IOB_WIN pzCntReload(true); needRefreshPzCount = false; } - lastIobOnline = DateTime.Now; + DtHelp.lastIobOnline = DateTime.Now; // se "OK" verde, altrimenti errore --> ROSSO if (answ == "OK") { @@ -4438,9 +4438,9 @@ namespace IOB_WIN adpRunning = true; DtHelp.AvvioAdp = DateTime.Now; lastWatchDog = DtHelp.AvvioAdp; - lastPING = DtHelp.AvvioAdp; - lastReadPLC = DtHelp.AvvioAdp.AddMinutes(-1); - lastDisconnCheck = DtHelp.AvvioAdp; + DtHelp.lastPING = DtHelp.AvvioAdp; + DtHelp.lastReadPLC = DtHelp.AvvioAdp.AddMinutes(-1); + DtHelp.lastDisconnCheck = DtHelp.AvvioAdp; TimingData.resetData(); // aggiungo altri defaults setDefaults(resetQueue); diff --git a/IOB-WIN/IobOSAI.cs b/IOB-WIN/IobOSAI.cs index 83dd2ced..71dec67f 100644 --- a/IOB-WIN/IobOSAI.cs +++ b/IOB-WIN/IobOSAI.cs @@ -632,7 +632,7 @@ namespace IOB_WIN if (!connectionOk) { // controllo che il ping sia stato tentato almeno pingTestSec fa... - if (DateTime.Now.Subtract(lastPING).TotalSeconds > utils.CRI("pingTestSec")) + if (DateTime.Now.Subtract(DtHelp.lastPING).TotalSeconds > utils.CRI("pingTestSec")) { if (verboseLog || periodicLog) { @@ -647,7 +647,7 @@ namespace IOB_WIN if (needPing) { // in primis salvo data ping... - lastPING = DateTime.Now; + DtHelp.lastPING = DateTime.Now; // ora PING!!! IPAddress address = IPAddress.Loopback; IPAddress.TryParse(cIobConf.cncIpAddr, out address);