Hauptmenü

Hilfe bei Perl-Code

Begonnen von Arek, 26 August 2014, 20:28:50

Vorheriges Thema - Nächstes Thema

Arek

Hallo zusammen,

kann mir jemand bitte den Fehler und am besten eine Lösung für den Code nennen?

  fhem("define Alarmanlage_an at *".$sz." {if($year==".$sj." && $month==".$sm." && $mday==".$st.") {fhem "set Alarmanlage on";; fhem "delete Alarmanlage_an"} }");


Alle Variablen sind gesetzt.
Ich bin mit Perl noch nicht so vertraut und bekomme folgende Fehlermeldung:

Bareword found where operator expected at ./FHEM/99_myUtilsThermostat.pm line 355, near "") {fhem "set"
        (Missing operator before set?)
String found where operator expected at ./FHEM/99_myUtilsThermostat.pm line 355, near "on";; fhem ""
String found where operator expected at ./FHEM/99_myUtilsThermostat.pm line 355, near "Alarmanlage_an"} }""


Danke euch im Voraus

Spuckiii

ich kann zwar auch kein perl. Aber es fehlt wohl was for set, - vlt die Klammern falsch gesetzt?

Bennemannc

Hallo,

gibst Du das in der Fhem.cfg ein ? Wenn nein - also WebIf - dann sind die doppelten ;; falsch. Zudem sagt die Fehlermeldung, das die " nicht in Ordnung währen.

Gruß Christoph
Cubietruck, Fhem 5.8
CC-RT-DN|LC-SW2-FM|RC-12|RC-19|LC-SW4-BA-PCB|LCp-SW1-BA-PCB|ES-PMSw1-Pl|LC-Bl1PBU-FM|PBI-4-FM|CC-VD|CC-TC|SEC-SC(2)|RC-KEY3-B|LC-Sw1PBU-FM|PB-2-FM|WDS100-C6-O|WDC7000|LC-Bl1-FM
Module: Dewpoint,FB_Callmonitor,HCS,Panstamp,at,notify,THRESHOLD,average,DOIF