Немного комментариев (В первую очередь для себя)

This commit is contained in:
parent 4646b9c513
commit d80adfb2e0

View file

@ -31,7 +31,7 @@ class WifiService:
for iface in interfaces: for iface in interfaces:
iface_name = iface.name() iface_name = iface.name()
if 'p2p' in iface_name.lower(): if 'p2p' in iface_name.lower(): # Исключаю сетевые интерфейсы типа p2p из выбора, возможно сделать решение получше нежели исключать интерфейсы
logger.debug(f"Пропущен интерфейс {iface_name} (P2P)") logger.debug(f"Пропущен интерфейс {iface_name} (P2P)")
continue continue
try: try:
@ -177,14 +177,14 @@ class WifiService:
try: try:
logger.info(f"Начало сканирования Wi-Fi на интерфейсе {self.interface.name()}") logger.info(f"Начало сканирования Wi-Fi на интерфейсе {self.interface.name()}")
self.interface.scan() self.interface.scan()
time.sleep(10) time.sleep(10) # Нативное значение для wifi интерфейса предназначенное на сканирование и сбор результата. Оптимальное решение от 5 до 15 секунд
py_results = self.interface.scan_results() py_results = self.interface.scan_results()
logger.debug(f"Найдено {len(py_results)} точек через pywifi") logger.debug(f"Найдено {len(py_results)} точек через pywifi")
iw_results = self._get_iw_scan_data() iw_results = self._get_iw_scan_data()
iw_by_bssid = {ap['bssid']: ap for ap in iw_results if ap.get('bssid')} iw_by_bssid = {ap['bssid']: ap for ap in iw_results if ap.get('bssid')}
best_aps_by_ssid: Dict[str, WifiAccessPoint] = {} best_aps_by_ssid: Dict[str, WifiAccessPoint] = {} # Сделал словарь чтобы агрегировать точки доступа у сетей для выявления лучшего
for ap in py_results: for ap in py_results:
bssid = ap.bssid.lower() if ap.bssid else None bssid = ap.bssid.lower() if ap.bssid else None
if not bssid: if not bssid: