DOIF mit Abfrage auf State eines Dummys

Begonnen von Bartimaus, 02 Juli 2019, 12:40:15

Vorheriges Thema - Nächstes Thema

Damian

Zitat von: Bartimaus am 02 Juli 2019, 19:29:08
Genau das ist mein Problem.

Trage ich jetzt wie von Ellert beschrieben, Ersatzwerte ein, löst ein set checkall aus....
... will ich aber die ,,richtigen" Schwellenwerte als Readings im DOIF haben, muss ich händisch die Events auslösen.

Gibt's dafür keine Syntax z.b. in einem Notify whatever, welches Events zu den Dummys mit den gewählten Werten auslöst ?

Du kannst mit "trigger deinDummy" das entsprechende Event provozieren und schauen, was dann passiert.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Otto123

Zitat von: Ellert am 02 Juli 2019, 19:02:54
Ich frage mich, was ich falsch formuliert habe, dass Du es so verstehst.

Es werden die Geräte über die Perlfunktion ReadingValDoIf abgefragt.
Nein Du hast nichts falsch formuliert, sorry. Aber Du schreibst was von Ersatzwerten...
Wenn ich die lists von Bartimaus richtig interpretiere fragt er doch einfach Readings von Geräten ab. Was spielen dann Ersatzwerte in Readings vom DOIF überhaupt für eine Rolle?

Auch egal was Damian schreibt, ich würde bei dem Code von Bartimaus davon ausgehen, das einfach Werte der Dummies abgefragt werden und die Bedingungen geprüft werden. Events der beteiligten Geräte spielen doch da keine Rolle?
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Bartimaus

Zitat von: Damian am 02 Juli 2019, 21:09:27
Du kannst mit "trigger deinDummy" das entsprechende Event provozieren und schauen, was dann passiert.


Arrrgh  ::) ::)
Danke, da bastel ich mir was
LG
B.


FHEM@AMD-Ryzen7-5700U@Debian-LXC (ProxmoxHOST), CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly

Bartimaus

Zitat von: Otto123 am 02 Juli 2019, 21:47:46
Nein Du hast nichts falsch formuliert, sorry. Aber Du schreibst was von Ersatzwerten...
Wenn ich die lists von Bartimaus richtig interpretiere fragt er doch einfach Readings von Geräten ab. Was spielen dann Ersatzwerte in Readings vom DOIF überhaupt für eine Rolle?

Auch egal was Damian schreibt, ich würde bei dem Code von Bartimaus davon ausgehen, das einfach Werte der Dummies abgefragt werden und die Bedingungen geprüft werden. Events der beteiligten Geräte spielen doch da keine Rolle?

Erst das Event des Dummys ,,schreibt" dessen Status in das interne Reading des DOIFs... damit dieses korrekt funktioniert. Die definierten Ersatzwerte werden für den Fall herangezogen falls der Status des Dummys NICHT im internen Reading des DOIFs steht, weil hierzu noch kein Event ausgelöst wurde.
Ohne diesen Ersatzwert, wird der Status des Dummys scheinbar ignoriert...
LG
B.


FHEM@AMD-Ryzen7-5700U@Debian-LXC (ProxmoxHOST), CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly

Bartimaus

Zitat von: Ellert am 02 Juli 2019, 20:01:14
Ehrlich gesagt, ich verstehe Dein Problem nicht.

Alle internen Readings/Internals sind nur nachrichtlich angegeben, es werden immer die in der Bedingung angegebenen Geräte befragt, nicht die Readings des DOIF. Das steht auch in der Befehlsreferenz:
Wozu benötigst Du die von Dir vermissten Readings?

Dein DOIF nach checkall funktioniert doch, der Status wechselt von initialized nach cmd_3 nachdem der Waittimer
2019-07-02 17:09:05   wait_timer      02.07.2019 17:39:05 cmd_3 Multisensor abgelaufen ist, allerdings ausgelöst durch Multisensor.

Edit: Timer korrigiert -> 2019-07-02 17:09:05   wait_timer      02.07.2019 17:39:05 cmd_3 Multisensor

Hm.... das habe ich übersehen..... Danke Dir.
Hab jetzt die Ersatzwerte eingetragen.... und auf das triggern der Dummys hätte ich auch kommen können.... :o ;D ... manchmal sieht man den Wald vor lauter Bäumen nicht...
LG
B.


FHEM@AMD-Ryzen7-5700U@Debian-LXC (ProxmoxHOST), CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly

Ellert

Zitat von: Otto123 am 02 Juli 2019, 21:47:46
Aber Du schreibst was von Ersatzwerten...
In Antwort #5 habe ich nur allgemein erwähnt, was bei fehlenden Readings getan werden kann, ohne Kenntnis des später gelisteten DOIF. Und in Antwort #10 habe ich auf Nachfrage die Antwort 5 präzisiert, ohne Bezug auf das nun vorliegende Listing.

Im Nachhinein dürfte der Hinweis auf den Ersatzwert nicht zielführend sein, sofern alle angegebenen Readings/Internals in den jeweiligen Geräten vorhanden sind.

Dass die Angabe von Ersatzwerten zu einer Verbesserung geführt hat, ist für mich nicht schlüssig.

Otto123

Zitat von: Ellert am 03 Juli 2019, 00:11:27
... Dass die Angabe von Ersatzwerten zu einer Verbesserung geführt hat, ist für mich nicht schlüssig.
Das geht mir genauso. Mich verwirrt sowohl das Problem als auch die Lösung  :-[
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz