Winify
/trunk/Winify/Gotify/GotifyConnection.cs |
@@ -108,8 +108,8 @@ |
{ |
try |
{ |
_webSocketClient = new ClientWebSocket(); |
|
using (_webSocketClient = new ClientWebSocket()) |
{ |
var auth = Convert.ToBase64String(Encoding.Default.GetBytes($"{username}:{password}")); |
|
_webSocketClient.Options.SetRequestHeader("Authorization", $"Basic {auth}"); |
@@ -120,8 +120,13 @@ |
{ |
var payload = new ArraySegment<byte>(new byte[1024]); |
|
await _webSocketClient.ReceiveAsync(payload, cancellationToken); |
var result = await _webSocketClient.ReceiveAsync(payload, cancellationToken); |
|
if (result.Count == 0) |
{ |
continue; |
} |
|
if (payload.Array == null || payload.Count == 0) |
{ |
continue; |
@@ -142,7 +147,8 @@ |
|
var applications = await _httpClient.GetStringAsync(applicationUri); |
|
var gotifyApplications = JsonConvert.DeserializeObject<GotifyApplication[]>(applications); |
var gotifyApplications = |
JsonConvert.DeserializeObject<GotifyApplication[]>(applications); |
if (gotifyApplications == null) |
{ |
continue; |
@@ -186,6 +192,9 @@ |
await _webSocketClient.CloseAsync(WebSocketCloseStatus.NormalClosure, string.Empty, |
CancellationToken.None); |
} |
|
_webSocketClient = null; |
} |
catch (Exception ex) when (ex is WebSocketException || ex is HttpRequestException) |
{ |
Log.Warning($"Unable to connect to gotify server: {ex.Message}"); |