Seite 1 von 1

Speichern von Automationen zerstört Code von bestehenden Automationen

Verfasst: Mo 9. Aug 2021, 07:58
von Friedi
Ich weiß nicht, ob es schon mal jemandem aufgefallen ist, aber in manchen Fällen zerstört das Anlegen/Ändern einer Automation per UI (Einstellungen -> Automationen) den Code bestehender Automationen.

Ich habe mal ein Ticket aufgemacht. Wen es interessiert kann es hier verfolgen: https://github.com/home-assistant/core/issues/54306

Ich bin sehr gespannt, was die dazu sagen ...

Re: Speichern von Automationen zerstört Code von bestehenden Automationen

Verfasst: Mo 9. Aug 2021, 10:01
von Osorkon
Kein zwar Deinen Fehler nicht bestätigen.

Aber müsste Dein Template nicht so ausschauen?!

Code: Alles auswählen

{% if is_state_attr("sensor.ics_6", "remaining",2) %} 
  Nächste Woche ist die Familie {{states.sensor.ics_6.attributes.description }} mit der Kellerreinigung dran.
{% elif is_state_attr("sensor.ics_7", "remaining",7) %} 
  Nächste Woche ist die Familie {{states.sensor.ics_7.attributes.description }} mit der Kellerreinigung dran.
{% elif is_state_attr("sensor.ics_8", "remaining",7) %} 
  Nächste Woche ist die Familie {{states.sensor.ics_8.attributes.description }} mit der Kellerreinigung dran.
{% else %}
  NächsteWoche bleibt der Keller dreckig!
{%- endif %}

Re: Speichern von Automationen zerstört Code von bestehenden Automationen

Verfasst: Mo 9. Aug 2021, 10:15
von Friedi
Ist da außer der Spitze auch eine Korrektur drin? ;)

Alles, was nicht passt, war noch ein Crash durch HA. Weil du schreibst, du kannst das nicht bestätigen: Hast du mal probiert?

Re: Speichern von Automationen zerstört Code von bestehenden Automationen

Verfasst: Mo 9. Aug 2021, 10:27
von Osorkon

Code: Alles auswählen

alias: Test Test
description: ''
trigger:
  - platform: time
    at: '20:00:00'
condition: []
action:
  - service: notify.telegram_xy
    data:
      message: >-
        {% if is_state_attr("sensor.ics_6", "remaining",2) %}    Nächste Woche
        ist die Familie {{states.sensor.ics_6.attributes.description }} mit der
        Kellerreinigung dran. {% elif is_state_attr("sensor.ics_7",
        "remaining",7) %}    Nächste Woche ist die Familie
        {{states.sensor.ics_7.attributes.description }} mit der Kellerreinigung
        dran. {% elif is_state_attr("sensor.ics_8", "remaining",7) %}    Nächste
        Woche ist die Familie {{states.sensor.ics_8.attributes.description }}
        mit der Kellerreinigung dran. {% else %}   Nächste Woche bleibt der
        Keller dreckig! {%- endif %}
mode: single
Automation angelegt -> getestet -> funktioniert

Automation geändert -> gespeichert -> getetstet -> funktioniert

Neue Automation angelegt -> getestet -> funktioniert

Re: Speichern von Automationen zerstört Code von bestehenden Automationen

Verfasst: Mo 9. Aug 2021, 10:48
von Friedi
Osorkon hat geschrieben: Mo 9. Aug 2021, 10:27 Automation angelegt -> getestet -> funktioniert

Automation geändert -> gespeichert -> getetstet -> funktioniert

Neue Automation angelegt -> getestet -> funktioniert
Wo hast du die Automation geändert? Im File-Editor? Da geht ja alles.
Du müsstest eben über dieses Einstellungen -> Automationen in der grafischen Umgebung eine Automation erstellen oder ändern.
Osorkon hat geschrieben: Mo 9. Aug 2021, 10:27

Code: Alles auswählen

data:
      message: >-
Hat der - hinter dem > eine Funktion?

Re: Speichern von Automationen zerstört Code von bestehenden Automationen

Verfasst: Mo 9. Aug 2021, 10:59
von Osorkon
Friedi hat geschrieben: Mo 9. Aug 2021, 10:48 Wo hast du die Automation geändert? Im File-Editor? Da geht ja alles.
Ich habe die Automation im grafischen Editor angelegt, sowie auch die Änderung im diesen durchgeführt.

Nen File Editor für Automation brauch ich so gut wie gar nicht! 😀

Die Yaml -Sicht vielleicht noch um den Aufbau noch zu checken.

Gruß
Osorkon

Re: Speichern von Automationen zerstört Code von bestehenden Automationen

Verfasst: Mo 9. Aug 2021, 13:49
von Friedi
Was genau verstehst du unter grafischen Editor? Screenshot möglich?

Re: Speichern von Automationen zerstört Code von bestehenden Automationen

