diff --git a/Sharpcaster/Channels/ConnectionChannel.cs b/Sharpcaster/Channels/ConnectionChannel.cs index 1509c92..bbde633 100644 --- a/Sharpcaster/Channels/ConnectionChannel.cs +++ b/Sharpcaster/Channels/ConnectionChannel.cs @@ -38,11 +38,13 @@ public async Task ConnectAsync(string transportId) /// message to process public async override Task OnMessageReceivedAsync(IMessage message) { - // In order to avoid usage deadlocks we need to spawn a new Task here!? - _ = Task.Run(async () => { - await Client.DisconnectAsync(); - //await Task.Delay(2000); - }); + if (message is CloseMessage) { + // In order to avoid usage deadlocks we need to spawn a new Task here!? + _ = Task.Run(async () => { + await Client.DisconnectAsync(); + //await Task.Delay(2000); + }); + } await base.OnMessageReceivedAsync(message); } }