diff --git a/monitor.py b/monitor.py index 298f758..991b1c0 100644 --- a/monitor.py +++ b/monitor.py @@ -71,9 +71,12 @@ def notify(message: str) -> None: # MikroTik: получить список IP из address-list # ────────────────────────────────────────────── def decode(val) -> str: - """Декодирует bytes или str, игнорируя ошибки кодировки.""" + """Декодирует bytes или str. Пробует UTF-8, затем Windows-1251.""" if isinstance(val, bytes): - return val.decode("utf-8", errors="replace") + try: + return val.decode("utf-8") + except UnicodeDecodeError: + return val.decode("windows-1251", errors="replace") return str(val) if val else ""