Hallo,
habe es mittlerweile durch die vielen Tipps hier geschafft unseren Müllabfuhr Kalender visuell darzustellen. Auch die Benachrichtigung für die einzelnen Ereignisse, also z.B Papiermüll; Bioabfall; Restabfall funktionieren über Pushbullet. Wenn jetzt aber an einem Tag 2 Ereignisse also z.B Papier und Restabfall krieg ich bloß eine Fehlermeldung im LOG angezeigt und keine Benachrichtigung.
Meine fhem.cfg sieht folgendermaßen aus:
define abfallkalender holiday # Kalender definieren
define CheckEventHeute at *20:00:00 {\
my $Eventname;;\
my $EventHeute;;\
$EventHeute = fhem("get abfallkalender tomorrow");;\
print $EventHeute;;\
if ($EventHeute eq "Bioabfall") {\
$Eventname = "$EventHeute" ;;\
fhem{PushBulletText("Information",'Die Bio-Tonne muss rausgestellt werden!')};;\
}\
if ($EventHeute eq "Restabfall") {\
$Eventname = "$EventHeute" ;;\
fhem{PushBulletText("Information",'Die Schwarze-Tonne muss rausgestellt werden!')};;\
}\
if ($EventHeute eq "Papier") {\
$Eventname = "$EventHeute" ;;\
fhem{PushBulletText("Information",'Die Papier-Tonne muss rausgestellt werden!')};;\
}\
}
Die LOG Datei :
2015.01.20 22:30:00 3: get abfallkalender tomorrow : Papier
2015.01.20 22:30:00 1: PERL WARNING: Odd number of elements in anonymous hash at (eval 4035) line 16.
2015.01.20 22:30:00 3: eval: {
my $Eventname;
my $EventHeute;
$EventHeute = fhem("get abfallkalender tomorrow");
print $EventHeute;
if ($EventHeute eq "Bioabfall") {
$Eventname = "$EventHeute" ;
fhem{PushBulletText("Information",'Die Bio-Tonne muss rausgestellt werden!')};
}
if ($EventHeute eq "Restabfall") {
$Eventname = "$EventHeute" ;
fhem{PushBulletText("Information",'Die Schwarze-Tonne muss rausgestellt werden!')};
}
if ($EventHeute eq "Papier") {
$Eventname = "$EventHeute" ;
fhem{PushBulletText("Information",'Die Papier-Tonne muss rausgestellt werden!')};
}
}
2015.01.20 22:30:00 3: HASH(0x19cf1f8) : Unknown command HASH(0x19cf1f8), try help.
2015.01.20 22:30:00 3: CheckEventHeute: Unknown command HASH(0x19cf1f8), try help.
Vielen Dank schonmal für eure Hilfe!
Konnte es durch einfache Änderung der Abfrage lösen.
So sieht meine Abfrage jetzt aus:
define CheckEventHeute at *20:00:00 {\
my $Eventname;;\
my $EventHeute;;\
$EventHeute = fhem("get abfallkalender tomorrow");;\
print $EventHeute;;\
if ($EventHeute eq "Papier, Restabfall") {\
$Eventname = "$EventHeute" ;;\
fhem{PushBulletText("Information",'Die Schwarze-Tonne und die Papier-Tonne müssen rausgestellt werden!')};;\
}\
if ($EventHeute eq "Restabfall") {\
$Eventname = "$EventHeute" ;;\
fhem{PushBulletText("Information",'Die Schwarze-Tonne muss rausgestellt werden!')};;\
}\
if ($EventHeute eq "Papier") {\
$Eventname = "$EventHeute" ;;\
fhem{PushBulletText("Information",'Die Papier-Tonne muss rausgestellt werden!')};;\
}\
if ($EventHeute eq "Bioabfall") {\
$Eventname = "$EventHeute" ;;\
fhem{PushBulletText("Information",'Die Grüne-Tonne muss rausgestellt werden!')};;\
}\
}
Kann geschlossen werden.
LG