FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: Damian am 22 Dezember 2025, 19:48:53

Titel: Abfall-Entsorgung
Beitrag von: Damian am 22 Dezember 2025, 19:48:53
Ich habe das Anwendungsbeispiel zur Abfall-Entsorgung im Wiki aktualisiert: https://wiki.fhem.de/wiki/DOIF/uiTable_Schnelleinstieg#Anzahl_der_Tage_bis_zur_Abfall-Entsorgung

Es wird jetzt zusätzlich zur Anzahl der Tage auch der Wochentag und das Datum angezeigt.

Vorausgesetzt wird die Definition des Kalenders namens 'cal' mit Hilfe des Moduls https://wiki.fhem.de/wiki/Calendar.

Es reicht jetzt in der DOIF-Definition lediglich das entsprechende Stichwort, welches im eigenen Kalenders vorkommt, anzupassen (hier fett markiert).

Auszug aus der Definition:

Zitatdefmod Abfall DOIF subs {\
  ## Hier reicht es den Kalender-Eintrag anzupassen. Zusätzliche Tonnen können zeilenweise hinzugefügt werden bzw. durch Löschen einer Zeile entfernt werden \
  ##            Kalender-Eintrag, Reading, icon \
  push @{$_sc},["Altpapier","altpapier","Abfalltonne-Recycling-Logo\@blue"];;\
  push @{$_sc},["Restmüll","restmuell","Abfalltonne\@gray"];;\
  push @{$_sc},["Bio","bio","Abfalltonne-Recycling-Logo\@green"];;\
  push @{$_sc},["Gelbe","gelbe_tonne","Abfalltonne-Recycling-Logo\@yellow"];;\
  push @{$_sc},["Grünabfuhr","gruenschnitt","Gartenabfall\@green"];;\
  \
  ## Rest der Definition muss nicht angepasst werden \
...

Titel: Aw: Abfall-Entsorgung
Beitrag von: yersinia am 23 Dezember 2025, 09:05:00
Funktioniert, danke. :)
Für das Wiki wäre eventuell noch gelber Sack (mit bag) und Weihnachtsbaum-Abholung interessant:
  push @{$_sc},["gelber Sack","gelberSack","bag\@yellow"];
  push @{$_sc},["Weihnachtsbaum","Weihnachtsbaum","christmas_tree\@green"];
Darüberhinaus beschwert sich mein innerer Monk über den fehlenden Punkt hinter dem Monat beim Datum:
my $date=fhem('get cal events timeFormat:"%a %d.%m." filter:field(summary)=~"'.$event.'" limit:count=1,from=0 format:custom="$T1"');
Edit: weil ich nicht richtig gelesen habe und drauf reingefallen bin (reading mit Leerzeichen :'( ), wäre ein makeReadingName (https://wiki.fhem.de/wiki/DevelopmentModuleAPI#makeReadingName) vor dem set_Reading ggf noch sinnvoll?
Titel: Aw: Abfall-Entsorgung
Beitrag von: Per am 23 Dezember 2025, 09:54:32
Gibt es noch ein sinnvolles Icon für "Sperrmüll"?

Und wann wird die Kalenderdatei eingelesen, also wann wirken sich gemachte Änderungen (ohne Zutun) aus?
Titel: Aw: Abfall-Entsorgung
Beitrag von: Damian am 23 Dezember 2025, 11:19:04
ical aktualisiert die Kalenderdaten bei mir stündlich. Auch DOIF aktualisiert seine Daten im Stundentakt:

init{[:01];set_Exec("Timer",200,'update()');}
Bei ical kann man per set reload die Aktualisierung manuell auslösen und im DOIF danach per set update.

Ich habe die Einträge bei mir im Google-Kalender eingetragen - das funktioniert seit Jahren zuverlässig.



Titel: Aw: Abfall-Entsorgung
Beitrag von: Damian am 23 Dezember 2025, 11:54:48
Zitat von: yersinia am 23 Dezember 2025, 09:05:00Funktioniert, danke. :)
Für das Wiki wäre eventuell noch gelber Sack (mit bag) und Weihnachtsbaum-Abholung interessant:
  push @{$_sc},["gelber Sack","gelberSack","bag\@yellow"];
  push @{$_sc},["Weihnachtsbaum","Weihnachtsbaum","christmas_tree\@green"];
Darüberhinaus beschwert sich mein innerer Monk über den fehlenden Punkt hinter dem Monat beim Datum:
my $date=fhem('get cal events timeFormat:"%a %d.%m." filter:field(summary)=~"'.$event.'" limit:count=1,from=0 format:custom="$T1"');
Edit: weil ich nicht richtig gelesen habe und drauf reingefallen bin (reading mit Leerzeichen :'( ), wäre ein makeReadingName (https://wiki.fhem.de/wiki/DevelopmentModuleAPI#makeReadingName) vor dem set_Reading ggf noch sinnvoll?

Ich habe den Code ergänzt. Übrigens nach DIN 5008 muss auch hinter die Wochentagabkürzung ein Punkt hin :) makeReadingName habe ich nicht eingebaut, weil es aus meiner Sicht unnötiger Overhead ist. Es steht in der Überschrift der Spalte, dass es ein Reading ist und wer das Beispiel so übernimmt und nur seine Stichwörter anpasst, kann nichts falsch machen.