FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: lewej am 01 Oktober 2018, 19:53:26

Titel: Beim starten von fhem kein notify für ein bestimmtes READING
Beitrag von: lewej am 01 Oktober 2018, 19:53:26
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
Titel: Antw:Beim starten von fhem kein notify für ein bestimmtes READING
Beitrag von: Ellert am 01 Oktober 2018, 23:23:05
Du könntest uptime als Bedingung nutzen, https://commandref.fhem.de/#uptime
Titel: Antw:Beim starten von fhem kein notify für ein bestimmtes READING
Beitrag von: lewej am 13 Oktober 2018, 15:45:45
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ß


Titel: Antw:Beim starten von fhem kein notify für ein bestimmtes READING
Beitrag von: Ellert am 13 Oktober 2018, 17:46:29
Ich dachte eher an
if (fhem("uptime raw") > 400)) {...}
Titel: Antw:Beim starten von fhem kein notify für ein bestimmtes READING
Beitrag von: lewej am 14 Oktober 2018, 09:44:56
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 "}}"
Titel: Antw:Beim starten von fhem kein notify für ein bestimmtes READING
Beitrag von: Byte09 am 14 Oktober 2018, 09:57:07
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
Titel: Antw:Beim starten von fhem kein notify für ein bestimmtes READING
Beitrag 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"))}}

Titel: Antw:Beim starten von fhem kein notify für ein bestimmtes READING
Beitrag von: lewej am 28 Oktober 2018, 10:42:27
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ß
Titel: Antw:Beim starten von fhem kein notify für ein bestimmtes READING
Beitrag 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
Titel: Antw:Beim starten von fhem kein notify für ein bestimmtes READING
Beitrag von: lewej am 09 November 2018, 16:44:16
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
Titel: Antw:Beim starten von fhem kein notify für ein bestimmtes READING
Beitrag von: Ellert am 10 November 2018, 14:47:21
Du führst die Befehle aus und reagierst auf Events, bzw. wertest die Rückgabewerte aus.