Hallo
Habe seit längerer Zeit eine Änderung bezüglich Event-Auswertung machen wollen.
Bin wohl auch nicht mehr auf dem neuesten Stand ;)
Leider Funktioniert dieses DOIF so nicht mit der Fehlermeldung:
,,
IF ([Teichpumpe] eq "on") (set Waschmaschine_fertig_Impuls on ; define Waschmaschine_fertig_Impuls_off at +00:00:35 set Waschmaschine_fertig_Impuls off ): IF: no right bracket: (set Waschmaschine_fertig_Impuls on
,,
([Waschmaschine.Watt] < 1)
(IF ([Teichpumpe] eq "on")
(set Waschmaschine_fertig_Impuls on ; define Waschmaschine_fertig_Impuls_off at +00:00:35 set Waschmaschine_fertig_Impuls off )
)
Habe mehrere DOIFs mit ( IF-Abfrage ) im Einsatz ohne Probleme.
In der Doku , die ja mittlerweile extrem angewachsen ist, !VIELEN DANK NATÜRLICH DAFÜR!
habe ich erst einmal nichts gefunden ( übersehen?)
Hintergrund:
Ich möchte die Auswertung ([Waschmaschine.Watt] < 1) auswerten bei Änderung
und nur dann wenn ([Teichpumpe] eq "on") aber nicht diese Event selber.
Für einen Tip / Lösung / Hilfestellung/ Anschub wäre ich sehr dankbar.
Danke Uwe
Verknüpfe die beiden Events doch mit und!?
Bei doif brauchst du keine if Anfrage.
Gruß Sascha
Gesendet von meinem E6653 mit Tapatalk
DOIF ([Waschmaschine.Watt] < 1 and [?Teichpumpe] eq "on") (...
es dürfte aber einige Beispiele in der Commandref zu solchen Abfragen geben :)
Vielleicht habe ich mich nicht richtig ausgedrückt:
Wenn : ([Waschmaschine.Watt] < 1) wechselt und ([Teichpumpe] eq "on") mochte ich etwas ausführen .
Wenn : ([Waschmaschine.Watt] < 1) und ([Teichpumpe] eq "on") wechselt möchte ich nichts ausführen.
Also nur bei ([Waschmaschine.Watt] <1)
Zitat von: Fhemotto am 01 November 2018, 20:26:50
Vielleicht habe ich mich nicht richtig ausgedrückt:
Wenn : ([Waschmaschine.Watt] < 1) wechselt und ([Teichpumpe] eq "on") mochte ich etwas ausführen .
Wenn : ([Waschmaschine.Watt] < 1) und ([Teichpumpe] eq "on") wechselt möchte ich nichts ausführen.
Also nur bei ([Waschmaschine.Watt] <1)
Das Fragezeichen hast du gesehen? ;)
Jo, Danke
Habs gefunden:
Trigger verhindern [?<devicename>], [?<devicename>:<readingname>], [?<devicename>:&<internalname>], [?<time specification>]Werden Status, Readings, Internals und Zeitangaben in der Bedingung mit einem Fragezeichen eingeleitet, triggern sie nicht
Sorry, Wie gesagte Doku/Modul sehr umfangreich, nochmals Danke.
Und natürlich auch in deiner Antwort prompt auch übersehen ???
Trotzdem nochmals die Frage nur zum Verständnis:
Vorher:
([Waschmaschine.Watt] < 1 ) \
(set Waschmaschine_fertig_Impuls on ;; define Waschmaschine_fertig_Impuls_off at +00:00:35 set Waschmaschine_fertig_Impuls off)
OK
mit ( IF ) Fehler ?
([Waschmaschine.Watt] < 1)
(IF ([Teichpumpe] eq "on")
(set Waschmaschine_fertig_Impuls on ; define Waschmaschine_fertig_Impuls_off at +00:00:35 set Waschmaschine_fertig_Impuls off )
)
Nicht mehr Wichtig aber von Interesse.
Danke
Zitat von: Fhemotto am 01 November 2018, 20:47:43
Jo, Danke
Habs gefunden:
Trigger verhindern [?<devicename>], [?<devicename>:<readingname>], [?<devicename>:&<internalname>], [?<time specification>]Werden Status, Readings, Internals und Zeitangaben in der Bedingung mit einem Fragezeichen eingeleitet, triggern sie nicht
Sorry, Wie gesagte Doku/Modul sehr umfangreich, nochmals Danke.
Und natürlich auch in deiner Antwort prompt auch übersehen ???
Trotzdem nochmals die Frage nur zum Verständnis:
Vorher:
([Waschmaschine.Watt] < 1 ) \
(set Waschmaschine_fertig_Impuls on ;; define Waschmaschine_fertig_Impuls_off at +00:00:35 set Waschmaschine_fertig_Impuls off)
OK
mit ( IF ) Fehler ?
([Waschmaschine.Watt] < 1)
(IF ([Teichpumpe] eq "on")
(set Waschmaschine_fertig_Impuls on ; define Waschmaschine_fertig_Impuls_off at +00:00:35 set Waschmaschine_fertig_Impuls off )
)
Nicht mehr Wichtig aber von Interesse.
Danke
Bei DOIF und IF wird ein Komma statt Semikolon als Trennzeichen benutzt.