From d7b91d4dece4f7493a0b037cd80ec5a1147084f0 Mon Sep 17 00:00:00 2001 From: atef Date: Thu, 27 Jun 2024 14:21:13 +0200 Subject: [PATCH] update Program.cs --- csharp/App/SaliMax/src/Program.cs | 48 +++++++++++++++++-------------- 1 file changed, 26 insertions(+), 22 deletions(-) diff --git a/csharp/App/SaliMax/src/Program.cs b/csharp/App/SaliMax/src/Program.cs index 928d28478..84ad79e47 100644 --- a/csharp/App/SaliMax/src/Program.cs +++ b/csharp/App/SaliMax/src/Program.cs @@ -58,7 +58,6 @@ internal static class Program private static Boolean _subscribedToQueue = false; private static Boolean _subscribeToQueueForTheFirstTime = false; private static SalimaxAlarmState _prevSalimaxState = SalimaxAlarmState.Green; - //private static Int32 _heartBitInterval = 0; private const UInt16 NbrOfFileToConcatenate = 30; private static UInt16 _counterOfFile = 0; private static SalimaxAlarmState _salimaxAlarmState = SalimaxAlarmState.Green; @@ -704,13 +703,13 @@ internal static class Program _counterOfFile = 0; var logFileConcatenator = new LogFileConcatenator(); - var csvToSend = logFileConcatenator.ConcatenateFiles(NbrOfFileToConcatenate); - + var s3Path = timeStamp.ToUnixTime() + ".csv"; + s3Path.WriteLine(""); + var csvToSend = logFileConcatenator.ConcatenateFiles(NbrOfFileToConcatenate); + var request = s3Config.CreatePutRequest(s3Path); - "Sending to S3".WriteLine(); - //Use this for no compression //var response = await request.PutAsync(new StringContent(csv)); var compressedBytes = CompresseBytes(csvToSend); @@ -729,34 +728,39 @@ internal static class Program Console.WriteLine("ERROR: PUT"); var error = await response.GetStringAsync(); Console.WriteLine(error); + Heartbit(0); return false; } Console.WriteLine("----------------------------------------Sending Heartbit----------------------------------------"); - var s3Bucket = Config.Load().S3?.Bucket; - int.TryParse(s3Bucket?.Split("-")[0], out var installationId); - int.TryParse(timeStamp.ToUnixTime().ToString(), out var nameOfCsvFile); - - var returnedStatus = new StatusMessage - { - InstallationId = installationId, - Product = 0, - Status = _salimaxAlarmState, - Type = MessageType.Heartbit, - Timestamp = nameOfCsvFile - }; - - - if (s3Bucket != null) - RabbitMqManager.InformMiddleware(returnedStatus); - + Heartbit(timeStamp); } _counterOfFile++; return true; } + private static void Heartbit(DateTime timeStamp) + { + var s3Bucket = Config.Load().S3?.Bucket; + int.TryParse(s3Bucket?.Split("-")[0], out var installationId); + int.TryParse(timeStamp.ToUnixTime().ToString(), out var nameOfCsvFile); + + var returnedStatus = new StatusMessage + { + InstallationId = installationId, + Product = 0, + Status = _salimaxAlarmState, + Type = MessageType.Heartbit, + Timestamp = nameOfCsvFile + }; + + + if (s3Bucket != null) + RabbitMqManager.InformMiddleware(returnedStatus); + } + private static Byte[] CompresseBytes(String csvToSend) { //Compress CSV data to a byte array