40 lines
1.4 KiB
Python
40 lines
1.4 KiB
Python
from pydantic import BaseModel
|
|
from typing import Optional, List
|
|
|
|
|
|
class WifiAccessPoint(BaseModel):
|
|
"""Модель Wi-Fi точки доступа.
|
|
|
|
Атрибуты:
|
|
|
|
- ``ssid`` (Optional[str]): Название сети (может быть скрытым).
|
|
- ``bssid`` (str): Уникальный идентификатор точки доступа.
|
|
- ``channel`` (Optional[int]): Номер канала.
|
|
- ``signal`` (Optional[int]): Уровень сигнала в dBm.
|
|
- ``encryption`` (Optional[str]): Тип шифрования (WPA/WPA2/WPA3/открытая).
|
|
- ``frequency`` (Optional[str]): Диапазон частот (2.4/5 ГГц).
|
|
- ``vendor`` (Optional[str]): Производитель оборудования.
|
|
- ``hidden`` (bool): Флаг скрытого SSID.
|
|
- ``note`` (Optional[str]): Пользовательская заметка.
|
|
"""
|
|
|
|
ssid: Optional[str] = None
|
|
bssid: str
|
|
channel: Optional[int] = None
|
|
signal: Optional[int] = None
|
|
encryption: Optional[str] = None
|
|
frequency: Optional[str] = None
|
|
vendor: Optional[str] = None
|
|
hidden: bool = False
|
|
note: Optional[str] = None
|
|
|
|
|
|
class WifiScanResult(BaseModel):
|
|
"""Результат сканирования Wi-Fi.
|
|
|
|
Атрибуты:
|
|
|
|
- ``access_points`` (List[WifiAccessPoint]): Найденные точки доступа.
|
|
"""
|
|
|
|
access_points: List[WifiAccessPoint]
|