diff --git a/AIS/bsmd.AIS2Service/SerialTCPReader.cs b/AIS/bsmd.AIS2Service/SerialTCPReader.cs index bdfd6f5c..af2b5d7d 100644 --- a/AIS/bsmd.AIS2Service/SerialTCPReader.cs +++ b/AIS/bsmd.AIS2Service/SerialTCPReader.cs @@ -19,7 +19,7 @@ namespace bsmd.AIS2Service private TcpClient tcpSocket; private Thread _thread; - private const int sleepRetry = 30000; + private const int sleepRetry = 60000; private const int maxRetries = 3; private static readonly ILog _log = LogManager.GetLogger(typeof(SerialTCPReader)); @@ -56,12 +56,17 @@ namespace bsmd.AIS2Service { _log.WarnFormat("Exception occurred on serial reader: {0}", ex.Message); } + finally + { + this.tcpSocket?.Close(); + } } } private bool Connect() { int retryCounter = 0; + int retryTime = sleepRetry; while (retryCounter < maxRetries) { try @@ -73,8 +78,9 @@ namespace bsmd.AIS2Service catch (Exception ex) { retryCounter++; + retryTime *= 2; _log.WarnFormat("connect failed: {0}, retrying {1}", ex.Message, retryCounter); - Thread.Sleep(sleepRetry); + Thread.Sleep(retryTime); } } return false; diff --git a/AIS/bsmd.AIS2Service/update.js b/AIS/bsmd.AIS2Service/update.js index a221b707..440c1f3c 100644 --- a/AIS/bsmd.AIS2Service/update.js +++ b/AIS/bsmd.AIS2Service/update.js @@ -1,5 +1,5 @@ function update() { - fetch('http://localhost:9050/api/ais') + fetch('http://192.168.2.25:9050/api/ais') .then(function (response) { return response.json(); }) @@ -17,6 +17,7 @@ if(row == null) { // not found, create new row row = document.createElement('tr'); + row.setAttribute("id", row_id); row.innerHTML = `` + data[i].MMSI + `` + `` +