Compare commits
9 Commits
blacklist_
...
master
Author | SHA1 | Date | |
---|---|---|---|
74fa47daa6 | |||
93bfc46d85 | |||
16647ca6c4 | |||
f70027424c | |||
8e1e233826 | |||
df1dc2bf15 | |||
7bb4a6dc66 | |||
2e5267b6f7 | |||
6273746693 |
@ -262,6 +262,7 @@ namespace AppServer
|
|||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
//get unit system position
|
//get unit system position
|
||||||
int unitSC_ID = ((Vehicle_Data)MainForm.VehList[radioID2]).sc_id;
|
int unitSC_ID = ((Vehicle_Data)MainForm.VehList[radioID2]).sc_id;
|
||||||
UnitSysPosition sysPos = DBvehInfo.getSystemPosition(unitSC_ID);
|
UnitSysPosition sysPos = DBvehInfo.getSystemPosition(unitSC_ID);
|
||||||
@ -271,7 +272,8 @@ namespace AppServer
|
|||||||
//send radio disable to GW
|
//send radio disable to GW
|
||||||
Utils.WriteLine("Radio disable was sent on " + sysPos.Gw_id + "." + sysPos.R_gw_id + " gateway", ConsoleColor.Cyan);
|
Utils.WriteLine("Radio disable was sent on " + sysPos.Gw_id + "." + sysPos.R_gw_id + " gateway", ConsoleColor.Cyan);
|
||||||
string test2 = $"#{(int)MessageBusCmds.RadioEnableDisableRequest}#" + dest + "#0#";
|
string test2 = $"#{(int)MessageBusCmds.RadioEnableDisableRequest}#" + dest + "#0#";
|
||||||
MainForm.udp.Send(Utils.Convert_text_For_multicast("#0.0" + test2), Utils.Convert_text_For_multicast("#0.0" + test2).Length);
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0" + test2);
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
@ -349,9 +351,13 @@ namespace AppServer
|
|||||||
try
|
try
|
||||||
{
|
{
|
||||||
string test2 = "#210#1#Can't write GPS data in DB#";
|
string test2 = "#210#1#Can't write GPS data in DB#";
|
||||||
if (ex.Message == "AlarmError") test2 = "#210#5#Can't write Alarm data in DB#";
|
if (ex.Message == "AlarmError")
|
||||||
else if (ex.Message == "StolenError") test2 = "#210#6#Can't write Stolen data in DB#";
|
test2 = "#210#5#Can't write Alarm data in DB#";
|
||||||
MainForm.udp.Send(Utils.Convert_text_For_multicast("#0.0" + test2), Utils.Convert_text_For_multicast("#0.0" + test2).Length);
|
else if (ex.Message == "StolenError")
|
||||||
|
test2 = "#210#6#Can't write Stolen data in DB#";
|
||||||
|
|
||||||
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0" + test2);
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
catch (Exception ex2)
|
catch (Exception ex2)
|
||||||
{
|
{
|
||||||
@ -397,7 +403,10 @@ namespace AppServer
|
|||||||
{
|
{
|
||||||
// send callout clear
|
// send callout clear
|
||||||
string test = "#178#" + callout.RadioID.ToString() + "#" + callout.Severity + "#";
|
string test = "#178#" + callout.RadioID.ToString() + "#" + callout.Severity + "#";
|
||||||
MainForm.udp.Send(Utils.Convert_text_For_multicast("#0.0" + test), Utils.Convert_text_For_multicast("#0.0" + test).Length);
|
|
||||||
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0" + test);
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
|
|
||||||
Utils.WriteLine($"Sent CallOut Stop request with Severity [{callout.Severity}] for unit {callout.RadioID.ToString()} ");
|
Utils.WriteLine($"Sent CallOut Stop request with Severity [{callout.Severity}] for unit {callout.RadioID.ToString()} ");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -578,7 +587,8 @@ namespace AppServer
|
|||||||
{
|
{
|
||||||
//send alarm on message buss
|
//send alarm on message buss
|
||||||
test = "#136#" + radioID.ToString() + "#" + tmpresp + "#";
|
test = "#136#" + radioID.ToString() + "#" + tmpresp + "#";
|
||||||
MainForm.udp.Send(Utils.Convert_text_For_multicast("#0.0" + test), Utils.Convert_text_For_multicast("#0.0" + test).Length);
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0" + test);
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
|
|
||||||
String date = DateTime.Now.ToUniversalTime().DateTo70Format().ToString();
|
String date = DateTime.Now.ToUniversalTime().DateTo70Format().ToString();
|
||||||
@ -606,7 +616,10 @@ namespace AppServer
|
|||||||
tmpX = dbvehs.getSystemPosition(Convert.ToInt32(keyobj));
|
tmpX = dbvehs.getSystemPosition(Convert.ToInt32(keyobj));
|
||||||
|
|
||||||
test = "#142#" + tmpX.Gw_id + "." + tmpX.R_gw_id + "." + (String)tmpHashName[keyobj] + "#" + /*"Message from unit " + ((Vehicle_Data)MainForm.VehList[radioID.ToString()]).Name + " :" +*/ obj2.msgbody + "#" + date + "#";
|
test = "#142#" + tmpX.Gw_id + "." + tmpX.R_gw_id + "." + (String)tmpHashName[keyobj] + "#" + /*"Message from unit " + ((Vehicle_Data)MainForm.VehList[radioID.ToString()]).Name + " :" +*/ obj2.msgbody + "#" + date + "#";
|
||||||
MainForm.udp.Send(Utils.Convert_text_For_multicast("#0." + date + test), Utils.Convert_text_For_multicast("#0." + date + test).Length);
|
|
||||||
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0." + date + test);
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
|
|
||||||
Thread.Sleep(100);
|
Thread.Sleep(100);
|
||||||
|
|
||||||
Utils.WriteLine($"Zone alert sms request [{obj2.msgbody}] for unit {(String)tmpHashName[keyobj]} on gw [{(tmpX.Gw_id + "." + tmpX.R_gw_id)}]");
|
Utils.WriteLine($"Zone alert sms request [{obj2.msgbody}] for unit {(String)tmpHashName[keyobj]} on gw [{(tmpX.Gw_id + "." + tmpX.R_gw_id)}]");
|
||||||
@ -618,7 +631,8 @@ namespace AppServer
|
|||||||
{
|
{
|
||||||
tmpX = dbvehs.getSystemPositionIMEI(radioID);
|
tmpX = dbvehs.getSystemPositionIMEI(radioID);
|
||||||
test = "#142#" + tmpX.Gw_id + "." + tmpX.R_gw_id + "." + radioID + "#" + obj2.msgbody2 + "#" + DateTime.Now.ToUniversalTime().DateTo70Format().ToString() + "#";
|
test = "#142#" + tmpX.Gw_id + "." + tmpX.R_gw_id + "." + radioID + "#" + obj2.msgbody2 + "#" + DateTime.Now.ToUniversalTime().DateTo70Format().ToString() + "#";
|
||||||
MainForm.udp.Send(Utils.Convert_text_For_multicast("#0." + date + test), Utils.Convert_text_For_multicast("#0." + date + test).Length);
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0." + date + test);
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
|
|
||||||
Utils.WriteLine($"Zone alert sms request [{obj2.msgbody2}] for unit {radioID} on gw [{(tmpX.Gw_id + "." + tmpX.R_gw_id)}]");
|
Utils.WriteLine($"Zone alert sms request [{obj2.msgbody2}] for unit {radioID} on gw [{(tmpX.Gw_id + "." + tmpX.R_gw_id)}]");
|
||||||
}
|
}
|
||||||
@ -628,7 +642,8 @@ namespace AppServer
|
|||||||
{
|
{
|
||||||
tmpX = dbvehs.getSystemPositionIMEI(radioID);
|
tmpX = dbvehs.getSystemPositionIMEI(radioID);
|
||||||
test = "#177#" + radioID.ToString() + "#" + obj2.calloutSeverity + "#" + obj2.name + "#";
|
test = "#177#" + radioID.ToString() + "#" + obj2.calloutSeverity + "#" + obj2.name + "#";
|
||||||
MainForm.udp.Send(Utils.Convert_text_For_multicast("#0.0" + test), Utils.Convert_text_For_multicast("#0.0" + test).Length);
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0." + test);
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
|
|
||||||
callOutQueue.PostItem(new CallOut() { RadioID = radioID, Severity = obj2.calloutSeverity, Time = DateTime.Now});
|
callOutQueue.PostItem(new CallOut() { RadioID = radioID, Severity = obj2.calloutSeverity, Time = DateTime.Now});
|
||||||
Utils.WriteLine($"Zone CallOut request with Severity [{obj2.calloutSeverity}] for unit {radioID} on gw [{(tmpX.Gw_id + "." + tmpX.R_gw_id)}]");
|
Utils.WriteLine($"Zone CallOut request with Severity [{obj2.calloutSeverity}] for unit {radioID} on gw [{(tmpX.Gw_id + "." + tmpX.R_gw_id)}]");
|
||||||
@ -684,14 +699,16 @@ namespace AppServer
|
|||||||
{
|
{
|
||||||
//send alarm on message buss
|
//send alarm on message buss
|
||||||
string test = "#137#" + radioID.ToString() + "#" + tmpresp + "#";
|
string test = "#137#" + radioID.ToString() + "#" + tmpresp + "#";
|
||||||
MainForm.udp.Send(Utils.Convert_text_For_multicast("#0.0" + test), Utils.Convert_text_For_multicast("#0.0" + test).Length);
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0" + test);
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
|
|
||||||
//send CallOut
|
//send CallOut
|
||||||
if(obj2.callout && tmpresp.ToString().Contains("IN "))
|
if(obj2.callout && tmpresp.ToString().Contains("IN "))
|
||||||
{
|
{
|
||||||
string test = "#177#" + radioID + "#" + obj2.calloutSeverity + "#" + obj2.name + "#";
|
string test = "#177#" + radioID + "#" + obj2.calloutSeverity + "#" + obj2.name + "#";
|
||||||
MainForm.udp.Send(Utils.Convert_text_For_multicast("#0.0" + test), Utils.Convert_text_For_multicast("#0.0" + test).Length);
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0" + test);
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
|
|
||||||
callOutQueue.PostItem(new CallOut() { RadioID = radioID, Severity = obj2.calloutSeverity, Time = DateTime.Now });
|
callOutQueue.PostItem(new CallOut() { RadioID = radioID, Severity = obj2.calloutSeverity, Time = DateTime.Now });
|
||||||
Utils.WriteLine($"Landmark CallOut request with Severity [{obj2.calloutSeverity}] for unit {radioID} ");
|
Utils.WriteLine($"Landmark CallOut request with Severity [{obj2.calloutSeverity}] for unit {radioID} ");
|
||||||
@ -760,6 +777,7 @@ namespace AppServer
|
|||||||
//send alarm on message buss
|
//send alarm on message buss
|
||||||
string speed4send = $"{speed}_{speedUnits}";
|
string speed4send = $"{speed}_{speedUnits}";
|
||||||
string test = "#135#" + radioID.ToString() + "#" + speed4send + "#";
|
string test = "#135#" + radioID.ToString() + "#" + speed4send + "#";
|
||||||
|
|
||||||
MainForm.udp.Send(Utils.Convert_text_For_multicast("#0.0" + test), Utils.Convert_text_For_multicast("#0.0" + test).Length);
|
MainForm.udp.Send(Utils.Convert_text_For_multicast("#0.0" + test), Utils.Convert_text_For_multicast("#0.0" + test).Length);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1058,7 +1058,8 @@ namespace AppServer
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#210#4#AppServer stoped#"), SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#210#4#AppServer stoped#").Length);
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0#210#4#AppServer stoped#");
|
||||||
|
udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
catch (Exception ex2)
|
catch (Exception ex2)
|
||||||
{
|
{
|
||||||
@ -1106,7 +1107,8 @@ namespace AppServer
|
|||||||
error = true;
|
error = true;
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#210#2#Dongle missing Application server stopped#"), SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#210#2#Dongle missing Application server stopped#").Length);
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0#210#2#Dongle missing Application server stopped#");
|
||||||
|
udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
catch (Exception ex2)
|
catch (Exception ex2)
|
||||||
{
|
{
|
||||||
@ -1226,8 +1228,10 @@ namespace AppServer
|
|||||||
|
|
||||||
|
|
||||||
MainForm.websocketLocationQueue.PostItem(data);
|
MainForm.websocketLocationQueue.PostItem(data);
|
||||||
|
|
||||||
if (!sendWebsocketTimer.Enabled)
|
if (!sendWebsocketTimer.Enabled)
|
||||||
sendWebsocketTimer.Enabled = true;
|
sendWebsocketTimer.Enabled = true;
|
||||||
|
|
||||||
if (!checkWebsocketServerStatus.Enabled)
|
if (!checkWebsocketServerStatus.Enabled)
|
||||||
checkWebsocketServerStatus.Enabled = true;
|
checkWebsocketServerStatus.Enabled = true;
|
||||||
}
|
}
|
||||||
@ -1279,10 +1283,12 @@ namespace AppServer
|
|||||||
}
|
}
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
udp.Send(Utils.Convert_text_For_multicast($"#0.0#{Utils.enumConvertToString(MessageBusCmds.WebsocketStatusToMsgBus)}#offline#"),
|
byte[] dataToSend = Utils.Convert_text_For_multicast($"#0.0#{Utils.enumConvertToString(MessageBusCmds.WebsocketStatusToMsgBus)}#offline#");
|
||||||
Utils.Convert_text_For_multicast($"#0.0#{Utils.enumConvertToString(MessageBusCmds.WebsocketStatusToMsgBus)}#offline#").Length);
|
udp.Send(dataToSend, dataToSend.Length);
|
||||||
udp.Send(Utils.Convert_text_For_multicast("#0.0#210#4#Application server stopped#"),
|
|
||||||
Utils.Convert_text_For_multicast("#0.0#210#4#Application server stopped#").Length);
|
|
||||||
|
dataToSend = Utils.Convert_text_For_multicast("#0.0#210#4#Application server stopped#");
|
||||||
|
udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
catch (Exception ex2)
|
catch (Exception ex2)
|
||||||
{
|
{
|
||||||
@ -1298,7 +1304,8 @@ namespace AppServer
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#210#5#Application server restart#"), SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#210#5#Application server restart#").Length);
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0#210#5#Application server restart#");
|
||||||
|
udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
catch (Exception ex2)
|
catch (Exception ex2)
|
||||||
{
|
{
|
||||||
|
@ -606,7 +606,8 @@ namespace AppServer
|
|||||||
Utils.WriteLine("Radio disable was sent on " + sysPos.Gw_id + "." + sysPos.R_gw_id + " gateway", ConsoleColor.Cyan);
|
Utils.WriteLine("Radio disable was sent on " + sysPos.Gw_id + "." + sysPos.R_gw_id + " gateway", ConsoleColor.Cyan);
|
||||||
//send radio disable to GW
|
//send radio disable to GW
|
||||||
string test2 = "#150#" + dest + "#0#";
|
string test2 = "#150#" + dest + "#0#";
|
||||||
MainForm.udp.Send(Utils.Convert_text_For_multicast("#0.0" + test2), Utils.Convert_text_For_multicast("#0.0" + test2).Length);
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0" + test2);
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
@ -727,7 +728,9 @@ namespace AppServer
|
|||||||
UnitSysPosition sysPos = DBvehInfo.getSystemPosition(unitSC_ID);
|
UnitSysPosition sysPos = DBvehInfo.getSystemPosition(unitSC_ID);
|
||||||
string message = string.Format("Ticket no. {0} is no longer active!", dec3.delete_ticket_id);
|
string message = string.Format("Ticket no. {0} is no longer active!", dec3.delete_ticket_id);
|
||||||
string test1 = "#143#" + sysPos.Gw_id + "." + sysPos.R_gw_id + "." + radioID3 + "#" + message + "#" + 0 + "#";
|
string test1 = "#143#" + sysPos.Gw_id + "." + sysPos.R_gw_id + "." + radioID3 + "#" + message + "#" + 0 + "#";
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#0.0"+test1), SafeMobileLib.Utils.Convert_text_For_multicast("#0.0"+test1).Length);
|
|
||||||
|
byte[] cmd = Utils.Convert_text_For_multicast("#0.0" + test1);
|
||||||
|
MainForm.udp.Send(cmd, cmd.Length);
|
||||||
}
|
}
|
||||||
//send to email if was sms->email type
|
//send to email if was sms->email type
|
||||||
if (dec3.isEmail)
|
if (dec3.isEmail)
|
||||||
@ -735,12 +738,11 @@ namespace AppServer
|
|||||||
sendMail(dec3.emailAddr, dec3.messBody, radioID3);
|
sendMail(dec3.emailAddr, dec3.messBody, radioID3);
|
||||||
}
|
}
|
||||||
//send ACK back to GW
|
//send ACK back to GW
|
||||||
test = "";
|
test = (dec3.sqlResp == sqlResponse.done) ? "#232#1#" : "#232#0#";
|
||||||
if (dec3.sqlResp == sqlResponse.done)
|
|
||||||
test = "#232#1#";
|
|
||||||
else
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#" + seqID3 + test);
|
||||||
test = "#232#0#";
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#" + seqID3 + test), SafeMobileLib.Utils.Convert_text_For_multicast("#" + seqID3 + test).Length);
|
|
||||||
|
|
||||||
if (MainForm.SendPOLLafterSMS)
|
if (MainForm.SendPOLLafterSMS)
|
||||||
{
|
{
|
||||||
@ -750,7 +752,8 @@ namespace AppServer
|
|||||||
string dest = $"0.0.{radioID3}";
|
string dest = $"0.0.{radioID3}";
|
||||||
if (sysPos != null) dest = $"{sysPos.Gw_id}.{sysPos.R_gw_id}.{radioID3}";
|
if (sysPos != null) dest = $"{sysPos.Gw_id}.{sysPos.R_gw_id}.{radioID3}";
|
||||||
|
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#154#" + dest + "#"), SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#154#" + dest + "#").Length);
|
dataToSend = Utils.Convert_text_For_multicast("#0.0#154#" + dest + "#");
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
@ -928,7 +931,9 @@ namespace AppServer
|
|||||||
System.Threading.Thread.Sleep(100);
|
System.Threading.Thread.Sleep(100);
|
||||||
SM.Debug("Sending telemetry alarm to SD; digital:" + tObj.DigitalNr);
|
SM.Debug("Sending telemetry alarm to SD; digital:" + tObj.DigitalNr);
|
||||||
test = $"#140#{radioID}#{tObj.Name}#";
|
test = $"#140#{radioID}#{tObj.Name}#";
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#0.0" + test), SafeMobileLib.Utils.Convert_text_For_multicast("#0.0"+test).Length);
|
|
||||||
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0" + test);
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -939,7 +944,8 @@ namespace AppServer
|
|||||||
}
|
}
|
||||||
if (IhaveData)
|
if (IhaveData)
|
||||||
{
|
{
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#154#" + dest + "#"), SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#154#" + dest + "#").Length);
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0#154#" + dest + "#");
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
@ -1033,7 +1039,8 @@ namespace AppServer
|
|||||||
bgWorkerDBbackup.RunWorkerAsync(param);
|
bgWorkerDBbackup.RunWorkerAsync(param);
|
||||||
|
|
||||||
//send ACK back to SUM
|
//send ACK back to SUM
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#71#1#"), SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#71#1#").Length);
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0#71#1#");
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
@ -1061,12 +1068,14 @@ namespace AppServer
|
|||||||
object[] param2 = { completeFileName, posgresPath };
|
object[] param2 = { completeFileName, posgresPath };
|
||||||
bgWorkerDBrestore.RunWorkerAsync(param2);
|
bgWorkerDBrestore.RunWorkerAsync(param2);
|
||||||
//send ACK back to SUM
|
//send ACK back to SUM
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#72#1#"), SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#72#1#").Length);
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0#72#1#");
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
SM.Debug("DB restored failed !!!" + "File " + completeFileName + " missing!!!");
|
SM.Debug("DB restored failed !!!" + "File " + completeFileName + " missing!!!");
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#62#0#"), SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#62#0#").Length);
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0#62#0#");
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
@ -1138,7 +1147,9 @@ namespace AppServer
|
|||||||
//send broadcast messages I'm back in business
|
//send broadcast messages I'm back in business
|
||||||
Utils.WriteLine(string.Format("receive 500 from radio: Gateway {0} is ON", ((RadioGateway)MainForm.RadioGWHash[key]).Name), ConsoleColor.Green);
|
Utils.WriteLine(string.Format("receive 500 from radio: Gateway {0} is ON", ((RadioGateway)MainForm.RadioGWHash[key]).Name), ConsoleColor.Green);
|
||||||
string test1 = "#501#" + tempArr[4] + "#" + tempArr[5] + "#" + "ON#" + ((RadioGateway)MainForm.RadioGWHash[key]).Name + "#";
|
string test1 = "#501#" + tempArr[4] + "#" + tempArr[5] + "#" + "ON#" + ((RadioGateway)MainForm.RadioGWHash[key]).Name + "#";
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#" + seqID4 + test1), SafeMobileLib.Utils.Convert_text_For_multicast("#" + seqID4 + test1).Length);
|
|
||||||
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#" + seqID4 + test1);
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
((RadioGateway)MainForm.RadioGWHash[key]).Alive = true;
|
((RadioGateway)MainForm.RadioGWHash[key]).Alive = true;
|
||||||
((RadioGateway)MainForm.RadioGWHash[key]).LastUpdate = DateTime.UtcNow;
|
((RadioGateway)MainForm.RadioGWHash[key]).LastUpdate = DateTime.UtcNow;
|
||||||
@ -1165,7 +1176,9 @@ namespace AppServer
|
|||||||
string status = ((RadioGateway)(entry.Value)).Alive ? "ON" : "OFF";
|
string status = ((RadioGateway)(entry.Value)).Alive ? "ON" : "OFF";
|
||||||
Utils.WriteLine(string.Format("Response for SD request: Gateway {0} is {1}", ((RadioGateway)(entry.Value)).Name, status), status == "ON" ? ConsoleColor.Green : ConsoleColor.Red);
|
Utils.WriteLine(string.Format("Response for SD request: Gateway {0} is {1}", ((RadioGateway)(entry.Value)).Name, status), status == "ON" ? ConsoleColor.Green : ConsoleColor.Red);
|
||||||
string test1 = "#501#" + ((RadioGateway)(entry.Value)).Gw_id + "#" + ((RadioGateway)(entry.Value)).Id + "#" + status + "#" + ((RadioGateway)(entry.Value)).Name + "#";
|
string test1 = "#501#" + ((RadioGateway)(entry.Value)).Gw_id + "#" + ((RadioGateway)(entry.Value)).Id + "#" + status + "#" + ((RadioGateway)(entry.Value)).Name + "#";
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#" + "0.0" + test1), SafeMobileLib.Utils.Convert_text_For_multicast("#" + "0.0" + test1).Length);
|
|
||||||
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#" + "0.0" + test1);
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -1288,11 +1301,14 @@ namespace AppServer
|
|||||||
if (sysPos != null) dest = sysPos.Gw_id + "." + sysPos.R_gw_id + "." + radioID.ToString();
|
if (sysPos != null) dest = sysPos.Gw_id + "." + sysPos.R_gw_id + "." + radioID.ToString();
|
||||||
|
|
||||||
String test = "#154#" + dest + "#";
|
String test = "#154#" + dest + "#";
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#" + seqId + test), SafeMobileLib.Utils.Convert_text_For_multicast("#" + seqId + test).Length);
|
|
||||||
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#" + seqId + test);
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
|
|
||||||
//send emergency alarm to SD
|
//send emergency alarm to SD
|
||||||
test = "#134#" + radioID.ToString() + "#" + emergencyType;
|
test = "#134#" + radioID.ToString() + "#" + emergencyType;
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#" + seqId + test), SafeMobileLib.Utils.Convert_text_For_multicast("#" + seqId + test).Length);
|
dataToSend = Utils.Convert_text_For_multicast("#" + seqId + test);
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
|
|
||||||
((VehicleStatus)MainForm.VehicleHashStat[radioID]).curentStatus = Status_for_tab.EMERG;
|
((VehicleStatus)MainForm.VehicleHashStat[radioID]).curentStatus = Status_for_tab.EMERG;
|
||||||
((VehicleStatus)MainForm.VehicleHashStat[radioID]).lastArsTime = DateTime.Now;
|
((VehicleStatus)MainForm.VehicleHashStat[radioID]).lastArsTime = DateTime.Now;
|
||||||
@ -1373,7 +1389,9 @@ namespace AppServer
|
|||||||
UnitSysPosition tmpX = dbvehs.getSystemPosition(msg.sc_id_dest);
|
UnitSysPosition tmpX = dbvehs.getSystemPosition(msg.sc_id_dest);
|
||||||
//string test = "#143#" + tmpX.Gw_id + "." + tmpX.R_gw_id+"."+msg.imei_dest + "#" + msg.mess + "#" + msg.sched_timeGMT + "#";
|
//string test = "#143#" + tmpX.Gw_id + "." + tmpX.R_gw_id+"."+msg.imei_dest + "#" + msg.mess + "#" + msg.sched_timeGMT + "#";
|
||||||
string test = "#143#" + tmpX.Gw_id + "." + tmpX.R_gw_id + "." + msg.imei_dest + "#" + msg.mess + "#" + msg.sched_timeGMT + "#" + msg.dispatcherID + "#";
|
string test = "#143#" + tmpX.Gw_id + "." + tmpX.R_gw_id + "." + msg.imei_dest + "#" + msg.mess + "#" + msg.sched_timeGMT + "#" + msg.dispatcherID + "#";
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#" + msg.seq_id + test), SafeMobileLib.Utils.Convert_text_For_multicast("#" + msg.seq_id + test).Length);
|
|
||||||
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#" + msg.seq_id + test);
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
SM.Debug("message will be sent at a later time - schedule: " + msg.sched_timeGMT + " current:" + DateTime.Now.ToUniversalTime().DateTo70Format());
|
SM.Debug("message will be sent at a later time - schedule: " + msg.sched_timeGMT + " current:" + DateTime.Now.ToUniversalTime().DateTo70Format());
|
||||||
@ -1405,6 +1423,7 @@ namespace AppServer
|
|||||||
string test = "";
|
string test = "";
|
||||||
String cmdok = "";
|
String cmdok = "";
|
||||||
var subsBlackList = new List<int> { (int)Status_for_tab.OFF, (int)Status_for_tab.DISABLE, (int)Status_for_tab.MADEOFF };
|
var subsBlackList = new List<int> { (int)Status_for_tab.OFF, (int)Status_for_tab.DISABLE, (int)Status_for_tab.MADEOFF };
|
||||||
|
byte[] dataToSend = null;
|
||||||
|
|
||||||
foreach (smsmessage msg in smss)
|
foreach (smsmessage msg in smss)
|
||||||
{
|
{
|
||||||
@ -1417,7 +1436,9 @@ namespace AppServer
|
|||||||
if (SysPosList[sc_id]!=null)
|
if (SysPosList[sc_id]!=null)
|
||||||
test = "#143#" + ((UnitSysPosition)SysPosList[sc_id]).Gw_id + "." + ((UnitSysPosition)SysPosList[sc_id]).R_gw_id + "." + msg.imei_dest + "#" + msg.mess + "#" + msg.sched_timeGMT + "#" + msg.dispatcherID + "#";
|
test = "#143#" + ((UnitSysPosition)SysPosList[sc_id]).Gw_id + "." + ((UnitSysPosition)SysPosList[sc_id]).R_gw_id + "." + msg.imei_dest + "#" + msg.mess + "#" + msg.sched_timeGMT + "#" + msg.dispatcherID + "#";
|
||||||
else test = "#143#" + "0.0" + "." + msg.imei_dest + "#" + msg.mess + "#" + msg.sched_timeGMT + "#" + msg.dispatcherID + "#";
|
else test = "#143#" + "0.0" + "." + msg.imei_dest + "#" + msg.mess + "#" + msg.sched_timeGMT + "#" + msg.dispatcherID + "#";
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#" + msg.seq_id + test), SafeMobileLib.Utils.Convert_text_For_multicast("#" + msg.seq_id + test).Length);
|
|
||||||
|
dataToSend = Utils.Convert_text_For_multicast("#" + msg.seq_id + test);
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
SM.Debug("message will be sent at a later time - schedule: " + msg.sched_timeGMT + " current:" + DateTime.Now.ToUniversalTime().DateTo70Format());
|
SM.Debug("message will be sent at a later time - schedule: " + msg.sched_timeGMT + " current:" + DateTime.Now.ToUniversalTime().DateTo70Format());
|
||||||
@ -1430,7 +1451,8 @@ namespace AppServer
|
|||||||
UnitSysPosition tmpX = dbvehs.getSystemPosition_for_group(msg.imei_dest);
|
UnitSysPosition tmpX = dbvehs.getSystemPosition_for_group(msg.imei_dest);
|
||||||
|
|
||||||
test = "#145#" + tmpX.Gw_id + "." + tmpX.R_gw_id + "." + msg.sc_id_dest + "#" + msg.mess + "#" + msg.sched_timeGMT + "#";
|
test = "#145#" + tmpX.Gw_id + "." + tmpX.R_gw_id + "." + msg.sc_id_dest + "#" + msg.mess + "#" + msg.sched_timeGMT + "#";
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#" + msg.seq_id + test), SafeMobileLib.Utils.Convert_text_For_multicast("#" + msg.seq_id + test).Length);
|
dataToSend = Utils.Convert_text_For_multicast("#" + msg.seq_id + test);
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
|
|
||||||
Utils.WriteLine($"Undelivered {undeliveredSMS} private messages and {smss.Count} group messages", ConsoleColor.White);
|
Utils.WriteLine($"Undelivered {undeliveredSMS} private messages and {smss.Count} group messages", ConsoleColor.White);
|
||||||
@ -1446,19 +1468,19 @@ namespace AppServer
|
|||||||
{
|
{
|
||||||
//Check4ExpiredTickets
|
//Check4ExpiredTickets
|
||||||
List<JobTickets> jtlist = new List<JobTickets>();
|
List<JobTickets> jtlist = new List<JobTickets>();
|
||||||
string list_of_id_text = "";
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
DBTicketingManager DBT = new DBTicketingManager(Program.cfg.DB_IP, Program.cfg.DB_schema, Program.cfg.DB_user, Program.cfg.DB_passwd, Program.cfg.DB_port);
|
DBTicketingManager DBT = new DBTicketingManager(Program.cfg.DB_IP, Program.cfg.DB_schema, Program.cfg.DB_user, Program.cfg.DB_passwd, Program.cfg.DB_port);
|
||||||
List<Int32> ExpiredTicketsIdList = DBT.updateTicketExpireDate(DateTo70Format(DateTime.UtcNow));
|
List<Int32> ExpiredTicketsIdList = DBT.updateTicketExpireDate(DateTo70Format(DateTime.UtcNow));
|
||||||
if(ExpiredTicketsIdList.Count>0)
|
if(ExpiredTicketsIdList.Count>0)
|
||||||
{
|
{
|
||||||
foreach(Int32 id in ExpiredTicketsIdList)
|
|
||||||
{
|
// get comma separated list
|
||||||
list_of_id_text += id + ",";
|
string list_of_id_text = string.Join<string>(",", ExpiredTicketsIdList.Select(x => $"{x}"));
|
||||||
}
|
|
||||||
list_of_id_text = list_of_id_text.Substring(0, list_of_id_text.Length - 1);
|
byte[] dataToSend = Utils.Convert_text_For_multicast($"#0.0#251#{list_of_id_text}#");
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#251#" + list_of_id_text + "#"), SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#251#" + list_of_id_text + "#").Length);
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
@ -1496,7 +1518,10 @@ namespace AppServer
|
|||||||
string head = "#143#0.0." + ticket.Imei + "#";
|
string head = "#143#0.0." + ticket.Imei + "#";
|
||||||
if (SysPosList[ticket.sc_id] != null) head = "#143#" + ((UnitSysPosition)SysPosList[ticket.sc_id]).Gw_id + "." + ((UnitSysPosition)SysPosList[ticket.sc_id]).R_gw_id + "." + ticket.Imei + "#";
|
if (SysPosList[ticket.sc_id] != null) head = "#143#" + ((UnitSysPosition)SysPosList[ticket.sc_id]).Gw_id + "." + ((UnitSysPosition)SysPosList[ticket.sc_id]).R_gw_id + "." + ticket.Imei + "#";
|
||||||
string test = head + message + "#" + 0 + "#";
|
string test = head + message + "#" + 0 + "#";
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#" + ticket.seq_id + test), SafeMobileLib.Utils.Convert_text_For_multicast("#" + ticket.seq_id + test).Length);
|
|
||||||
|
|
||||||
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#" + ticket.seq_id + test);
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1522,7 +1547,8 @@ namespace AppServer
|
|||||||
if (SysPosList[ticket.sc_id] != null) head = "#143#" + ((UnitSysPosition)SysPosList[ticket.sc_id]).Gw_id + "." + ((UnitSysPosition)SysPosList[ticket.sc_id]).R_gw_id + "." + ticket.Imei + "#";
|
if (SysPosList[ticket.sc_id] != null) head = "#143#" + ((UnitSysPosition)SysPosList[ticket.sc_id]).Gw_id + "." + ((UnitSysPosition)SysPosList[ticket.sc_id]).R_gw_id + "." + ticket.Imei + "#";
|
||||||
|
|
||||||
string test = head + ticket.Name + "#" + 0 + "#";
|
string test = head + ticket.Name + "#" + 0 + "#";
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#" + ticket.seq_id + test), SafeMobileLib.Utils.Convert_text_For_multicast("#" + ticket.seq_id + test).Length);
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#" + ticket.seq_id + test);
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
SM.Debug("ticket will be sent at a later time - schedule: " + ticket.sched_timegmt + " current:" + DateTime.Now.ToUniversalTime().DateTo70Format());
|
SM.Debug("ticket will be sent at a later time - schedule: " + ticket.sched_timegmt + " current:" + DateTime.Now.ToUniversalTime().DateTo70Format());
|
||||||
@ -1554,7 +1580,9 @@ namespace AppServer
|
|||||||
if (DateTime.Now.ToUniversalTime() > item.Timegmt.AddSeconds(item.ArsInterval + 10))// added 10 seconds; marja erroare
|
if (DateTime.Now.ToUniversalTime() > item.Timegmt.AddSeconds(item.ArsInterval + 10))// added 10 seconds; marja erroare
|
||||||
{
|
{
|
||||||
SM.Debug("Unit:" + item.Imei + " ARS interval expired. Marking unit as OFF");
|
SM.Debug("Unit:" + item.Imei + " ARS interval expired. Marking unit as OFF");
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#130#" + item.Imei + "#OFF#"), SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#130#" + item.Imei + "#OFF#").Length);
|
|
||||||
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0#130#" + item.Imei + "#OFF#");
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1600,7 +1628,9 @@ namespace AppServer
|
|||||||
|
|
||||||
|
|
||||||
string test = "#501#" + ((RadioGateway)(entry.Value)).Gw_id + "#" + ((RadioGateway)(entry.Value)).Id + "#" + "OFF" + "#" + ((RadioGateway)(entry.Value)).Name + "#";
|
string test = "#501#" + ((RadioGateway)(entry.Value)).Gw_id + "#" + ((RadioGateway)(entry.Value)).Id + "#" + "OFF" + "#" + ((RadioGateway)(entry.Value)).Name + "#";
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#" + "0.0" + test), SafeMobileLib.Utils.Convert_text_For_multicast("#" + "0.0" + test).Length);
|
|
||||||
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#" + "0.0" + test);
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
((RadioGateway)(entry.Value)).Alive = false;
|
((RadioGateway)(entry.Value)).Alive = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1685,7 +1715,9 @@ namespace AppServer
|
|||||||
public static void PushStatus(String IMEI,Status_for_tab stat)
|
public static void PushStatus(String IMEI,Status_for_tab stat)
|
||||||
{
|
{
|
||||||
Utils.WriteLine("Send PushStatus:" + stat+" Imei:"+IMEI,ConsoleColor.Yellow);
|
Utils.WriteLine("Send PushStatus:" + stat+" Imei:"+IMEI,ConsoleColor.Yellow);
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#153#" + IMEI + "#" + (Int32)stat + "#"), SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#153#" + IMEI + "#" + (Int32)stat + "#").Length);
|
|
||||||
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0#153#" + IMEI + "#" + (Int32)stat + "#");
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -2084,7 +2116,8 @@ namespace AppServer
|
|||||||
messageOnScreen = true;
|
messageOnScreen = true;
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#Application server database connection failed#"), SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#210#3#Application server database connection failed#").Length);
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#Application server database connection failed#");
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
catch (Exception ex2)
|
catch (Exception ex2)
|
||||||
{
|
{
|
||||||
@ -2520,8 +2553,9 @@ namespace AppServer
|
|||||||
{
|
{
|
||||||
//send emergency alarm to SD
|
//send emergency alarm to SD
|
||||||
//send ACK back to GW
|
//send ACK back to GW
|
||||||
string test = (backupDOne == true) ? "#61#1#" : "#61#0#";
|
string code = (backupDOne == true) ? "#61#1#" : "#61#0#";
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#0.0" + test), SafeMobileLib.Utils.Convert_text_For_multicast("#0.0" + test).Length);
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0" + code);
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
@ -2548,8 +2582,10 @@ namespace AppServer
|
|||||||
{
|
{
|
||||||
//send emergency alarm to SD
|
//send emergency alarm to SD
|
||||||
//send ACK back to GW
|
//send ACK back to GW
|
||||||
string test = (restoreDOne == true) ? "#62#1#" : "#252#0#";
|
string code = (restoreDOne == true) ? "#62#1#" : "#252#0#";
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#0.0" + test), SafeMobileLib.Utils.Convert_text_For_multicast("#0.0" + test).Length);
|
|
||||||
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0" + code);
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
@ -215,8 +215,8 @@ namespace AppServer
|
|||||||
Thread.Sleep(2000);
|
Thread.Sleep(2000);
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#210#4#Application server stopped#"),
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0#210#4#Application server stopped#");
|
||||||
Utils.Convert_text_For_multicast("#0.0#210#4#Application server stopped#").Length);
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
|
|
||||||
// save all unhandled gps positions
|
// save all unhandled gps positions
|
||||||
MainForm.DumpLocationQueueToFile();
|
MainForm.DumpLocationQueueToFile();
|
||||||
@ -241,7 +241,9 @@ namespace AppServer
|
|||||||
Thread.Sleep(2000);
|
Thread.Sleep(2000);
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
MainForm.udp?.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#210#4#Application server stopped#"), SafeMobileLib.Utils.Convert_text_For_multicast("#0.0#210#4#Application server stopped#").Length);
|
|
||||||
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0#210#4#Application server stopped#");
|
||||||
|
MainForm.udp?.Send(dataToSend, dataToSend.Length);
|
||||||
|
|
||||||
// save all unhandled gps positions
|
// save all unhandled gps positions
|
||||||
MainForm.DumpLocationQueueToFile();
|
MainForm.DumpLocationQueueToFile();
|
||||||
|
@ -108,8 +108,9 @@ namespace AppServer
|
|||||||
+ Program.cfg.DB_schema + ";" + Program.cfg.DB_user + ";" + Program.cfg.DB_passwd
|
+ Program.cfg.DB_schema + ";" + Program.cfg.DB_user + ";" + Program.cfg.DB_passwd
|
||||||
+ ";" + Program.cfg.DB_port + ";" + Program.cfg.VoicePort + ";"
|
+ ";" + Program.cfg.DB_port + ";" + Program.cfg.VoicePort + ";"
|
||||||
+ audibleAlerts.ToString() + ";" + MainForm.dbAccess.ToString() + ";";
|
+ audibleAlerts.ToString() + ";" + MainForm.dbAccess.ToString() + ";";
|
||||||
MainForm.udp.Send(Utils.Convert_text_For_multicast("#0.0#156#" + command[1].Trim() + "#"), Utils.Convert_text_For_multicast("#0.0#156#"
|
|
||||||
+ command[1].Trim() + "#").Length);
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0#156#" + command[1].Trim() + "#");
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
|
|
||||||
MainForm.RegistrationAnswer = false;
|
MainForm.RegistrationAnswer = false;
|
||||||
Int32 countWait = 0; //maxim 30 = 3 seconds
|
Int32 countWait = 0; //maxim 30 = 3 seconds
|
||||||
|
@ -172,7 +172,9 @@ namespace AppServer
|
|||||||
|
|
||||||
|
|
||||||
test = $"#155#{rec.id}#{rec.hddLocation}#{rec.gwID}#{rec.radioGWID}#{rec.group_cpsId}#{rec.subs_imei}#{rec.startTime}#{rec.endTime}#{rec.typeSD}#{rec.calltype}#{rec.dispatcher_id}#";
|
test = $"#155#{rec.id}#{rec.hddLocation}#{rec.gwID}#{rec.radioGWID}#{rec.group_cpsId}#{rec.subs_imei}#{rec.startTime}#{rec.endTime}#{rec.typeSD}#{rec.calltype}#{rec.dispatcher_id}#";
|
||||||
MainForm.udp.Send(SafeMobileLib.Utils.Convert_text_For_multicast("#0.0" + test), SafeMobileLib.Utils.Convert_text_For_multicast("#0.0" + test).Length);
|
|
||||||
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0" + test);
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
|
@ -452,13 +452,9 @@ namespace SafeMobileLib
|
|||||||
|
|
||||||
BatchHistoryData batchHistObj = null;
|
BatchHistoryData batchHistObj = null;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
lat = Convert.ToDouble(dr["lat"]);
|
lat = Convert.ToDouble(dr["lat"]);
|
||||||
lng = Convert.ToDouble(dr["lng"]);
|
lng = Convert.ToDouble(dr["lng"]);
|
||||||
timegmt = Convert.ToInt32(dr["timegmt"]);
|
timegmt = Convert.ToInt32(dr["timegmt"]);
|
||||||
@ -468,16 +464,22 @@ namespace SafeMobileLib
|
|||||||
|
|
||||||
Department = dr["department"].ToString(),
|
Department = dr["department"].ToString(),
|
||||||
Unit = dr["unit"].ToString(),
|
Unit = dr["unit"].ToString(),
|
||||||
Location = ((getAddress && dr["address"] != DBNull.Value) ? dr["address"].ToString() : "LAT:" + Math.Round(lat, 5).ToString() + " , LNG:" + Math.Round(lat, 5).ToString()),
|
|
||||||
Speed = (isInMile) ? ((int)(Convert.ToInt32(dr["speed"]) * 0.621371192)).ToString() : Convert.ToInt32(dr["speed"]).ToString(),
|
Speed = (isInMile) ? ((int)(Convert.ToInt32(dr["speed"]) * 0.621371192)).ToString() : Convert.ToInt32(dr["speed"]).ToString(),
|
||||||
Lat = lat,
|
Lat = lat,
|
||||||
Lng = lng,
|
Lng = lng,
|
||||||
Address = dr["address"].ToString(),
|
Address = string.Empty,
|
||||||
Time = timegmt.TimeOfDayHHMMSSLocal(!is24hours),
|
Time = timegmt.TimeOfDayHHMMSSLocal(!is24hours),
|
||||||
Date = timegmt.GetDTLocalFromSeconds().Date.ToShortDateString()
|
Date = timegmt.GetDTLocalFromSeconds().Date.ToShortDateString()
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
if (getAddress)
|
||||||
|
{
|
||||||
|
batchHistObj.Location = dr["address"].ToString();
|
||||||
|
batchHistObj.Address = dr["address"].ToString();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
batchHistObj.Location = "LAT:" + Math.Round(lat, 5).ToString() + " , LNG:" + Math.Round(lat, 5).ToString();
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -91,7 +91,8 @@ namespace SafeMobileLib
|
|||||||
{
|
{
|
||||||
if (udpMulticast != null)
|
if (udpMulticast != null)
|
||||||
{
|
{
|
||||||
udpMulticast.Send(Utils.Convert_text_For_multicast("#" + seqID + test), Utils.Convert_text_For_multicast("#" + seqID + test).Length);
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#" + seqID + test);
|
||||||
|
udpMulticast.Send(dataToSend, dataToSend.Length);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -42,36 +42,28 @@ namespace SafeMobileLib
|
|||||||
recv = s.Receive(b);
|
recv = s.Receive(b);
|
||||||
else
|
else
|
||||||
break;//break if socket == null
|
break;//break if socket == null
|
||||||
|
|
||||||
if (recv == 0)
|
if (recv == 0)
|
||||||
continue;//continue if return nr bytes == 0
|
continue;//continue if return nr bytes == 0
|
||||||
|
|
||||||
|
|
||||||
|
byte[] tmp = new byte[recv];
|
||||||
|
for (int i = 0; i < recv; i++)
|
||||||
|
{
|
||||||
|
tmp[i] = b[i];
|
||||||
|
}
|
||||||
|
|
||||||
|
byte[] decByte = Encrypted ? Encryption.Decrypt(tmp, EncryptionAlgorithm.Des64) : tmp;
|
||||||
|
|
||||||
|
// trigger event
|
||||||
if (OnNewDataRecv != null)
|
if (OnNewDataRecv != null)
|
||||||
{
|
|
||||||
byte[] tmp = new byte[recv];
|
|
||||||
for (int i = 0; i < recv; i++)
|
|
||||||
{
|
|
||||||
tmp[i] = b[i];
|
|
||||||
}
|
|
||||||
|
|
||||||
byte[] decByte = Encrypted ? Encryption.Decrypt(tmp, EncryptionAlgorithm.Des64) : tmp;
|
|
||||||
|
|
||||||
// trigger event
|
|
||||||
OnNewDataRecv(decByte, decByte.Length);
|
OnNewDataRecv(decByte, decByte.Length);
|
||||||
}
|
|
||||||
|
|
||||||
if (OnNewDataReceived != null)
|
|
||||||
{
|
|
||||||
byte[] tmp = new byte[recv];
|
|
||||||
for (int i = 0; i < recv; i++)
|
|
||||||
{
|
|
||||||
tmp[i] = b[i];
|
|
||||||
}
|
|
||||||
|
|
||||||
byte[] decByte = Encrypted ? Encryption.Decrypt(tmp, EncryptionAlgorithm.Des64) : tmp;
|
|
||||||
|
|
||||||
// trigger event
|
// trigger event
|
||||||
|
if (OnNewDataReceived != null)
|
||||||
OnNewDataReceived(mcastGroup, decByte, decByte.Length);
|
OnNewDataReceived(mcastGroup, decByte, decByte.Length);
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
if (s == null)
|
if (s == null)
|
||||||
@ -108,27 +100,19 @@ namespace SafeMobileLib
|
|||||||
byte[] b = new byte[65507];
|
byte[] b = new byte[65507];
|
||||||
Thread.Sleep(1);
|
Thread.Sleep(1);
|
||||||
int recv = s.Receive(b);
|
int recv = s.Receive(b);
|
||||||
if (OnNewDataRecv != null)
|
|
||||||
{
|
|
||||||
byte[] tmp = new byte[recv];
|
byte[] tmp = new byte[recv];
|
||||||
for (int i = 0; i < recv; i++)
|
for (int i = 0; i < recv; i++)
|
||||||
{
|
{
|
||||||
tmp[i] = b[i];
|
tmp[i] = b[i];
|
||||||
}
|
}
|
||||||
if (this.OnNewDataRecv != null)
|
|
||||||
this.OnNewDataRecv(tmp, tmp.Length);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (OnNewDataReceived != null)
|
if (this.OnNewDataRecv != null)
|
||||||
{
|
this.OnNewDataRecv(tmp, tmp.Length);
|
||||||
byte[] tmp = new byte[recv];
|
|
||||||
for (int i = 0; i < recv; i++)
|
|
||||||
{
|
|
||||||
tmp[i] = b[i];
|
|
||||||
}
|
|
||||||
if (this.OnNewDataReceived != null)
|
if (this.OnNewDataReceived != null)
|
||||||
this.OnNewDataReceived(mcastGroup, tmp, tmp.Length);
|
this.OnNewDataReceived(mcastGroup, tmp, tmp.Length);
|
||||||
}
|
|
||||||
|
|
||||||
if (s == null)
|
if (s == null)
|
||||||
{
|
{
|
||||||
@ -217,16 +201,17 @@ namespace SafeMobileLib
|
|||||||
IPEndPoint ipep = new IPEndPoint(myIP, port);
|
IPEndPoint ipep = new IPEndPoint(myIP, port);
|
||||||
s.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, 1);
|
s.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, 1);
|
||||||
s.Bind(ipep);
|
s.Bind(ipep);
|
||||||
|
|
||||||
IPAddress ip = IPAddress.Parse(mcastGroup);
|
IPAddress ip = IPAddress.Parse(mcastGroup);
|
||||||
s.SetSocketOption(SocketOptionLevel.IP, SocketOptionName.AddMembership, new MulticastOption(ip, myIP));
|
s.SetSocketOption(SocketOptionLevel.IP, SocketOptionName.AddMembership, new MulticastOption(ip, myIP));
|
||||||
s.SetSocketOption(SocketOptionLevel.IP,
|
s.SetSocketOption(SocketOptionLevel.IP, SocketOptionName.MulticastTimeToLive, int.Parse("1"));
|
||||||
SocketOptionName.MulticastTimeToLive, int.Parse("1"));
|
|
||||||
listenThread = new Thread(new ThreadStart(Listen));
|
listenThread = new Thread(new ThreadStart(Listen));
|
||||||
listenThread.IsBackground = true;
|
listenThread.IsBackground = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (listenThread != null)
|
if (listenThread != null)
|
||||||
listenThread.Start();
|
listenThread.Start();
|
||||||
|
|
||||||
ret = true;
|
ret = true;
|
||||||
|
|
||||||
Utils.WriteLine($"++++++++++++++++++++++++++++++++++++++++++\nUdpMulticast bind on {mcastGroup}:{port} Ethernet: {myIP}\n+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++");
|
Utils.WriteLine($"++++++++++++++++++++++++++++++++++++++++++\nUdpMulticast bind on {mcastGroup}:{port} Ethernet: {myIP}\n+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++");
|
||||||
@ -243,12 +228,14 @@ namespace SafeMobileLib
|
|||||||
bool ret = false;
|
bool ret = false;
|
||||||
working = true;
|
working = true;
|
||||||
useThreadPool = true;
|
useThreadPool = true;
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
if (s == null)
|
if (s == null)
|
||||||
{
|
{
|
||||||
s = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
|
s = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (s != null)
|
if (s != null)
|
||||||
{
|
{
|
||||||
Utils.WriteLine(String.Format("[### {0:H:mm:ss} ###] Port multi cast {1}", DateTime.Now, port));
|
Utils.WriteLine(String.Format("[### {0:H:mm:ss} ###] Port multi cast {1}", DateTime.Now, port));
|
||||||
@ -257,8 +244,7 @@ namespace SafeMobileLib
|
|||||||
s.Bind(ipep);
|
s.Bind(ipep);
|
||||||
IPAddress ip = IPAddress.Parse(mcastGroup);
|
IPAddress ip = IPAddress.Parse(mcastGroup);
|
||||||
s.SetSocketOption(SocketOptionLevel.IP, SocketOptionName.AddMembership, new MulticastOption(ip, IPAddress.Any));
|
s.SetSocketOption(SocketOptionLevel.IP, SocketOptionName.AddMembership, new MulticastOption(ip, IPAddress.Any));
|
||||||
s.SetSocketOption(SocketOptionLevel.IP,
|
s.SetSocketOption(SocketOptionLevel.IP, SocketOptionName.MulticastTimeToLive, int.Parse("1"));
|
||||||
SocketOptionName.MulticastTimeToLive, int.Parse("1"));
|
|
||||||
|
|
||||||
ThreadPool.QueueUserWorkItem(new WaitCallback(Listen_pool));
|
ThreadPool.QueueUserWorkItem(new WaitCallback(Listen_pool));
|
||||||
|
|
||||||
@ -282,6 +268,7 @@ namespace SafeMobileLib
|
|||||||
{
|
{
|
||||||
s = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
|
s = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (s != null)
|
if (s != null)
|
||||||
{
|
{
|
||||||
Utils.WriteLine(String.Format("[### {0:H:mm:ss} ###] Port multi cast {1}", DateTime.Now, port));
|
Utils.WriteLine(String.Format("[### {0:H:mm:ss} ###] Port multi cast {1}", DateTime.Now, port));
|
||||||
@ -290,13 +277,14 @@ namespace SafeMobileLib
|
|||||||
s.Bind(ipep);
|
s.Bind(ipep);
|
||||||
IPAddress ip = IPAddress.Parse(mcastGroup);
|
IPAddress ip = IPAddress.Parse(mcastGroup);
|
||||||
s.SetSocketOption(SocketOptionLevel.IP, SocketOptionName.AddMembership, new MulticastOption(ip, IPAddress.Any));
|
s.SetSocketOption(SocketOptionLevel.IP, SocketOptionName.AddMembership, new MulticastOption(ip, IPAddress.Any));
|
||||||
s.SetSocketOption(SocketOptionLevel.IP,
|
s.SetSocketOption(SocketOptionLevel.IP, SocketOptionName.MulticastTimeToLive, int.Parse("1"));
|
||||||
SocketOptionName.MulticastTimeToLive, int.Parse("1"));
|
|
||||||
listenThread = new Thread(new ThreadStart(Listen_Decoded));
|
listenThread = new Thread(new ThreadStart(Listen_Decoded));
|
||||||
listenThread.IsBackground = true;
|
listenThread.IsBackground = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (listenThread != null)
|
if (listenThread != null)
|
||||||
listenThread.Start();
|
listenThread.Start();
|
||||||
|
|
||||||
ret = true;
|
ret = true;
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
|
@ -837,17 +837,26 @@ namespace SubscriberAndUserManager
|
|||||||
private void SendBackupListRequest()
|
private void SendBackupListRequest()
|
||||||
{
|
{
|
||||||
if (MainForm.udp != null)
|
if (MainForm.udp != null)
|
||||||
MainForm.udp.Send(Utils.Convert_text_For_multicast("#0.0#53#1#"), Utils.Convert_text_For_multicast("#0.0#53#1#").Length);
|
{
|
||||||
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0#53#1#");
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
private void SendBackupRequest()
|
private void SendBackupRequest()
|
||||||
{
|
{
|
||||||
if (MainForm.udp != null)
|
if (MainForm.udp != null)
|
||||||
MainForm.udp.Send(Utils.Convert_text_For_multicast("#0.0#51#1#"), Utils.Convert_text_For_multicast("#0.0#51#1#").Length);
|
{
|
||||||
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0#51#1#");
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
private void SendRestoreRequest(string filename)
|
private void SendRestoreRequest(string filename)
|
||||||
{
|
{
|
||||||
if (MainForm.udp != null)
|
if (MainForm.udp != null)
|
||||||
MainForm.udp.Send(Utils.Convert_text_For_multicast("#0.0#52#" + filename + "#"), Utils.Convert_text_For_multicast("#0.0#52#" + filename + "#").Length);
|
{
|
||||||
|
byte[] dataToSend = Utils.Convert_text_For_multicast("#0.0#52#" + filename + "#");
|
||||||
|
MainForm.udp.Send(dataToSend, dataToSend.Length);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
delegate void UpdateList(string fileNames);
|
delegate void UpdateList(string fileNames);
|
||||||
|
@ -112,7 +112,9 @@
|
|||||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||||
</None>
|
</None>
|
||||||
<None Include="prebuild.sh" />
|
<None Include="prebuild.sh" />
|
||||||
<None Include="RunMessagesPartitioning.bat" />
|
<None Include="RunMessagesPartitioning.bat">
|
||||||
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||||
|
</None>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<BootstrapperPackage Include=".NETFramework,Version=v4.5">
|
<BootstrapperPackage Include=".NETFramework,Version=v4.5">
|
||||||
@ -144,7 +146,9 @@
|
|||||||
<Content Include="7toLatest7.sql">
|
<Content Include="7toLatest7.sql">
|
||||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||||
</Content>
|
</Content>
|
||||||
<Content Include="call_messages_partitioning.sql" />
|
<Content Include="call_messages_partitioning.sql">
|
||||||
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||||
|
</Content>
|
||||||
<Content Include="CreateMissingForeignKeys.sql">
|
<Content Include="CreateMissingForeignKeys.sql">
|
||||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||||
</Content>
|
</Content>
|
||||||
@ -154,8 +158,12 @@
|
|||||||
<Content Include="CreateMissingPrimaryKeys.sql">
|
<Content Include="CreateMissingPrimaryKeys.sql">
|
||||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||||
</Content>
|
</Content>
|
||||||
<Content Include="generate_partitioning_of_an_existing_table_by_date_unix_time.sql" />
|
<Content Include="generate_partitioning_of_an_existing_table_by_date_unix_time.sql">
|
||||||
<Content Include="get_query_partitioning_of_an_existing_table_by_date_unix_time.sql" />
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||||
|
</Content>
|
||||||
|
<Content Include="get_query_partitioning_of_an_existing_table_by_date_unix_time.sql">
|
||||||
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||||
|
</Content>
|
||||||
<Content Include="NewFields.sql">
|
<Content Include="NewFields.sql">
|
||||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||||
</Content>
|
</Content>
|
||||||
|
Loading…
Reference in New Issue
Block a user