import logging from typing import Dict import requests logger = logging.getLogger("desktopenv.getters.general") def get_vm_command_line(env, config: Dict[str, str]): vm_ip = env.vm_ip port = env.server_port command = config["command"] shell = config.get("shell", False) response = requests.post(f"http://{vm_ip}:{port}/execute", json={"command": command, "shell": shell}) print(response.json()) if response.status_code == 200: return response.json()["output"] else: logger.error("Failed to get vm command line. Status code: %d", response.status_code) return None def get_vm_command_error(env, config: Dict[str, str]): vm_ip = env.vm_ip port = env.server_port command = config["command"] shell = config.get("shell", False) response = requests.post(f"http://{vm_ip}:{port}/execute", json={"command": command, "shell": shell}) print(response.json()) if response.status_code == 200: return response.json()["error"] else: logger.error("Failed to get vm command line error. Status code: %d", response.status_code) return None def get_vm_terminal_output(env, config: Dict[str, str]): return env.controller.get_terminal_output()