Viele kennen das Problem: wann wird welcher der Müll abgeholt?
Da ich für mein Smart Home das System von Home Assistant aufbaue, will ich euch heute mal meine Lösung für das Anzeigen eines Abfallkalenders zeigen und wie ich das ganze visuell auf em Home Assistant Dashboard darstelle.
Vorrausetzung ist, dass die Termine zum Abholen des Mülls in eurem Google Kalender eingetragen sind. Viele Kommunen bieten ein fertiges .ica File an, dass man sich einfach in den Kalender importieren kann.
Fange wir gleich mal mit dem kompliziertesten Teil an:
sensor:
- platform: template
sensors:
sensor_abfall_event:
value_template: "{% set days = ['Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag','Sonntag'] %}{% set weekday = as_timestamp(strptime(state_attr('calendar.abfall', 'start_time'), '%Y-%m-%d %H:%M:%S')) | timestamp_custom('%w') | int %}{{ days[weekday-1] }}, {{ as_timestamp(strptime(state_attr('calendar.abfall', 'start_time'), '%Y-%m-%d %H:%M:%S')) | timestamp_custom('%d.%m.') }} - {{ states.calendar.abfall.attributes.message }}"
entity_picture_template: >-
{% if states.calendar.abfall.attributes.message == 'Gelber Sack' %}
/local/trash_icon_gelbersack.gif
{% elif states.calendar.abfall.attributes.message == 'Altpapier Grüne Tonne' %}
/local/trash_icon_papier.gif
{% elif states.calendar.abfall.attributes.message == 'Bioabfall Braune Tonne' %}
/local/trash_icon_bio.gif
{% elif states.calendar.abfall.attributes.message == 'Restabfall Graue Tonne' %}
/local/trash_icon_rest.gif
{% endif %}
friendly_name: "Next Abfall Calendar Event"
Dieser Code-Schnipsel kommt in eure configuration.yaml Datei.
Die fettmarkierten Teile solltet ihr euch nochmal genauer anschauen und evtl. Anpassen. Das sind zum einen die genauen Einträge in eurem Kalender (z.B. "Gelber Sack") und zum anderen die Pfade zu den Bilddateien, was dann am Ende im Dashboard angezeigt werden soll. Die Bilder, die ich mir erstellt habe, könnt hier hier runterladen. Ich habe mich für animierte GIF´s entschieden.
Diese Files müssen in euer /config/www Verzeichnis von Home Assistant.
Um das ganze nun in eurem Dashboard darzustellen müsst ihr einfach nur eine Entity hinzufügen. Mein YAML-Code dazu sieht z.B. so aus:
type: entities
entities:
- entity: sensor.sensor_abfall_event
name: Nächste Abholung
state_color: false
show_header_toggle: false
title: Abfallkalender
Im Dashboard sieht das ganze dann so aus:
Wenn ihr das nachbauen wollt und Anregungen oder Fragen habt, dann schreibt einfach einen Kommentar.
Kommentare
Kommentar veröffentlichen