Fehlermeldung bei /homeassistant/templates/Müllabholung.yaml

HA-DAU

Member
Hallo zusammen,
ich brauche wieder mal Euer Schwarmwissen.
In der Config.yaml ist so der Verweis: template: !include_dir_merge_list templates/
Ein anderes Template läuft darüber perfekt.
Also der Ordner kann nicht die Ursache sein.
Ich versuche schon ewig mir eine /homeassistant/templates/Müllabholung.yaml zurecht zu basteln. Nur egal wie ich es anstelle, kommt immer diese Fehlermeldung unter Benachrichtigungen:
Logger: homeassistant.config
Source: config.py:597
First occurred: 12:44:10 (2 occurrences)
Last logged: 12:44:13

Invalid config for 'template' at templates/Müllabholung.yaml, line 6: invalid template (TemplateSyntaxError: expected token 'end of statement block', got 'Sack') for dictionary value 'sensor->0->state', got '{% set Gelber Sack = states.sensor.gelber_sack.state %} {% elif Gelber Sack == "Heute" %} die Gelber Sack {% else %} keine {%endif%}\n'

Mir sagt die Fehlermeldung erst einmal überhaupt nichts, nur das was nicht stimmen kann.
Hier der Code:

YAML:
###---- Template Müllabholung Heute ----###
- sensor:
    - name: Müllabholung Heute
      unique_id: mullabholung_heute
      icon: mdi:trash-can-outline
      state: >
         {% set Gelber Sack = states.sensor.gelber_sack.state %}
         {% elif Gelber Sack == "Heute" %}
         die Gelber Sack
         {% else %}
         keine
         {%endif%}
Wo mache ich den Fehler?

Und wie kriege ich den ersten Sensor auf dem Bild gelöscht?
Der kam von einem meiner ersten Versuche zustande.
Ich habe HomeAssistant auch schon X.mal neu gestartet.
STRG & F5 habe ich auch schon gedrückt, um den Cache zu leeren.
 

Anhänge

  • sensor.gelber_sack.png
    sensor.gelber_sack.png
    113,9 KB · Aufrufe: 4
Hallo @Nival,
habe das mal geändert, mit diesem Ergebnis:
Invalid config for 'template' at templates/Müllabholung.yaml, line 6: invalid template (TemplateSyntaxError: Encountered unknown tag 'elif'.) for dictionary value 'sensor->0->state', got '{% set GelberSack = states.sensor.gelber_sack.state %} {% elif GelberSack == "Heute" %} die GelberSack {% else %} keine {%endif%}\n'

YAML:
###---- Template Müllabholung Heute ----###
- sensor:
    - name: Müllabholung Heute
      unique_id: mullabholung_heute
      icon: mdi:trash-can-outline
      state: >
         {% set GelberSack = states.sensor.gelber_sack.state %}
         {% elif GelberSack == "Heute" %}
         die GelberSack
         {% else %}
         keine
         {%endif%}
 
Hallo @Nival,

das mit den zu löschenden Sensoren hat perfekt funktioniert. Danke für den Tipp. Versteckter kann man das nicht unterbringen....

Aber das Hauptproblem habe ich immer noch.
Ich habe das jetzt theoretisch komplett ergänzt und bin noch verwirrter als vorher.
Hier die fast fertige Datei:
YAML:
###---- Template Müllabholung Heute ----###
- sensor:
    - name: Müllabholung Heute
      unique_id: mullabholung_heute
      icon: mdi:trash-can-outline
      state: >
         {% set Grüne_Tonne = states.grune_tonne.state %}
         {% set Gelber_Sack = states.sensor.gelber_sack.state %}
         {% set Graue_Tonne = states.sensor.graue_tonne.state %}
         {% if Grüne_Tonne == "Heute" and Gelber_Sack == "Heute" and Graue_Tonne == "Heute" %}
         die Grüne_Tonne, Gelber_Sack und Graue_Tonne
         {% if Grüne_Tonne == "Heute" and Gelber_Sack == "Heute" %}
         die Grüne_Tonne und Gelber_Sack
         {% if Grüne_Tonne == "Heute" and Graue_Tonne == "Heute" %}
         die Grüne_Tonne und Graue Tonne
         {% if Gelber_Sack == "Heute" and Graue_Tonne == "Heute" %}
         die Gelber_Sack und Graue_Tonne
         {% if Grüne_Tonne == "Heute" %}
         die Grüne_Tonne
         {% if Gelber_Sack == "Heute" %}
         die Gelber_Sack
         {% if Graue_Tonne == "Heute" %}
         die Graue_Tonne
         {% else %}
         keine       
         {%endif%}
Hier die Fehlermeldung dazu:

Invalid config for 'template' at templates/Müllabholung.yaml, line 6: invalid template (TemplateSyntaxError: Unexpected end of template. Jinja was looking for the following tags: 'elif' or 'else' or 'endif'. The innermost block that needs to be closed is 'if'.) for dictionary value 'sensor->0->state', got '{% set Grüne_Tonne = states.grune_tonne.state %} {% set Gelber_Sack = states.sensor.gelber_sack.state %} {% set Graue_Tonne = states.sensor.graue_tonne.state %} {% if Grüne_Tonne == "Heute" and Gelber_Sack == "Heute" and Graue_Tonne == "Heute" %} die Grüne_Tonne, Gelber_Sack und Graue_Tonne {% if Grüne_Tonne == "Heute" and Gelber_Sack == "Heute" %} die Grüne_Tonne und Gelber_Sack {% if Grüne_Tonne == "Heute" and Graue_Tonne == "Heute" %} die Grüne_Tonne und Graue Tonne {% if Gelber_Sack == "...
 
