Der Reminder besteht bei mir aus 3 Bereichen.
HACS Reminder.png
Links oben die Trash-Card für die Müll-Termine (aktuell nur mit Dummy-Daten befüllt).
Rechts davon die atomic-calendar-revive Card für Geburtstage und darunter die gleiche Card für andere Termine.
Teil 1: Müll-Erinnerung
Es gibt verschiedene Lösungen, um an die Termine zu kommen.
A.) Die Gemeinde bietet eine Website mit API, über die man die Termine abfragen kann.
Oft gibt es dann auch eine passende Handy-App mit Anzeige der Termine.
Nachteil: Wenn sich die API ändert, dann muss man auch die Abfrage entsprechend anpassen.
B.) Die Gemeinde-Website bietet einen Kalender (iCal/WebCal im ICS-Format)
Diesen Kalender kann man herunterladen oder auch online darauf zugreifen.
C.) Meist sind die Termine ohnehin regelmäßig, dann kann man sie auch berechnen, ähnlich wie einen Serien-Termin im Kalender.
Nachteil: Bei Feiertagen könnte es Ausnahmen geben.
Es gibt eine Integration, die einem die meiste Arbeit für die Varianten A, B und C abnehmen kann.
Im Fall von C bietet Waste Collection Schedule auch für Ausnahmen eine gute Lösung an.
VT: sehr mächtige Integration mit umfangreichen Möglichkeiten
NT: Konfiguration erfordert gewissen Aufwand
Die Variante B ist in diesem Beispiel recht gut beschrieben.
Auch Torben hat ein 30 min Video zu dieser Intergration erstellt.
D.) Manche lesen die Daten auch mittels Scrape von einer Website, das wäre mir aber zu viel Bastelei.
E.) Man kann auch einfach Serien-Termine im HA-Kalender eintragen.
Für diese Variante gibt es ebenfalls Unterstützung in Form der Trash-Card.
VT: sehr einfach einzurichten
NT: Aussehen nicht frei konfigurierbar
Auch für diese Variante gibt es eine Beschreibung in diesem Blog.
Ich habe mich für die Variante E entschieden, und möchte diese hier kurz vorstellen. Der Vorteile dieser Variante ist aus meiner Sicht die Einfachheit.
Ich komme in ein Alter wo mir Dinge von Jahr zu Jahr schwerer fallen, aber einen Serientermin in einem Kalender anzulegen werde ich hoffentlich auch mit 80 noch schaffen.
Schritt 1 - Erstellung eines neuen Kalenders
Man kann (und sollte auch) in der Standard Kalender Integration für bestimmte Themen eigene Kalender erstellen.
Es gibt viele Klagen darüber, dass man die Farben der Kaleder nicht selbst vergeben kann, und sich mit jedem neuen Kalender die Farben der alphabetisch nachfolgenden verschieben. Ich habe daher einen Trick angewendet, der das verhindert. Meine Kalender sind durchnummeriert, da verschiebt sich also nix, wenn ich einen weiteren hinten dranhänge. Den Default-Kalender hab ich 01-Kalender genannt, danach kommen 02-Geburtstage, 03-Abholungen.
Die Abhol-Termine lege ich als ganztägige Termine an, da mir das einfacher erscheint.
Schritt 2 - Trash-Card am Dashboard erstellen
Man kann die Karte komplett im UI definieren. Das ist schön, trotzdem erkläre ich es hier im YAML-Mode.
Hier wird auf den Kalender mit all den Abhol-Terminen verwiesen. Wie diese lauten müssen, sehen wir weiter unten.
Das kann jeder nach eigenem Geschmack gestalten.
Ab 8 Uhr werden die (Ganztages-) Termine wieder ausgeblendet, da ist der Müll dann schon abgeholt.
Laut Doku sollte grouping=true der Default-Wert sein, ist es aber nicht. Ich möchte je Müll-Art immer nur einen (den nächsten) Termin sehen, das aber für 4 Wochen im Voraus für selten abgeholten Müll.
Falls ich mich beim Eintragen im Kalender irre, und den Termin falsch benennen, dann wird er bei filter=false trotzdem ausgewertet und angezeigt.
Alle 60 min wird der Kalender ausgewertet, das sollte man beachten, wenn man neue Termine einträgt.
Es können bis zu 6 Typen ausgewertet werden, diese Namen sind zwar fix, man kann sie aber für alles verwenden was man möchte. Ich habe sie so verwendet:
organic für Bio, paper für Papier, recycle für Kunststoff, custom für Metall, waste für Restmüll, others um auch irrtümlich falsch benannte Termine angezeigt zu bekommen.
Wer mehr als 6 Müll-Arten hat, der muss sich was anderes einfallen lassen.
pattern: Hier muss ein eindeutiger Teil des Termin-Namens stehen, ab besten der volle Name
label: So wird der Termin in der Karte dann angezeigt. Man kann das auch weglassen, dann wird er so angezeigt, wie er eingetragen ist.
icon und color sollten klar sein. Man kann auch ein Bild anzeigen lassen, der Code in der Card lautet dann:
picture: /local/images/trash_green.png
Das Bild kommt z.B. in den Ordner www/images/trash_green.png
Irgend woher muss man einfach wissen, dass sich der Ordner /local/ immer auf den Ordner /www/ bezieht. Vermutlich muss man Linux kennen, um das zu verstehen.
Am Ende war es dann doch einfacher als gedacht, aber es gibt halt viele Möglichkeiten, und ich hab auch etwas Zeit benötigt, um für mich die beste Lösung zu finden.
Es gibt dann auch noch die Möglichkeit, sich Reminder schicken zu lassen, aber das hebe ich mir für später auf. Aktuell wird der Termin bei mir nur angezeigt.
Wer noch mehr dazu lesen möchte, der findet in diesem Community Thread viele weitere Beispiele vor allem zu anderen Lösungen.
Teil 2 + 3: atomic-calendar-revive
Diese Card ist wesentlich einfacher. Bei mir wird sie 2x eingesetzt,
mit entity: calendar.02_geburtstage
und mit entity: calendar.01_kalender für alle weiteren Termine.
Die meisten Parameter sind selbsterklärend, daher hier nur ein kurzer Auszug, den gesamten Code hab ich wie immer unten verlinkt.
Es wird die definierte Anzahl von Events angezeigt und darunter der Hinweis, wie viele weitere Events ausgeblendet sind. Wenn es aber nur mehr 1 weiteren Event im angegebenen Zeitraum gibt, dann wird dieser statt dem Hinweis anzeigt. Ich finde das echt gut designed.
Der Rest ist noch eine Menge an card_mod um die Felder etwas anders anzuordnen als es dem Standard entspricht.
Weitere Beiträge dieser Serie:
HACS Wetterkarte
HACS Sonne & Mond (inkl. Tipps zur configuration.yaml)
HACS Schieberegler (inkl. Möglichkeiten der Icon Farbanpassung & erste Vorstellung Farbschema)
HACS Gauges (Tachoanzeigen, inkl. senkrechte Balken-Cards)
HACS stack-in-card für Raum-Card
HACS Graph-Cards
HACS Thermostat-Cards
HACS Entity Cards (inkl. stacking Beispiele mit der custom:button-card)
HACS Person- & Öffi-Card (inkl. Geschichte zu ChatGPT)
HA-Behaglichkeits-Diagramm
HA Kurzeinführung
HACS Sidebar & Dashboard-Entwurf
HACS Bewässerung
HA & Node-Red
HA Notifications
HA Recorder, SQLite, InfluxDB, Grafana
HA Python Scripts
HACS Reminder.png
Links oben die Trash-Card für die Müll-Termine (aktuell nur mit Dummy-Daten befüllt).
Rechts davon die atomic-calendar-revive Card für Geburtstage und darunter die gleiche Card für andere Termine.
Teil 1: Müll-Erinnerung
Es gibt verschiedene Lösungen, um an die Termine zu kommen.
A.) Die Gemeinde bietet eine Website mit API, über die man die Termine abfragen kann.
Oft gibt es dann auch eine passende Handy-App mit Anzeige der Termine.
Nachteil: Wenn sich die API ändert, dann muss man auch die Abfrage entsprechend anpassen.
B.) Die Gemeinde-Website bietet einen Kalender (iCal/WebCal im ICS-Format)
Diesen Kalender kann man herunterladen oder auch online darauf zugreifen.
C.) Meist sind die Termine ohnehin regelmäßig, dann kann man sie auch berechnen, ähnlich wie einen Serien-Termin im Kalender.
Nachteil: Bei Feiertagen könnte es Ausnahmen geben.
Es gibt eine Integration, die einem die meiste Arbeit für die Varianten A, B und C abnehmen kann.
Im Fall von C bietet Waste Collection Schedule auch für Ausnahmen eine gute Lösung an.
VT: sehr mächtige Integration mit umfangreichen Möglichkeiten
NT: Konfiguration erfordert gewissen Aufwand
Die Variante B ist in diesem Beispiel recht gut beschrieben.
Auch Torben hat ein 30 min Video zu dieser Intergration erstellt.
D.) Manche lesen die Daten auch mittels Scrape von einer Website, das wäre mir aber zu viel Bastelei.
E.) Man kann auch einfach Serien-Termine im HA-Kalender eintragen.
Für diese Variante gibt es ebenfalls Unterstützung in Form der Trash-Card.
VT: sehr einfach einzurichten
NT: Aussehen nicht frei konfigurierbar
Auch für diese Variante gibt es eine Beschreibung in diesem Blog.
Ich habe mich für die Variante E entschieden, und möchte diese hier kurz vorstellen. Der Vorteile dieser Variante ist aus meiner Sicht die Einfachheit.
Ich komme in ein Alter wo mir Dinge von Jahr zu Jahr schwerer fallen, aber einen Serientermin in einem Kalender anzulegen werde ich hoffentlich auch mit 80 noch schaffen.
Schritt 1 - Erstellung eines neuen Kalenders
Man kann (und sollte auch) in der Standard Kalender Integration für bestimmte Themen eigene Kalender erstellen.
Es gibt viele Klagen darüber, dass man die Farben der Kaleder nicht selbst vergeben kann, und sich mit jedem neuen Kalender die Farben der alphabetisch nachfolgenden verschieben. Ich habe daher einen Trick angewendet, der das verhindert. Meine Kalender sind durchnummeriert, da verschiebt sich also nix, wenn ich einen weiteren hinten dranhänge. Den Default-Kalender hab ich 01-Kalender genannt, danach kommen 02-Geburtstage, 03-Abholungen.
Die Abhol-Termine lege ich als ganztägige Termine an, da mir das einfacher erscheint.
Schritt 2 - Trash-Card am Dashboard erstellen
Man kann die Karte komplett im UI definieren. Das ist schön, trotzdem erkläre ich es hier im YAML-Mode.
HTML-Code:
type: custom:trash-card entities: - calendar.03_abholungen
HTML-Code:
alignment_style: center card_style: chip color_mode: icon day_style: counter items_per_row: 1
HTML-Code:
drop_todayevents_from: "08:00:00"
HTML-Code:
next_days: 28 event_grouping: true
HTML-Code:
filter_events: false
HTML-Code:
refresh_rate: 60
HTML-Code:
pattern: - type: organic pattern: Bio label: Bio icon: mdi:trash-can-outline color: green
organic für Bio, paper für Papier, recycle für Kunststoff, custom für Metall, waste für Restmüll, others um auch irrtümlich falsch benannte Termine angezeigt zu bekommen.
Wer mehr als 6 Müll-Arten hat, der muss sich was anderes einfallen lassen.
pattern: Hier muss ein eindeutiger Teil des Termin-Namens stehen, ab besten der volle Name
label: So wird der Termin in der Karte dann angezeigt. Man kann das auch weglassen, dann wird er so angezeigt, wie er eingetragen ist.
icon und color sollten klar sein. Man kann auch ein Bild anzeigen lassen, der Code in der Card lautet dann:
picture: /local/images/trash_green.png
Das Bild kommt z.B. in den Ordner www/images/trash_green.png
Irgend woher muss man einfach wissen, dass sich der Ordner /local/ immer auf den Ordner /www/ bezieht. Vermutlich muss man Linux kennen, um das zu verstehen.
Am Ende war es dann doch einfacher als gedacht, aber es gibt halt viele Möglichkeiten, und ich hab auch etwas Zeit benötigt, um für mich die beste Lösung zu finden.
Es gibt dann auch noch die Möglichkeit, sich Reminder schicken zu lassen, aber das hebe ich mir für später auf. Aktuell wird der Termin bei mir nur angezeigt.
Wer noch mehr dazu lesen möchte, der findet in diesem Community Thread viele weitere Beispiele vor allem zu anderen Lösungen.
Teil 2 + 3: atomic-calendar-revive
Diese Card ist wesentlich einfacher. Bei mir wird sie 2x eingesetzt,
mit entity: calendar.02_geburtstage
und mit entity: calendar.01_kalender für alle weiteren Termine.
Die meisten Parameter sind selbsterklärend, daher hier nur ein kurzer Auszug, den gesamten Code hab ich wie immer unten verlinkt.
HTML-Code:
maxEventCount: 4 softLimit: 1
Der Rest ist noch eine Menge an card_mod um die Felder etwas anders anzuordnen als es dem Standard entspricht.
Weitere Beiträge dieser Serie:
HACS Wetterkarte
HACS Sonne & Mond (inkl. Tipps zur configuration.yaml)
HACS Schieberegler (inkl. Möglichkeiten der Icon Farbanpassung & erste Vorstellung Farbschema)
HACS Gauges (Tachoanzeigen, inkl. senkrechte Balken-Cards)
HACS stack-in-card für Raum-Card
HACS Graph-Cards
HACS Thermostat-Cards
HACS Entity Cards (inkl. stacking Beispiele mit der custom:button-card)
HACS Person- & Öffi-Card (inkl. Geschichte zu ChatGPT)
HA-Behaglichkeits-Diagramm
HA Kurzeinführung
HACS Sidebar & Dashboard-Entwurf
HACS Bewässerung
HA & Node-Red
HA Notifications
HA Recorder, SQLite, InfluxDB, Grafana
HA Python Scripts
Kommentar