Hallo zusammen,
ich würde gerne aus meinem google-Account den Abfallkender auslesen, es gibt ein paar wenige Lösungen, aus denen ich nicht schlau werde, was die Auswertungen angeht.
Ich habe es analog zur http://www.juergenstechnikwelt.de/smarthome-2/smarthome-mit-fhem-umsetzung-meines-abfallkalenders/ eingestellt.
meine cfg Einträge:
define Abfall Calendar ical url https://calendar.google.com/calendar/ical/......calendar.google.com/public/basic.ics
attr Abfall hideOlderThan 2d
# define vKalender_DDM CALVIEW Abfall 1 21600
# attr vKalender_DDM alias Abfall_Kalender
# attr vKalender_DDM group Kalender
# attr vKalender_DDM maxreadings 10
# attr vKalender_DDM modes next
# attr vKalender_DDM room Kalender
define notAbfalltermine notify Abfall:modeUpcoming.* { Abfalltermine("$EVENT") }
define MuellterminDummy dummy
und in der 99_myutils:
#
# Hilfsfunktion für Kalenderauswertungen
#
sub
KalenderDatum($$)
{
my ($KalenderName, $KalenderUid) = @_;
my $dt = fhem("get $KalenderName start uid=$KalenderUid 1");
my $ret = time - (2*86400); #falls kein Datum ermittelt wird Rückgabewert auf "vorgestern" -> also vergangener Termin;
if ($dt and $dt ne "")
{
my @SplitDt = split(/ /,$dt);
my @SplitDate = split(/\./,$SplitDt[0]);
$ret = timelocal(0,0,0,$SplitDate[0],$SplitDate[1]-1,$SplitDate[2]);
}
return $ret;
}
#
# Abfall Kalender auswerten / Google Kalender: "Abfall"
#
sub
Abfalltermine()
{
my $t = time;
my @Tonnen = ("GrueneTonne", "GelbeTonne", "Restmuell", "BioTonne");
my @SuchTexte = (".*Papier.*", ".*Wertstoff.*", ".*Restmüll.*", ".*Bio.*");
my $uid;
my $dayDiff;
for(my $i=0; $i<4; $i++)
{
$dayDiff = -1; #BUG behoben
my @uids = split(/;/,fhem("get Abfall find $SuchTexte[$i]"));
# den nächsten Termine finden
foreach $uid (@uids)
{
my $eventDate = KalenderDatum('Abfall', $uid);
my $dayDiffNeu = floor(($eventDate - $t) / 60 / 60 / 24 + 1);
if ($dayDiffNeu >= 0 && ($dayDiffNeu < $dayDiff || $dayDiff == -1)) #BUG behoben
{
$dayDiff = $dayDiffNeu;
}
}
fhem("setreading MuellterminDummy $Tonnen[$i] $dayDiff");
}
}
1;
Mit get Abfall Full all erhalte ich die Einträge aus dem Kalender.
Nur wie und wo werden sie angezeigt?
Hi,
im MuellterminDummy ?
Wenn Du es so machst -> https://wiki.fhem.de/wiki/ABFALL
hättest Du Readings, vielleicht ist das einfacher für Dich?
Gruß Otto
Hallo Otto,
Danke für den Tipp, das funktioniert ja direkt in der cfg
Gesendet von meinem Moto G (4) mit Tapatalk
Hi Mitdra,
Aber das Modul ABFALL soll doch gerade so funktionieren das man nichts braucht in der 99_myutils ??
Ich suche mich nämlich auch schon tod wie man das schön in TabletUi einbauen kann.
Zumindest habe ich schon mal eine Tonne mit Text und Anzeige der Tage.
LG
Hi dummbatz,
korrekt, so meinte ich es auch. via cfg kann ich alles einstellen und brauche die 99_myutils.pm nicht.