diff --git a/.vs/ASCKU Projects/v16/.suo b/.vs/ASCKU Projects/v16/.suo
index c930130..1037340 100644
Binary files a/.vs/ASCKU Projects/v16/.suo and b/.vs/ASCKU Projects/v16/.suo differ
diff --git a/DataClient/NETClient.cs b/DataClient/NETClient.cs
index 628aec5..35351ca 100644
--- a/DataClient/NETClient.cs
+++ b/DataClient/NETClient.cs
@@ -2,6 +2,7 @@
using System.Collections.Generic;
using System.Linq;
using System.Net;
+using System.Net.Sockets;
using System.Text;
using System.Threading.Tasks;
using NLog;
@@ -13,44 +14,51 @@ namespace DataClient
private Logger log = LogManager.GetCurrentClassLogger();
private Encoding enc;
private string ip = "127.0.0.1";
+ /// IP адрес СТП.
public string Ip
{
get { return ip; }
- set
- {
- if (!IPAddress.TryParse(value, out _))
- throw new Exception("Wrong ip address.");
- else
- ip = value;
- }
+ set { ip = (IPAddress.TryParse(value, out _)) ? value : ip; }
}
private int port = 1070;
+ /// Порт СТП.
public int Port
{
get { return port; }
- set
- {
- if (value < 1 && value > 65535)
- throw new Exception("Wrong port.");
- else
- port = value;
- }
+ set { port = (value < 1) ? 1 : (value > 65535) ? 65535 : value; }
}
-
- private enum Code : uint
+ private int retryCount = 3;
+ /// Количество попыток переподключения.
+ public int RetryCount
{
- check_command = 4294967295,
+ get { return retryCount; }
+ set { retryCount = value < 1 ? 1 : value; }
+ }
+ private int retryInterval = 1;
+ /// Время в секундах между попытками переподключения.
+ public int RetryInterval
+ {
+ get { return retryInterval; }
+ set { retryInterval = (value < 1) ? 1 : value; }
+ }
+ private TcpClient tcpC = null;
+ /// Коды для работы с СТП.
+ public enum Code : uint
+ {
+ check_command = uint.MaxValue,
version = 0,
pasp_download = 4,
download_nh = 21,
dir_browse = 23,
user_flags = 26
}
+
//Construction
public NETClient()
{
Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
enc = Encoding.GetEncoding(866);
+ tcpC = new TcpClient(new IPEndPoint(IPAddress.Parse(ip), port));
}
public NETClient(string ip, int port)
{
@@ -58,21 +66,158 @@ namespace DataClient
enc = Encoding.GetEncoding(866);
Ip = ip;
Port = port;
+ tcpC = new TcpClient();
}
-
//Work with socket functions
- public byte[] CreateCode(uint code, byte[] prefix = null, string val = null, byte[] postfix = null)
+ /// Получить неизвестное количество байт.
+ /// Открытый сетевой поток.
+ /// Массив байт.
+ private byte[] ReceiveBytesUnknown(NetworkStream ns, int awaitInterval = 1, int tryCounts = 3)
{
+ tryCounts = (tryCounts < 1) ? 1 : tryCounts;
+ awaitInterval = (awaitInterval < 1) ? 1 : awaitInterval;
var res = new List();
+ if (!ns.CanRead) throw new Exception("NetworkStream not access to Read.");
+ if (!ns.Socket.Connected) throw new Exception("NetworkStream not connected to server.");
+ int tryCount = 0;
+ do
+ {
+ if (!ns.Socket.Connected) throw new Exception("Server drop connection.");
+ if (!ns.DataAvailable)
+ {
+ tryCount++;
+ Task.Delay(awaitInterval * 1000).Wait();
+ continue;
+ }
+ tryCount = 0;
+ var buf = new byte[1024];
+ var length = ns.Read(buf, 0, buf.Length);
+ for (var i = 0; i < length; i++) res.Add(buf[i]);
+ } while (tryCount < tryCounts);
return res.ToArray();
}
+ /// Получить определенное количество байт.
+ /// Открытый сетевой поток.
+ /// Кол-во получаемый байт.
+ /// Массив байт, равный заданному кол-ву.
+ private byte[] ReceiveBytesFixSize(NetworkStream ns, int size, int awaitInterval = 1, int tryCounts = 3)
+ {
+ tryCounts = (tryCounts < 1) ? 1 : tryCounts;
+ awaitInterval = (awaitInterval < 1) ? 1 : awaitInterval;
+ if (size <= 0) throw new Exception("Size can't be less or zero.");
+ if (!ns.CanRead) throw new Exception("NetworkStream not access to Read.");
+ if (!ns.Socket.Connected) throw new Exception("NetworkStream not connected to server.");
+ var res = new byte[size];
+ var countSize = 0;
+
+ int tryCount = 0;
+ do
+ {
+ if (!ns.Socket.Connected) throw new Exception("Server drop connection.");
+ if (!ns.DataAvailable)
+ {
+ tryCount++;
+ Task.Delay(awaitInterval * 1000).Wait();
+ continue;
+ }
+ tryCount = 0;
+ var buf = new byte[size - countSize];
+ var length = ns.Read(buf, 0, buf.Length);
+ for (var i = 0; i < length; i++) res[countSize++] = buf[i];
+ if (countSize == size)
+ return res;
+ } while (tryCount < tryCounts);
+ throw new Exception("Can't get all bytes.");
+ }
//Support functions
-
+ /// Формирование массива байт на отправку.
+ /// Код комманды. Конвертируется в 4 байта. (0x00 0x00 0x00 0x00)
+ /// Байты перед передаваемой строкой.
+ /// Передаваемая строка.
+ /// Байты после передаваемой строкой.
+ /// Массив байт для отправки на СТП.
+ public byte[] CreateCode(uint code, byte[] prefix = null, string val = null, byte[] postfix = null)
+ {
+ var res = new List();
+ res.AddRange(BitConverter.GetBytes(code));
+ if (prefix != null)
+ res.AddRange(prefix);
+ if(val != null)
+ {
+ res.AddRange(BitConverter.GetBytes((uint)val.Length));
+ res.AddRange(enc.GetBytes(val));
+ res.Add(0x00);
+ }
+ if (postfix != null)
+ res.AddRange(postfix);
+ return res.ToArray();
+ }
//Main functions
+ /// Открыть подключение.
+ /// Результат выполнения функции.
+ public bool Connect()
+ {
+ if (Connected()) return true;
+ if (tcpC == null) tcpC = new TcpClient();
+ try { tcpC.Connect(new IPEndPoint(IPAddress.Parse(ip), port)); }
+ catch { return false; }
+ return Connected();
+ }
+ /// Проверка подключения.
+ /// Возвращает состояние подключения.
+ public bool Connected()
+ {
+ return (tcpC != null && tcpC.Connected);
+ }
+ /// Закрыть подключение.
+ public void Close()
+ {
+ if (tcpC != null && !tcpC.Connected)
+ tcpC.Close();
+ }
+ /// Отправка массива байт на СТП.
+ /// Массив байт для отправки.
+ public void SendBytes(byte[] send)
+ {
+ if (!Connected()) throw new Exception("Connection not exist.");
+ var ns = tcpC.GetStream();
+ if (!ns.CanWrite) throw new Exception("NetworkStream not access to Write.");
+ if (!ns.Socket.Connected) throw new Exception("NetworkStream not connected to server.");
+ ns.Write(send, 0, send.Length);
+ }
+ public byte[] ReceiveBytes()
+ {
+ var res = new List();
+ if (!Connected()) throw new Exception("Connection not exist.");
+ var ns = tcpC.GetStream();
+ res.AddRange(ReceiveBytesUnknown(ns));
+ return res.ToArray();
+ }
+ public byte[] ReceiveBytes(int size)
+ {
+ var res = new List();
+ if (!Connected()) throw new Exception("Connection not exist.");
+ var ns = tcpC.GetStream();
+ res.AddRange(ReceiveBytesFixSize(ns, size));
+ return res.ToArray();
+ }
+ /// Получение файла данных (байтами) с СТП.
+ /// Дата. Из неё формируется строка в формате YYYMMDD
+ /// Номер печи. 00 - общецеховые параметры.
+ /// Индекс файла. От 0 до 15.
+ /// Обработанный массив байт.
+ public byte[] GetFile(DateTime date, int vdp, int idx)
+ {
+ if (!Connected()) throw new Exception("Connection not exist.");
+ var res = new List();
+ var str = date.ToString("yyyyMMdd") + vdp.ToString("D2") + (idx % 16).ToString("X1");
+
+ return res.ToArray();
+ }
}
}
diff --git a/DataClients/NetClient.cs b/DataClients/NetClient.cs
index a8b912a..929030c 100644
--- a/DataClients/NetClient.cs
+++ b/DataClients/NetClient.cs
@@ -10,7 +10,7 @@ namespace DataClients
{
public class NetClient
{
- private string ServerStr = "10.10.45.152";
+ private string ServerStr = "10.10.45.151";
private int PortStr = 1070;
private IPEndPoint IpPoint;
diff --git a/DataClients/bin/Debug/netstandard2.0/DataClients.dll b/DataClients/bin/Debug/netstandard2.0/DataClients.dll
index ddeda4e..6a54370 100644
Binary files a/DataClients/bin/Debug/netstandard2.0/DataClients.dll and b/DataClients/bin/Debug/netstandard2.0/DataClients.dll differ
diff --git a/DataClients/bin/Debug/netstandard2.0/DataClients.pdb b/DataClients/bin/Debug/netstandard2.0/DataClients.pdb
index e0af495..e100cdd 100644
Binary files a/DataClients/bin/Debug/netstandard2.0/DataClients.pdb and b/DataClients/bin/Debug/netstandard2.0/DataClients.pdb differ
diff --git a/DataClients/obj/Debug/netstandard2.0/DataClients.csprojAssemblyReference.cache b/DataClients/obj/Debug/netstandard2.0/DataClients.csprojAssemblyReference.cache
index 56a73bf..3b3624c 100644
Binary files a/DataClients/obj/Debug/netstandard2.0/DataClients.csprojAssemblyReference.cache and b/DataClients/obj/Debug/netstandard2.0/DataClients.csprojAssemblyReference.cache differ
diff --git a/DataClients/obj/Debug/netstandard2.0/DataClients.dll b/DataClients/obj/Debug/netstandard2.0/DataClients.dll
index ddeda4e..6a54370 100644
Binary files a/DataClients/obj/Debug/netstandard2.0/DataClients.dll and b/DataClients/obj/Debug/netstandard2.0/DataClients.dll differ
diff --git a/DataClients/obj/Debug/netstandard2.0/DataClients.pdb b/DataClients/obj/Debug/netstandard2.0/DataClients.pdb
index e0af495..e100cdd 100644
Binary files a/DataClients/obj/Debug/netstandard2.0/DataClients.pdb and b/DataClients/obj/Debug/netstandard2.0/DataClients.pdb differ
diff --git a/Mailing/bin/Debug/netcoreapp3.1/DataClients.dll b/Mailing/bin/Debug/netcoreapp3.1/DataClients.dll
index ddeda4e..6a54370 100644
Binary files a/Mailing/bin/Debug/netcoreapp3.1/DataClients.dll and b/Mailing/bin/Debug/netcoreapp3.1/DataClients.dll differ
diff --git a/Mailing/bin/Debug/netcoreapp3.1/DataClients.pdb b/Mailing/bin/Debug/netcoreapp3.1/DataClients.pdb
index e0af495..e100cdd 100644
Binary files a/Mailing/bin/Debug/netcoreapp3.1/DataClients.pdb and b/Mailing/bin/Debug/netcoreapp3.1/DataClients.pdb differ
diff --git a/Mailing/bin/Debug/netcoreapp3.1/Mailing.dll b/Mailing/bin/Debug/netcoreapp3.1/Mailing.dll
index 6d04539..4a12412 100644
Binary files a/Mailing/bin/Debug/netcoreapp3.1/Mailing.dll and b/Mailing/bin/Debug/netcoreapp3.1/Mailing.dll differ
diff --git a/Mailing/bin/Debug/netcoreapp3.1/Mailing.pdb b/Mailing/bin/Debug/netcoreapp3.1/Mailing.pdb
index 23afad1..7e8e75b 100644
Binary files a/Mailing/bin/Debug/netcoreapp3.1/Mailing.pdb and b/Mailing/bin/Debug/netcoreapp3.1/Mailing.pdb differ
diff --git a/Mailing/obj/Debug/netcoreapp3.1/Mailing.csprojAssemblyReference.cache b/Mailing/obj/Debug/netcoreapp3.1/Mailing.csprojAssemblyReference.cache
index 445f539..41e2603 100644
Binary files a/Mailing/obj/Debug/netcoreapp3.1/Mailing.csprojAssemblyReference.cache and b/Mailing/obj/Debug/netcoreapp3.1/Mailing.csprojAssemblyReference.cache differ
diff --git a/Mailing/obj/Debug/netcoreapp3.1/Mailing.dll b/Mailing/obj/Debug/netcoreapp3.1/Mailing.dll
index 6d04539..4a12412 100644
Binary files a/Mailing/obj/Debug/netcoreapp3.1/Mailing.dll and b/Mailing/obj/Debug/netcoreapp3.1/Mailing.dll differ
diff --git a/Mailing/obj/Debug/netcoreapp3.1/Mailing.pdb b/Mailing/obj/Debug/netcoreapp3.1/Mailing.pdb
index 23afad1..7e8e75b 100644
Binary files a/Mailing/obj/Debug/netcoreapp3.1/Mailing.pdb and b/Mailing/obj/Debug/netcoreapp3.1/Mailing.pdb differ
diff --git a/Tests/Program.cs b/Tests/Program.cs
index f40f1bc..f364b6c 100644
--- a/Tests/Program.cs
+++ b/Tests/Program.cs
@@ -369,8 +369,8 @@ namespace Tests
static void test14()
{
var total = new List<(ushort, Protect)>();
- var ts = new DateTime(2021, 05, 17);
- var te = new DateTime(2021, 05, 28);
+ var ts = new DateTime(2021, 05, 28);
+ var te = new DateTime(2021, 06, 02);
var a = new STPClient();
var vdp = new ushort[] { 3, 4, 5, 6, 8, 10, 17, 18, 33, 39, 40, 43, 44 };
foreach(var v in vdp)
diff --git a/Tests/bin/Debug/netcoreapp3.1/03.txt b/Tests/bin/Debug/netcoreapp3.1/03.txt
index 653f8e3..a4ebc7d 100644
--- a/Tests/bin/Debug/netcoreapp3.1/03.txt
+++ b/Tests/bin/Debug/netcoreapp3.1/03.txt
@@ -1,18 +1,10 @@
-2021-05-17 22:19:34.5 035 Отс. связь ГМП 01
-2021-05-17 22:19:36.2 035 Отс. связь ГМП 00
-2021-05-18 14:42:13.5 035 Отс. связь ГМП 01
-2021-05-18 14:42:19.0 035 Отс. связь ГМП 00
-2021-05-18 20:24:00.3 035 Отс. связь ГМП 01
-2021-05-18 20:24:05.8 035 Отс. связь ГМП 00
-2021-05-22 19:44:46.4 035 Отс. связь ГМП 01
-2021-05-23 03:12:37.2 035 Отс. связь ГМП 00
-2021-05-24 20:56:41.0 035 Отс. связь ГМП 01
-2021-05-24 20:56:46.5 035 Отс. связь ГМП 00
-2021-05-25 20:42:30.1 035 Отс. связь ГМП 01
-2021-05-25 20:42:35.6 035 Отс. связь ГМП 00
-2021-05-26 00:00:00.3 105 Отс. связь AB 01
-2021-05-26 00:00:00.6 105 Отс. связь AB 00
-2021-05-27 06:42:07.1 035 Отс. связь ГМП 01
-2021-05-27 06:42:12.6 035 Отс. связь ГМП 00
-2021-05-27 14:51:46.2 035 Отс. связь ГМП 01
-2021-05-27 14:51:51.7 035 Отс. связь ГМП 00
+2021-05-28 00:27:18.7 035 Отс. связь ГМП 01
+2021-05-28 00:27:24.2 035 Отс. связь ГМП 00
+2021-05-28 13:42:09.7 035 Отс. связь ГМП 01
+2021-05-28 13:42:24.0 035 Отс. связь ГМП 00
+2021-05-30 11:50:55.4 105 Отс. связь AB 01
+2021-05-30 11:50:55.8 105 Отс. связь AB 00
+2021-06-01 03:51:51.6 035 Отс. связь ГМП 01
+2021-06-01 03:51:57.1 035 Отс. связь ГМП 00
+2021-06-01 11:45:01.7 035 Отс. связь ГМП 01
+2021-06-01 11:45:07.2 035 Отс. связь ГМП 00
diff --git a/Tests/bin/Debug/netcoreapp3.1/04.txt b/Tests/bin/Debug/netcoreapp3.1/04.txt
deleted file mode 100644
index 0de3bad..0000000
--- a/Tests/bin/Debug/netcoreapp3.1/04.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-2021-05-26 11:44:42.8 035 Отс. связь ГМП 01
-2021-05-26 11:44:43.4 035 Отс. связь ГМП 00
diff --git a/Tests/bin/Debug/netcoreapp3.1/10.txt b/Tests/bin/Debug/netcoreapp3.1/10.txt
index 72f9ba8..ef93287 100644
--- a/Tests/bin/Debug/netcoreapp3.1/10.txt
+++ b/Tests/bin/Debug/netcoreapp3.1/10.txt
@@ -1,8 +1,8 @@
-2021-05-17 09:58:39.9 035 Отс. связь ГМП 01
-2021-05-17 10:07:04.5 035 Отс. связь ГМП 00
-2021-05-22 01:00:38.6 035 Отс. связь ГМП 01
-2021-05-22 01:00:44.1 035 Отс. связь ГМП 00
-2021-05-22 12:14:53.7 035 Отс. связь ГМП 01
-2021-05-22 12:14:59.2 035 Отс. связь ГМП 00
-2021-05-25 14:01:20.3 035 Отс. связь ГМП 01
-2021-05-25 14:01:32.1 035 Отс. связь ГМП 00
+2021-05-28 14:44:43.7 035 Отс. связь ГМП 01
+2021-05-28 14:48:39.7 035 Отс. связь ГМП 00
+2021-05-28 14:49:13.8 035 Отс. связь ГМП 01
+2021-05-28 14:49:57.0 035 Отс. связь ГМП 00
+2021-05-31 16:33:30.7 035 Отс. связь ГМП 01
+2021-05-31 16:33:46.1 035 Отс. связь ГМП 00
+2021-06-01 11:08:32.1 035 Отс. связь ГМП 01
+2021-06-01 11:08:39.0 035 Отс. связь ГМП 00
diff --git a/Tests/bin/Debug/netcoreapp3.1/17.txt b/Tests/bin/Debug/netcoreapp3.1/17.txt
deleted file mode 100644
index f8b8313..0000000
--- a/Tests/bin/Debug/netcoreapp3.1/17.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-2021-05-17 11:25:48.1 035 Отс. связь ГМП 01
-2021-05-17 11:25:52.7 035 Отс. связь ГМП 00
diff --git a/Tests/bin/Debug/netcoreapp3.1/33.txt b/Tests/bin/Debug/netcoreapp3.1/33.txt
deleted file mode 100644
index 0666f64..0000000
--- a/Tests/bin/Debug/netcoreapp3.1/33.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-2021-05-21 09:32:21.8 035 Отс. связь ГМП 01
-2021-05-21 09:32:23.9 035 Отс. связь ГМП 00
diff --git a/Tests/bin/Debug/netcoreapp3.1/DataClients.dll b/Tests/bin/Debug/netcoreapp3.1/DataClients.dll
index ddeda4e..6a54370 100644
Binary files a/Tests/bin/Debug/netcoreapp3.1/DataClients.dll and b/Tests/bin/Debug/netcoreapp3.1/DataClients.dll differ
diff --git a/Tests/bin/Debug/netcoreapp3.1/DataClients.pdb b/Tests/bin/Debug/netcoreapp3.1/DataClients.pdb
index e0af495..e100cdd 100644
Binary files a/Tests/bin/Debug/netcoreapp3.1/DataClients.pdb and b/Tests/bin/Debug/netcoreapp3.1/DataClients.pdb differ
diff --git a/Tests/bin/Debug/netcoreapp3.1/Mailing.dll b/Tests/bin/Debug/netcoreapp3.1/Mailing.dll
index 6d04539..4a12412 100644
Binary files a/Tests/bin/Debug/netcoreapp3.1/Mailing.dll and b/Tests/bin/Debug/netcoreapp3.1/Mailing.dll differ
diff --git a/Tests/bin/Debug/netcoreapp3.1/Mailing.pdb b/Tests/bin/Debug/netcoreapp3.1/Mailing.pdb
index 23afad1..7e8e75b 100644
Binary files a/Tests/bin/Debug/netcoreapp3.1/Mailing.pdb and b/Tests/bin/Debug/netcoreapp3.1/Mailing.pdb differ
diff --git a/Tests/bin/Debug/netcoreapp3.1/Tests.dll b/Tests/bin/Debug/netcoreapp3.1/Tests.dll
index 05c3a10..98c87eb 100644
Binary files a/Tests/bin/Debug/netcoreapp3.1/Tests.dll and b/Tests/bin/Debug/netcoreapp3.1/Tests.dll differ
diff --git a/Tests/bin/Debug/netcoreapp3.1/Tests.pdb b/Tests/bin/Debug/netcoreapp3.1/Tests.pdb
index bf6df4b..9f512cb 100644
Binary files a/Tests/bin/Debug/netcoreapp3.1/Tests.pdb and b/Tests/bin/Debug/netcoreapp3.1/Tests.pdb differ
diff --git a/Tests/bin/Debug/netcoreapp3.1/total.txt b/Tests/bin/Debug/netcoreapp3.1/total.txt
index 742afe7..e5f9d04 100644
--- a/Tests/bin/Debug/netcoreapp3.1/total.txt
+++ b/Tests/bin/Debug/netcoreapp3.1/total.txt
@@ -1,32 +1,18 @@
-2021-05-17 09:58:39.9 035 Отс. связь ГМП 01 <- vdp10
-2021-05-17 10:07:04.5 035 Отс. связь ГМП 00 <- vdp10
-2021-05-17 11:25:48.1 035 Отс. связь ГМП 01 <- vdp17
-2021-05-17 11:25:52.7 035 Отс. связь ГМП 00 <- vdp17
-2021-05-17 22:19:34.5 035 Отс. связь ГМП 01 <- vdp03
-2021-05-17 22:19:36.2 035 Отс. связь ГМП 00 <- vdp03
-2021-05-18 14:42:13.5 035 Отс. связь ГМП 01 <- vdp03
-2021-05-18 14:42:19.0 035 Отс. связь ГМП 00 <- vdp03
-2021-05-18 20:24:00.3 035 Отс. связь ГМП 01 <- vdp03
-2021-05-18 20:24:05.8 035 Отс. связь ГМП 00 <- vdp03
-2021-05-21 09:32:21.8 035 Отс. связь ГМП 01 <- vdp33
-2021-05-21 09:32:23.9 035 Отс. связь ГМП 00 <- vdp33
-2021-05-22 01:00:38.6 035 Отс. связь ГМП 01 <- vdp10
-2021-05-22 01:00:44.1 035 Отс. связь ГМП 00 <- vdp10
-2021-05-22 12:14:53.7 035 Отс. связь ГМП 01 <- vdp10
-2021-05-22 12:14:59.2 035 Отс. связь ГМП 00 <- vdp10
-2021-05-22 19:44:46.4 035 Отс. связь ГМП 01 <- vdp03
-2021-05-23 03:12:37.2 035 Отс. связь ГМП 00 <- vdp03
-2021-05-24 20:56:41.0 035 Отс. связь ГМП 01 <- vdp03
-2021-05-24 20:56:46.5 035 Отс. связь ГМП 00 <- vdp03
-2021-05-25 14:01:20.3 035 Отс. связь ГМП 01 <- vdp10
-2021-05-25 14:01:32.1 035 Отс. связь ГМП 00 <- vdp10
-2021-05-25 20:42:30.1 035 Отс. связь ГМП 01 <- vdp03
-2021-05-25 20:42:35.6 035 Отс. связь ГМП 00 <- vdp03
-2021-05-26 00:00:00.3 105 Отс. связь AB 01 <- vdp03
-2021-05-26 00:00:00.6 105 Отс. связь AB 00 <- vdp03
-2021-05-26 11:44:42.8 035 Отс. связь ГМП 01 <- vdp04
-2021-05-26 11:44:43.4 035 Отс. связь ГМП 00 <- vdp04
-2021-05-27 06:42:07.1 035 Отс. связь ГМП 01 <- vdp03
-2021-05-27 06:42:12.6 035 Отс. связь ГМП 00 <- vdp03
-2021-05-27 14:51:46.2 035 Отс. связь ГМП 01 <- vdp03
-2021-05-27 14:51:51.7 035 Отс. связь ГМП 00 <- vdp03
+2021-05-28 00:27:18.7 035 Отс. связь ГМП 01 <- vdp03
+2021-05-28 00:27:24.2 035 Отс. связь ГМП 00 <- vdp03
+2021-05-28 13:42:09.7 035 Отс. связь ГМП 01 <- vdp03
+2021-05-28 13:42:24.0 035 Отс. связь ГМП 00 <- vdp03
+2021-05-28 14:44:43.7 035 Отс. связь ГМП 01 <- vdp10
+2021-05-28 14:48:39.7 035 Отс. связь ГМП 00 <- vdp10
+2021-05-28 14:49:13.8 035 Отс. связь ГМП 01 <- vdp10
+2021-05-28 14:49:57.0 035 Отс. связь ГМП 00 <- vdp10
+2021-05-30 11:50:55.4 105 Отс. связь AB 01 <- vdp03
+2021-05-30 11:50:55.8 105 Отс. связь AB 00 <- vdp03
+2021-05-31 16:33:30.7 035 Отс. связь ГМП 01 <- vdp10
+2021-05-31 16:33:46.1 035 Отс. связь ГМП 00 <- vdp10
+2021-06-01 03:51:51.6 035 Отс. связь ГМП 01 <- vdp03
+2021-06-01 03:51:57.1 035 Отс. связь ГМП 00 <- vdp03
+2021-06-01 11:08:32.1 035 Отс. связь ГМП 01 <- vdp10
+2021-06-01 11:08:39.0 035 Отс. связь ГМП 00 <- vdp10
+2021-06-01 11:45:01.7 035 Отс. связь ГМП 01 <- vdp03
+2021-06-01 11:45:07.2 035 Отс. связь ГМП 00 <- vdp03
diff --git a/Tests/obj/Debug/netcoreapp3.1/Tests.csprojAssemblyReference.cache b/Tests/obj/Debug/netcoreapp3.1/Tests.csprojAssemblyReference.cache
index 65970dd..e18355d 100644
Binary files a/Tests/obj/Debug/netcoreapp3.1/Tests.csprojAssemblyReference.cache and b/Tests/obj/Debug/netcoreapp3.1/Tests.csprojAssemblyReference.cache differ
diff --git a/Tests/obj/Debug/netcoreapp3.1/Tests.dll b/Tests/obj/Debug/netcoreapp3.1/Tests.dll
index 05c3a10..98c87eb 100644
Binary files a/Tests/obj/Debug/netcoreapp3.1/Tests.dll and b/Tests/obj/Debug/netcoreapp3.1/Tests.dll differ
diff --git a/Tests/obj/Debug/netcoreapp3.1/Tests.pdb b/Tests/obj/Debug/netcoreapp3.1/Tests.pdb
index bf6df4b..9f512cb 100644
Binary files a/Tests/obj/Debug/netcoreapp3.1/Tests.pdb and b/Tests/obj/Debug/netcoreapp3.1/Tests.pdb differ