[gelöst] Reading wenn Config nicht gespeichert ist?

Begonnen von roman1528, 02 Februar 2016, 14:18:29

Vorheriges Thema - Nächstes Thema

betateilchen


  • in dem was Du da tust, stehen gar keine Befehle (fhem) drin, sondern Funktionsaufrufe (perl)
  • in dem Codeschnipsel gibt es zwei Codeblöcke. Wenn Du das Beispiel von mir mit der if Abfrage verwendest, wird Dir das klarer. Die Variante mit ? und : hatte ich absichtlich nicht verwendet um genau diese jetzt bei Dir bestehende Verwirrung zu vermeiden.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

roman1528

Zitat von: betateilchen am 03 Februar 2016, 13:18:05

  • in dem was Du da tust, stehen gar keine Befehle (fhem) drin, sondern Funktionsaufrufe (perl)
  • in dem Codeschnipsel gibt es zwei Codeblöcke. Wenn Du das Beispiel von mir mit der if Abfrage verwendest, wird Dir das klarer. Die Variante mit ? und : hatte ich absichtlich nicht verwendet um genau diese jetzt bei Dir bestehende Verwirrung zu vermeiden.

Super! Ich danke dir.

Mit if/else und meinen quasi nicht vorhandenen Perl-Kenntnissen funktioniert das jetzt.


define notify_savestate notify global:.* { if(@structChangeHist) {CommandSetReading(undef,'notify_savestate savestate 1');; CommandSetReading(undef,'notify_savestate color #B22222');; CommandSetReading(undef,'notify_savestate text Config nicht<br/>gespeichert!')} else {CommandSetReading(undef,'notify_savestate savestate 0');; CommandSetReading(undef,'notify_savestate color #FFFFFF');; CommandSetReading(undef,'notify_savestate text Config<br/>gespeichert!')} }


Grüße^^
i3-10305T 4x3GHz;8GB RAM;250GB & 1TB NVMe:
FHEM 6.2;FTUI;8" Tablet's+Fully;NsPanelPro;HUE;ESPRGBWW;HM(CCU3);Duofern; ASC;MQTT(Tasmota);netatmo;SONOS;eBus;DbLog;XiaomiDevice;NUT;ModbusAttr

RPi3+: FHEM 6.2;I²C;GPIO;RFID;G-Tag;XiaomiBTLESens
RPi3: FHEM 6.2;DIY Relais-Board;I²C;GPIO;RFID;Photovoltaik

betateilchen

Noch kurz zur Erklärung:

CommandSetReading(undef,'notify_savestate savestate 1')

und

fhem("setReading notify_savestate savestate 1")

bewirken exakt das gleiche.

Als Entwickler verwende ich gerne die erste Variante, da ich weiß, dass aus der zweiten Variante fhem-intern auch nur ein "CommandSetReading()" gebaut wird.
Für den Anwender ist eigentlich die zweite Variante vorgesehen, weil sie sich besser "selbst erklärt".
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!