fix(api): system/info meldet im AP-Betrieb den AP-Namen

nl_wifi_status() fuellte out->ssid immer aus der Stations-SSID. Eine
Standalone-Lampe mit noch gespeicherten Heimnetzdaten meldete damit
mode: "ap", standalone: true UND den Namen des Heim-WLANs: App und HA zeigten
den falschen Netznamen, und der Heimnetzname stand in einer tokenfrei lesbaren
Antwort. Die Spec verlangt dort den AP-Namen.

Gemeldet wird jetzt im Modus "ap" (eigener AP oder Onboarding-AP) der
WIRKSAME AP-Name: die Daten des laufenden AP, sonst der gewuenschte, sonst der
Hostname. "apsta" bleibt bei der Station - dort ist sie die Hauptsache.
Erwuenschter Nebeneffekt: ein Rueckfall auf andere AP-Daten wird ueber die API
sichtbar, ohne ein neues Feld.

Beruehrt den API-Vertrag, deshalb ein eigener Commit. test/test_api.c ist
nicht betroffen: die Tests fahren ueber den Fake nl_sys_info_t, nl_wifi_status()
selbst gibt es im Hostbau nicht.
This commit is contained in:
Michael Sauer
2026-10-02 19:32:33 +02:00
parent ef321b37ef
commit 08ea01f944
2 changed files with 13 additions and 2 deletions
+3 -1
View File
@@ -138,7 +138,9 @@ Onboarding-AP `ninlight-<mac4>`.
`GET system/settings` zeigt einen `standalone`-Block mit `enabled`, dem **wirksamen** AP-Namen
(`ssid`), `channel` und `pulse` — das Passwort steht nie darin. `GET system/info` meldet
`wifi.standalone`.
`wifi.standalone` und im AP-Betrieb (`mode: "ap"`, also eigener AP oder Onboarding-AP) unter
`wifi.ssid` den **wirksamen AP-Namen** statt der gespeicherten Stations-SSID — der Name des
Heimnetzes steht damit nicht in einer tokenfrei lesbaren Antwort.
Der Startpuls übermalt als Überlagerung die sACN-Ausgabe: solange er läuft, ist von sACN nichts
zu sehen. Beim Ausprobieren von sACN über den eigenen AP den Puls mit `pulse: false` abschalten oder