[gelöst] DOIF: Verständnisfrage zum Setzen von "?"

Begonnen von Vize, 01 Dezember 2015, 11:49:25

Vorheriges Thema - Nächstes Thema

Vize

Mahlzeit,

habe nur eine kleine Verständnisfrage.

In einem DOIF hole ich mir den Wert, ob Adventszeit ist oder nicht, aus der 99_myUtils (Dank an Icinger für den code-Schnippel).
DOIF ... and Advent==1 ...

Wie müsste ich hier das ? einbauen, damit dies nur als Abfrage dient und nicht das Modul triggert?

Besten Dank!

Gruß
Andreas

Ralli

Mit dem ? können alle in fhem definierten Devices (oder Zeiten) nicht triggernd eingebunden werden.

... DOIF ([Trigger_Device] eq "bla" and [?NoTriger_Device] eq "bla") ...
Gruß,
Ralli

Proxmox 8.4 Cluster mit HP ED800G2i7, Intel NUC11TNHi7+NUC7i5BNH, virtualisiertes fhem 6.4 dev, virtualisierte RaspberryMatic (3.83.6.20250705) mit HB-RF-ETH 1.3.0 / RPI-RF-MOD, HM-LAN-GW (1.4.1) und HMW-GW, FRITZBOX 7490 (07.59), FBDECT, Siri und Alexa

Vize

Hallo Ralli,

bei devices ist mir das schon klar, aber wie sieht es denn im konkreten Fall bei Aufrufen aus der 99_myUtils aus?

So?
[?Advent]==1

Advent ist kein device.

Gruß
Andreas

Ralli

#3
Lese commandref!

Zitat
Logische Abfragen werden in Bedingungen mit Hilfe von Perl-Operatoren erstellt. Diese werden mit Angaben von Stati, Readings, Internals, Events von Devices oder Zeiten in eckigen Klammern kombiniert. Ebenso können beliebige Perl-Funktionen angegeben werden, die in FHEM definiert sind. Getriggert wird das Modul durch Zeitangaben bzw. durch Ereignisse ausgelöst durch die in der Bedingung angegebenen Devices. Wenn eine Bedingung wahr wird, so werden die dazugehörigen FHEM- bzw. Perl-Kommandos ausgeführt.

Eine in 99_myUtils.pm definierte Funktion kann mit {} eingebunden werden, aber niemals triggern - also ist auch ? in diesem Zusammenhang nicht zu nehmen obsolet.
Gruß,
Ralli

Proxmox 8.4 Cluster mit HP ED800G2i7, Intel NUC11TNHi7+NUC7i5BNH, virtualisiertes fhem 6.4 dev, virtualisierte RaspberryMatic (3.83.6.20250705) mit HB-RF-ETH 1.3.0 / RPI-RF-MOD, HM-LAN-GW (1.4.1) und HMW-GW, FRITZBOX 7490 (07.59), FBDECT, Siri und Alexa

Vize


Damian

Zitat von: Ralli am 01 Dezember 2015, 12:56:20
Lese commandref!

Eine in 99_myUtils.pm definierte Funktion kann mit {} eingebunden werden, aber niemals triggern - also ist auch ? in diesem Zusammenhang nicht zu nehmen obsolet.

In der Bedingung wird eine definierte Funktion ohne geschweifte Klammern angegeben, weil die Bedingung bis auf die eckigen Klammern Perl-Welt ist.

also

DOIF (Advent==1 and [irgend_etwas_was triggert]) (set ....)

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Ralli

Gruß,
Ralli

Proxmox 8.4 Cluster mit HP ED800G2i7, Intel NUC11TNHi7+NUC7i5BNH, virtualisiertes fhem 6.4 dev, virtualisierte RaspberryMatic (3.83.6.20250705) mit HB-RF-ETH 1.3.0 / RPI-RF-MOD, HM-LAN-GW (1.4.1) und HMW-GW, FRITZBOX 7490 (07.59), FBDECT, Siri und Alexa