Verfasst: Mo 9. Aug 2021, 14:05
von Osorkon
Einstellungen -> Automatisierungen -> + Automatisierung hinzufügen -> Mit einer leeren Automatisierung starten.

Ein Screenshot erübrigt sich, glaube ich. 😀

Re: Speichern von Automationen zerstört Code von bestehenden Automationen

Verfasst: Mo 9. Aug 2021, 15:25
von Friedi
Hmm. Welche Version hast du laufen und welche Plattform?
Bei mir gibt es da nämlich def. Probleme …

Re: Speichern von Automationen zerstört Code von bestehenden Automationen

Verfasst: Mo 9. Aug 2021, 16:47
von Osorkon
Home Assistant OS 6.2 auf nem Raspberry Pi4 8GB
Core 2021.8.3
Supervisor 2021.06.8

Re: Speichern von Automationen zerstört Code von bestehenden Automationen

Verfasst: Mo 9. Aug 2021, 17:15
von Friedi
Shit, bringt mich auch nicht weiter.
Ich habe zwar Core 2021.8.4, hatte das Phänomen auch bei Core 2021.8.3 :shock:

Re: Speichern von Automationen zerstört Code von bestehenden Automationen

Verfasst: Mo 9. Aug 2021, 17:18
von Osorkon
Betrifft es bei Dir nur die eine Automation, oder auch alle andere?

Das Template, wie ich schon schrieb, ist meiner Meinung nach fehlerhaft?!

Re: Speichern von Automationen zerstört Code von bestehenden Automationen

Verfasst: Mo 9. Aug 2021, 17:24
von Friedi
Osorkon hat geschrieben: Mo 9. Aug 2021, 17:18 Betrifft es bei Dir nur die eine Automation, oder auch alle andere?

Das Template, wie ich schon schrieb, ist meiner Meinung nach fehlerhaft?!
Hab ich nicht mitbekommen. Kannst du mir mal konkret sagen, was daran deiner Meinung nach nicht passt?

Re: Speichern von Automationen zerstört Code von bestehenden Automationen

Verfasst: Mo 9. Aug 2021, 17:36
von Osorkon
Mein erster Beitrag zu diesem Thema. 😉

Re: Speichern von Automationen zerstört Code von bestehenden Automationen

Verfasst: Mo 9. Aug 2021, 21:12
von Friedi
War mir schon klar, nur sehe ich nicht den Fehler bei meinem Code oder meinst du wegen elif an sich?
Werde mal konkreter :geek:

Re: Speichern von Automationen zerstört Code von bestehenden Automationen

Verfasst: Mo 9. Aug 2021, 23:29
von Osorkon
Wenn Deine Automation funktioniert wie sie soll, dann ist doch alles gut.

Eine if Anweisung mit mehrfach Auswahl, kenne ich und so wende ich sie auch so mehrfach erfolgreich an, wie oben beschrieben.

Code: Alles auswählen

if …
elif …
elif…
else…
endif

Re: Speichern von Automationen zerstört Code von bestehenden Automationen

Verfasst: Di 10. Aug 2021, 05:58
von Friedi
Osorkon hat geschrieben: Mo 9. Aug 2021, 23:29 Wenn Deine Automation funktioniert wie sie soll, dann ist doch alles gut.

Eine if Anweisung mit mehrfach Auswahl, kenne ich und so wende ich sie auch so mehrfach erfolgreich an, wie oben beschrieben.

Code: Alles auswählen

if …
elif …
elif…
else…
endif
Ja, aber syntaktisch ist mein Code absolut richtig. Spielt keine Rolle bzw. darf keine Rolle spielen.

Mittlerweile hat sich noch einer ran gehängt. Der hat scheinbar Probleme mit Bindestrichen im Text.

Re: Speichern von Automationen zerstört Code von bestehenden Automationen

Verfasst: Di 10. Aug 2021, 15:59
von Osorkon
Friedi hat geschrieben: Di 10. Aug 2021, 05:58 Mittlerweile hat sich noch einer ran gehängt. Der hat scheinbar Probleme mit Bindestrichen im Text.
Diesen Fehler kann ich auch reproduzieren.
Nur änderst sich die Syntax nur wenn ich genau diese Automationen im grafischen Editor öffne und speichere und danach funktioniert diese nicht mehr.
Erstelle ich eine neue Automation per grafischen Editor, bleibt die alte so wie sie ist und funktioniert nach wie vor.

Gruß
Osorkon

Re: Speichern von Automationen zerstört Code von bestehenden Automationen

Verfasst: Di 10. Aug 2021, 16:49
von Friedi
Na auf jeden Fallikst der Wurm drin …

Häng dich doch auch mit ans Git-Issue.

Re: Speichern von Automationen zerstört Code von bestehenden Automationen

Verfasst: Sa 30. Okt 2021, 16:18
von Friedi
Ich habe jetzt alle manuell veränderten Automatisierungen ausgelagert.
Jetzt kann ich endlich wieder den grafischen Editor verwenden :D