1.5 KiB
1.5 KiB
Box-Lifecycle
Zweck
Definiert Identitaet, WLAN-Status und Neustartverhalten der virtuellen Box.
Voraussetzungen
- Box gestartet mit
python3 box/main.py run
Schritt-fuer-Schritt
Box-Identitaet
- Wird beim ersten Start erzeugt, wenn
box/data/box.jsonkeinebox_identhaelt. - Format:
klangkiste-<10 Zeichen a-z0-9> - Persistiert in
box/data/box.json
WLAN-Zustaende (logisch)
WIFI_UNCONFIGURED: keine Profile gespeichertWIFI_CONNECTING: reserviert fuer spaeter (im Mock nicht aktiv)WIFI_ONLINE: Profil vorhanden und verbundenWIFI_OFFLINE: Profil vorhanden, aber nicht verbunden
IP-Modell (informativ)
- Setup/AP-Modus:
192.168.4.1 - Normalbetrieb:
127.0.0.1
Neustartverhalten
- Box laedt
box_id, Resume-State und WLAN-Profile ausbox/data/ - Resume und WLAN-Status bleiben erhalten
Resets
- WLAN-Reset: nur WLAN-Profile loeschen (
wifi_reset) - Factory-Reset:
box/data/box.json,box/data/state.json,box/data/secrets.encloeschen
Pairing-Status
UNPAIRED: Box ist nicht gekoppeltPAIRING_PENDING: Box pollt Pairing-Status beim ServerPAIRED: Box ist gekoppelt, API-Token vorhanden
Checkliste
- ✅ Nach erstem Start existiert
box/data/box.jsonmitbox_id - ✅
GET /statusliefertwifi_stateundip_address - ✅ WLAN-Reset setzt
wifi_state=WIFI_UNCONFIGURED
Troubleshooting
wifi_stateaendert sich nicht:- WLAN-Profil via Setup UI oder API hinzufuegen.
box_idfehlt:- Schreibrechte fuer
box/data/box.jsonpruefen.
- Schreibrechte fuer