Connect Service¶
Сервис управления подключениями Wi‑Fi через nmcli.
Назначение:
Предоставляет операции подключения/отключения к точкам доступа и проверки текущего статуса, ориентируясь на системный NetworkManager.
Поведение:
Автоматически определяет активный Wi‑Fi‑интерфейс.
Валидирует наличие SSID в листинге перед подключением и интерпретирует частые ошибки nmcli (неверный пароль, отсутствующая сеть и т.п.).
Ограничения:
Требуются права для управления сетевыми соединениями в системе.
В окружениях без NetworkManager команды nmcli будут недоступны.
- class services.connect_service.WifiConnectionService(translations: Translations = Depends(translations_dependency))[source]¶
Bases:
objectСервис для управления подключением к Wi-Fi сетям с использованием nmcli.
Предоставляет методы для подключения, отключения и проверки статуса Wi-Fi соединений.
- connect(ssid: str, password: str) Tuple[bool, str | None][source]¶
Подключается к Wi-Fi сети по SSID и паролю.
- Args:
ssid (str): Идентификатор сети Wi-Fi. password (str): Пароль для подключения.
- Returns:
- Tuple[bool, Optional[str]]: Кортеж (успех, сообщение об ошибке).
Успех: (True, None).
Ошибка: (False, сообщение об ошибке).
- Raises:
subprocess.CalledProcessError: Если команда nmcli завершилась с ошибкой. Exception: Если произошла неизвестная ошибка при выполнении.
- disconnect(ssid: str) Tuple[bool, str | None][source]¶
Отключается от Wi-Fi сети по указанному SSID.
- Args:
ssid (str): Идентификатор сети Wi-Fi для отключения.
- Returns:
- Tuple[bool, Optional[str]]: Кортеж (успех, сообщение об ошибке).
Успех: (True, None или сообщение, если подключение не найдено).
Ошибка: (False, сообщение об ошибке).
- Raises:
subprocess.CalledProcessError: Если команда nmcli завершилась с ошибкой. Exception: Если произошла неизвестная ошибка при выполнении.
- get_status() Tuple[bool, str | None][source]¶
Проверяет статус текущего подключения к Wi-Fi.
- Returns:
- Tuple[bool, Optional[str]]: Кортеж (успех, SSID или сообщение об ошибке).
Успех: (True, SSID текущей сети).
Ошибка или отсутствие подключения: (False, сообщение об ошибке).
- Raises:
Exception: Если произошла ошибка при выполнении команды nmcli.