@@ -51,6 +51,7 @@ private void WebSocket_Closed(IWebSocket sender, WebSocketClosedEventArgs args)
51
51
52
52
private void WebSocket_MessageReceived ( MessageWebSocket sender , MessageWebSocketMessageReceivedEventArgs args )
53
53
{
54
+ Logger . LogTrace ( "WebSocket_MessageReceived()" ) ;
54
55
try
55
56
{
56
57
using ( var data = args . GetDataStream ( ) )
@@ -75,6 +76,7 @@ public void Close(ushort code, string reason)
75
76
76
77
public async Task ConnectAsync ( )
77
78
{
79
+ Logger . LogTrace ( "ConnectAsync()" ) ;
78
80
var locked = await SemaphoreSlim . WaitAsync ( 0 , Token ) ; // ensure no threads are reconnecting at the same time
79
81
if ( locked )
80
82
{
@@ -83,6 +85,7 @@ public async Task ConnectAsync()
83
85
try
84
86
{
85
87
CreateMessageWebSocket ( ) ;
88
+ Logger . LogTrace ( "WebSocket.ConnectAsync()" ) ;
86
89
await WebSocket . ConnectAsync ( SignalWSUri ) . AsTask ( Token ) ;
87
90
SemaphoreSlim . Release ( ) ;
88
91
break ;
@@ -100,6 +103,10 @@ public async Task ConnectAsync()
100
103
}
101
104
}
102
105
}
106
+ else
107
+ {
108
+ Logger . LogTrace ( "ConnectAsync() not reconnecting: Reconnect in progress" ) ;
109
+ }
103
110
}
104
111
105
112
public void Dispose ( )
@@ -109,11 +116,21 @@ public void Dispose()
109
116
110
117
public async Task SendMessage ( byte [ ] data )
111
118
{
112
- using ( var dataWriter = new DataWriter ( WebSocket . OutputStream ) )
119
+ Logger . LogTrace ( "SendMessage()" ) ;
120
+ try
121
+ {
122
+ using ( var dataWriter = new DataWriter ( WebSocket . OutputStream ) )
123
+ {
124
+ dataWriter . WriteBytes ( data ) ;
125
+ await dataWriter . StoreAsync ( ) ;
126
+ dataWriter . DetachStream ( ) ;
127
+ }
128
+ }
129
+ catch ( OperationCanceledException ) { }
130
+ catch ( Exception e )
113
131
{
114
- dataWriter . WriteBytes ( data ) ;
115
- await dataWriter . StoreAsync ( ) ;
116
- dataWriter . DetachStream ( ) ;
132
+ Logger . LogError ( $ "SendMessage() failed: { e . Message } \n { e . StackTrace } ") ;
133
+ var t = Task . Run ( ConnectAsync ) ;
117
134
}
118
135
}
119
136
}
0 commit comments