Hauptmenü

AT schaltet nicht, warum?

Begonnen von Invers, 06 Januar 2014, 11:53:08

Vorheriges Thema - Nächstes Thema

Invers

Dieser AT soll die Lampe anschalten, wenn twilight_weather >31.1 ist und ich zu Hause bin.
Klappt leider nicht. Was ist denn falsch daran?

define StehlampeAutoAn at +*00:00:05 {if ((ReadingsVal("myTwilight","twilight_weather",0) > 31.1,0) && (Value("BinIchDa") eq "present")) { fhem ("set Stehlampe on")}}

Danke im Voraus.


Edit:
Hat keiner eine Idee? Ich bekomme keinerlei Fehlermeldung und mir wird auch brav die Zeit des nächsten Events angezeigt.
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

koldomon

ReadingsVal("myTwilight","twilight_weather",0) > 31.1,0

was macht das ",0" da hinter dem 31.1?

ich hab den code mal eingerückt

define StehlampeAutoAn at +*00:00:05 {
if ((ReadingsVal("myTwilight","twilight_weather",0) > 31.1,0) && (Value("BinIchDa") eq "present"))
{
fhem ("set Stehlampe on")
}
}


ich sehe das mit dem ",0" und hinter der fhem anweisung fehlt der ";" und ob es da klammern braucht weiss ich nicht genau. probier mal folgendes als "DEF" bei deinem "at".

{
if ((ReadingsVal("myTwilight","twilight_weather",0) > 31.1) && (Value("BinIchDa") eq "present"))
{
fhem "set Stehlampe on";
}
}
OdroidC1 -> fhem
CUNO -> FS20
CUL -> HomeMatic
TCM310 -> enOcean
DUOFERN -> rademacher

Invers

Vielen Dank, es lag tatsächlich an dem fehlenden Semikolon. Ich hatte salles Mögliche probiert, habe es aber einfach nicht erkannt. Zumindest diesen Fehler mache ich nie wieder. :-)
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

koldomon

Na prima, wieder ein glücklicher FHEMer  8)

Ich kann es nur immer wieder empfehlen, auch wenn's lästig ist. Code sauber einrücken, dann fallen Fehler am schnellsten auf. Vergessene Klammern werden als Fehlerursache immer wieder gern genommen

cu markus
OdroidC1 -> fhem
CUNO -> FS20
CUL -> HomeMatic
TCM310 -> enOcean
DUOFERN -> rademacher

Zrrronggg!


Hm. Also ich darf mal anmerken, das da keineswegs eine Semikolon hinter der FHEM Anweisung fehlt. Das Semikolon ist definitv NICHT notwendig.

D.H. das Semikolon an der Stelle einzufügen kann NICHT die Ursache gewesen sein, warum es jetzt geht!

Nur mal zur Erinnerung: das Semikolon trennt unterschiedliche Befehle. Wenn nach dem letzten Semikolon nix mehr kommt, bracht auch nix abgetrennt zu werden, also braucht man nach dem letzten Befehl auch keine Semikolon.

Das wird hier im Forum trotzdem gerne so geschrieben. Der Vorteil mag sein, das man bei späteren Ergänzungen das Semikolon dann nicht so leicht vergisst.

Und meiner Meinung nach braucht's Klammern. Oder zumindest: Es braucht Klammern, wenn wenn man mehr als eine FHEM Anweisung hat, dann muss man aber auch das Semikolon escapen (verdoppeln)
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

Invers

#5
Ich habe auch kein doppeltes Semikolon drinnen, hatte es aber zu Testzwecken immer wieder mit beiden Varianten probiert, weil ich nicht wissen konnte, was richtig ist. Ich weiss also nicht, ob es mit doppeltem Semikolon geklappt hätte, werde es aber morgen mal probieren. Der endgültige, nun funktionierende Code sieht komplett so aus:

attr Stehlampe_AutoAn disable 1
attr Stehlampe_AutoAn room Temperatur
define TVLICHT_hinten_AutoAn notify myTwilight:twilight_weather.* {Log(3,"Notify geprueft");;if (ReadingsVal("myTwilight","twilight_weather",0) <= 22 && Value("BinIchDa") eq "present"){fhem("set TVLICHT_hinten on");;fhem("attr TVLICHT_hinten_AutoAn disable 1");;}}\


Edit: Sorry, der Code gehört eigentlich nicht hierher, ich bezog mich auf einen aneren Beitrag von heute.
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

Puschel74

Hallo,

wenn jemand die fhem.cfg direkt bearbeitet - ob Anfänger/Neuling oder nicht - muss sich dieser selbst um die Zeilenenden \ und die Zeichenverdoppelungen ;; kümmern.
Ich rate jedem! der sich nicht sicher ist wann was zu verdoppeln ist und wann Zeilenenden zu maskieren sind die Finger von der fhem.cfg zu lassen.

@Invers
Dein geposteter Code kommt direkt aus der fhem.cfg

@all
Wenn es zu solchen Codes Fragen oder Fehlermeldungen gibt werde ich diese Codes auf FHEMWEB-Niveau eindampfen und meine Lösung posten.
Diese ist dann aber für das DEF und nicht die fhem.cfg

Wenn meine "eingedampften" Codes wieder in die fhem.cfg sollen/müssen dann muss jeder selbst schauen welche Zeichen wie verdoppelt, geschützt, maskiert etc. werden müssen.
Sonst hagelt es beim einfachen copy&paste Fehlermeldungen.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

Invers

Das ist ein Irrtum.
Der Code kommt zwar daher, aber ich habe die cftg nicht bearbeitet, sondern nur den Code herauskopiert, um ihn hier darzustellen.
Seit dem Hinweis, den ich von Rudolph König erhalten hatte, habe ich die CFG nie mehr per Hand bearbeitet, sondern nur noch eingesehen.
Ich halte mich immer an Tipps, die ich bekommen habe. :-)
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

Puschel74

Hallo,

ZitatDas ist ein Irrtum.
Ich habe nicht geschrieben das du den Code in der fhem.cfg bearbeitet hast  ;)

ZitatDein geposteter Code kommt direkt aus der fhem.cfg

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

Invers

Sorry, hab ich falsch verstanden. Wollte es nur vorsichtshalber erwähnt haben.
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2