diff --git a/MP.MONO.ANALYZER/MP.MONO.ANALYZER.csproj b/MP.MONO.ANALYZER/MP.MONO.ANALYZER.csproj
index 8078d45..e8d107f 100644
--- a/MP.MONO.ANALYZER/MP.MONO.ANALYZER.csproj
+++ b/MP.MONO.ANALYZER/MP.MONO.ANALYZER.csproj
@@ -6,7 +6,7 @@
enable
enable
AnyCPU;x86;x64
- 1.2.2210.2318
+ 1.2.2210.2410
diff --git a/MP.MONO.ANALYZER/Resources/ChangeLog.html b/MP.MONO.ANALYZER/Resources/ChangeLog.html
index bfc62ff..898ec91 100644
--- a/MP.MONO.ANALYZER/Resources/ChangeLog.html
+++ b/MP.MONO.ANALYZER/Resources/ChangeLog.html
@@ -1,6 +1,6 @@
MAPO-MONO
- Version: 1.2.2210.2318
+ Version: 1.2.2210.2410
Release Note:
-
diff --git a/MP.MONO.ANALYZER/Resources/VersNum.txt b/MP.MONO.ANALYZER/Resources/VersNum.txt
index 452811c..96cb967 100644
--- a/MP.MONO.ANALYZER/Resources/VersNum.txt
+++ b/MP.MONO.ANALYZER/Resources/VersNum.txt
@@ -1 +1 @@
-1.2.2210.2318
+1.2.2210.2410
diff --git a/MP.MONO.ANALYZER/Resources/manifest.xml b/MP.MONO.ANALYZER/Resources/manifest.xml
index b2d3490..c869fbe 100644
--- a/MP.MONO.ANALYZER/Resources/manifest.xml
+++ b/MP.MONO.ANALYZER/Resources/manifest.xml
@@ -1,6 +1,6 @@
-
- 1.2.2210.2318
+ 1.2.2210.2410
http://nexus.steamware.net/repository/SWS/MP.MONO.ANALYZER/stable/LAST/MP.Mon.zip
http://nexus.steamware.net/repository/SWS/MP.MONO.ANALYZER/stable/LAST/ChangeLog.html
false
diff --git a/MP.MONO.Core/Constants.cs b/MP.MONO.Core/Constants.cs
index 2ea5461..d4750b8 100644
--- a/MP.MONO.Core/Constants.cs
+++ b/MP.MONO.Core/Constants.cs
@@ -46,6 +46,7 @@ namespace MP.MONO.Core
public static readonly string ALARM_BLINK_CURR_KEY = $"{BASE_HASH}:Current:AlarmsBlink";
public static readonly string ALARM_CURR_KEY = $"{BASE_HASH}:Current:Alarms";
public static readonly string ALARM_RECEIV_KEY = $"{BASE_HASH}:Current:AlarmsReceived";
+ public static readonly string ALARM_PEND_KEY = $"{BASE_HASH}:Current:AlarmsPendingClose";
public static readonly string EVENT_LOG_CURR_KEY = $"{BASE_HASH}:Current:EventsLog";
public static readonly string MACH_STATS_CURR_KEY = $"{BASE_HASH}:Current:MachStats";
public static readonly string MAINT_STATS_CURR_KEY = $"{BASE_HASH}:Current:Maintenance";
diff --git a/MP.MONO.DECODER/AlarmsBlinkManager.cs b/MP.MONO.DECODER/AlarmsBlinkManager.cs
index 344785c..ac715e8 100644
--- a/MP.MONO.DECODER/AlarmsBlinkManager.cs
+++ b/MP.MONO.DECODER/AlarmsBlinkManager.cs
@@ -1,5 +1,7 @@
using Microsoft.Extensions.Configuration;
using MP.MONO.Core;
+using MP.MONO.Data;
+using MP.MONO.Data.Controllers;
using Newtonsoft.Json;
using NLog;
using StackExchange.Redis;
@@ -8,19 +10,6 @@ namespace MP.MONO.DECODER
{
public class AlarmsBlinkManager
{
- #region Protected Fields
-
- protected static Logger Log = LogManager.GetCurrentClassLogger();
-
- #endregion Protected Fields
-
- #region Private Fields
-
- private static ConnectionMultiplexer? redisConn = null;
- private static IDatabase? redisDb = null;
-
- #endregion Private Fields
-
#region Public Constructors
public AlarmsBlinkManager()
@@ -34,6 +23,22 @@ namespace MP.MONO.DECODER
redisConn = ConnectionMultiplexer.Connect(config.GetConnectionString("Redis"));
redisDb = redisConn.GetDatabase();
+ Log.Info("ABM: Redis OK!");
+
+ // altri parametri per check vari
+ string connStringDB = DbConfig.CONNECTION_STRING;
+ if (string.IsNullOrEmpty(connStringDB))
+ {
+ Log.Error("ABM: ConnString empty!");
+ }
+ else
+ {
+ dbController = new MpDbController();
+ Log.Info("ABM: DbController OK");
+ Console.WriteLine("ABM: DbController OK");
+ }
+
+ setupAlarmState();
Log.Info("AlarmsBlinkManager OK");
Console.WriteLine("AlarmsBlinkManager OK");
@@ -41,6 +46,112 @@ namespace MP.MONO.DECODER
#endregion Public Constructors
+ #region Public Properties
+
+ ///
+ /// Elenco allarmi attivi e acknowled ad es: subito i nuovi, con ritardo i cessati
+ ///
+ public static List alarmsActAck
+ {
+ get
+ {
+ List answ = new List();
+ if (useRedis)
+ {
+ answ = getAlarms("Current");
+ }
+ else
+ {
+ answ = _alarmsActAck;
+ }
+ return answ;
+ }
+ set
+ {
+ if (useRedis)
+ {
+ setAlarms("Current", value);
+ }
+ else
+ {
+ _alarmsActAck = value;
+ }
+ }
+ }
+
+ ///
+ /// Elenco ultimo set allarmi ricevuti
+ ///
+ public static List alarmsLastRec
+ {
+ get
+ {
+ List answ = new List();
+ if (useRedis)
+ {
+ answ = getAlarms("LastReceived");
+ }
+ else
+ {
+ answ = _alarmsLastRec;
+ }
+ return answ;
+ }
+ set
+ {
+ if (useRedis)
+ {
+ setAlarms("LastReceived", value);
+ }
+ else
+ {
+ _alarmsLastRec = value;
+ }
+ }
+ }
+
+ ///
+ /// Ultima Stringa LOG allarmi salvata
+ ///
+ public static string alarmsLogSaved
+ {
+ get => _alarmsLogSaved;
+ set => _alarmsLogSaved = value;
+ }
+
+ public static List alarmsPendingClose
+ {
+ get
+ {
+ // rileggo da REDIS SE ci sono allarmi che sono pending close... in un area che dura poco (2 sec)
+ List lista = new List();
+ // in base al tipo leggo una chiave redis o l'altra...
+ if (redisDb != null)
+ {
+ string rawData = redisDb.StringGet(Constants.ALARM_PEND_KEY);
+ if (!string.IsNullOrEmpty(rawData))
+ {
+ var desList = JsonConvert.DeserializeObject
>(rawData);
+ if (desList != null)
+ {
+ lista = desList;
+ }
+ }
+ }
+ return lista;
+ }
+ set
+ {
+ if (redisDb != null)
+ {
+ string rawData = JsonConvert.SerializeObject(value);
+ redisDb.StringSet(Constants.ALARM_PEND_KEY, rawData, TimeSpan.FromMilliseconds(3000));
+ }
+ }
+ }
+
+ #endregion Public Properties
+
#region Public Methods
///
@@ -66,15 +177,15 @@ namespace MP.MONO.DECODER
.Select(grp => grp.First())
.OrderBy(x => x)
.ToList();
- Log.Info($"Ricezione update allarmi | {alarmListReceived.Count} --> {alarmListReceivedOk.Count} distinct");
+ Log.Debug($"Ricezione update allarmi | {alarmListReceived.Count} --> {alarmListReceivedOk.Count} distinct");
}
else
{
- Log.Info($"Ricezione ZERO allarmi | {alarmListReceived.Count}");
+ Log.Debug($"Ricezione ZERO allarmi | {alarmListReceived.Count}");
}
// salvo set allarmi ricevuti...
- setAlarms("LastReceived", alarmListReceivedOk);
+ alarmsLastRec = alarmListReceivedOk;
Log.Debug($"Salvataggio LastReceived | count {alarmListReceivedOk.Count}");
// elenco allarmi confermati
@@ -95,7 +206,7 @@ namespace MP.MONO.DECODER
// riordino
alarmListCurrent = alarmListCurrent.OrderBy(x => x).ToList();
// ...e salvo subito
- setAlarms("Current", alarmListCurrent);
+ alarmsActAck = alarmListCurrent;
// loggo controllo
Log.Debug($"Esito controllo | {alarmListReceivedOk.Count} ricevuti | {alarmListAdded.Count} aggiunti | {alarmListCeased.Count} cessati");
@@ -262,6 +373,43 @@ namespace MP.MONO.DECODER
#endregion Public Methods
+ #region Protected Fields
+
+ protected static Logger Log = LogManager.GetCurrentClassLogger();
+
+ #endregion Protected Fields
+
+ #region Private Fields
+
+ private static ConnectionMultiplexer? redisConn = null;
+
+ private static IDatabase? redisDb = null;
+
+ private static bool useRedis = true;
+
+ private MpDbController dbController = null!;
+
+ #endregion Private Fields
+
+ #region Private Properties
+
+ ///
+ /// Elenco allarmi attivi e acknowled ad es: subito i nuovi, con ritardo i cessati
+ ///
+ private static List _alarmsActAck { get; set; } = new List();
+
+ ///
+ /// Elenco ultimo set allarmi ricevuti
+ ///
+ private static List _alarmsLastRec { get; set; } = new List();
+
+ ///
+ /// Elenco allarmi registrati come LOG (=ultima variazione riconosciuta)
+ ///
+ private static string _alarmsLogSaved { get; set; } = "";
+
+ #endregion Private Properties
+
#region Private Methods
///
@@ -318,6 +466,18 @@ namespace MP.MONO.DECODER
return fatto;
}
+ ///
+ /// Setup iniziale allarmi
+ ///
+ private void setupAlarmState()
+ {
+ // setup preliminare allarmi da DB
+ alarmsActAck = dbController.AlarmRecGetActive().Select(x => x.AlarmListNav.FullValue).Distinct().ToList();
+ alarmsLastRec = new List();
+ alarmsPendingClose = new List();
+ Log.Debug($"Setup Stato allarmi | act: {alarmsActAck.Count}");
+ }
+
#endregion Private Methods
}
}
\ No newline at end of file
diff --git a/MP.MONO.DECODER/MP.MONO.DECODER.csproj b/MP.MONO.DECODER/MP.MONO.DECODER.csproj
index 45c8626..e46b5cd 100644
--- a/MP.MONO.DECODER/MP.MONO.DECODER.csproj
+++ b/MP.MONO.DECODER/MP.MONO.DECODER.csproj
@@ -6,7 +6,7 @@
enable
enable
AnyCPU;x86;x64
- 1.2.2210.2318
+ 1.2.2210.2411
diff --git a/MP.MONO.DECODER/NLog.config b/MP.MONO.DECODER/NLog.config
index 6af3f47..1d977dc 100644
--- a/MP.MONO.DECODER/NLog.config
+++ b/MP.MONO.DECODER/NLog.config
@@ -6,29 +6,29 @@
throwExceptions="false"
internalLogLevel="Off" internalLogFile="c:\temp\nlog-internal.log">
-
-
+
-
-
+
-
-
-
-
-
+
-
-
+
+
-
-
-
-
-
+
+
+
+
\ No newline at end of file
diff --git a/MP.MONO.DECODER/Program.cs b/MP.MONO.DECODER/Program.cs
index 255378e..1591adf 100644
--- a/MP.MONO.DECODER/Program.cs
+++ b/MP.MONO.DECODER/Program.cs
@@ -81,7 +81,6 @@ IDatabase? redisDb = redisConn.GetDatabase();
AlarmReportingMode alarmMode = AlarmReportingMode.ND;
List? alarmsBankBitConf = new List();
List? alarmsRListConf = new List();
-List? activeAlarmList = new List();
List? alarmsRecorded = new List();
List? machineModeConf = new List();
List? machineStatusConf = new List();
@@ -162,77 +161,11 @@ MessagePipe alarmsRecvPipe = new MessagePipe(redisConn, Constants.ALARM_RAW_QUEU
DateTime lastExecAlarms = DateTime.Now.AddHours(-1);
// registro gestione eventi
alarmsRecvPipe.EA_NewMessage += AlarmsValPipe_EA_NewMessage;
-setupAlarmState();
/* --------------------------------
* Funzioni / metodi accessori
* --------------------------------*/
-///
-/// Setup iniziale allarmi
-///
-void setupAlarmState()
-{
- // setup preliminare allarmi da DB
- var actAlarmsList = dbController.AlarmRecGetActive().Select(x => x.AlarmListNav.FullValue).Distinct().ToList();
- setAlarms("Current", actAlarmsList);
- setAlarms("LastReceived", new List());
- Log.Debug($"Setup Stato allarmi | act: {actAlarmsList.Count}");
-}
-
-///
-/// Recupero da redis gli allarmi secondo tipo LastReceived / Sent
-///
-List getAlarms(string tipo)
-{
- // rileggo da REDIS la conf attuale allarmi già attivi da area ALARM_CURR_KEY
- List lastAlarms = new List();
- // in base al tipo leggo una chiave redis o l'altra...
- string rawData = "";
- if (redisDb != null)
- {
- if (tipo == "LastReceived")
- {
- rawData = redisDb.StringGet(Constants.ALARM_RECEIV_KEY);
- }
- else
- {
- rawData = redisDb.StringGet(Constants.ALARM_CURR_KEY);
- }
- }
- // se trovati uso questi...
- if (!string.IsNullOrEmpty(rawData))
- {
- var rawLastAlarms = JsonConvert.DeserializeObject>(rawData);
- lastAlarms = rawLastAlarms != null ? rawLastAlarms : new List();
- Log.Debug($"Lettura allarmi | tipo: {tipo} | num: {lastAlarms.Count}");
- }
- return lastAlarms;
-}
-///
-/// Salvo in redis gli allarmi secondo tipo LastReceived / Sent
-///
-bool setAlarms(string tipo, List listAlarm)
-{
- bool fatto = false;
- string rawData = JsonConvert.SerializeObject(listAlarm);
-
- if (redisDb != null)
- {
- if (tipo == "LastReceived")
- {
- fatto = redisDb.StringSet(Constants.ALARM_RECEIV_KEY, rawData);
- }
- else
- {
- fatto = redisDb.StringSet(Constants.ALARM_CURR_KEY, rawData);
- }
- }
-
- Log.Debug($"Scrittura allarmi | tipo: {tipo} | num: {listAlarm.Count}");
- return fatto;
-}
-
AlarmListModel? getAlarmModel(string alarmFullCode)
{
// cerco l'allarme nell'elenco degli allarmi dal DB
@@ -266,44 +199,55 @@ AlarmListModel? getAlarmModel(string alarmFullCode)
async Task checkCeasedAlarm(string alarmFullCode)
{
bool answ = false;
- Log.Debug($"checkCeasedAlarm 01 | Verifica scadenza allarmi | cod: {alarmFullCode}");
-
- // attendo periodo pausa...
- await Task.Delay(BlinkPeriodMSec);
-
- // cerco allarme da valore REDIS ultimi ricevuti
- var alarmListRecev = getAlarms("LastReceived");
- if (alarmListRecev != null)
+ // verifico NON SIA già in elenco check...
+ List listClose = AlarmsBlinkManager.alarmsPendingClose;
+ if (!listClose.Contains(alarmFullCode))
{
- // ...SE mancasse
- if (!alarmListRecev.Contains(alarmFullCode))
+ Log.Debug($"checkCeasedAlarm 01 | Verifica scadenza allarmi | cod: {alarmFullCode}");
+ listClose.Add(alarmFullCode);
+ AlarmsBlinkManager.alarmsPendingClose = listClose;
+
+ // attendo periodo pausa...
+ await Task.Delay(BlinkPeriodMSec);
+
+ // cerco allarme copiando il set degli ultimi ricevuti
+ List alarmListRecev = AlarmsBlinkManager.alarmsLastRec;
+ if (alarmListRecev != null)
{
- Log.Debug($"checkCeasedAlarm 02 | Allarme ancora mancante | cod: {alarmFullCode}");
- // recupero allarme...
- // se non lo trovo
- var foundAlarm = alarmsRecorded
- .Where(x => x.FullValue == alarmFullCode)
- .FirstOrDefault();
- // --> chiudo
- if (foundAlarm != null)
+ // ...SE mancasse
+ if (!alarmListRecev.Contains(alarmFullCode))
{
- // salvo sul DB
- _ = dbController.AlarmRecCloseActive(foundAlarm.AlarmId);
- Log.Info($"Chiusura allarme | Id: {foundAlarm.AlarmId}");
- Log.Debug($"checkCeasedAlarm 03 | Chiusura allarme | cod: {alarmFullCode}");
+ Log.Debug($"checkCeasedAlarm 02 | Allarme ancora mancante | cod: {alarmFullCode}");
+ // recupero allarme...
+ // se non lo trovo
+ var foundAlarm = alarmsRecorded
+ .Where(x => x.FullValue == alarmFullCode)
+ .FirstOrDefault();
+ // --> chiudo
+ if (foundAlarm != null)
+ {
+ // salvo sul DB
+ _ = dbController.AlarmRecCloseActive(foundAlarm.AlarmId);
+ Log.Info($"Chiusura allarme | Id: {foundAlarm.AlarmId}");
+ Log.Debug($"checkCeasedAlarm 03 | Chiusura allarme | cod: {alarmFullCode}");
+ }
+ // --> rimuovo da elenco attivi!
+ var alarmListSent = new List(AlarmsBlinkManager.alarmsActAck);
+ int numPre = alarmListSent.Count();
+ alarmListSent.Remove(alarmFullCode);
+ int numPost = alarmListSent.Count();
+ Log.Debug($"checkCeasedAlarm 04 | Salvataggio Sent alarms | num: {numPre} --> {numPost}");
+ // invio attivi...
+ string serAlarms = JsonConvert.SerializeObject(alarmListSent);
+ // invio sulla message pipeline corretta TUTTI gli allarmi serializzati
+ alarmsSendPipe.saveAndSendMessage(Constants.ALARM_CURR_KEY, serAlarms);
}
- // --> rimuovo da elenco attivi!
- var alarmListSent = getAlarms("Current");
- int numPre = alarmListSent.Count();
- alarmListSent.Remove(alarmFullCode);
- int numPost = alarmListSent.Count();
- Log.Debug($"checkCeasedAlarm 04 | Salvataggio Sent alarms | num: {numPre} --> {numPost}");
- // invio attivi...
- string serAlarms = JsonConvert.SerializeObject(alarmListSent);
- // invio sulla message pipeline corretta TUTTI gli allarmi serializzati
- alarmsSendPipe.saveAndSendMessage(Constants.ALARM_CURR_KEY, serAlarms);
+ answ = true;
}
- answ = true;
+ // rimuovo da pending close
+ listClose = new List(AlarmsBlinkManager.alarmsPendingClose);
+ listClose.Remove(alarmFullCode);
+ AlarmsBlinkManager.alarmsPendingClose = listClose;
}
return answ;
}
@@ -316,7 +260,7 @@ async Task checkCloseAllAlarm()
bool answ = false;
Log.Debug($"Verifica checkCloseAllAlarm");
// cerco allarme da valore REDIS ultimi ricevuti
- var alarmSent = getAlarms("Current");
+ List alarmSent = new List(AlarmsBlinkManager.alarmsActAck);
if (alarmSent != null)
{
bool isZero = alarmSent.Count() == 0;
@@ -326,7 +270,7 @@ async Task checkCloseAllAlarm()
// attendo periodo pausa...
await Task.Delay(BlinkPeriodMSec * 2);
// rileggo stato
- alarmSent = getAlarms("Current");
+ alarmSent = new List(AlarmsBlinkManager.alarmsActAck);
isZero = alarmSent.Count() == 0;
// ...SE fossero sempre zero
if (isZero)
@@ -671,10 +615,8 @@ async void AlarmsValPipe_EA_NewMessage(object? sender, EventArgs e)
// decodifico allarmi ricevuti
var alarmListRaw = JsonConvert.DeserializeObject>(currArgs.newMessage);
// allarmi correnti
- List alarmListCurrent = getAlarms("Current");
+ List alarmListCurrent = AlarmsBlinkManager.alarmsActAck;
- // controllo se ora allarmi zero...
- bool emptyAlarm = (alarmListCurrent.Count > 0 && alarmListRaw.Count == 0);
// init classi helper
List addedAlarms = new List();
@@ -686,8 +628,14 @@ async void AlarmsValPipe_EA_NewMessage(object? sender, EventArgs e)
string serAlarms = JsonConvert.SerializeObject(alarmListCurrent);
alarmsSendPipe.saveAndSendMessage(Constants.ALARM_CURR_KEY, serAlarms);
- // se cambiato --> preparo record LOG e salvo
- if (fatto || emptyAlarm)
+ // se cambiato --> ultimo ricevuto != current...
+ string lastLogList = AlarmsBlinkManager.alarmsLogSaved;
+ // calcolo nuova stringa...
+ string newLogString = string.Join(", ", alarmListRaw);
+ bool logChanged = !lastLogList.Equals(newLogString);
+ AlarmsBlinkManager.alarmsLogSaved = newLogString;
+
+ if (logChanged)
{
// preparo dati x alarmLog
AlarmLogModel newAlarmLog = new AlarmLogModel()
@@ -701,7 +649,7 @@ async void AlarmsValPipe_EA_NewMessage(object? sender, EventArgs e)
};
alarmLogList.Add(newAlarmLog);
_ = dbController.AlarmLogInsertMany(alarmLogList).Result;
- Log.Info("Inserito Record AlarmLogModel");
+ Log.Debug("Inserito Record AlarmLogModel");
}
if (addedAlarms.Count > 0)
@@ -726,7 +674,7 @@ async void AlarmsValPipe_EA_NewMessage(object? sender, EventArgs e)
}
// salvo sul DB
_ = dbController.AlarmRecInsertMany(alarmRecList).Result;
- Log.Info($"Inseriti {alarmRecList.Count} Records AlarmRecModel");
+ Log.Debug($"Inseriti {alarmRecList.Count} Records AlarmRecModel");
}
if (ceasedAlarms.Count > 0)
{
@@ -742,7 +690,6 @@ async void AlarmsValPipe_EA_NewMessage(object? sender, EventArgs e)
// Loggo quanto fatto
Log.Debug($"Chiamato controllo differito per {ceasedAlarms.Count} allarmi cessati");
}
-
#if false
// effettuo selezione dei SOLI allarmi distinct (in caso di cambio posizione...)
@@ -776,7 +723,7 @@ async void AlarmsValPipe_EA_NewMessage(object? sender, EventArgs e)
// rileggo da REDIS la conf attuale allarmi già attivi da area ALARM_CURR_KEY
// FIXME TODO !!! usare una lista thread safe?!?!?
- List lastAlarms = getAlarms("Current");
+ List lastAlarms = alarmsActAck;
List startedAlarms = new List();
List ceasedAlarms = new List();
string serAlarms = "";
diff --git a/MP.MONO.DECODER/Resources/ChangeLog.html b/MP.MONO.DECODER/Resources/ChangeLog.html
index bfc62ff..ae5405b 100644
--- a/MP.MONO.DECODER/Resources/ChangeLog.html
+++ b/MP.MONO.DECODER/Resources/ChangeLog.html
@@ -1,6 +1,6 @@
MAPO-MONO
- Version: 1.2.2210.2318
+ Version: 1.2.2210.2411
Release Note:
-
diff --git a/MP.MONO.DECODER/Resources/VersNum.txt b/MP.MONO.DECODER/Resources/VersNum.txt
index 452811c..4eaed93 100644
--- a/MP.MONO.DECODER/Resources/VersNum.txt
+++ b/MP.MONO.DECODER/Resources/VersNum.txt
@@ -1 +1 @@
-1.2.2210.2318
+1.2.2210.2411
diff --git a/MP.MONO.DECODER/Resources/manifest.xml b/MP.MONO.DECODER/Resources/manifest.xml
index c5d0b99..d559cce 100644
--- a/MP.MONO.DECODER/Resources/manifest.xml
+++ b/MP.MONO.DECODER/Resources/manifest.xml
@@ -1,6 +1,6 @@
-
- 1.2.2210.2318
+ 1.2.2210.2411
http://nexus.steamware.net/repository/SWS/MP.MONO.DECODER/stable/LAST/MP.Mon.zip
http://nexus.steamware.net/repository/SWS/MP.MONO.DECODER/stable/LAST/ChangeLog.html
false
diff --git a/MP.MONO.SIM/MP.MONO.SIM.csproj b/MP.MONO.SIM/MP.MONO.SIM.csproj
index dfbf043..c9b4ac2 100644
--- a/MP.MONO.SIM/MP.MONO.SIM.csproj
+++ b/MP.MONO.SIM/MP.MONO.SIM.csproj
@@ -6,7 +6,7 @@
enable
enable
AnyCPU;x86;x64
- 1.2.2210.2318
+ 1.2.2210.2411
diff --git a/MP.MONO.SIM/Program.cs b/MP.MONO.SIM/Program.cs
index 476a328..53dc5d6 100644
--- a/MP.MONO.SIM/Program.cs
+++ b/MP.MONO.SIM/Program.cs
@@ -365,40 +365,40 @@ void simAlarms()
// aggiungo 1:1 ed invio
foreach (var item in NewActiveAlarm)
{
- Thread.Sleep(rand.Next(400, 700));
+ Thread.Sleep(rand.Next(0, 10));
currAlarm.Add(item.Key, item.Value);
sendActiveAlarm(currAlarm);
}
- // CICLO 01: aspetto periodo blink... tra 80 e 110% periodo
- Thread.Sleep(rand.Next(800 * perRefresh, 1100 * perRefresh));
+ // CICLO 01: aspetto periodo blink... tra 80 e 100% periodo
+ Thread.Sleep(rand.Next(800 * perRefresh, 1000 * perRefresh));
// tolgo tutti ed invio
currAlarm = new Dictionary();
sendActiveAlarm(currAlarm);
// riaggiungo 1:1 ed invio
foreach (var item in NewActiveAlarm)
{
- Thread.Sleep(rand.Next(400, 700));
+ Thread.Sleep(rand.Next(200, 600));
currAlarm.Add(item.Key, item.Value);
sendActiveAlarm(currAlarm);
}
- Thread.Sleep(rand.Next(800 * perRefresh, 1000 * perRefresh));
- // CICLO 02: aspetto periodo blink... tra 80 e 110% periodo
+ // CICLO 02: aspetto periodo blink...
+ Thread.Sleep(rand.Next(800 * perRefresh, 1000 * perRefresh));
// tolgo tutti ed invio
currAlarm = new Dictionary();
sendActiveAlarm(currAlarm);
// riaggiungo 1:1 ed invio
foreach (var item in NewActiveAlarm)
{
- Thread.Sleep(rand.Next(400, 700));
+ Thread.Sleep(rand.Next(200, 600));
currAlarm.Add(item.Key, item.Value);
sendActiveAlarm(currAlarm);
}
+
+
+ // CICLO 03: aspetto periodo blink...
Thread.Sleep(rand.Next(800 * perRefresh, 1000 * perRefresh));
-
-
- // CICLO 03: aspetto periodo blink... tra 80 e 110% periodo
// tolgo tutti ed invio
currAlarm = new Dictionary();
sendActiveAlarm(currAlarm);
@@ -421,7 +421,7 @@ void simAlarms()
// invio allarmi
sendActiveAlarm(NewActiveAlarm);
// aspetto poco
- Thread.Sleep(rand.Next(100, 1000 * sogliaSecAllarmi));
+ Thread.Sleep(rand.Next(1000, 1000 * sogliaSecAllarmi));
// svuoto
NewActiveAlarm = new Dictionary();
// invio update
diff --git a/MP.MONO.SIM/Resources/ChangeLog.html b/MP.MONO.SIM/Resources/ChangeLog.html
index bfc62ff..ae5405b 100644
--- a/MP.MONO.SIM/Resources/ChangeLog.html
+++ b/MP.MONO.SIM/Resources/ChangeLog.html
@@ -1,6 +1,6 @@
MAPO-MONO
-
Version: 1.2.2210.2318
+ Version: 1.2.2210.2411
Release Note:
-
diff --git a/MP.MONO.SIM/Resources/VersNum.txt b/MP.MONO.SIM/Resources/VersNum.txt
index 452811c..4eaed93 100644
--- a/MP.MONO.SIM/Resources/VersNum.txt
+++ b/MP.MONO.SIM/Resources/VersNum.txt
@@ -1 +1 @@
-1.2.2210.2318
+1.2.2210.2411
diff --git a/MP.MONO.SIM/Resources/manifest.xml b/MP.MONO.SIM/Resources/manifest.xml
index bed48c7..690ae0b 100644
--- a/MP.MONO.SIM/Resources/manifest.xml
+++ b/MP.MONO.SIM/Resources/manifest.xml
@@ -1,6 +1,6 @@
-
- 1.2.2210.2318
+ 1.2.2210.2411
http://nexus.steamware.net/repository/SWS/MP.MONO.SIM/stable/LAST/MP.Mon.zip
http://nexus.steamware.net/repository/SWS/MP.MONO.SIM/stable/LAST/ChangeLog.html
false