Powiadomienie poranne z poziomu automatyzacji HA.Szablon

Panowie proszę o pomoc w stworzeniu powiadomienia porannego z poziomu automatyzacji HA. Dotychczas ukręciłem to co poniżej jednak nastała u mnie ciemność jeśli chodzi o część gdy np pogoda zmieni się z pochmurnie na deszczowo. Proszę o jakiś namiar szablonu lub przykład jeśli ktoś ma aby to pociągnąć dalej. A może w samej automatyzacji dałoby się porównać czy dwie encje mają taką samą wartość ?.

alias: Powiadomienie poranne
description: ""
trigger:
  - platform: time
    at: "11:00:00"
condition: []
action:
  - service: notify.mobile_app_lenovo_tb_j606f
    data:
      message: TTS
      data:
        tts_text: >-
          Dzień dobry . Dzisiaj jest
          {{['poniedziałek','wtorek','Środa','czwartek','piątek','sobota','niedziela'][now().weekday()]
          }} , {{
          ['pierwszy','drugi','trzeci','czwarty','piąty','szósty','siódmy','ósmy','dziewiąty','dziesiąty','jedenasty','dwunasty','trzynasty','czternasty'
          ,'piętnasty','szesnasty','siedemnasty','osiemnasty','dziewiętnasty','dwudziesty','dwudziestypierwszy','dwudziestydrugi','dwudziestytrzeci','dwudziestyczwarty'
          ,'dwudziestypiąty','dwudziestyszósty','dwudziestysiódmy','dwudziestyósmy','dwudziestydziewiąty','trzydziesty','trzydziestypierwszy'
          ][ now().day-1] }} dzień {{
          ['stycznia','lutego','marca','kwietnia','maja','czerwca','lipca','sierpnia','wrzesnia','października','listopada','grudnia'][now().month-1]
          }} . Godzina {{
          ['dwudziestaczwarta','pierwsza','druga','trzecia','czwarta','piąta','szósta','siódma','ósma','dziewiąta',
          'dziesiąta', 'jedenasta', 'dwunasta',
          'trzynasta','czternasta','piętnasta','szesnasta','siedemnasta','osiemnasta','dziewiętnasta','dwudziesta','dwudziestapierwsza','dwudziestadruga','dwudziestatrzecia'
          ][ now().hour]}} {{now().minute}} .  {% set weather = { 'clear-night':
          "pogodna noc",'cloudy': "pochmurno",'exceptional': "warunki
          nadzwyczajne",'fog': "mglisto",'hail': "grad",'lightning': "burzowo",
          'lightning-rainy': "wyładowania atmosferyczne",'partlycloudy':
          "częściowe zachmurzenie",'pouring': "ulewnie",'rainy':
          "deszczowo",'snowy': "śnieżnie", 'snowy-rainy': "śnieg z
          deszczem",'sunny': "bezchmurnie",'windy': "wietrznie"} %} Pogoda na
          ten moment to
          {{weather[state_attr('weather.dom','forecast')[1].condition] }} 
mode: single

Może zrób sobie sensor który będzie to porównywał i użyj go w automatyzacji.

Pomożesz w stworzeniu takiego ?. Potrzebuję porównać encje “sensor.openweathermap_forecast_condition” i “sensor.openweathermap_condition”.

Co chcesz porównywać?

Stany tych sensorów jak w powiadomieniu w node red. Przyjmują cloudy , partycloudy itp…

Zrób sobie binary_sensor dla stanow jakie potrzebujesz .
https://community.home-assistant.io/t/struggle-with-templating-a-sensor-based-on-anothers-output/362867/2

Przykład dla wysokiej temperatury, jeżeli wysoka stan ON inaczej OFF
Binary_sensor

---
platform: threshold
name: outdoor_high_temperature_alert
entity_id: sensor.pogoda_balkon_temperature
lower: 30

Automatyzacja:

- id: weather_outdoor_high_temperature_alert
  alias: '[Weather] Outdoor High Temperature Alert'
  description: 'Play announcement when alert is active.'
  trigger:
    - platform: state
      entity_id: alert.outdoor_high_temperature
      to: 'on'
      for:
        minutes: 5
  action:
    - service: script.tts_play
      data:
        message: >
          Yep, it's hot as balls out there today folks!
          The outdoor high temperature alert is now on.
          The current humidex is {{ '%0.1f'|format(states('sensor.outdoor_apparent_temperature')|float('unknown')) }} nut sack soakin degrees.

1 polubienie

:thinking:


          {% set jaka_jest = states('weather.pogoda') %}
          {% set jaka_bedzie = state_attr('weather.pogoda', 'forecast')[1].condition %}
          Pogoda na ten moment to {{ weather[jaka_jest] }}.
          {% if jaka_jest == 'rainy' and jaka_bedzie == 'cloudy' %}
            Ostrzeżenie: Zmiana pogody z pochmurnej na deszczową.
          {% endif %}

Wymaga dostosowania

1 polubienie

O właśnie, jutro to troszkę rozbuduje i będzie git :). Dziękuje

Edit:

Zostawiam tu gotowe powiadomienie poranne gdyby komuś się przydało a wiem że nie każdy używa node reda lub z niego rezygnuje jak ja. Trochę zagmatwane ale działa bez zarzutu.

alias: Powiadomienie poranne
description: ""
trigger:
  - platform: time
    at: "11:00:00"
condition: []
action:
  - service: notify.mobile_app_lenovo_tb_j606f
    data:
      message: TTS
      data:
        tts_text: >-
          Dzień dobry . Dzisiaj jest
          {{['poniedziałek','wtorek','Środa','czwartek','piątek','sobota','niedziela'][now().weekday()]
          }} , {{
          ['pierwszy','drugi','trzeci','czwarty','piąty','szósty','siódmy','ósmy','dziewiąty','dziesiąty','jedenasty','dwunasty','trzynasty','czternasty'
          ,'piętnasty','szesnasty','siedemnasty','osiemnasty','dziewiętnasty','dwudziesty','dwudziestypierwszy','dwudziestydrugi','dwudziestytrzeci','dwudziestyczwarty'
          ,'dwudziestypiąty','dwudziestyszósty','dwudziestysiódmy','dwudziestyósmy','dwudziestydziewiąty','trzydziesty','trzydziestypierwszy'
          ][ now().day-1] }} dzień {{
          ['stycznia','lutego','marca','kwietnia','maja','czerwca','lipca','sierpnia','września','października','listopada','grudnia'][now().month-1]
          }} . Godzina {{
          ['dwudziestaczwarta','pierwsza','druga','trzecia','czwarta','piąta','szósta','siódma','ósma','dziewiąta',
          'dziesiąta', 'jedenasta', 'dwunasta',
          'trzynasta','czternasta','piętnasta','szesnasta','siedemnasta','osiemnasta','dziewiętnasta','dwudziesta','dwudziestapierwsza','dwudziestadruga','dwudziestatrzecia'
          ][ now().hour]}} {{now().minute}} .   {% set weather = {
          'clear-night':
                  "pogodna noc",'cloudy': "pochmurno",'exceptional': "warunki
                  nadzwyczajne",'fog': "mglisto",'hail': "grad",'lightning': "burzowo",
                  'lightning-rainy': "burze z deszczem",'partlycloudy':
                  "częściowe zachmurzenie",'pouring': "ulewnie",'rainy':
                  "deszczowo",'snowy': "śnieżnie", 'snowy-rainy': "śnieg z
                  deszczem",'sunny': "słonecznie",'windy': "wietrznie"} %}
                  {% set jaka_jest = states('weather.dom') %}
                  {% set jaka_bedzie = state_attr('weather.dom', 'forecast')[1].condition %}
                  Pogoda na ten moment to {{ weather[jaka_jest] }}.   
                  {% if jaka_jest == 'cloudy' and jaka_bedzie == 'cloudy' %}I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'clear-night' and jaka_bedzie == 'clear-night' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}  
                  {% if jaka_jest == 'fog' and jaka_bedzie == 'fog' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'hail' and jaka_bedzie == 'hail' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}  
                  {% if jaka_jest == 'lightning' and jaka_bedzie == 'lightning' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'lightning-rainy' and jaka_bedzie == 'lightning-rainy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'partlycloudy' and jaka_bedzie == 'partlycloudy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'pouring' and jaka_bedzie == 'pouring' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'rainy' and jaka_bedzie == 'rainy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'snowy' and jaka_bedzie == 'snowy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'snowy-rainy' and jaka_bedzie == 'snowy-rainy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'sunny' and jaka_bedzie == 'sunny' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'windy' and jaka_bedzie == 'windy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'windy-variant' and jaka_bedzie == 'windy-variant' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'exceptional' and jaka_bedzie == 'exceptional' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  I w najbliższych godzinach zmieni się na {{weather[state_attr('weather.dom','forecast')[1].condition] }}. 
                  Temperatura na ten moment wynosi {{ state_attr('weather.dom', 'temperature') | round(0)}} stopni celcjusza.
                  Dzisiejsi solenizanci to {{ states('sensor.nameday_pl') }}. 
mode: single

2 polubienia

Chciałem skorzystać z Twojej integracji ale niestety powiadomienie nie dociera do telefonu i nie rozumiem dlaczego ponieważ nie wywala żadnego błędu a w śledzeniu automatyzacji mam że została wykonania.

description: ""
trigger:
  - platform: time
    at: "10:27:00"
condition: []
action:
  - service: notify.mobile_app_samsung_s23
    data:
      data:
        tts_text: >-
          Dzień dobry . Dzisiaj jest
          {{['poniedziałek','wtorek','Środa','czwartek','piątek','sobota','niedziela'][now().weekday()]}},{{['pierwszy','drugi','trzeci','czwarty','piąty','szósty','siódmy','ósmy','dziewiąty','dziesiąty','jedenasty','dwunasty','trzynasty','czternasty','piętnasty','szesnasty','siedemnasty','osiemnasty','dziewiętnasty','dwudziesty','dwudziestypierwszy','dwudziestydrugi','dwudziestytrzeci','dwudziestyczwarty','dwudziestypiąty','dwudziestyszósty','dwudziestysiódmy','dwudziestyósmy','dwudziestydziewiąty','trzydziesty','trzydziestypierwszy'][
          now().day-1] }} dzień
          {{['stycznia','lutego','marca','kwietnia','maja','czerwca','lipca','sierpnia','września','października','listopada','grudnia'][now().month-1]}}
          . Godzina
          {{['dwudziestaczwarta','pierwsza','druga','trzecia','czwarta','piąta','szósta','siódma','ósma','dziewiąta','dziesiąta',
          'jedenasta','dwunasta','trzynasta','czternasta','piętnasta','szesnasta','siedemnasta','osiemnasta','dziewiętnasta','dwudziesta','dwudziestapierwsza','dwudziestadruga','dwudziestatrzecia'][
          now().hour]}} {{now().minute}} .   {% set weather = { 'clear-night':
                  "pogodna noc",'cloudy': "pochmurno",'exceptional': "warunki
                  nadzwyczajne",'fog': "mglisto",'hail': "grad",'lightning': "burzowo",
                  'lightning-rainy': "burze z deszczem",'partlycloudy':
                  "częściowe zachmurzenie",'pouring': "ulewnie",'rainy':
                  "deszczowo",'snowy': "śnieżnie", 'snowy-rainy': "śnieg z
                  deszczem",'sunny': "słonecznie",'windy': "wietrznie"} %}
                  {% set jaka_jest = states('weather.home') %}
                  {% set jaka_bedzie = state_attr('weather.home', 'forecast')[1].condition %}
                  Pogoda na ten moment to {{ weather[jaka_jest] }}.   
                  {% if jaka_jest == 'cloudy' and jaka_bedzie == 'cloudy' %}I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'clear-night' and jaka_bedzie == 'clear-night' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}  
                  {% if jaka_jest == 'fog' and jaka_bedzie == 'fog' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'hail' and jaka_bedzie == 'hail' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}  
                  {% if jaka_jest == 'lightning' and jaka_bedzie == 'lightning' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'lightning-rainy' and jaka_bedzie == 'lightning-rainy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'partlycloudy' and jaka_bedzie == 'partlycloudy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'pouring' and jaka_bedzie == 'pouring' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'rainy' and jaka_bedzie == 'rainy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'snowy' and jaka_bedzie == 'snowy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'snowy-rainy' and jaka_bedzie == 'snowy-rainy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'sunny' and jaka_bedzie == 'sunny' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'windy' and jaka_bedzie == 'windy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'windy-variant' and jaka_bedzie == 'windy-variant' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'exceptional' and jaka_bedzie == 'exceptional' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  I w najbliższych godzinach zmieni się na {{weather[state_attr('weather.home','forecast')[1].condition] }}. 
                  Temperatura na ten moment wynosi {{ state_attr('weather.home', 'temperature') | round(0)}} stopni celcjusza.
                  Dzisiejsi solenizanci to {{ states('sensor.nameday_pl') }}. 
      message: tts
mode: single 

Edit.

Niestety to nie pomaga

Podejrzewam że problemem może być za długa wiadomość przez duże odstępy między słowami które widać w szablonie:

Edit.

@krskrab z powiadomień już korzystam od bardzo dawna i działają bez problemu. Limit na dziś mi się już wykończył ponieważ w narzędziach deweloperskich przez usługi sprawdzałem czy tak długie powiadomienie dojdzie na mój telefon i dochodzi ale nie z tej automatyzacji.

Edit.

@krskrab też nie działa ponieważ mam teraz automatyzację którą udostępnił @Rafał_Kasperski i tam jest tak jak mówisz.

Poniżej na jakiej teraz automatyzacji pracuje:

alias: Powiadomienie poranne
description: ''
trigger:
  - platform: time
    at: '18:40:00'
condition: []
action:
  - service: notify.mobile_app_samsung_s23
    data:
      message: TTS
      data:
        priority: high
        ttl: 0
        tts_text: >-
          Dzień dobry . Dzisiaj jest
          {{['poniedziałek','wtorek','Środa','czwartek','piątek','sobota','niedziela'][now().weekday()]}},{{['pierwszy','drugi','trzeci','czwarty','piąty','szósty','siódmy','ósmy','dziewiąty','dziesiąty','jedenasty','dwunasty','trzynasty','czternasty','piętnasty','szesnasty','siedemnasty','osiemnasty','dziewiętnasty','dwudziesty','dwudziestypierwszy','dwudziestydrugi','dwudziestytrzeci','dwudziestyczwarty','dwudziestypiąty','dwudziestyszósty','dwudziestysiódmy','dwudziestyósmy','dwudziestydziewiąty','trzydziesty','trzydziestypierwszy'][
          now().day-1] }} dzień
          {{['stycznia','lutego','marca','kwietnia','maja','czerwca','lipca','sierpnia','września','października','listopada','grudnia'][now().month-1]}}
          . Godzina
          {{['dwudziestaczwarta','pierwsza','druga','trzecia','czwarta','piąta','szósta','siódma','ósma','dziewiąta','dziesiąta',
          'jedenasta','dwunasta','trzynasta','czternasta','piętnasta','szesnasta','siedemnasta','osiemnasta','dziewiętnasta','dwudziesta','dwudziestapierwsza','dwudziestadruga','dwudziestatrzecia'][
          now().hour]}} {{now().minute}} .   {% set weather = { 'clear-night':
                  "pogodna noc",'cloudy': "pochmurno",'exceptional': "warunki
                  nadzwyczajne",'fog': "mglisto",'hail': "grad",'lightning': "burzowo",
                  'lightning-rainy': "burze z deszczem",'partlycloudy':
                  "częściowe zachmurzenie",'pouring': "ulewnie",'rainy':
                  "deszczowo",'snowy': "śnieżnie", 'snowy-rainy': "śnieg z
                  deszczem",'sunny': "słonecznie",'windy': "wietrznie"} %}
                  {% set jaka_jest = states('weather.home') %}
                  {% set jaka_bedzie = state_attr('weather.home', 'forecast')[1].condition %}
                  Pogoda na ten moment to {{ weather[jaka_jest] }}.   
                  {% if jaka_jest == 'cloudy' and jaka_bedzie == 'cloudy' %}I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'clear-night' and jaka_bedzie == 'clear-night' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}  
                  {% if jaka_jest == 'fog' and jaka_bedzie == 'fog' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'hail' and jaka_bedzie == 'hail' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}  
                  {% if jaka_jest == 'lightning' and jaka_bedzie == 'lightning' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'lightning-rainy' and jaka_bedzie == 'lightning-rainy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'partlycloudy' and jaka_bedzie == 'partlycloudy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'pouring' and jaka_bedzie == 'pouring' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'rainy' and jaka_bedzie == 'rainy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'snowy' and jaka_bedzie == 'snowy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'snowy-rainy' and jaka_bedzie == 'snowy-rainy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'sunny' and jaka_bedzie == 'sunny' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'windy' and jaka_bedzie == 'windy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'windy-variant' and jaka_bedzie == 'windy-variant' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'exceptional' and jaka_bedzie == 'exceptional' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  I w najbliższych godzinach zmieni się na {{weather[state_attr('weather.home','forecast')[1].condition] }}. 
                  Temperatura na ten moment wynosi {{ state_attr('weather.home', 'temperature') | round(0)}} stopni celcjusza.
                  Dzisiejsi solenizanci to {{ states('sensor.nameday_pl') }}. 
mode: single

Takie coś dostałem w historii powiadomień w aplikacji HA w telefonie ale powiadomienia pushover nie dostałem.

Edit.

Pracuje teraz na tej wersji i już próbowałem wszystkiego i nie mam pojęcia dlaczego nie chce dojść.

Zobaczycie u siebie czy wywala jakieś błędy bo u mnie nie pokazuje błędów?

service: notify.mobile_app_samsung_s23
data:
  message: TTS
  data:
    priority: high
    ttl: 0
    tts_text: >-
      Dzień dobry . Dzisiaj jest
      {{['poniedziałek','wtorek','Środa','czwartek','piątek','sobota','niedziela']
      [now().weekday()]}},
      {{['pierwszy','drugi','trzeci','czwarty','piąty','szósty','siódmy','ósmy','dziewiąty','dziesiąty','jedenasty','dwunasty','trzynasty','czternasty','piętnasty','szesnasty','siedemnasty','osiemnasty','dziewiętnasty','dwudziesty','dwudziestypierwszy','dwudziestydrugi','dwudziestytrzeci','dwudziestyczwarty','dwudziestypiąty','dwudziestyszósty','dwudziestysiódmy','dwudziestyósmy','dwudziestydziewiąty','trzydziesty','trzydziestypierwszy'][
      now().day-1] }} dzień
      {{['stycznia','lutego','marca','kwietnia','maja','czerwca','lipca','sierpnia','września','października','listopada','grudnia'][now().month-1]}}.
      Godzina
      {{['dwudziestaczwarta','pierwsza','druga','trzecia','czwarta','piąta','szósta','siódma','ósma','dziewiąta','dziesiąta',
      'jedenasta','dwunasta','trzynasta','czternasta','piętnasta','szesnasta','siedemnasta','osiemnasta','dziewiętnasta','dwudziesta','dwudziestapierwsza','dwudziestadruga','dwudziestatrzecia'][
      now().hour]}} {{now().minute}} .{% set weather = { 'clear-night': "pogodna
      noc",'cloudy': "pochmurno",'exceptional': "warunki nadzwyczajne",'fog':
      "mglisto",'hail': "grad",'lightning': "burzowo",'lightning-rainy': "burze
      z deszczem",'partlycloudy': "częściowe zachmurzenie",'pouring':
      "ulewnie",'rainy': "deszczowo",'snowy': "śnieżnie", 'snowy-rainy': "śnieg
      z deszczem",'sunny': "słonecznie",'windy': "wietrznie"} %}
              {% set jaka_jest = states('weather.home') %}
              {% set jaka_bedzie = state_attr('weather.home', 'forecast')[1].condition %}
              Pogoda na ten moment to {{ weather[jaka_jest] }}.   
              {% if jaka_jest == 'cloudy' and jaka_bedzie == 'cloudy' %}I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
              {% if jaka_jest == 'clear-night' and jaka_bedzie == 'clear-night' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}  
              {% if jaka_jest == 'fog' and jaka_bedzie == 'fog' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
              {% if jaka_jest == 'hail' and jaka_bedzie == 'hail' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}  
              {% if jaka_jest == 'lightning' and jaka_bedzie == 'lightning' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
              {% if jaka_jest == 'lightning-rainy' and jaka_bedzie == 'lightning-rainy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
              {% if jaka_jest == 'partlycloudy' and jaka_bedzie == 'partlycloudy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
              {% if jaka_jest == 'pouring' and jaka_bedzie == 'pouring' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
              {% if jaka_jest == 'rainy' and jaka_bedzie == 'rainy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
              {% if jaka_jest == 'snowy' and jaka_bedzie == 'snowy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
              {% if jaka_jest == 'snowy-rainy' and jaka_bedzie == 'snowy-rainy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
              {% if jaka_jest == 'sunny' and jaka_bedzie == 'sunny' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
              {% if jaka_jest == 'windy' and jaka_bedzie == 'windy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
              {% if jaka_jest == 'windy-variant' and jaka_bedzie == 'windy-variant' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
              {% if jaka_jest == 'exceptional' and jaka_bedzie == 'exceptional' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
              I w najbliższych godzinach zmieni się na {{weather[state_attr('weather.home','forecast')[1].condition] }}. 
              Temperatura na ten moment wynosi {{ state_attr('weather.home', 'temperature') | round(0)}} stopni celcjusza.
              Dzisiejsi solenizanci to {{ states('sensor.nameday_pl') }}. 

Może tak pójdzie:

description: ""
trigger:
  - platform: time
    at: "10:27:00"
condition: []
action:
  - service: notify.mobile_app_samsung_s23
    data:
      message: TTS
      data:
        priority: high
        ttl: 0
        tts_text: >-
          Dzień dobry . Dzisiaj jest
          {{['poniedziałek','wtorek','Środa','czwartek','piątek','sobota','niedziela'][now().weekday()]}},{{['pierwszy','drugi','trzeci','czwarty','piąty','szósty','siódmy','ósmy','dziewiąty','dziesiąty','jedenasty','dwunasty','trzynasty','czternasty','piętnasty','szesnasty','siedemnasty','osiemnasty','dziewiętnasty','dwudziesty','dwudziestypierwszy','dwudziestydrugi','dwudziestytrzeci','dwudziestyczwarty','dwudziestypiąty','dwudziestyszósty','dwudziestysiódmy','dwudziestyósmy','dwudziestydziewiąty','trzydziesty','trzydziestypierwszy'][
          now().day-1] }} dzień
          {{['stycznia','lutego','marca','kwietnia','maja','czerwca','lipca','sierpnia','września','października','listopada','grudnia'][now().month-1]}}
          . Godzina
          {{['dwudziestaczwarta','pierwsza','druga','trzecia','czwarta','piąta','szósta','siódma','ósma','dziewiąta','dziesiąta',
          'jedenasta','dwunasta','trzynasta','czternasta','piętnasta','szesnasta','siedemnasta','osiemnasta','dziewiętnasta','dwudziesta','dwudziestapierwsza','dwudziestadruga','dwudziestatrzecia'][
          now().hour]}} {{now().minute}} .   {% set weather = { 'clear-night':
                  "pogodna noc",'cloudy': "pochmurno",'exceptional': "warunki
                  nadzwyczajne",'fog': "mglisto",'hail': "grad",'lightning': "burzowo",
                  'lightning-rainy': "burze z deszczem",'partlycloudy':
                  "częściowe zachmurzenie",'pouring': "ulewnie",'rainy':
                  "deszczowo",'snowy': "śnieżnie", 'snowy-rainy': "śnieg z
                  deszczem",'sunny': "słonecznie",'windy': "wietrznie"} %}
                  {% set jaka_jest = states('weather.home') %}
                  {% set jaka_bedzie = state_attr('weather.home', 'forecast')[1].condition %}
                  Pogoda na ten moment to {{ weather[jaka_jest] }}.   
                  {% if jaka_jest == 'cloudy' and jaka_bedzie == 'cloudy' %}I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'clear-night' and jaka_bedzie == 'clear-night' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}  
                  {% if jaka_jest == 'fog' and jaka_bedzie == 'fog' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'hail' and jaka_bedzie == 'hail' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}  
                  {% if jaka_jest == 'lightning' and jaka_bedzie == 'lightning' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'lightning-rainy' and jaka_bedzie == 'lightning-rainy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'partlycloudy' and jaka_bedzie == 'partlycloudy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'pouring' and jaka_bedzie == 'pouring' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'rainy' and jaka_bedzie == 'rainy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'snowy' and jaka_bedzie == 'snowy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'snowy-rainy' and jaka_bedzie == 'snowy-rainy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'sunny' and jaka_bedzie == 'sunny' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'windy' and jaka_bedzie == 'windy' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'windy-variant' and jaka_bedzie == 'windy-variant' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  {% if jaka_jest == 'exceptional' and jaka_bedzie == 'exceptional' %} I w najbliższych godzinach nie ulegnie zmianie. {% endif %}
                  I w najbliższych godzinach zmieni się na {{weather[state_attr('weather.home','forecast')[1].condition] }}. 
                  Temperatura na ten moment wynosi {{ state_attr('weather.home', 'temperature') | round(0)}} stopni celcjusza.
                  Dzisiejsi solenizanci to {{ states('sensor.nameday_pl') }}. 
mode: single

Zacznij od podstaw:
“Narzędzia deweloperskie” - “Usługi” - Znajdź swój telefon, wklej kod
ScreenShot_20231127164344

data:
  message: TTS
  data:
    media_stream: alarm_stream_max
    tts_text: No Powiedz coś

Wywołaj usługę

Jeśli nie działa, to:
Telefon > HA > Ustawienia > Aplikacje towarzyszące > Historia powiadomień
Zobacz czy / kiedy otrzymałeś powiadomienie od HA .
Troszkę niżej “Powiadomienia” (“licznik powiadomień”) - Pomyślnych , błędnych i pozostało z limitu dziennego

Jeśli utrzymałeś powiadomienia (historia) a telefon tego nie oznajmił ( TTS lub tekst) to sprawdź czy HA na telefonie ma uprawnienia do powiadomień.
Źródło - Powiadomienia: Introduction | Home Assistant Companion Docs
/
Ogólny limit TTS ( nie znalazłem dokładnie do HA i Google)

TTS ma akceptowalne limity, które zazwyczaj obejmują przekształcanie krótkich do średnich fragmentów tekstu na mowę. Na przykład, niektóre usługi mogą obsługiwać do kilku minut dźwięku w jednym żądaniu.

/
Kod twojej automatyzacji różni się końcówką od mojej automatyzacji

      message: tts

W moim kodzie jest pomiędzy data - data

action:
  - service: notify.mobile_app_sm_g975f
    data:
      message: TTS
      data:
        media_stream: alarm_stream_max
        tts_text: >-xxxxxxxxxxxxxxxxxxxx 

I wydaje mi się, że to jest przyczyną

Osobiście raczej na szczęście nie spotkałem się jeszcze z jakimkolwiek limitem tts ale pewnie mam szczęście bo automatyzacje mogę wywoływać co chwilę i jakiekolwiek długie by nie były. Podaje niżej wersje ostateczną jaką posiadam jednak wytnij sobie końcówkę to co nie jest Ci potrzebne i sprawdz. Na Twoje potrzeby zmniejszona liczba odstępów :stuck_out_tongue:

          - service: notify.mobile_app_lenovo_tb_j606f
            data:
              message: TTS
              data:
                priority: high
                ttl: 0
                tts_text: >-

                  Dzień dobry . Dzisiaj jest
                  {{['poniedziałek','wtorek','Środa','czwartek','piątek','sobota','niedziela'][now().weekday()]
                  }} , {{
                  ['pierwszy','drugi','trzeci','czwarty','piąty','szósty','siódmy','ósmy','dziewiąty','dziesiąty','jedenasty','dwunasty','trzynasty','czternasty'
                  ,'piętnasty','szesnasty','siedemnasty','osiemnasty','dziewiętnasty','dwudziesty','dwudziestypierwszy','dwudziestydrugi','dwudziestytrzeci','dwudziestyczwarty'
                  ,'dwudziestypiąty','dwudziestyszósty','dwudziestysiódmy','dwudziestyósmy','dwudziestydziewiąty','trzydziesty','trzydziestypierwszy'
                  ][ now().day-1] }} dzień
                  {{['stycznia','lutego','marca','kwietnia','maja','czerwca','lipca','sierpnia','września','października','listopada','grudnia'][now().month-1]
                  }} . Godzina
                  {{['dwudziestaczwarta','pierwsza','druga','trzecia','czwarta','piąta','szósta','siódma','ósma','dziewiąta',
                  'dziesiąta', 'jedenasta', 'dwunasta',
                  'trzynasta','czternasta','piętnasta','szesnasta','siedemnasta','osiemnasta','dziewiętnasta','dwudziesta','dwudziestapierwsza','dwudziestadruga','dwudziestatrzecia'
                  ][ now().hour]}} {{now().minute}} . {% set weather = {
                  'clear-night': "pogodna noc",'cloudy': "pochmurno",
                  'exceptional': "warunki nadzwyczajne",'fog': "mglisto",'hail':
                  "grad",'lightning': "burzowo",'lightning-rainy': "burze z
                  deszczem", 'partlycloudy': "częściowe zachmurzenie",'pouring':
                  "ulewnie",'rainy':"deszczowo",'snowy': "śnieżnie",
                  'snowy-rainy': "śnieg z deszczem", 'sunny':
                  "słonecznie",'windy': "wietrznie"} %}{% set jaka_jest =
                  states('weather.dom') %}{% set jaka_bedzie =
                  state_attr('weather.dom', 'forecast')[1].condition %}Pogoda na
                  ten moment to {{ weather[jaka_jest] }}{% if jaka_jest ==
                  'cloudy' and jaka_bedzie == 'cloudy' %} i w najbliższych
                  godzinach nie ulegnie zmianie.{% elif jaka_jest ==
                  'clear-night' and jaka_bedzie == 'clear-night' %} i w
                  najbliższych godzinach nie ulegnie zmianie.{% elif jaka_jest
                  == 'fog' and jaka_bedzie == 'fog' %} i w najbliższych
                  godzinach nie ulegnie zmianie.{% elif jaka_jest == 'hail' and
                  jaka_bedzie == 'hail' %} i w najbliższych godzinach nie
                  ulegnie zmianie.{% elif jaka_jest == 'lightning' and
                  jaka_bedzie == 'lightning' %} i w najbliższych godzinach nie
                  ulegnie zmianie.{% elif jaka_jest == 'lightning-rainy' and
                  jaka_bedzie == 'lightning-rainy' %} i w najbliższych godzinach
                  nie ulegnie zmianie.{% elif jaka_jest == 'partlycloudy' and
                  jaka_bedzie == 'partlycloudy' %} i w najbliższych godzinach
                  nie ulegnie zmianie.{% elif jaka_jest == 'pouring' and
                  jaka_bedzie == 'pouring' %} i w najbliższych godzinach nie
                  ulegnie zmianie.{% elif jaka_jest == 'rainy' and jaka_bedzie
                  == 'rainy' %} i w najbliższych godzinach nie ulegnie
                  zmianie.{% elif jaka_jest == 'snowy' and jaka_bedzie ==
                  'snowy' %} i w najbliższych godzinach nie ulegnie zmianie.{%
                  elif jaka_jest == 'snowy-rainy' and jaka_bedzie ==
                  'snowy-rainy' %} i w najbliższych godzinach nie ulegnie
                  zmianie.{% elif jaka_jest == 'sunny' and jaka_bedzie ==
                  'sunny' %} i w najbliższych godzinach nie ulegnie zmianie.{%
                  elif jaka_jest == 'windy' and jaka_bedzie == 'windy' %} i w
                  najbliższych godzinach nie ulegnie zmianie.{% elif jaka_jest
                  == 'windy-variant' and jaka_bedzie == 'windy-variant' %} i w
                  najbliższych godzinach nie ulegnie zmianie.{% elif jaka_jest
                  == 'exceptional' and jaka_bedzie == 'exceptional' %} i w
                  najbliższych godzinach nie ulegnie zmianie.{% else %} i w
                  najbliższych godzinach zmieni się na
                  {{weather[state_attr('weather.dom','forecast')[1].condition]
                  }} .{% endif %} Temperatura na ten moment wynosi {{
                  state_attr('weather.dom', 'temperature') | round(0)}}  stopni
                  celcjusza. Dziś imieniny świętują  {{
                  states('sensor.nameday_pl') }}.   {% set czy_smieci =
                  states('sensor.ile_dni_do_odbioru_smieci') %}  {% set
                  czy_zmieszane = states('sensor.jakie_smieci') %} {% if
                  czy_smieci == '1 dni' and czy_zmieszane == 'ODPADY
                  NIESEGREGOWANE, METALE I TWORZYWA SZTUCZNE, PAPIER, SZKŁO' 
                  %}Jutro jest wywóz następujących śmieci ODPADY NIE
                  SEGREGOWANE, METALE I TWORZYWA SZTUCZNE, PAPIER, SZKŁO . {%
                  elif czy_smieci == '1 dni' and czy_zmieszane == 'ODPADY
                  NIESEGREGOWANE'  %} Jutro jest wywóz następujących śmieci
                  ODPADY NIE SEGREGOWANE .  {% elif czy_smieci == '1 dni'
                  %}Jutro jest wywóz następujących śmieci {{
                  states('sensor.jakie_smieci') }}.{% endif %} Informuję że
                  automatyka {% set powiadomienia =
                  states('input_boolean.automatyka_powiadomien') %}{% set
                  swiatla = states('input_boolean.automatyka_swiatel') %}{% set
                  ogrzewanie = states('input_boolean.automatyka_ogrzewania')
                  %}{% set rolety = states('input_boolean.automatyka_rolet')
                  %}{% set wentylacja =
                  states('input_boolean.automatyka_wentylacji') %}{% set
                  ladowania = states('input_boolean.automatyka_ladowan') %}{%
                  set sprzatania = states('input_boolean.automatyka_sprzatan')
                  %}{% set budzika = states('input_boolean.automatyka_budzika')
                  %}{% set skazenia = states('input_boolean.automatyka_skazen')
                  %}{% set wifi = states('input_boolean.automatyka_wifi') %}{%
                  if powiadomienia == 'on' and swiatla == 'on' and rolety ==
                  'on'and wentylacja == 'on'and ladowania == 'on'and sprzatania
                  == 'on'and budzika == 'on' and skazenia == 'on'and wifi ==
                  'on'and ogrzewanie == 'on'%}jest w pełni uruchomiona . {% else
                  %}nie jest w pełni uruchomiona .{% endif %} 
mode: single


Edit:
Zwróć uwagę jak kolega wyżej dobrze Ci doradził aby message: TTS było tam gdzie powinno. Bo ze screna którego podałeś wynika że powiadomienie idzie tylko nie jest wypowiadane no i na końcu masz ten nieszczęsny TTS choć to powinno działać…:smiley: Swoją drogą gdy wrzucę ten wycinek w szablony nad "którym teraz pracujesz " to mam błędy …

1 polubienie

Hej,

wszystko ładnie śmigało ale niestety po ostatniej aktualizacji w której encja weather nie ma już atrybutów automatyzacja przestała śmigać. Udało się komuś to już naprawić?

Fajny zrzut ale kompletnie nieużyteczny dla nikogo na forum. A wracając do tematu, może chodzić o tę wrześniową zmianę:

Stara usługa wygasła wraz z marcowym wydaniem.

1 polubienie

Nadal oczywiście działa tylko poprostu zrezygnowano z atrybutów i prognoza jest wywoływana na “zawołanie”.
W tym celu tworzymy czujnik szablonu który wywoła przy starcie i co godzinę potrzebne dane w tym przypadku przewidywaną pogode.

template:
  - trigger:
      - platform: time_pattern
        hours: "/1"
      - platform: state
        entity_id: weather.dom
      - platform: homeassistant
        event: start
    action:
      - service: weather.get_forecasts
        data:
          type: daily
        target:
          entity_id: weather.dom
        response_variable: daily
    sensor:
      - name: "Przewidywana prognoza"
        state: "{{ daily['weather.dom'].forecast[0].condition }}"  

I później odwołujemy się do niego w automatyzacji

ttl: 0
tts_text: >-

  Dzień dobry . Dzisiaj jest
  {{['poniedziałek','wtorek','Środa','czwartek','piątek','sobota','niedziela'][now().weekday()]
  }} , {{
  ['pierwszy','drugi','trzeci','czwarty','piąty','szósty','siódmy','ósmy','dziewiąty','dziesiąty','jedenasty','dwunasty','trzynasty','czternasty'
  ,'piętnasty','szesnasty','siedemnasty','osiemnasty','dziewiętnasty','dwudziesty','dwudziestypierwszy','dwudziestydrugi','dwudziestytrzeci','dwudziestyczwarty'
  ,'dwudziestypiąty','dwudziestyszósty','dwudziestysiódmy','dwudziestyósmy','dwudziestydziewiąty','trzydziesty','trzydziestypierwszy'
  ][ now().day-1] }} dzień
  {{['stycznia','lutego','marca','kwietnia','maja','czerwca','lipca','sierpnia','września','października','listopada','grudnia'][now().month-1]
  }} .Godzina {{states('sensor.time') }}. {% set weather = { 'clear-night':
  "pogodna noc",'cloudy': "pochmurno", 'exceptional': "warunki
  nadzwyczajne",'fog': "mglisto",'hail': "grad",'lightning':
  "burzowo",'lightning-rainy': "burze z deszczem", 'partlycloudy': "częściowe
  zachmurzenie",'pouring': "ulewnie",'rainy':"deszczowo",'snowy': "śnieżnie",
  'snowy-rainy': "śnieg z deszczem", 'sunny': "słonecznie",'windy': "wietrznie"}
  %}{% set jaka_jest = states('weather.dom') %}{% set jaka_bedzie =
  states('sensor.przewidywana_prognoza') %}Pogoda na ten moment to {{
  weather[jaka_jest] }}{% if jaka_jest == 'cloudy' and jaka_bedzie == 'cloudy'
  %} i w najbliższych godzinach nie ulegnie zmianie.{% elif jaka_jest ==
  'clear-night' and jaka_bedzie == 'clear-night' %} i w najbliższych godzinach
  nie ulegnie zmianie.{% elif jaka_jest == 'fog' and jaka_bedzie == 'fog' %} i w
  najbliższych godzinach nie ulegnie zmianie.{% elif jaka_jest == 'hail' and
  jaka_bedzie == 'hail' %} i w najbliższych godzinach nie ulegnie zmianie.{%
  elif jaka_jest == 'lightning' and jaka_bedzie == 'lightning' %} i w
  najbliższych godzinach nie ulegnie zmianie.{% elif jaka_jest ==
  'lightning-rainy' and jaka_bedzie == 'lightning-rainy' %} i w najbliższych
  godzinach nie ulegnie zmianie.{% elif jaka_jest == 'partlycloudy' and
  jaka_bedzie == 'partlycloudy' %} i w najbliższych godzinach nie ulegnie
  zmianie.{% elif jaka_jest == 'pouring' and jaka_bedzie == 'pouring' %} i w
  najbliższych godzinach nie ulegnie zmianie.{% elif jaka_jest == 'rainy' and
  jaka_bedzie == 'rainy' %} i w najbliższych godzinach nie ulegnie zmianie.{%
  elif jaka_jest == 'snowy' and jaka_bedzie == 'snowy' %} i w najbliższych
  godzinach nie ulegnie zmianie.{% elif jaka_jest == 'snowy-rainy' and
  jaka_bedzie == 'snowy-rainy' %} i w najbliższych godzinach nie ulegnie
  zmianie.{% elif jaka_jest == 'sunny' and jaka_bedzie == 'sunny' %} i w
  najbliższych godzinach nie ulegnie zmianie.{% elif jaka_jest == 'windy' and
  jaka_bedzie == 'windy' %} i w najbliższych godzinach nie ulegnie zmianie.{%
  elif jaka_jest == 'windy-variant' and jaka_bedzie == 'windy-variant' %} i w
  najbliższych godzinach nie ulegnie zmianie.{% elif jaka_jest == 'exceptional'
  and jaka_bedzie == 'exceptional' %} i w najbliższych godzinach nie ulegnie
  zmianie.{% else %} i w najbliższych godzinach zmieni się na {{
  weather[jaka_bedzie] }}.{% endif %} Temperatura na ten moment wynosi {{
  states('sensor.esphome_web_1020cc_temperatura_na_zewn_trz') | round(0)}}
  stopni celcjusza. Dziś imieniny świętują {{ states('sensor.nameday_pl') }}.
1 polubienie

Spodobało mi się Wasze powiadomienie ale mam problem.
Skrócona wersja działa, ale jak dodaję pogodę to się czepia:

bad indentation of a mapping entry (25:91)

22 | … dziestysiódmy’,‘dwudziestyósmy’,‘dwudziestydziewiąty’,‘trzydz …
23 | …
24 | … ‘maja’,‘czerwca’,‘lipca’,‘sierpnia’,‘września’,‘października’ …
25 | … set weather = { ‘clear-night’:
-----------------------------------------^
26 | … ptional’: “warunki
27 | … ad”,‘lightning’:
Zawsze o to samo, kopiowałem ze wszystkich odpowiedzi powyższych.

Piter z Twojego postu to nikt Ci nie pomoże nawet jeśli bardzo będzie chciał jak nie będziesz się stosował do zasad wklejania na forum bo to co wkleiłeś to jakiś bełkot i nie wiadomo o co biega… Kod jest gotowy i działa ,można jedynie domniemać że nie zgadzają Ci się nazwy encji bo te trzeba zastąpić swoimi ale to tylko domniemanie bo nie podałeś żadnych innych danych i nikt tak naprawdę nie wie co tam masz no bo skąd.

Dzięki @Rafał_Kasperski. Wystarczyła mała reprymenda i udało się znaleźć błąd.
Miałem " tts_text: " i czepiało się tylko sekcji"

{% set weather = { 'clear-night':
  "pogodna noc",'cloudy': "pochmurno", 'exceptional': "warunki
  nadzwyczajne",'fog': "mglisto",'hail': "grad",'lightning':
  "burzowo",'lightning-rainy': "burze z deszczem", 'partlycloudy': "częściowe
  zachmurzenie",'pouring': "ulewnie",'rainy':"deszczowo",'snowy': "śnieżnie",
  'snowy-rainy': "śnieg z deszczem", 'sunny': "słonecznie",'windy': "wietrznie"}
  %}{% set jaka_jest = states('weather.dom') %}

Jak zmieniłem na " tts_text: >-" działa dobrze.
Dziękuję również za udostępnienie automatyzacji.