FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: arokh12 am 29 Januar 2015, 16:21:22

Titel: AT Problem
Beitrag von: arokh12 am 29 Januar 2015, 16:21:22
Hallo,
habe folgendes AT-Element definiert mit dem folgenden Code:
# Wecker für Wetter und Push
define Pushnachricht_mit_Wecker at *01:01:00 {\
fhem ("delete Licht_wecken_at;; delete Pushnachricht_at;; set Heute_Pushnachricht_gesendet nein");;\
my $WeckerStunde_at = ReadingsVal("Wecker_Stunde","state",999);;\
my $WeckerMinute_at = ReadingsVal("Wecker_Minute","state",999);;\
my $heutePushnachrichtgesendet = ReadingsVal("Heute_Pushnachricht_gesendet","state",999);;\
if (!$we){\
fhem ("define Pushnachricht_at at $WeckerStunde_at:$WeckerMinute_at set Bettleuchte,Tischleuchte,Lampe on");;\
fhem ("define Licht_wecken_at at $WeckerStunde_at:$WeckerMinute_at:05 {Pushnachrichtsenden_Wochentags($min, $hour, $we)}");;\
fhem ("save")}}


Leider wird es nicht ausgeführt, eine Fehlermeldung bekomme ich auch nicht. Wo liegt das Problem?

Vielen Dank im voraus

arokh12
Titel: Antw:AT Problem
Beitrag von: nesges am 29 Januar 2015, 16:38:09
Ohne jetzt näher in den Code geschaut zu haben: Du meinst es ist heute Nacht um 01:01 Uhr nicht ausgeführt worden und im fhem-Log steht dazu gar nichts?
Titel: Antw:AT Problem
Beitrag von: arokh12 am 29 Januar 2015, 16:46:41
Zitat von: nesges am 29 Januar 2015, 16:38:09
Ohne jetzt näher in den Code geschaut zu haben: Du meinst es ist heute Nacht um 01:01 Uhr nicht ausgeführt worden und im fhem-Log steht dazu gar nichts?

genau das meinte ich. Einen ähnlichen Code habe ich fürs Wochenende und der wird ausgeführt.
Titel: Antw:AT Problem
Beitrag von: nesges am 29 Januar 2015, 17:03:15
Da sind zu wenige Semikolons drin, wenn ich nicht irre.

Innerhalb von fhem()-Aufrufen muss das Semikolon verdoppelt werden und innerhalb von Perl-Code auch. fhem() innerhalb von Perl-Code ergibt dann vier mal Semikolon. Wäre vielleicht an der Zeit den Code in eine 99_myUtils.pm auszulagern. Kann ja kein Mensch mehr lesen :)
Titel: Antw:AT Problem
Beitrag von: marvin78 am 29 Januar 2015, 17:07:08
Und im Frontend-DEF arbeiten und nicht in der cfg. Da spart man sich einiges an Verdoppelung (die macht FHEM selbst) und es ist auch deutlich übersichtlicher.