Modulare Warnsystem (Bundesamt für Bevölkerungsschutz und Katastrophenschutz)

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • Memlinger84
    Dumb Home'r
    • 21.05.2021
    • 22

    #1

    Modulare Warnsystem (Bundesamt für Bevölkerungsschutz und Katastrophenschutz)

    Hallo liebe Loxone-Gemeinde,

    ich würde gerne – ähnlich wie bei der NINA-App – meinen Bereich über die PLZ definieren und diese Informationen in Loxone integrieren.

    Ziel wäre zum Beispiel, bei einem Rauchalarm automatisch die Fenster zu schließen oder bei einer Wetterwarnung den Batteriespeicher manuell aus dem Netz zu laden.

    Hat jemand von euch so etwas schon einmal umgesetzt oder Erfahrungen damit gesammelt?
    Ich freue mich auf eure Ideen und Tipps!

    Viele Grüße
  • fl0_rian
    Extension Master
    • 11.06.2021
    • 134

    #2
    API von NINA ist eh komplett dokumentiert,


    Virtueller HTTP Eingang auf die URL https://warnung.bund.de/api31/dashboard/<ARS>.json - wobei ARS dein Kreiscode ist,..

    da kommt dann zB

    [
    {
    "id": "dwd.2.49.0.0.276.0.DWD.PVW.1770833100000.bbab b16c-70e0-4f1d-b737-46c2f8af442c.MUL",
    "payload": {
    "version": 12,
    "type": "ALERT",
    "id": "dwd.2.49.0.0.276.0.DWD.PVW.1770833100000.bbab b16c-70e0-4f1d-b737-46c2f8af442c.MUL",
    "hash": "1b008e4c2990bea2e12027e3ab12f4dc32125d415c6f5 313e 91b90f439346478",
    "data": {
    "headline": "Amtliche WARNUNG vor STURMBÖEN",
    "provider": "DWD",
    "severity": "Moderate",
    "urgency": "Immediate",
    "msgType": "Alert",
    "area": {
    "type": "ZGEM",
    "data": "7609+2,7615,7617+20,7644,7649+1,7652,7719+4,7 730, 7732+32,7768+4,7774,7778+1,8068+17,8087,8089,8091+ 7,8100+7,8109+105,8216,8236+17,8257,8259,8262+7,82 71,8286+19,8307"
    },
    "valid": true
    }
    },
    "i18nTitle": {
    "de": "Amtliche WARNUNG vor STURMBÖEN",
    "en": "Official WARNING of GALE-FORCE GUSTS",
    "ar": "تحذير رسمي من هبوب عواصف",
    "es": "AVISO oficial de TURBONADA",
    "fr": "ALERTE officielle INTEMPÉRIES PRONONCÉES pour RAFALES DE FORCE FORT COUP DE VENT",
    "pl": "Oficjalne OSTRZEŻENIE METEOROLOGICZNE (2. STOPNIA) przed WICHURAMI",
    "ru": "Официальное предупреждение о значительных погодных явлениях: Шквалы штормового ветра",
    "tr": "FIRTINA ESİNTİLERİNE karşı resmi UYARI"
    },
    "sent": "2026-02-11T19:04:28+01:00",
    "onset": "2026-02-12T14:00:00+01:00",
    "expires": "2026-02-12T22:00:00+01:00",
    "effective": "2026-02-11T19:05:00+01:00"
    }
    ]

    dann einfach Befehlserkennung mit Virtuellen HTTP Eingang Befehl auswerten,

    musst dich halt ein bisschen spielen welche Daten du verarbeiten willst,.. mit Audio Server wäre auch ein TTS mit der Ansage einer Meldung möglich..

    so wertet man auch Wetter aus von Wetterdiensten oder ähnliches..

    Kommentar

    • Jan W.
      Lox Guru
      • 30.08.2015
      • 1546

      #3
      Interessante Seite. Das Parsen von Meldungen im JSON Format wird mit dem MS nicht einfach sein, weil der MS die JSON Struktur nicht kennt und der virtuelle HTTP Eingang nur begrenzte Möglichkeiten zum Erkennen hat. Ich bekam bei einem Test mit meinem Landkreis nur ein [] (leeres Array) zurück, aber da in einem Array mehrere Meldungen möglich sind, können alle Parameter mehrfach vorkommen.

      Eine Liste der möglichen Meldungen z.B. vom DWD gibt es hier (S. 21ff), aber einen Eventcode konnte ich in den Meldungen nicht finden. Das Parsen von Events über 'Headline' ist schon schwieriger, insbesondere in Verbindung mit 'Severity', ''Urgency' und 'msgType'. Die ID (Beschreibung auf S. 10) enthält wohl eine einmalige (zufällige) UUID, aber keine Meldungs-ID. Ein msgType=Cancel in Verbindung mit Gewitter sollte keine Aktion auslösen oder Fenster wieder öffnen. Vielleicht ist ein Schließen von Fenstern am Nachmittag noch nicht nötig, wenn die Warnung sich auf den Abend oder nächsten Tag bezieht?

      Ein Loxberry Plugin für die Auswertung von Meldungen wäre wahrscheinlich eine gute Lösung, aber erfordert entsprechende Skills und Zeit.

      Da der MS keine Texte aus HTML Code ausschneiden kann, müssen alle Meldungen geparst werden und die Texte manuell z.B. über Statusbausteine wieder eingefügt werden, wenn man in der Loxone App die auslösende Meldung sehen möchte.

      Memlinger84: arbeitet Dein Batteriespeicher autark, d.h. funktioniert er bei Stromausfall?
      Zuletzt geändert von Jan W.; 12.02.2026, 23:02.
      Miniserver v14.5.12.7, 2x Ext., 2x Relay Ext., 2x Dimmer Ext., DMX Ext., 1-Wire Ext., Gira KNX Tastsensor 3 Komfort, Gira KNX Präsenzmelder, Fenster- und Türkontakte, Loxone Regen- und Windsensor, Gira Dual Q Rauchmelder vernetzt, 1x Relais-Modul
      Loxberry: SmartMeter, MS Backup, CamConnect, Weather4Lox
      Lüftung: Helios KWL EC 370W ET mit Modbus TCP - via Pico-C
      Heizung: Stiebel Eltron WPF 5 cool (Sole-Wasser WP) mit ISG, FB-Heizung mit 18 Kreisen, Erdsonde - via modbus/TCP
      Node-RED: IKEA Tradfri

      Kommentar

      • fl0_rian
        Extension Master
        • 11.06.2021
        • 134

        #4
        du hast schlichtweg ein leeres [] zurück bekommen weil für deinen Landkreis keine Meldung vorliegt.

        du kannst die json Antworten auch einfach mit dem Browser holen, und schauen was alles ausgespuckt wird,

        Klicke auf die Grafik für eine vergrößerte Ansicht

