FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: Muschelpuster am 16 September 2016, 17:49:24

Titel: [gelöst] Zahlenvergleich funktioniert nicht
Beitrag von: Muschelpuster am 16 September 2016, 17:49:24
Moin zusammen,

Ich möchte eine Doppelklickfunktion für einen Homematic-Taster bauen. Da bin ich Dank Forenhilfe schon ein Stück weit auf dem Weg wo ich hin wollte, stecke aber schon wieder fest  :-[
Wenn ein Tastendruck aufschlägt, will ich den Zeitpunkt in Form eine Unix-Zeitstempels in ein Dummy schreiben, wenn dieser größer 3 (Sekunden) vom Dummywert weg ist. Ist es kleiner 3 (Sekunden), so will ich meine Aktion ausführen. Hier mal mein DOIF, in dem ich jetzt ein paar Tests eingebaut habe:define du_Doppelklick1 DOIF
([HM_FB_K1B:state] eq "HM_FB_K1B_Bt1 Short" and [?du_Doppelklick1:state:d]>{(int(time)-4)})
(set du_Testlicht aus{(int(time)-4)}-[du_Doppelklick1:state])
   DOELSE
    (set du_Doppelklick1 {(int(time))})
Es wird immer cmd1 ausgeführt, obwohl ich in meinemTestdummy sehe, dass es eigentlich anders herum ist.

ratlose Grüße
Niels
Titel: Antw:Zahlenvergleich funktioniert nicht
Beitrag von: Muschelpuster am 16 September 2016, 17:55:36
Wow, kaum postet man das, findet man wohl die Lösung hier: https://forum.fhem.de/index.php/topic,42264.0.html

Den Merksatz von Damian muss ich noch mal in Ruhe genießen:
Zitat von: Damian am 15 Oktober 2015, 08:59:35
Die Syntax war vom Anfang an so und nicht anders.

Man kann sagen:

In der Bedingung:

ist 100 % Perl mit etwas DOIF-Spezifischem in eckigen Klammern und 0 % FHEM-Befehle

Im Ausführungsteil:

sind 100 % FHEM-Befehle mit etwas DOIF-Spezifischem in eckigen Klammern und
100 % Perl in geschweiften Klammern mit etwas DOIF-Spezifischem in eckigen Klammern.

lernfähige Grüße
Niels