Événements WebSocket
Recevoir en direct les changements d'état d'un appareil du réseau local, plutôt que de l'interroger en boucle.
L'appareil publie ses changements d'état sur un WebSocket local. C'est l'alternative à
l'interrogation répétée de /info :
vous êtes prévenu quand quelque chose change, sans rien demander.
Se connecter
Instanciez un client WebSocket sur l'IP de l'appareil, port 10002 :
ws://192.168.0.23:10002L'IP est celle retournée par la découverte mDNS de l'application. Comme pour l'API HTTP, l'appareil doit être enrôlé et connecté au même réseau.
Ce WebSocket n'est pas authentifié, au même titre que l'API HTTP locale. Ne l'exposez pas hors du réseau local.
Changement d'état
| Événement | DEVICE_CHANGE_STATE |
| Émis quand | Une propriété d'état de l'appareil change |
Les données reçues portent les propriétés d'état : niveau de batterie, charge en cours, écran allumé ou éteint, niveau de volume.
L'événement est émis à chaque changement, pas à intervalle régulier. Un appareil au repos, écran éteint et batterie stable, n'émet rien.
Prévoyez de traiter des rafales : brancher un casque sur le secteur fait changer plusieurs propriétés en même temps et produit plusieurs événements rapprochés.
Extinction
| Événement | DEVICE_DISCONNECT |
| Émis quand | L'appareil est sur le point de s'éteindre |
{
"androidId": "5014b9959e9ae759",
"id": "67fd93f37a5db294fa7b2427",
"ip": "172.20.10.10",
"raison": "SHUTDOWN"
}Redémarrage
| Événement | DEVICE_DISCONNECT |
| Émis quand | L'appareil est sur le point de redémarrer |
{
"androidId": "5014b9959e9ae759",
"id": "67fd93f37a5db294fa7b2427",
"ip": "172.20.10.10",
"raison": "REBOOT"
}Distinguer les deux
Extinction et redémarrage partagent le même nom d'événement, DEVICE_DISCONNECT.
Seul le champ raison les sépare :
raison | Signification | Ce que fait votre client |
|---|---|---|
SHUTDOWN | Extinction volontaire | Retirer l'appareil du tableau de bord |
REBOOT | Redémarrage volontaire | Le marquer indisponible et attendre son retour |
| aucun événement | Perte de réseau ou coupure brutale | Traiter comme une panne, alerter |
C'est cette distinction qui permet de ne pas alerter à tort. Un appareil qui disparaît
sans avoir émis de DEVICE_DISCONNECT a perdu le réseau ou s'est éteint
brutalement — cela mérite une alerte, alors qu'un redémarrage demandé via
/restart n'en mérite pas.
Le champ s'écrit raison, en français, et non reason.
Cette page vous a-t-elle aidé ?
Dernière mise à jour le