private async Task CloseUnconfirmedSockets(CancellationToken stoppingToken) { foreach (var elem in container.ConfirmedAgents) { if (!elem.Value) { bool result = await manager.RemoveSocketAsync(elem.Key, stoppingToken); if (!result) { ISocketClient <Message, Message> socket = manager.GetSocketById(elem.Key); logger.Error($"Failed to remove socket: {socket.GetSocket().Endpoint}"); } logger.Information($"Player {elem.Key} has been forced to disconnect - connection after StartGame"); } } }
public async Task SendMessage(string id, string text) { var socket = await _socketManager.GetSocketById(id); await SendMessage(socket, text); }