Ansage der Wohnzimmertemperatur mit weniger Stellen hinter dem Komma

Hallo zusammen,
ich frage Alexa “Wie warm ist es im Wohnzimmer”. Das aktiviert ein Script in HA und Alexa antwortet mir zum Beispiel: “Im Wohnzimmer sind es 22,9333333333333 Grad”. Das sind natürlich viel zu viele Stellen nach dem Komma und ist blöd so :slight_smile:
Im Script wird ein Helfer abgefragt, der das arithmetische Mittel von drei verschiedenen Sensoren bildet. Anzeigegenauigkeit ist auf eine Stelle nach dem Komma eingestellt beim Helfer, trotzdem wird der lange Wert vorgelesen.
Hier mal der Helfer:

und seine Gruppenoptionen (hier sieht man unten rechts den vorgelesenen Wert):

Und noch das Script:

alias: Temperaturabfrage Wohnzimmer
sequence:
  - data: {}
    enabled: true
    action: alexa_media.update_last_called
  - delay:
      hours: 0
      minutes: 0
      seconds: 0
      milliseconds: 2
  - data:
      target: "{{ states('sensor.last_alexa') }}"
      message: >
        {% set alexa_text = [ "Die Temperatur im Wohnzimmer beträgt ",
                              "Im Wohnzimmer sind es ", 
                              "Im Moment herscht im Wohnzimmer eine Temperatur von " ] | random %}
        {{ '{} {} Grad.'.format( alexa_text,
        states('sensor.wohnzimmertemperatur')) }}
      data:
        type: tts
        method: speak
    action: notify.alexa_media
mode: single
icon: mdi:percent
description: Abfrage der mittleren Temperatur im WZ

Leider habe ich nun keinerlei Ahnung, wie ich Alexa dazu bringen kann, mir den Wert mit nur einer Nachkommastelle vorzulesen. Hat jemand eine Idee?

mit einem | round(1) am Ende vor den zwei }}

{{ '{} {} Grad.'.format( alexa_text,
        states('sensor.wohnzimmertemperatur')) | round(1)}}

So? Dann sagt sie gar nichts mehr. :grin:

Eventuell kann man das mit dem float Befehl machen. Das .1f gibt an, wieviele Stellen hinter dem Komma sein sollen.

      message: >
        {% set alexa_text = [ "Die Temperatur im Wohnzimmer beträgt ",
                              "Im Wohnzimmer sind es ", 
                              "Im Moment herrscht im Wohnzimmer eine Temperatur von " ] | random %}
        {{ '{} {:.1f} Grad.'.format( alexa_text,
        states('sensor.wohnzimmertemperatur')|float ) }}
1 „Gefällt mir“
      message: >
        {% set alexa_text = [ 
            "Die Temperatur im Wohnzimmer beträgt ",
            "Im Wohnzimmer sind es ", 
            "Im Moment herrscht im Wohnzimmer eine Temperatur von " 
          ] | random %}
        {{ '{} {:.1f} Grad.'.format( alexa_text, states('sensor.wohnzimmertemperatur') | float ) }}
      data:
        type: tts
        method: speak

Es funktioniert! Wunderbar, vielen Dank!

2 „Gefällt mir“