if (HttpContext.WebSockets.IsWebSocketRequest)
{
using WebSocket ws = await HttpContext.WebSockets.AcceptWebSocketAsync();
string key = _socketManagerService.AddSocket(ws);
await _socketManagerService.SendAsync(key,new WebSocketMessage
{
MessageType = MessageType.ConnectionEvent,
Data = new WebSocketMessageData
{
Topic = "Connection",
Payload = $"Connection established {DateTime.UtcNow}"
}
});
_logger.LogInformation($"New connection: {key} {DateTime.UtcNow}");
while (!HttpContext.RequestAborted.IsCancellationRequested)
{
}
await _socketManagerService.RemoveSocketAsync(key);
}
if (HttpContext.WebSockets.IsWebSocketRequest)
{
using WebSocket ws = await HttpContext.WebSockets.AcceptWebSocketAsync();
string key = _socketManagerService.AddSocket(ws);
await _socketManagerService.SendAsync(key,new WebSocketMessage
{
MessageType = MessageType.ConnectionEvent,
Data = new WebSocketMessageData
{
Topic = "Connection",
Payload = $"Connection established {DateTime.UtcNow}"
}
});
_logger.LogInformation($"New connection: {key} {DateTime.UtcNow}");
while (!HttpContext.RequestAborted.IsCancellationRequested)
{
}
await _socketManagerService.RemoveSocketAsync(key);
}