Add connection timeout

This commit is contained in:
2021-06-04 18:44:16 +02:00
parent 509bf853a1
commit c0d3814398

View File

@@ -12,6 +12,8 @@ namespace Akari.Provider.WaveshareUART
{
public class TcpService
{
public const int ConnectTimeout = 5_000;
public FingerprintSensor FingerprintSensor => WaveshareUARTProvider.Instance.FingerprintSensor;
public UsersManager UsersManager => WaveshareUARTProvider.Instance.UsersManager;
@@ -64,11 +66,17 @@ namespace Akari.Provider.WaveshareUART
private void SendAuth(User user)
{
using (var client = new TcpClient(_ip, _port))
using (var client = new TcpClient())
{
if (!client.ConnectAsync(_ip, _port).Wait(ConnectTimeout))
{
Console.WriteLine("Can't connect to server, timed out");
return;
}
var stream = client.GetStream();
//var data = Convert.FromBase64String(user.Token);
var data = Encoding.UTF8.GetBytes($"{user.Name}${user.Token}");
stream.Write(data, 0, data.Length);