Hauptmenü

setstate bei list -r

Begonnen von Hackstall, 18 September 2022, 20:12:55

Vorheriges Thema - Nächstes Thema

Hackstall

Hallo,

Ich mache ein list -r auf ein Device in eine Datei und bekomme
defmod <Device> ....,,
setstate <device> <timespec> STATE <value>
setstate <device> <timespec> <readingname> <value>

ich würde gerne zu gegebener Zeit ein Replay von dem
Inhalt der Datei machen um alte Zustände, Readings wiederherzustellen.

Frage:
Machen die erzeugten setstate Anweisungen überhaupt
Sinn.
Ich dachte mir setstate kann ich den Status eines Devices
Verändern? Ziel wäre es aber die Readings wiederherzustellen.
Müsste das nicht per ,,set" erfolgen?

Danke Gruss Andreas

betateilchen

Zitat von: Hackstall am 18 September 2022, 20:12:55
Müsste das nicht per ,,set" erfolgen?

Nein. Mit set werden Zustände eines device verändert, das muss nicht zwangsläufig etwas mit den readings zu tun haben.

Zitat von: Hackstall am 18 September 2022, 20:12:55
Machen die erzeugten setstate Anweisungen überhaupt Sinn.

Ja.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

DetlefR

ZitatZiel wäre es aber die Readings wiederherzustellen.
Das funktioniert auch.
Allerdings muss <timespec> aktueller/jünger als das aktuelle timespec des Readings sein. Also ganz ohne Nacharbeit geht es nicht.

betateilchen

ok, ich hol mal Popcorn und setze mich aufs Sofa...
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Hackstall

Danke für Eure Antworten.
Mein Ziel war es ein Dummy Device mit einem gesicherten älteren  ,,uzsu" reading zu
überschreiben/wiederherzustellen.

Daher der vorher erwähnte replay.

Jedoch wird die alte gespeicherte Konfiguration nicht im SmartVisu angezeigt.

Habt ihr eine Idee?

Fehlt da der Event da setstate kein Event generiert?

Danke Andreas

DetlefR

Bei SmartVisu bin ich raus.
Wenn es aber nur darum geht, ein Event zu erzeugen, dann nimm statt "setstate" "setreading". <timespec> ist dann optional.