You are missing the multi line indicator and you no longer need to use “data_template” just “data” will do, and you have the wrong delimiters for your first line in the template
- service: tts.cloud_say
target:
entity_id: media_player.home
data: >
{% set cook_time = states('sensor.meater_cook_time_remaining') %}
{% if cook_time == 'unknown' %}
The Meater is unavailable.
{% else %}
The {{ states('sensor.meater_cook_name') }} will be ready in {{
relative_time(now() - timedelta(seconds=as_timestamp(cook_time) - as_timestamp(now())))
}}
{% endif %}
{% %} performs some function, {{ }} prints output.
You don’t actually have to cook anything, just tell the Meater you are cooking something. Hot water can mimic the internal temp and give you a time remaining once it sets that time.
You can lower the preferred internal temp and speed up your test samples.