Hauptmenü

AT Problem

Begonnen von arokh12, 29 Januar 2015, 16:21:22

Vorheriges Thema - Nächstes Thema

arokh12

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

nesges

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?

arokh12

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.

nesges

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 :)

marvin78

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.