Hallo @Nival,

ich habe es geschafft, dass erst einmal keine Fehlermeldung mehr auftaucht.
YAML:
###---- Template Müllabholung Heute ----###
- sensor:
    - name: Müllabholung Heute
      unique_id: mullabholung_heute
      icon: mdi:trash-can-outline
      state: >
         {% set Grüne_Tonne = states.grune_tonne.state %}
         {% set Gelber_Sack = states.sensor.gelber_sack.state %}
         {% set Graue_Tonne = states.sensor.graue_tonne.state %}
         {% if Grüne_Tonne == "Heute" and Gelber_Sack == "Heute" and Graue_Tonne == "Heute" %}
         die Grüne_Tonne, Gelber_Sack und Graue_Tonne
         {% elif Grüne_Tonne == "Heute" and Gelber_Sack == "Heute" %}
         die Grüne_Tonne und Gelber_Sack
         {% elif Grüne_Tonne == "Heute" and Graue_Tonne == "Heute" %}
         die Grüne_Tonne und Graue Tonne
         {% elif Gelber_Sack == "Heute" and Graue_Tonne == "Heute" %}
         die Gelber_Sack und Graue_Tonne
         {% elif Grüne_Tonne == "Heute" %}
         die Grüne_Tonne
         {% elif Gelber_Sack == "Heute" %}
         die Gelber_Sack
         {% elif Graue_Tonne == "Heute" %}
         die Graue_Tonne
         {% else %}
         keine
         {%endif%}
        
    ###---- Template Müllabholung Text Heute ----###
    - name: Müllabholung Text Heute
      unique_id: mullabholung_text_heute
      icon: mdi:trash-can-outline
      state: >
         {% if states.sensor.mullabholung_heute.state != 'keine' %}
         Du musst heute {{ states.sensor.mullabholung_heute.state }} Tonne rausstellen!
         {% else %}
         Du musst heute keine Tonnen rausstellen
         {%endif%}
 
Moinsen,
schön, dass es jetzt ohne Fehlermeldung klappt. :)
Ich hatte das auch eine Zeit über Home Assistant laufen, mittlerweile hat der lokale Entsorger aber statt "Müllkalender" auf Papier auch (und ausschließlich) .ics Dateien mit den jeweiligen Terminen (je nach Müllart) im Angebot. Die habe ich auf den Calenderserver des Synology NAS gelegt und bekomme jetzt darüber verlässlich eine Erinnerung auf Tablet und Smartphone...und Home Assistant kümmert sich um andere Dinge. :)
 
Auch bei uns stellt der Entsorger einen ICS-Calendar zur Verfügung. Diesen importiere ich einmal jährlich in HA und lasse mir die Termine als Unteransicht in HA anzeigen.
Zusätzlich natürlich ein Hinweis am Vorabend auf das Handy.
Geht also auch über HA.muell.png
 
Hallo @digi303,

das sieht doch noch besser aus wie meine Krücke.
Wie hast Du das genau gemacht?

Hast Du eine Anleitung dafür, bzw. den passenden Code dafür?
 
puh, ist lange her, ich schau mal die Tage, was ich da an sinnvollen Code extrahieren kann.
Aber eine ungefähre Vorgehensweise schon mal vorab:
Die Hauptaufgabe löst der Waste Collection Schedule (über HACS). Der stellt die wichtigsten Sensoren als Extrakt des jeweiligen ICS-Calendars zu Anzahl der Rest-Tage und die Abholtermine als Attribut-Liste zur Verfügung.
Was ich dann zusätzlich benötigt habe, habe ich mit eigenen Templates aus den Sensoren generiert.
Der Rest war dann elende Bastelei mit Picture-Element sowie Markdown-Cards.
Die entsprechenden Automationen sind mit den vorhandenen Sensoren dann eher wieder schnell erledigt.
 
Hallo zusammen,
in meiner Template Müll.yaml hat sich ein Schreibfehlerteufel eingeschlichen.
Falsch..... {% set Grüne_Tonne = states.grune_tonne.state %}
YAML:
###---- Template Müllabholung Heute ----###
- sensor:
    - name: Müllabholung Heute
      unique_id: mullabholung_heute
      icon: mdi:trash-can-outline
      state: >
         {% set Grüne_Tonne = states.grune_tonne.state %}
         {% set Gelber_Sack = states.sensor.gelber_sack.state %}

Richtig.... {% set Grüne_Tonne = states.sensor.grune_tonne.state %}

YAML:
###---- Template Müllabholung Heute ----###
- sensor:
    - name: Müllabholung Heute
      unique_id: mullabholung_heute
      icon: mdi:trash-can-outline
      state: >
         {% set Grüne_Tonne = states.sensor.grune_tonne.state %}
         {% set Gelber_Sack = states.sensor.gelber_sack.state %}

ich habe den "sensor" bei der grune_tonne .... davor vergessen.
 
Zuletzt bearbeitet:

Zurzeit aktive Besucher

Letzte Anleitungen

Statistik des Forums

Themen
4.519
Beiträge
46.339
Mitglieder
4.149
Neuestes Mitglied
Kolloge
Zurück
Oben