Fehler bei Temperaturvergleich in Template

Ich versuche gerade einen Vergleich einer Temperatur

(((- climate.heizung_wohnzimmer_thermostat--)))

und einem Vorgabe Wert

(((-input_number.solltemperatur_wohnzimmer_tag- )))

der einen Schalter

 ((( input_boolean.temperatur_wohnzimmer_zu_hoch- )))

ein oder ausschalten soll.
Jedoch wird mir immer
----TemplateSyntaxError: unexpected ‘}’-----------
angezeigt.
Vielleicht kann mir jeman helfen , was ich da falsch mache ?
Hier das Script in Template

{% if float(climate.heizung_wohnzimmer_thermostat) < 
(float(input_number.solltemperatur_wohnzimmer_tag))}
{input_boolean.temperatur_wohnzimmer_zu_hoch =1}
{%- else -%}
{input_boolean.temperatur_wohnzimmer_zu_hoch =0}
{%- endif -%}

:crayon:by HarryP: Post formatiert

Mit der Syntax kenne ich mich wenig aus aber es fällt direkt auf, dass du mit {% öffnest aber nur mit } schließt.

Als Automation sollte es so gehen:

description: ""
mode: single
trigger:
  - platform: numeric_state
    entity_id:
      - climate.heizung_wohnzimmer_thermostat
condition: []
action:
  - if:
      - condition: template
        value_template: >-
          {{ states('climate.heizung_wohnzimmer_thermostat' | float(0)) <
          states('input_number.solltemperatur_wohnzimmer_tag') | float }}
    then:
      - action: input_boolean.turn_on
        metadata: {}
        data: {}
        target:
          entity_id: input_boolean.temperatur_wohnzimmer_zu_hoch
    else:
      - action: input_boolean.turn_off
        metadata: {}
        data: {}
        target:
          entity_id: input_boolean.temperatur_wohnzimmer_zu_hoch

Hallo bigmirror.
Erst einmal vielen Dank für deine Antwort und das Script.
Ich habe das dann genau so in eine Automation geschrieben ( kopiert ).
Jedoch kommt beim speichern folgende Fehlermeldung
( Message malformed: must contain at least one of below, above )
Leider kenne ich mich mit der Syntax noch nicht so gut aus um diese Information richtig deuten zu können.
mfG
Gerd

Was hast Du den eigentlich vor??
Das Template macht so überhaupt keinen Sinn!!
Abgesehen davon, dass es vor Syntax Fehlern nur so strotzt.

Kannst Du mal bitte die Aufgabenstellung in eigenen Worten beschreiben. Und die dazu gehörigen bzw. beteiligte Entitäten benennen.

Gruß
Osorkon

Hallo Osorkon.
Das Script war nur mal ein Test ( mit echten Entitäten ) ob und wie so etwas
funktionieren kann.
Die Aufgabenstellung ist folgende

Im Wohnzimmer ist ein Temperatursensor
— sensor.temperatur_wohnzimmer_temperature
In HA ein Eingabefeld für die Solltemperatur am Tag
— input_number.solltemperatur_wohnzimmer_tag
Es gibt 2 Schalter ( Helfer )
Schalter 1 Temperatur zu hoch
Schalter 2 Temperatur zu niedrig

Nun soll verglichen werden.
Ist
die Temperatur des Temperatursensors größer
als die im Eigabefeld eingegebene Temperatur
Setze
Hilfsschalter Temeratur zu hoch auf 1
Hilfsschalter Temperatur zu niedrig auf 0
oder
ist
die Temperatur des Temperatursensors kleiner
als die im Eigabefeld eingegebene Temperatur
Setze
Hilfsschalter Temeratur zu hoch auf 0
Hilfsschalter Temperatur zu niedrig auf 1

gelöst habe ich es mittlerweile mit 2 Automatisierungen

alias: WZ Temp zu hoch
description: ""
triggers:
  - trigger: time_pattern
    seconds: "59"
conditions:
  - condition: numeric_state
    entity_id: sensor.temperatur_wohnzimmer_temperature
    above: input_number.solltemperatur_wohnzimmer_tag
actions:
  - action: input_boolean.turn_off
    target:
      entity_id:
        - input_boolean.wohnzimmer_temperatur_zu_niedrig
    data: {}
  - action: input_boolean.turn_on
    target:
      entity_id:
        - input_boolean.temperatur_wohnzimmer_zu_hoch
    data: {}
mode: single
alias: WZ Temperatur zu niedrig
description: ""
triggers:
  - trigger: time_pattern
    seconds: "59"
conditions:
  - condition: numeric_state
    entity_id: sensor.temperatur_wohnzimmer_temperature
    below: input_number.solltemperatur_wohnzimmer_tag
actions:
  - action: input_boolean.turn_on
    target:
      entity_id:
        - input_boolean.wohnzimmer_temperatur_zu_niedrig
    data: {}
  - action: input_boolean.turn_off
    target:
      entity_id:
        - input_boolean.temperatur_wohnzimmer_zu_hoch
    data: {}
mode: single

Aber auch vielen Dank an alle die mitgearbeitet haben.

Wozu das ganze dienen soll, ist mir zwar ein Rätsels, aber was soll’s.

Das ganze könntest Du Dir auch über ein Template Sensor realisieren.
Der Vorteil wäre, du brauchst keinen Automatisierungen und der Template Sensor kannst Du nicht manipulieren sprich, micht ausversehen manuell umschalten.

Einstellungen → Geräte & Dienste → Helfer → + HELFER ERSTELLEN → Template für einen binären Sensor erstellen.

Mit folgenden Template:

{{ states('sensor.temperatur_wohnzimmer_temperature') | float(0) > states('input_number.solltemperatur_wohnzimmer_tag') | float(0) }}

Der so erstellet Binary Sensor hat den Status ON, wenn die Temperatur höher als die Vorgabe von Input Nummer ist. Und den Zustand OFF, wenn die Temperatur unter dem Vorgabe Wert ist

Gruß
Osorkon