from core.services.encrypted_proxy.hysteria_service import enable_hysteria, disable_hysteria class HysteriaController: def __init__(self, socks5_port: int): self.socks5_port = socks5_port def enable(self, username: str, password: str, server_host: str, observer=None) -> bool: if not username or not isinstance(username, str): if observer: observer.notify("error", "Invalid username") return False if not password or not server_host: if observer: observer.notify("error", "Missing password or server_host") return False return enable_hysteria( username=username, password=password, server_host=server_host, socks5_port=self.socks5_port, observer=observer, ) def disable(self, observer=None) -> bool: return disable_hysteria(observer=observer)