Autor Thema: Notify mit IF Anweisung  (Gelesen 349 mal)

Offline baerm

  • Full Member
  • ***
  • Beiträge: 120
Notify mit IF Anweisung
« am: 11 September 2022, 16:57:11 »
Hallo,
ich brauche ein Notify mit IF / ELSEIF Anweisungen. Leider funktioniert das nicht wie gewollt.

Ein IF + ELSE funktioniert.
defmod ntfy_WPM_RR1 notify KNX_0104044:WERT.* { \
  if (fhem"[KNX_0104042:state] eq 50") { \
  fhem"set MessageTxt ntfy_test 50"  \
    } else {   \
  fhem"set MessageTxt ntfy_test ELSE" }  \
       }
       
       
So hätte ich mir das mit ELSEIF gedacht. Geht leider nicht.
defmod ntfy_WPM_RR1 notify KNX_0104044:WERT.* { \
  if (fhem"[KNX_0104042:state] eq 50") { \
  fhem"set MessageTxt ntfy_test 50"  \
    }  elseif (fhem"[KNX_0104042:state] eq 51") {  \
  fhem"set MessageTxt ntfy_test 51"  \
    }  else {  \
  fhem"set MessageTxt ntfy_test ELSE" }  \
    }

Was mache ich falsch?
lg
Matthias

Offline rudolfkoenig

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 25835
Antw:Notify mit IF Anweisung
« Antwort #1 am: 11 September 2022, 18:44:17 »
Da geht einiges schief, ich vermute aber, dass die Ursache die freie Kombination der IF/DOIF Befehle mit dem perl if ist.

Fuer "einfaches" perl schlage ich Folgendes vor (ungetestet):
defmod ntfy_WPM_RR1 notify KNX_0104044:WERT.* { \
  if (ReadingsNum("KNX_0104042","state",0) eq "50") {\
  fhem "set MessageTxt ntfy_test 50"\
  } elsif (ReadingsNum("KNX_0104042","state",0) eq "51") {\
  fhem "set MessageTxt ntfy_test 51"\
  } else {\
  fhem "set MessageTxt ntfy_test ELSE"\
  }\
}

Offline MadMax-FHEM

  • Hero Member
  • *****
  • Beiträge: 12737
  • NIVEAu ist keine Creme...
Antw:Notify mit IF Anweisung
« Antwort #2 am: 11 September 2022, 18:56:13 »
Es heißt (in Perl) auf jeden Fall schon mal nicht "elseif" sondern "elsif"... ;)

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Offline baerm

  • Full Member
  • ***
  • Beiträge: 120
Antw:Notify mit IF Anweisung
« Antwort #3 am: 11 September 2022, 20:45:43 »
Vielen Dank für die rasche Hilfe! Hat geklappt.

 

decade-submarginal