FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: misux am 16 Mai 2022, 14:56:04

Titel: (Erledigt) DOIF negieren
Beitrag von: misux am 16 Mai 2022, 14:56:04
Hi

Ich habe ein einfaches DOIF wo ich eine Bedingung negieren möchte:

([ChrissiHandy] eq "absent" and [geofancy:currLoc_Chrissi] eq "Zuhause" and [?ChrissiDummy] eq "present")
(set ChrissiDummy absent)


Ich würde gerne das Zuhause negieren sodas er immer triggert sobald [geofancy:currLoc_Chrissi] eq "nicht Zuhause" ist...

Ist es mit einem einfachen ! vor dem Zuhause erledigt?
Irgendwie scheint es nicht zu funktionieren...
Titel: Antw:DOIF negieren
Beitrag von: rabehd am 16 Mai 2022, 15:06:05
([ChrissiHandy] eq "absent" and [geofancy:currLoc_Chrissi] ne "Zuhause" and [?ChrissiDummy] eq "present")
(set ChrissiDummy absent)


Wie wäre das?
Titel: Antw:DOIF negieren
Beitrag von: misux am 16 Mai 2022, 15:24:16
Hmm... habe davon in der Commandref gelesen, habs nur nicht kapiert..

Warum gibt es denn ein "!" zum negieren?

Hmm... Teste mal des "ne" aus. vielen Dank!
Titel: Antw:DOIF negieren
Beitrag von: Sany am 16 Mai 2022, 15:46:24
ZitatHmm... habe davon in der Commandref gelesen, habs nur nicht kapiert..

Warum gibt es denn ein "!" zum negieren?

das ist ja nicht unbedingt fhem, sondern Perl, weshalb Du darüber in der commandref eher keine erschöpfenden Erklärungen findest.

Kurzversion:
Vergleich in Perl:
Zahlen in den Variablen $a und $b:
$a == $b (ist gleich?)  (Aufpassen: $a = $b ist eine Zuweisung von $b nach $a, also nach der Zeile ist $a das gleiche wie $b)
$a != $b (ist Nicht gleich?)

Strings/Buchstaben in den Variablen c$ und $d:
$c eq $d (equal, ist gleich?)
$c ne $d (not equal, ist Nicht gleich?)

Langversion: Eingabe von Perl Vergleich Operator compare sollte Dich auf gefühlt ausreichend Seiten führen, wo das bis ins letzte bit erklärt ist.

viel Erfolg!


Sany
Titel: Antw:DOIF negieren
Beitrag von: misux am 17 Mai 2022, 07:49:29
Klasse! Vielen Dank für die Erklärung!

Das funtzt!  ;D