WiFi

Функции, связанные с работой WIFI, являются экспериментальными; мы описываем лишь часть реализованных доступных возможностей. С помощью соответствующих API вы можете получить состояние WIFI устройства, результаты сканирования WIFI, уровень сигнала, добавить BSSID в чёрный список и т.д.

Получение экземпляра WIFI

Сначала необходимо получить экземпляр функциональности WIFI. Это можно сделать следующим образом.

wifi = d.stub("Wifi")

Получение состояния WIFI

Получение информации о BSSID, SSID, IP и других связанных параметрах WIFI.

wifi.status()
>>> wifi.status()
id: "0"
address: "c1:c2:c3:c4:c5:c6"
bssid: "00:12:34:56:78:90"
freq: "2447"
group_cipher: "TKIP"
ip_address: "192.168.1.158"
key_mgmt: "WPA2-PSK"
mode: "station"
pairwise_cipher: "CCMP"
ssid: "TPLINK_AE86"
wifi_generation: "4"
wpa_state: "COMPLETED"
>>> result = wifi.status()
>>> print(result.ssid)
TPLINK_AE86

Добавление BSSID в чёрный список WIFI

Добавление BSSID в чёрный список WIFI (после этого данная сеть WIFI не будет отображаться в списке сетей).

wifi.blacklist_add("3c:06:aa:8a:55:66")

Получение чёрного списка WIFI

Получение всех BSSID, находящихся в чёрном списке WIFI.

wifi.blacklist_get_all()
>>> wifi.blacklist_get_all()
['3c:06:aa:8a:55:66']

Очистка чёрного списка WIFI

Удаление всех BSSID из чёрного списка WIFI.

wifi.blacklist_clear()

Выполнение сканирования WIFI

Выполнение сканирования WIFI; после вызова будет предпринята попытка просканировать окружающие сети WIFI.

wifi.scan()

Получение результатов сканирования WIFI

Вызов этого API возвращает результаты сканирования окружающих сетей WIFI.

wifi.scan_results()
>>> wifi.scan_results()
[id: "0"
bssid: "00:12:34:56:78:90"
ssid: "TPLINK_AE86"
freq: "2447"
noise: "-89"
level: "-62"
tsf: "0000001234567890"
flags: "[WPA-PSK-CCMP+TKIP][WPA2-PSK-CCMP+TKIP][WPS][ESS]"
, id: "6"
bssid: "00:12:34:56:78:90"
ssid: "MIFI-97A5"
freq: "2437"
noise: "-89"
level: "-59"
tsf: "0000001234567890"
flags: "[WPA2-PSK-CCMP][WPS][ESS]"
...
]
>>> result = wifi.scan_results()
>>> print(result[0].bssid)
00:12:34:56:78:90

Получение уровня сигнала WIFI

Вызовите следующий API, чтобы получить уровень сигнала WIFI, скорость соединения и частоту.

wifi.signal_poll()
>>> wifi.signal_poll()
RSSI: "-59"
LINKSPEED: "39"
NOISE: "9999"
FREQUENCY: "2447"
>>> result = wifi.signal_poll()
>>> print(result.LINKSPEED)
39

Получение MAC-адреса WIFI

Получение MAC-адреса текущего WIFI.

wifi.get_mac_addr()
>>> wifi.get_mac_addr()
'c1:c2:c3:c4:c5:c6'