Warnungen vom DWD einblenden

ThMF.live

Member
Ich habe die Anleitung in HA gelesen, zur Einbindung der Wetterwarnungen von DWD. Allerdings sind mir die Attribute nicht ganz klar. Hat das schon jemand umgesetzt und kann mal seine Konfiguration posten? Vielen Dank
 

mkonline

Member
YAML:
content: >-
  {% set level_colors = ["#c5e566", "#ffeb3b", "#fb8c00", "#e53935", "#880e4f"]
  %} {% set current_count = state_attr("sensor.dwd_leer_current_warning_level",
  "warning_count") %} {% set advance_count =
  state_attr("sensor.dwd_leer_advance_warning_level", "warning_count") %} {% if
  ((current_count == 0) and (advance_count == 0)) %} **<font color={{
  level_colors[0] }}>Keine Warnungen</font>** {% else %}
    {% for i in range(current_count) %}
      {% set headline = state_attr("sensor.dwd_leer_current_warning_level", "warning_" ~ loop.index ~ "_headline") %}
      {% set description = state_attr("sensor.dwd_leer_current_warning_level", "warning_" ~ loop.index ~ "_description") %}
      {% set instruction = state_attr("sensor.dwd_leer_current_warning_level", "warning_" ~ loop.index ~ "_instruction") %}
      {% set level = state_attr("sensor.dwd_leer_current_warning_level", "warning_" ~ loop.index ~ "_level") %}
      {% set time_start = state_attr("sensor.dwd_leer_current_warning_level", "warning_" ~ loop.index ~ "_start") %}
      {% set time_end = state_attr("sensor.dwd_leer_current_warning_level", "warning_" ~ loop.index ~ "_end") %}
    **<font color={{ level_colors[level] }}>{{ headline }}</font>**
    {{ time_start.strftime("%a %H:%M") ~ " - " ~ time_end.strftime("%a %H:%M") }}
    *{{ description }}*
    *{{ instruction }}*
    {% 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.dwd_leer_advance_warning_level", "warning_" ~ loop.index ~ "_headline") %}
      {% set description = state_attr("sensor.dwd_leer_advance_warning_level", "warning_" ~ loop.index ~ "_description") %}
      {% set instruction = state_attr("sensor.dwd_leer_advance_warning_level", "warning_" ~ loop.index ~ "_instruction") %}
      {% set level = state_attr("sensor.dwd_leer_advance_warning_level", "warning_" ~ loop.index ~ "_level") %}
      {% set time_start = state_attr("sensor.dwd_leer_advance_warning_level", "warning_" ~ loop.index ~ "_start") %}
      {% set time_end = state_attr("sensor.dwd_leer_advance_warning_level", "warning_" ~ loop.index ~ "_end") %}
    **<font color={{ level_colors[level] }}>{{ headline }}</font>**
    {{ time_start.strftime("%a %H:%M") ~ " - " ~ time_end.strftime("%a %H:%M") }}
    *{{ description }}*
    *{{ instruction }}*
    {% if not loop.last %}***{% endif %}
    {% endfor %}
  {% endif %}
type: markdown
title: DWD Wetterwarnungen

Du musst dann den Sensor mit Deinem tauschen

Gruß
Michael
 

the other

Well-known member
Moinsen,
ich nutze einfach hier den DWD WarnApp Sensor. In der yaml dann mit
YAML:
# Example Uhrzeit und Wettwerwarnungen DWD
sensor:
  - platform: dwd_weather_warnings
    region_name: DEINEREGION

Hier nochmal die Anleitung dazu: https://www.home-assistant.io/integrations/dwd_weather_warnings/

Den Code deiner Region (warncell id) kannst du auch dort finden (1. link) oder direkt unter: https://www.dwd.de/DE/leistungen/opendata/help/warnungen/cap_warncellids_csv.html

Habe dann hier Cards für aktuelle Warnung und "advanced" Warnungen zum Anzeigen lassen und (wichtiger IMHO) ein paar Automatisierungen dazu (zB Email / andere Benachrichtigungen auf Mobile Geräte, später dann irgendwann mal Steuern der Außenrollos etc.).
Mehr hab ich da nicht, da das allermeiste per GUI eingerichtet (faul wie ich bin)... :)
 

u5zzug

