protected override Task OnConnectedAsync(OpenConnectionMessage openConnectionMessage)
        {
            var connection = new AzureSignalRConnectionContext(openConnectionMessage, this);

            _connections[openConnectionMessage.ConnectionId] = connection;
            _ = ProcessHandshakeAsync(connection);

            return(Task.CompletedTask);
        }
        private async Task ProcessHandshakeAsync(AzureSignalRConnectionContext connection)
        {
            if (await connection.ProcessHandshakeAsync())
            {
                // The connection is accepted
                _acceptQueue.Writer.TryWrite(connection);

                // Start processing messages from the application
                connection.Start();
            }
        }