public IActionResult GetMessagesByRoomName([FromRoute] string roomName)
        {
            if (Tracker.TryGet(roomName, out var room))
            {
                var response = room.Messages
                               .Select(message => RoomMessageResponse.FromRoomMessage(message, self: message.Username == Client.Username));

                return(Ok(response));
            }

            return(NotFound());
        }
        private RoomResponse MapRoomToRoomResponse(Room room)
        {
            bool IsSelf(string username)
            {
                return(username == Client.Username);
            }

            var response = RoomResponse.FromRoom(room);

            response.Users = room.Users
                             .Select(user => UserDataResponse.FromUserData(user, self: IsSelf(user.Username)));
            response.Messages = room.Messages
                                .Select(message => RoomMessageResponse.FromRoomMessage(message, self: IsSelf(message.Username)));

            return(response);
        }