# Gestion des informations WIFI

Les fonctionnalités liées aux opérations WIFI sont expérimentales. Nous ne présenterons ici que les fonctions implémentées et disponibles. Grâce aux interfaces correspondantes, vous pouvez obtenir l'état WIFI de l'appareil, les résultats du scan WIFI, la force du signal, et mettre en liste noire des BSSID.

## Obtenir une instance WIFI

Tout d'abord, vous devez obtenir une instance de la fonctionnalité WIFI. Vous pouvez le faire de la manière suivante.

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

## Obtenir l'état du WIFI

Obtenir les informations relatives au WIFI telles que le BSSID, le SSID, l'adresse IP, etc.

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

## Ajouter un WIFI à la liste noire

Ajoute un BSSID à la liste noire WIFI (ce WIFI n'apparaîtra plus dans la liste des réseaux WIFI par la suite).

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

## Obtenir la liste noire WIFI

Obtient tous les BSSID présents dans la liste noire WIFI.

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

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

## Vider la liste noire WIFI

Efface tous les BSSID de la liste noire WIFI.

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

## Effectuer un scan WIFI

Effectue un scan WIFI. L'appel de cette fonction tentera de scanner les réseaux WIFI environnants.

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

## Obtenir les résultats du scan WIFI

L'appel de cette interface retournera les résultats du scan des réseaux WIFI environnants.

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

## Obtenir la force du signal WIFI

Appelez l'interface suivante pour obtenir des informations telles que la force du signal WIFI, la vitesse de connexion et la fréquence.

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

## Obtenir l'adresse MAC du WIFI

Appelez cette interface pour obtenir l'adresse MAC du WIFI actuel.

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

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