if Formulierung klappt nicht

Begonnen von kblc, 21 November 2014, 16:03:45

Vorheriges Thema - Nächstes Thema

kblc

Hallo mal wieder.

Ich hatte eine Idee und versuche die gerade umzusetzen:

Ich möchte die Wetterdaten verwenden. Und soll bei z.B. 3°C ein "3°C"-Dummy in der CCU eingeschaltet werden, damit bei Aktivierung der Sprachausgabe durch einen Taster die aktuelle Temperatur über den MP3 Gong von Homematic ausgeben kann.
Soweit zur Idee. In der CCU ist alles vorbereitet. Jetzt muss ich nur noch die Dummys von FHEM aus einschalten.

Das will ich mit ... realisieren. Was auch im Test klappt:
{GetFileFromURL 'http://192.168.78.111:8181/fhem2ccu.exe?Status=dom.GetObject("CUxD.CUX2801006:16.STATE").State(1)'}

Zu meinem Code mit if:
Wenn die Temperatur temp_c  3°C ist soll Lampe 1 angehen ansonsten Lampe 1 ausbleiben

Hier mein Versuch mit dem gar nix klappt.

define Wetterweitergabe notify MeinWetter {if(Readings temp_c ("3") ) {GetFileFromURL 'http://192.168.78.111:8181/fhem2ccu.exe?Status=dom.GetObject("CUxD.CUX2801006:16.STATE").State(1)'} else {GetFileFromURL 'http://192.168.78.111:8181/fhem2ccu.exe?Status=dom.GetObject("CUxD.CUX2801006:16.STATE").State(0)'} }

Meine Daten bekomme ich aus MeinWetter das ich mit:

# ————– Wetterdaten erfassen ————-
define MeinWetter Weather 650068 3600 de
attr MeinWetter room Wettervorhersage

# — Logfile alle Wetter Daten —
define FileLog_MeinWetter FileLog ./log/meinwetter-%Y-%m.log MeinWetter
attr FileLog_MeinWetter logtype text
attr FileLog_MeinWetter room Wettervorhersage

# attr MeinWetter localicons 1

# — Wetter Icons hinzufügen —
define weblink_meinwetter weblink htmlCode {WeatherAsHtml("MeinWetter")}
attr weblink_meinwetter room Wettervorhersage


Das funktiniert auch super. Die Daten kann ich bei FHEM einsehen.

in FHEM einfügte.

Kann mir jemand bitte helfen, Ich komme wieder einmal nicht mehr weiter.
Es wäre schön, wenn ich das realisieren könnte.

Vielen Dank.
SPS, Arduino, Controllino, Sensortechnik, Elektronik

Puschel74

Hallo,

{if(Readings temp_c ("3") )
Falsch.
Das wird aber vermutlich auch im Logfile stehen so das notify überhaupt triggert.

{if(ReadingsVal("meinWetter","temp_c",99) < 3) ...
Bei Fragen zu ReadingsVal lesen sie bitte im Forum und fragen sie die commandref sowie das Wiki  ;)

Besser wäre es so:
define Wetterweitergabe notify MeinWetter:temp_c.* {if($EVENT < 3) ...
Wobei ich mir nicht sicher bin ob in $EVENT auch die Temperatur - also nur die Zahl steht.
ggf. prüfen durch einfügen von Log(3,"$EVENT - $EVTPART0"); in den Code - das geht dann bei mir aber nur mit Mehrzeiler da ich mit Einzeiler auf Kriegsfuss stehe.

Grüße

Edith: Elegantere Möglichkeit wäre vermutlich DOIF - bitte in der commandref (auch auf deutsch verfügbar) nachlesen
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.