-
-
Notifications
You must be signed in to change notification settings - Fork 15
Closed
Labels
enhancementNew feature or requestNew feature or request
Milestone
Description
Wie in #173 (comment) bereits gezeigt kann es im Zusammenhang mit den Funktionen parseJSON
und ParseFloat
zu unerwünschtem Verhalten kommen. Folgende Verbesserungen schlage ich daher vor:
- Die Typsicherheit von
parseJSON
muss gewährleistet sein, insbesondere bei Verwendung in Benutzereingaben alsTEMPLATE
(vgl. MQTT-Dimmer und -Analogwertempfänger: Mehr Möglichkeiten um den Wert zu extrahieren #70). - Der an
ParseFloat
übergebenen String darf keine vorangestellten oder nachfolgenden Leerzeichen enthalten (sog. Trim Whitespace), um weitere ähnliche Probleme mit anderen Extraktoren zu vermeiden. - Die irreführende Fehlermeldung im Debug Log ("Template returned invalid number literal") sollte berichtigt werden, da
fval
nicht berücksichtigt wird. - Wenn Fehlermeldungen einen String referenzieren, sollte dieser generell in Anführungszeichen gesetzt sein.
Zu 1. möchte ich hinzufügen, dass ich mit der etwas ungewöhnlichen Syntax nicht vertraut bin, aber ich denke, dass die doppelt geschweiften Klammern um den Ausdruck (z.B. {{(parseJSON .).a_act_power}}
) herum erzwungen werden müssen. Sofern sie nicht vom Benutzer eingegeben wurden, sollten sie einfach programmatisch hinzugefügt werden, um die "Typsicherheit" zu erhalten. Ich verstehe aber nicht genügend Golang, um diese Vermutung bewerten zu können.
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request