Bruecke faengt auch den zweiten Fehler der Wallbox ab

'lot' steht in der API-Beschreibung als jsonType integer, die Firmware
schickt aber ein Objekt. Die Bibliothek reicht es unveraendert an paho
weiter, paho nimmt nur Skalare - und die Ausnahme riss dieselbe Schleife
mit wie der KeyError auf unbekannte Felder. Im rotierten Log machte
dieser zweite Fehler 1.264.882 von 2.985.071 Zeilen aus.

mqtt_get_encoded_property wird jetzt ebenfalls ersetzt: was nach der
Kodierung kein Skalar ist, geht als JSON hinaus, einmalig mit Warnung.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-03 20:42:50 +02:00
co-authored by Claude Opus 5
parent acb443e27a
commit ce2a86fa2b
2 changed files with 49 additions and 6 deletions
+7 -4
View File
@@ -272,10 +272,13 @@ Veröffentlichung, ein Update behebt das also nicht. Die Bibliothek schlug
jedes Feld ungeprüft nach und lief in einen `KeyError`, der die restliche
Schleife mitriss: alles, was in derselben Nachricht dahinter stand, wurde nie
veröffentlicht — im Dauerbetrieb alle 15 Sekunden `fhz`, `lps` und `tpcm`,
nach einem Verbindungsaufbau deutlich mehr. `wattpilot_bruecke.py` ersetzt
die betroffene Funktion zur Laufzeit und überspringt unbekannte Felder, jedes
einmal mit einer Warnung im Log. `startWattpilotMQTT.sh` startet seither die
Brücke statt der `wattpilotshell` direkt.
nach einem Verbindungsaufbau deutlich mehr. Dieselbe Ursache aus der
anderen Richtung traf `lot`: als `integer` beschrieben, als Objekt geschickt,
von paho abgelehnt — gut vier von zehn Zeilen im alten Log.
`wattpilot_bruecke.py` ersetzt beide betroffenen Funktionen zur Laufzeit,
überspringt unbekannte Felder und verschickt Werte notfalls als JSON, jedes
Feld einmal mit einer Warnung im Log. `startWattpilotMQTT.sh` startet seither
die Brücke statt der `wattpilotshell` direkt.
`fetch_calendar.py` gehört einmal jährlich in den Cron: