STATE darf nicht mit einem Zeitstempel anfangen

Begonnen von peterk_de, 12 Januar 2020, 23:26:13

Vorheriges Thema - Nächstes Thema

peterk_de

Erkenntnis nach mehrstündigem Knobeln:

Man sollte sich mit dem Attribut stateFormat keinen STATE für ein Device basteln, der direkt mit einem FHEM-Zeitstempel anfängt und danach noch weiteren Text mit Leerzeichen enthält. Ansonsten hat man nach einem FHEM-Neustart merkwürdige Readings im Device, die aus Fragmenten dieses eigenen STATEs bestehen (Readingname = Erstes Wort nach dem Zeitstempel im eigenen STATE; Readingswert = Alles danach).

Hintergrund ist die Syntax des Statefiles von FHEM bzw. vom Befehl setstate.

Da das nirgendwo dokumentiert und schwer herauszufinden ist, halte ich es einmal hier fest - ein Hinweis in der Commandref (idealerweise beim Attribut
stateFormat) wäre aber sicher auch gut :)
FHEM auf Ubuntu-VM / 2xNUC Proxmox Cluster
UI: HomeKit, TabletUI, Grafana
IOdevs: 2xHueBridge, RaspiMatic-CCU, CUL868, 2xHarmonyHub, 6xRaspi-Roomnode mit CO2, VOC und lepresenced
Devices: 107xHomematic(IP), 96xPhilips Hue, 17xTECHEM, 12xBTLE, 8xSONOS, 2xHomeConnect, 1xShelly 3em, 1xNanoleaf ...

CoolTux

Kannst Du bitte ein nachvollziehbares Beispiel Posten.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

rudolfkoenig

Ist nicht noetig, das Problem ist mir bekannt, ich habe es jetzt in der commandref setstate ergaenzt:
ZitatAchtung: setstate wird verwendet, um Readings im statefile zu speichern, in diesem Fall wird vor dem Wert ein Zeitstempel geschrieben. Als Seiteneffekt ist es nicht möglich, ein Status, was mit einem Zeitstempel der Form YYYY-MM-DD HH:MM:SS beginnt, korrekt zu speichern.