Hallo zusammen,
ich habe folgendes notify:
define RFIDTOLOXONE notify wemosrfid*.*:(uid.*|name*.*) {LOXONE_RFID("loxone","$NAME","$EVTPART0","$EVTPART1")}
Jetzt würde ich gerne, wenn FHEM Startet den initialen notify für diese beiden Reading unterbinden.
Hat jemand einen Tipp?
Gruß
lewej
Du könntest uptime als Bedingung nutzen, https://commandref.fhem.de/#uptime
Zitat von: Ellert am 01 Oktober 2018, 23:23:05
Du könntest uptime als Bedingung nutzen, https://commandref.fhem.de/#uptime
Also ich habe folgenden def im notify:
wemosrfid*.*:(uid.*|name*.*) { if (ReadingsVal("sysmon","fhemuptime","") > 400) { fhem(LOXONE_RFID("loxone","$NAME","$EVTPART0","$EVTPART1"))}}
Aber egal ob die Zeit unter 400 sekunden ist, das notify wird immer ausgeführt.
Hat jemand eine Idee?
Gruß
Ich dachte eher an
if (fhem("uptime raw") > 400)) {...}
Zitat von: Ellert am 13 Oktober 2018, 17:46:29
Ich dachte eher an
if (fhem("uptime raw") > 400)) {...}
Wenn ich das so mache, bekomme ich einen Syntax Fehler:
wemosrfid*.*:(uid.*|name*.*) { if (fhem("uptime raw") > 400 )) { fhem(LOXONE_RFID("loxone","$NAME","$EVTPART0","$EVTPART1"))}}
Fehler:
syntax error at (eval 247543) line 1, near ")) "
syntax error at (eval 247543) line 1, near "}}"
Zitat von: lewej am 14 Oktober 2018, 09:44:56
Wenn ich das so mache, bekomme ich einen Syntax Fehler:
wemosrfid*.*:(uid.*|name*.*) { if (fhem("uptime raw") > 400 )) { fhem(LOXONE_RFID("loxone","$NAME","$EVTPART0","$EVTPART1"))}}
Fehler:
syntax error at (eval 247543) line 1, near ")) "
syntax error at (eval 247543) line 1, near "}}"
edit: sorry , war unsinn
edit2: lag ich ja doch richtig ;)
gruss Byte09
Damit geht es, war eine Klammer zuviel:
wemosrfid*.*:(uid.*|name*.*) {if (fhem("uptime raw") > 120 ) { fhem(LOXONE_RFID("loxone","$NAME","$EVTPART0","$EVTPART1"))}}
Zitat von: lewej am 14 Oktober 2018, 10:10:41
Damit geht es, war eine Klammer zuviel:
wemosrfid*.*:(uid.*|name*.*) {if (fhem("uptime raw") > 120 ) { fhem(LOXONE_RFID("loxone","$NAME","$EVTPART0","$EVTPART1"))}}
Der obere Befehl geht, jetzt wollte ich ins IF folgendes eintragen:
wemosrfid*.*:(uid.*|name*.*) {if (fhem("uptime raw") > 120 && (fhem(ReadingsVal("wemosrfideingang","uptime",0)>120) { fhem(LOXONE_RFID("loxone","$NAME","$EVTPART0","$EVTPART1"))}}
Was mache ich falsch?
Gruß
Du verwendest eine Perl-Funktion im FHEM-Befehlskontext, siehe https://commandref.fhem.de/commandref_DE.html#command
Zitat von: Ellert am 28 Oktober 2018, 12:54:15
Du verwendest eine Perl-Funktion im FHEM-Befehlskontext, siehe https://commandref.fhem.de/commandref_DE.html#command
Hi,
Wie kann ich auf uptime und ob gerade rereadcfg ausgeführt worden ist nur im fhem
Kontext zu greifen, ich finde dazu nichts.
Gruss
Du führst die Befehle aus und reagierst auf Events, bzw. wertest die Rückgabewerte aus.