Hallo!
Ich habe ein Wachtsdog, dessen aktuellen STATE ich auslesen will und für eine DOIF Bedingung prüfen möchte.
Ich scheitere bereits daran, das STATE aus den Internals auszulesen.
Die Perl Lösung scheint in DOIF nicht zu funktionieren.
{Value("NOTIFYNAME")}
Hat jemand eine Idee, ich bin im Forum nicht fündig geworden.
Grüße Tim
Moin Tim,
http://fhem.de/commandref_DE.html#perl (http://fhem.de/commandref_DE.html#perl)
InternalVal(<devicename>,<reading>,<defaultvalue>)
Gibt den Inhalt der "internal" zurück (den Inhalt der in dem "Internals"-Abschnitt von "list device" angezeigt wird)
Vielleicht hilf es ja weiter..
Gruss
Sunny
Vielen Dank. Ich bekomme es leider nicht hin. DoIf scheint kein InternalVal(<devicename>,<reading>,<defaultvalue>) in der Bedinung zu unterstützen oder ich mache etwas falsch.
Grüße Tim
Moin Tim,
Zitat von: Timmy.m am 25 Oktober 2015, 21:08:46
DoIf scheint kein InternalVal(<devicename>,<reading>,<defaultvalue>) in der Bedinung zu unterstützen oder ich mache etwas falsch.
Das kann ich Dir nicht sagen bzw. schreiben... ;)
Ich habe mir entweder mit "userReadings" oder per Dummys mit "readingList" + "setList" geholfen.
Viele Grüße
Sunny
Zitat von: Timmy.m am 25 Oktober 2015, 14:45:53
Hallo!
Ich habe ein Wachtsdog, dessen aktuellen STATE ich auslesen will und für eine DOIF Bedingung prüfen möchte.
Ich scheitere bereits daran, das STATE aus den Internals auszulesen.
Die Perl Lösung scheint in DOIF nicht zu funktionieren.
{Value("NOTIFYNAME")}
Hat jemand eine Idee, ich bin im Forum nicht fündig geworden.
Grüße Tim
lt. deutscher Commandref: http://fhem.de/commandref_DE.html#DOIF unter Ereignissteuerung
[<devicename>:&<internal>]
Hallo Ellert!
Danke für den Hinweis. Leider scheint es trotzdem nicht zu funktionieren.
Ich kann immer noch nicht über DOIF (Internals) STATE ("defined" oder "triggered") auslesen, um es für eine Bedingung zu nutzen.
Grüße Tim
Zitat von: Timmy.m am 09 November 2015, 21:38:36
Hallo Ellert!
Danke für den Hinweis. Leider scheint es trotzdem nicht zu funktionieren.
Ich kann immer noch nicht über DOIF (Internals) STATE ("defined" oder "triggered") auslesen, um es für eine Bedingung zu nutzen.
Grüße Tim
Wenn das entsprechende Device kein Event erzeugt (also im Event-Monitor nichts sichtbar) dann kann auch kein Modul darauf triggern - auch DOIF nicht.
Gruß
Daman
Hallo Damian.
Vielen Dank für die Erklärung, dann kann ich aufhören zu tüfteln. :P
Grüße Tim
Du könntest das Internal periodisch abfragen.
Ungetestet:
define mydoif DOIF ([global:INITIALIZED]) (set mydummy [device:&internal])
attr mydoif repeatcmd 1
Modulerweiterung siehe hier: http://forum.fhem.de/index.php/topic,43638.msg355719.html#msg355719 (http://forum.fhem.de/index.php/topic,43638.msg355719.html#msg355719)