Active member
Das Wetterbild wird als generische Kamera eingebunden (https://www.home-assistant.io/integrations/generic/).
URLs siehe hier: https://www.dwd.de/DE/wetter/warnun...dung/objekteinbindung.html#doc582840bodyText6



YAML:
type: conditional
conditions:
  - entity: sensor.dwd_warnungen_current_warning_level
    state_not: '0'
card:
  type: vertical-stack
  cards:
    - type: picture-glance
      entities: []
      camera_image: camera.dwd_wetterwarnungen
      tap_action:
        action: more-info
      hold_action:
        action: none
    - type: markdown
      content: >-
        {% set level_colors = {0:'#c5e566', 1:'#ffeb3b', 2:'#fb8c00',
        3:'#e53935', 4:'#880e4f', 20:'#fe68fe', 50:'#fe68fe', 51:'#9e46f8'} %}
        {% set current_count =
        state_attr("sensor.dwd_Warnungen_current_warning_level",
        "warning_count") %} {% set advance_count =
        state_attr("sensor.dwd_warnungen_advance_warning_level",
        "warning_count") %} {% if ((current_count == 0) and (advance_count ==
        0)) %} **<font color={{ level_colors[0] }}>Keine Warnungen</font>** {%
        else %}
          {% for i in range(current_count) %}
            {% set headline = state_attr("sensor.dwd_warnungen_current_warning_level", "warning_" ~ loop.index ~ "_headline") %}
            {% set description = state_attr("sensor.dwd_warnungen_current_warning_level", "warning_" ~ loop.index ~ "_description") %}
            {% set level = state_attr("sensor.dwd_warnungen_current_warning_level", "warning_" ~ loop.index ~ "_level") %}
            {% set time_start = state_attr("sensor.dwd_warnungen_current_warning_level", "warning_" ~ loop.index ~ "_start") %}
            {% set time_end = state_attr("sensor.dwd_warnungen_current_warning_level", "warning_" ~ loop.index ~ "_end") %}
          **<font color={{ level_colors[level] if level_colors[level] is defined else level_colors[1] }}>{{ headline }}</font>**
          {{ time_start.strftime("%a %H:%M") ~ " - " ~ time_end.strftime("%a %H:%M") }}
          *{{ description|trim }}*
          {% 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.dwd_warnungen_advance_warning_level", "warning_" ~ loop.index ~ "_headline") %}
            {% set description = state_attr("sensor.dwd_warnungen_advance_warning_level", "warning_" ~ loop.index ~ "_description") %}
            {% set level = state_attr("sensor.dwd_warnungen_advance_warning_level", "warning_" ~ loop.index ~ "_level") %}
            {% set time_start = state_attr("sensor.dwd_warnungen_advance_warning_level", "warning_" ~ loop.index ~ "_start") %}
            {% set time_end = state_attr("sensor.dwd_warnungen_advance_warning_level", "warning_" ~ loop.index ~ "_end") %}
          **<font color={{ level_colors[level] }}>{{ headline }}</font>**
          {{ time_start.strftime("%a %H:%M") ~ " - " ~ time_end.strftime("%a %H:%M") }}
          *{{ description }}*
          {% if not loop.last %}***{% endif %}
          {% endfor %}
        {% endif %}
      title: Wetterwarnungen
 
Moin!

Es gibt doch zwei Arten, Infos in die configuration.yaml zu schreiben. "Alte" und "neue" Schreibweise.

Kann es sein, dass in der Dokumentation die neue Schreibweise angegeben ist und ich eine Fehlermeldung bekomme weil ich noch die alte verwende?

Ein Teil meiner configuration.yaml sieht so aus:

YAML:
#Zivile Dämmerung
sensor:
  - platform: template
    sensors:
      dusky:
        value_template: >-
          {% if (state_attr('sun.sun', 'elevation') < -3) %}
          {{ true }}
          {% else %}
          {{ false }}
          {% endif %}

#Sonnenaufgang & Sonnenuntergang
  - platform: template
    sensors:
      nextsunrise:
        entity_id: sun.sun
        friendly_name: 'Next Sunrise'
        value_template: >
          {{ as_timestamp(states.sun.sun.attributes.next_rising) | timestamp_custom(' %I:%M %p') | replace(" 0", "") }}
        icon_template: mdi:weather-sunset-up
      nextsunset:
        entity_id: sun.sun
        friendly_name: 'Next Sunset'
        value_template: >
          {{ as_timestamp(states.sun.sun.attributes.next_setting) | timestamp_custom(' %I:%M %p') | replace(" 0", "") }}
        icon_template: mdi:weather-sunset-down

Wie müsste ich jetzt die DWD Wetterwarnung hier hinterlegen? Ich weiß nicht wie es korrekt ist. Denn wie in der Anleitung angegeben

YAML:
YAML:
# Example Uhrzeit und Wettwerwarnungen DWD
sensor:
  - platform: dwd_weather_warnings
    region_name: DEINEREGION

Bekomme ich eine Fehlermeldung bei Prüfung

Grüße
Sky
 

Nival

-
Moderator
@SkyWalker2_D das sensor: darf nicht doppelt gelistet sein. Schau mal ob es funktioniert, wenn Du nur
YAML:
  - platform: dwd_weather_warnings
    region_name: DEINEREGION
einträgst.
 

the other

Well-known member
Moinsen,
Ja, sensor nur einmal eintragen, wie @Nival sagte!
Etwa so
YAML:
# Example Uhrzeit und Wettwerwarnungen DWD
sensor:
  - platform: time_date
    display_options:
      - "time_date"
  - platform: dwd_weather_warnings
    region_name: HIER DIE REGION

Dann sollte es klappen...
 
Vielen Dank, jetzt klappt es. Ich hatte es ans Ende der Datei geschrieben was die Fehlermeldung verursachte.
Jetzt mittendrin unter einem anderen Sensor Eintrag funzt es.
 

ThMF.live

Member
Ich habe da wahrscheinlich immer noch einen Fehler. Die Anzeige der NRW Karte funktioniert. Die Anzeige der Warnungen allerdings nicht, obwohl ich über die einfache Anzeige über

- entity: sensor.dwd_weather_warnings_advance_warning_level
- entity: sensor.dwd_weather_warnings_current_warning_level

Warnungen ausgibt.
 

the other

Well-known member
Moinsen,
wenn ich in der Übersicht zu der DWD Warnungen Karte gehe und in den "Bearbeiten"-Modus wechsele, dann habe ich dort:
YAML:
type: entity
entity: sensor.dwd_weather_warnings_advance_warning_level
bzw. für die andere Karte analog:
YAML:
type: entity
entity: sensor.dwd_weather_warnings_current_warning_level
 

ThMF.live

Member
Diese Anzeige funktioniert auch bei mir..... Aber die komplexe Darstellung wie o.g. bekomme ich nicht funktionierend. Allerdings bekomme ich auch keine Fehlermeldung.
 

Letzte Anleitungen

Statistik des Forums

Themen
1.709
Beiträge
21.289
Mitglieder
1.217
Neuestes Mitglied
DUC750
Oben