[GELÖST] AT Befehl mit Perl

Begonnen von Grimmschak, 05 Mai 2019, 15:28:02

Vorheriges Thema - Nächstes Thema

Grimmschak

Hallo zusammen,

da ich PERL nicht wirklich mächtig bin, hier meine Frage, was an dem folgenden AT falsch ist:
define test at +*03:00:00 {fhem("set eingang.wetter.jetzt " . readingsval("myProPlanta","fc0_weather" . $hour).";;set eingang.wetter.jetzt:Icon " . readingsval("myProPlanta","fc0_weather".$hour."Icon").";;set eingang.wetter.jetzt:ChangeOfRain ". readingsval("myProPlanta","fc0_chOfRain".$hour))}

Sinn ist es readings in ein dummy zu schreiben, aus einem anderen Element, wo die Stunde Teil des Readingsnamen ist.

Bin für Anregungen Korrekturen und Hilfe dankbar :-)

Gruß
Grimm

CoolTux

Die Funktion heißt ReadingsVal und erwartet 3 Parameter zur Übergabe. Den Rest habe ich jetzt so erstmal nicht gecheckt.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Grimmschak

Hi, Danke.

habe es mal geändert und schaue Mal was er mir sagt.

Habe so meine Zweifel was ich wir klammern, etc muss, da ist ja jede Sprache pingelig.

CoolTux

Du kannst den Befehl auch in der Kommandozeile testen.

Einfach in { } setzen. Das $hour musst Du natürlich fest vorgeben. Der Rest passt aber.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Grimmschak

Hi danke,

$hour hatte ich gelesen, sollte doch von FHEM vergeben sein, wobei ich schauen muss ob im richtigen Format (2.stellig). Aber soweit war ich noch nicht.
Finde schade das es hier keinen Debug mit Var Kontrolle gibt.

CoolTux

Gibt es. Bei Dir Log Ausgaben ein in Dein Perl.

define test at +*03:00:00 { Log(1,'set eingang.wetter.jetzt ' . ReadingsVal("myProPlanta","fc0_weather" . $hour,'none') ) }

Ungetestet
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Grimmschak

Suoer,

ja es funktioniert, zu einem drittel, Teile es auf drei at auf und fertig.

Danke

amenomade

Und um ein Reading zu setzen ist es nicht
set eingang.wetter.jetzt:ChangeOfRain sondern entweder
setreading eingang.wetter.jetzt ChangeOfRain <value>oder
set eingang.wetter.jetzt ChangeOfRain <value>wenn es ein Dummy mit "ChangeOfRain" in readingsList ist

(statt ChangeOfRain hätte ich eher ChanceOfRain geschrieben...)
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Grimmschak

Danke,

Anfängerfehler, ich verstehe.