Hallo zusammen,
ich lasse mir vom DWD die aktuellen Nachrichten/Warnungen anzeigen, es wäre cool wenn man es noch weitergepusht bekommt. Also sobald die Karte bzw. die Entität "sensor.dwd_warnungen_****" ihren Status ändert und mit Inhalt gefühlt, diesen Inhalt weiterzupushen.
Gibt es für sowas einen BP oder könnte mir vll jemand seinen Code geben, habe es jetzt über das Wochenende probiert, komme aber auf keinen grünen Zweig.
Danke und Gruß
DWD Push-Benachrichtigung Thema ist als GELÖST markiert
- Osorkon
- Administrator
- Beiträge: 1962
- Registriert: Sa 17. Jul 2021, 16:53
- 2
- Wohnort: Langenargen
- Has thanked: 61 times
- Been thanked: 534 times
- Kontaktdaten:
Re: DWD Push-Benachrichtigung
Tag @wuschel
Ich habe hier eine Script, welches den aktuellen Status der Wetterwarnungen per Telegram ausgibt.
Im Prinzip das gleiche wie Du vielleicht bereits als Markdown Karte verwenden tust. Zu Beachten ist, dass Du die Sensoren:
und
ggf. durch Deine Entitäten ersetzen musst, falls sie anders benannt sind.
Jetzt kannst Du Dir eine Automationen erstellen, mit dem trigger warning_level und der Bedingung warning_level != 0
Änderst sich jetzt die Warnstufe und ist ungleich 0, wird das Script ausgeführt und eine Nachricht per Telegramm verschickt.
Lässt Du die Bedingung weg, wirst Du auch per Nachricht informiert, wenn die Warnstufe aufgehoben (also = 0) wird.
Auch das kannst Du wiederum alles in eine Automation packen, wenn es Dir lieber ist.
Gruß
Osorkon
Ich habe hier eine Script, welches den aktuellen Status der Wetterwarnungen per Telegram ausgibt.
Im Prinzip das gleiche wie Du vielleicht bereits als Markdown Karte verwenden tust. Zu Beachten ist, dass Du die Sensoren:
Code: Alles auswählen
sensor.wetter_warnung_current_warning_level
Code: Alles auswählen
sensor.wetter_warnung_advance_warning_level
Code: Alles auswählen
alias: DWD Wetterwarnung status
sequence:
- service: notify.telegram
data:
title: DWD Wetterwarnung
message: >-
{% set current_count =
state_attr("sensor.wetter_warnung_current_warning_level",
"warning_count") %} {% set advance_count =
state_attr("sensor.wetter_warnung_advance_warning_level",
"warning_count") %} {% if ((current_count == 0) and (advance_count ==
0)) %} Keine Warnungen {% else %}
{% for i in range(current_count) %}
{% set headline = state_attr("sensor.wetter_warnung_current_warning_level", "warning_" ~ loop.index ~ "_headline") %}
{% set description = state_attr("sensor.wetter_warnung_current_warning_level", "warning_" ~ loop.index ~ "_description") %}
{% set level = state_attr("sensor.wetter_warnung_current_warning_level", "warning_" ~ loop.index ~ "_level") %}
{% set time_start = state_attr("sensor.wetter_warnung_current_warning_level", "warning_" ~ loop.index ~ "_start") %}
{% set time_end = state_attr("sensor.wetter_warnung_current_warning_level", "warning_" ~ loop.index ~ "_end") %}
{{ headline }}
{{ time_start.strftime("%a %H:%M") ~ " - " ~ time_end.strftime("%a %H:%M") }}
*{{ description }}*
{% if not loop.last %}***{% endif %}
{% endfor %}
{% if ((current_count != 0) and (advance_count != 0)) %}***{% endif %}
{% for i in range(advance_count) %}
{% set headline = state_attr("sensor.wetter_warnung_advance_warning_level", "warning_" ~ loop.index ~ "_headline") %}
{% set description = state_attr("sensor.wetter_warnung_advance_warning_level", "warning_" ~ loop.index ~ "_description") %}
{% set level = state_attr("sensor.wetter_warnung_advance_warning_level", "warning_" ~ loop.index ~ "_level") %}
{% set time_start = state_attr("sensor.wetter_warnung_advance_warning_level", "warning_" ~ loop.index ~ "_start") %}
{% set time_end = state_attr("sensor.wetter_warnung_advance_warning_level", "warning_" ~ loop.index ~ "_end") %}
{{ headline }}
{{ time_start.strftime("%a %H:%M") ~ " - " ~ time_end.strftime("%a %H:%M") }}
*{{ description }}*
{% if not loop.last %}***{% endif %}
{% endfor %}
{% endif %}
mode: single
Code: Alles auswählen
alias: DWD Wetterwarnung Notification
description: ''
trigger:
- platform: state
entity_id: sensor.wetter_warnung_current_warning_level
attribute: warning_count
- platform: state
entity_id: sensor.wetter_warnung_advance_warning_level
attribute: warning_count
condition:
- condition: template
value_template: '{{ trigger.to_state.state | int != 0}}'
action:
- service: script.dwd_wetterwarnung_senden
mode: single
Lässt Du die Bedingung weg, wirst Du auch per Nachricht informiert, wenn die Warnstufe aufgehoben (also = 0) wird.
Auch das kannst Du wiederum alles in eine Automation packen, wenn es Dir lieber ist.
Gruß
Osorkon
Einer muss ja für Ordnung sorgen.