Name: image.png
Ansichten: 100
Größe: 79,4 KB
ID: 479019

        ich würde nach "severity": suchen - dann über einen statusbaustein wenn "severity": "Severe", eine Meldung mit der Headline an den User per Push rausschieben, zB "headline": "Rezatparkplatz wegen Hochwasser gesperrt - Stadt Ansbach",

        Kommentar

        • Noschvie
          MS Profi
          • 24.09.2018
          • 655

          #5
          In Österreich gibt es die Seite https://warnung.at-alert.at , aber leider keine Rest API, oder?

          Kommentar

          • Jan W.
            Lox Guru
            • 30.08.2015
            • 1546

            #6
            Noschvie : Mir ist schon klar, dass es um Warnmeldungen geht und daher im Normalfall nichts ausgegeben wird. Ich hatte nur darauf hingewiesen, dass ein Parsing von mehreren Meldungen (Array) mit dem MS nicht wirklich umsetzbar ist.

            ich würde nach "severity": suchen - dann über einen statusbaustein wenn "severity": "Severe", eine Meldung mit der Headline an den User per Push rausschieben, zB "headline": "Rezatparkplatz wegen Hochwasser gesperrt - Stadt Ansbach",
            Wie soll das denn mit dem virtual HTTP Input funktionieren? \v liest nur numerische Values ein. Ein Suchen \i"severity": "Severe"\i ist möglich, aber dann rückwärts nach "headline" suchen geht meines Wissens nicht. Evtl. noch das folgende "de" und hoffen, dass die Reihenfolge immer so bleibt, aber die eigentliche Meldung als Variable über den MS einzulesen und zu verarbeiten das geht nicht bzw. wäre nur mit Pico C lösbar, weil der virtual HTTP Input nur Zahlen bzw. Bytes oder Hex-Werte verarbeiten kann. Gerade das Beispiel zeigt gut, dass ein Parsen der kompletten Nachricht (1:1) nicht zielführend wäre (die Meldung ist sehr spezifisch), aber das Auslösen einer Aktion bei bei einer beliebigen Nachricht mit dem Severity-Level ebenfalls nicht passt. Die Dachfenster muss ich nicht schließen, weil ein Parkplatz möglicherweise durch Hochwasser geflutet wird.

            Mach doch ein Beispiel für den Suchstring, wenn es so einfach ist.
            Zuletzt geändert von Jan W.; 13.02.2026, 13:47.
            Miniserver v14.5.12.7, 2x Ext., 2x Relay Ext., 2x Dimmer Ext., DMX Ext., 1-Wire Ext., Gira KNX Tastsensor 3 Komfort, Gira KNX Präsenzmelder, Fenster- und Türkontakte, Loxone Regen- und Windsensor, Gira Dual Q Rauchmelder vernetzt, 1x Relais-Modul
            Loxberry: SmartMeter, MS Backup, CamConnect, Weather4Lox
            Lüftung: Helios KWL EC 370W ET mit Modbus TCP - via Pico-C
            Heizung: Stiebel Eltron WPF 5 cool (Sole-Wasser WP) mit ISG, FB-Heizung mit 18 Kreisen, Erdsonde - via modbus/TCP
            Node-RED: IKEA Tradfri

            Kommentar

            • fl0_rian
              Extension Master
              • 11.06.2021
              • 134

              #7
              oh da hast du wohl recht, die befehlserkennung kann nur Werte und keinen Text zurück geben,.. das is dann doof! dann wohl doch picoC... warum loxone?!?!

              Kommentar


              • Jan W.
                Jan W. kommentierte
                Kommentar bearbeiten
                Pico-C ist auf dem MS wenig verbreitet. Das Debugging ist umständlich und es gibt kein Emulator mit dem man Programme testen kann. Fehlerhafte Programme können den MS zum Absturz bringen. Mit Einführung des MS Gen. 2 hat Loxone keine Verbesserung vorgenommen. Die 'Ablaufsteuerung' ist deutlich weniger mächtig, als Pico-C. Mit Python ist die Verarbeitung von JSON quasi eingebaut und mit wenigen Zeilen Code hätte man die passenden Daten extrahiert.

                Meine Vermutung ist, dass Loxone nur an Hardware verdient und eine Verarbeitung von virtuellen Inputs (oder Outputs) nicht zum Verkauf weiterer Hardware führt. Inputs, die JSON verarbeiten können, mit Text umgehen können oder sogar mit einem Token für Authentifizierung wären eher etwas für Experten. Vielleicht befürchtet Loxone zu viel Aufwand beim Support? Vielleicht hat Loxone auch Angst, dass sie die Kontrolle über den "Code" verlieren? Wenn man z.B. Wetterdaten auf dem MS direkt von einem Anbieter über eine API aus JSON holen könnte, dann würde wahrscheinlich keiner mehr den kostenpflichtigen Wetter Service kaufen. Heute benötigt man dafür einen Loxberry.
            Lädt...