# Чтение и запись информации о WIFI

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

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

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

```python
wifi = d.stub("Wifi")
```

## Получение статуса WIFI

Получение информации о WIFI, такой как BSSID, SSID, IP-адрес и т.д.

```python
wifi.status()
```

```python
>>> 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"
```

```python
>>> result = wifi.status()
>>> print (result.ssid)
TPLINK_AE86
```

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

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

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

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

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

```python
wifi.blacklist_get_all()
```

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

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

Очищает черный список WIFI, удаляя все заблокированные BSSID.

```python
wifi.blacklist_clear()
```

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

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

```python
wifi.scan()
```

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

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

```python
wifi.scan_results()
```

```python
>>> 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]"
...
```

```python
>>> result = wifi.scan_results()
>>> print (result[0].bssid)
00:12:34:56:78:90
```

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

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

```python
wifi.signal_poll()
```

```python
>>> wifi.signal_poll()
RSSI: "-59"
LINKSPEED: "39"
NOISE: "9999"
FREQUENCY: "2447"
```

```python
>>> result = wifi.signal_poll()
>>> print (result.LINKSPEED)
39
```

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

Вызовите этот интерфейс для получения MAC-адреса текущего WIFI-соединения.

```python
wifi.get_mac_addr()
```

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