Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Unwetterwarnung für Österreich bzw. Europa ?

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Unwetterwarnung für Österreich bzw. Europa ?

    This topic has been deleted. Only users with topic management privileges can see it.
    • Negalein
      Negalein Global Moderator @jackblackson last edited by

      @jackblackson sagte in Unwetterwarnung für Österreich bzw. Europa ?:

      @dwm Meinst du du könntest das Script für die UWZ bitte nochmal posten? Hier scheint das Forum das Format verhaut zu haben.

      hier ist es!

      var debuglevel = 4;
      var debugchannel = 'info';
      
      function dwmlog( message, level, channel) {
          if (typeof channel === 'undefined') {
              channel = debugchannel;
          }
          if ( typeof level === 'undefined')
          {
              level = debuglevel;
          }
          if ( debuglevel >= level ) {
              log (message, channel );
          }
      }
      
      var AdapterId = "javascript."+instance;
      var ChannelId = "UWZ";
      
      var forceInitStates = false;
      var numOfWarnings = 3;
      
      var url='http://feed.alertspro.meteogroup.com/AlertsPro/AlertsProPollService.php?method=getWarning&language=de&areaID=XXXAREAXXX';
      
      
      /********************* Hier die Warnzellen-Id's eintragen *****************************/
      var warncellid = ['UWZAT00928'];
      /**************************************************************************************/
      
      
      var UWZTypesArray=["n/a","unbekannt","Sturm/Orkan","Schneefall","Starkregen","Extremfrost","Waldbrandgefahr","Gewitter","Glätte","Hitze","Glatteisregen","Bodenfrost"];
      
      function createStates(n){
          var AreaChannelID = null;
          
          for (var j=0; j<warncellid.length; j++) {
              AreaChannelId=ChannelId+"."+warncellid[j];        
              for (var i=0; i<n; i++) {
                  createState(AreaChannelId+".warning."+i+".ShortText","",forceInitStates,{type: 'string'});
                  createState(AreaChannelId+".warning."+i+".LongText","",forceInitStates,{type: 'string'});
                  createState(AreaChannelId+".warning."+i+".object","",forceInitStates,{type: 'string'});
                  createState(AreaChannelId+".warning."+i+".begin","",forceInitStates,{type: 'string'});
                  createState(AreaChannelId+".warning."+i+".end","",forceInitStates,{type: 'string'});
                  createState(AreaChannelId+".warning."+i+".severity",0,forceInitStates,{type: 'number'});
                  createState(AreaChannelId+".warning."+i+".type",0,forceInitStates,{min:0, max:11, type: 'number',states:UWZTypesArray});
                  createState(AreaChannelId+".warning."+i+".uwzLevel",0,forceInitStates,{min:0, max:5, type: 'number'});
                  createState(AreaChannelId+".warning."+i+".uwzColor",0,forceInitStates,{type:'number'});
                  createState(AreaChannelId+".warning."+i+".HTMLShort","",forceInitStates,{type: 'string'});
                  createState(AreaChannelId+".warning."+i+".HTMLLong","",forceInitStates,{type: 'string'});
              }
          }
      }
      
      function getUWZLevel (warnName){
          var result = -1; // -1 is an error!
          var alert = warnName.split("_");
          var colors = ["green","darkgreen","yellow","orange","red","violet"];
          
          if (alert[0]=="notice") { result = 1; }
          else if (alert[1] == "forewarn") { result = 2; }
          else {
              result = colors.indexOf(alert[2]);
          }
          return result;
      }
      
      function getUWZUrgency (warnName){
          var result = 0;
          
          var alert = warnName.split("_");
          if (alert[1] == "forewarn") { 
              result = 1; 
          }
          else {
              result = 2; // immediate;
          }
          return result;
      }
      
      function getLevelColor(uwzLevel) {
          var uwzColor = [
              0x00ff00, // 0 - Grün
              0x009b00, // 1 - Dunkelgrün
              0xffff00, // 2 - Gelb Wetterwarnungen (Stufe 1)
              0xffb400, // 3 - Orange Warnungen vor markantem Wetter (Stufe 2)
              0xff0000, // 4 - Rot Unwetterwarnungen (Stufe 3)
              0xff00ff, // 5 - Violett Warnungen vor extremem Unwetter (Stufe 4)
          ];
          if (uwzLevel>=0 && uwzLevel<=5)
              return uwzColor[uwzLevel];
          else
              return 0;
      }
      
      function createHTMLShort(w){
          var html = '<div style="background: #'+w.uwzColor.toString(16)+'" border:"10px">';
          
          var theData = JSON.parse(w.object);
          
          html += '<h3>';
          if (w.uwzUrgency==1) html+="Vorwarnung vor "; else html+="Warnung vor ";
          html += UWZTypesArray[w.type];
          html +="</h3>";
          html += "<p>Zeitraum von "+formatDate(new Date(theData.dtgStart*1000),"WW, DD. OO YYYY hh:mm")+" Uhr bis "+formatDate(new Date(theData.dtgEnd*1000),"WW, DD. OO YYYY hh:mm")+" Uhr </p>";
          html += '<p>'+w.ShortText+'</p>';
          html += "</div>";
          return html;
      }
      
      function createHTMLLong(w){
          var html = '<div style="background: #'+w.uwzColor.toString(16)+'" border:"10px">';
          
          var theData = JSON.parse(w.object);
          
          html += '<h3>';
          if (w.uwzUrgency==1) html+="Vorwarnung vor "; else html+="Warnung vor ";
          html += UWZTypesArray[w.type];
          html +="</h3>";
          html += "<p>Zeitraum von "+formatDate(new Date(theData.dtgStart*1000),"WW, DD. OO YYYY hh:mm")+" Uhr bis "+formatDate(new Date(theData.dtgEnd*1000),"WW, DD. OO YYYY hh:mm")+" Uhr </p>";
          html += '<p>'+w.LongText+'</p>';
          html += "</div>";
          return html;    
      }
      
      function processResultEntry(w) {
          this.object = JSON.stringify(w);
      
          this.begin=formatDate(new Date(w.dtgStart*1000),"DD.MM.YYYY hh:mm");
          this.end=formatDate(new Date(w.dtgEnd*1000),"DD.MM.YYYY hh:mm");
          
          // dwmlog (formatDate(this.begin,"DD.MM.YYYY hh:mm"),4);
          // dwmlog (formatDate(this.end,"DD.MM.YYYY hh:mm"),4);
          
          this.LongText = w.payload.translationsLongText.DE;
          this.ShortText = w.payload.translationsShortText.DE;
          
          this.severity = w.severity;
          this.type = w.type;
          this.uwzLevel = getUWZLevel(w.payload.levelName);
          this.uwzUrgency = getUWZUrgency(w.payload.levelName);
          this.uwzColor = getLevelColor(this.uwzLevel);
          var x = this;
          this.HTMLShort = createHTMLShort(x);
          this.HTMLLong  = createHTMLLong(x);
      }
      
      function processData(Area,data) {
          if (!data) {
             return;
          }
          var AreaChannelId=ChannelId+"."+Area;
          
          var thedata = JSON.parse(data);
          var warnings= [];
          
          if (thedata.results.length>0) {
              for (i=0; i<thedata.results.length; i++) {
                  warnings.push(new processResultEntry(thedata.results[i]));
              }
          }
          
          warnings.sort(function(a,b){
              var asort = a.severity; 
              var bsort = b.severity;
              
              return bsort-asort;
          });
          
          
          dwmlog(JSON.stringify(warnings));
          
          for (i=0; i<numOfWarnings; i++) {
              if (i<warnings.length) {
                  setState(AreaChannelId+".warning."+i+".LongText",warnings[i].LongText);
                  setState(AreaChannelId+".warning."+i+".ShortText",warnings[i].ShortText);
                  setState(AreaChannelId+".warning."+i+".object",warnings[i].object);
                  setState(AreaChannelId+".warning."+i+".begin",warnings[i].begin);
                  setState(AreaChannelId+".warning."+i+".end",warnings[i].end);
                  setState(AreaChannelId+".warning."+i+".severity",warnings[i].severity);
                  setState(AreaChannelId+".warning."+i+".type",warnings[i].type);
                  setState(AreaChannelId+".warning."+i+".uwzLevel",warnings[i].uwzLevel);
                  setState(AreaChannelId+".warning."+i+".uwzColor",warnings[i].uwzColor);
                  setState(AreaChannelId+".warning."+i+".HTMLShort",warnings[i].HTMLShort);
                  setState(AreaChannelId+".warning."+i+".HTMLLong",warnings[i].HTMLLong);
              } else {
                  setState(AreaChannelId+".warning."+i+".LongText","");
                  setState(AreaChannelId+".warning."+i+".ShortText","");
                  setState(AreaChannelId+".warning."+i+".object","{}");
                  setState(AreaChannelId+".warning."+i+".begin","");
                  setState(AreaChannelId+".warning."+i+".end","");
                  setState(AreaChannelId+".warning."+i+".severity",0);
                  setState(AreaChannelId+".warning."+i+".type",0);
                  setState(AreaChannelId+".warning."+i+".uwzLevel",0);
                  setState(AreaChannelId+".warning."+i+".uwzColor",0);
                  setState(AreaChannelId+".warning."+i+".HTMLShort","");
                  setState(AreaChannelId+".warning."+i+".HTMLLong","");
            }
          }
      }
      
      function getAreaFromURI(uri) {
          var searchstr = "&areaID=";
          var n = uri.search(searchstr);
          var result = uri.slice(n+searchstr.length,uri.length);
          return result;
      }
      
      createStates(numOfWarnings);
      // processData(jsond2);
      
      var request = require('request');
      schedule ("3 * * * *", function(){
          for (var i=0; i<warncellid.length; i++) {
                  request({  
                      uri: url.replace("XXXAREAXXX",warncellid[i]),
                      method: "GET",
                      timeout: 10000,
                      followRedirect: true,
                      maxRedirects: 10
                  }, function(error, response, body) {
                      // dwmlog("UWZ Error" + error,2);
                      // dwmlog("UWZ Response: " + JSON.stringify(response),4);
                      dwmlog("AREA: "+getAreaFromURI(response.request.uri.href),4);
                      dwmlog("UWZ Body: " + body,4);
                      if (response.statusCode == 200) {
                          processData(getAreaFromURI(response.request.uri.href),body);
                      }
                  });    
          }
      });
      
      
      1 Reply Last reply Reply Quote 0
      • sigi234
        sigi234 Forum Testing Most Active @Nashra last edited by

        @Nashra sagte in Unwetterwarnung für Österreich bzw. Europa ?:

        Seit einiger Zeit wird mir vom UWZ-Script nichts mehr angezeigt. DWD und andere geben Unwetterwarnungen raus
        aber hier bei mir tut sich gar nichts. Hat das sonst noch jemand hier.

        Warnzellen-Id im Skript Richtig?

        Nashra 1 Reply Last reply Reply Quote 0
        • Nashra
          Nashra Most Active Forum Testing @sigi234 last edited by

          @sigi234 sagte in Unwetterwarnung für Österreich bzw. Europa ?:

          @Nashra sagte in Unwetterwarnung für Österreich bzw. Europa ?:

          Seit einiger Zeit wird mir vom UWZ-Script nichts mehr angezeigt. DWD und andere geben Unwetterwarnungen raus
          aber hier bei mir tut sich gar nichts. Hat das sonst noch jemand hier.

          Warnzellen-Id im Skript Richtig?

          Ja alles korrekt, hat ja auch vor einigen Wochen mal Warnungen angezeigt.
          Momentan geht hier richtig was ab mit Wind uns so und die anderen zeigen es ja auch an,
          aber leider nicht nicht das Script obwohl alle 15 Minuten aktualisiert wird.

          sigi234 1 Reply Last reply Reply Quote 0
          • sigi234
            sigi234 Forum Testing Most Active @Nashra last edited by

            @Nashra
            Hast du mal eine andere ID dazu gefügt zum testen........

            Nashra 1 Reply Last reply Reply Quote 0
            • Nashra
              Nashra Most Active Forum Testing @sigi234 last edited by Nashra

              @sigi234 sagte in Unwetterwarnung für Österreich bzw. Europa ?:

              @Nashra
              Hast du mal eine andere ID dazu gefügt zum testen........

              Ja mehrere, aber es kommen keine Daten, seltsam 😕

              Nachtrag: Datenpunkte sind alle vorhanden.

              1 Reply Last reply Reply Quote 0
              • Negalein
                Negalein Global Moderator @Nashra last edited by

                @Nashra sagte in Unwetterwarnung für Österreich bzw. Europa ?:

                Seit einiger Zeit wird mir vom UWZ-Script nichts mehr angezeigt. DWD und andere geben Unwetterwarnungen raus
                aber hier bei mir tut sich gar nichts. Hat das sonst noch jemand hier.

                Ja, ist bei mir auch so!

                DWD zeigt eine Warnung an.
                UWZ-Script zeigt nichts an.

                Aber DWD verhunzt das Datum.
                objects - ioBroker (3).png objects - ioBroker (2).png

                1 Reply Last reply Reply Quote 0
                • Nashra
                  Nashra Most Active Forum Testing last edited by

                  Juhu i am not alone 😂
                  Irgendwie werde ich das Gefühl nicht los, das Die überhaupt keine Daten mehr zur Verfügung stellen 🤔

                  sigi234 1 Reply Last reply Reply Quote 0
                  • sigi234
                    sigi234 Forum Testing Most Active @Nashra last edited by

                    @Nashra
                    Das kann sein............

                    1 Reply Last reply Reply Quote 0
                    • Nashra
                      Nashra Most Active Forum Testing last edited by

                      Hm, habe jetzt einfach mal im Browser die URL eingegeben mit der ID und das wird angezeigt:

                      {"results":[],"generator":"PHPjf"}
                      

                      Das war es dann wohl...

                      1 Reply Last reply Reply Quote 0
                      • M
                        muckel last edited by

                        eher weil kein unwetter naht. 😉

                        Negalein Nashra 2 Replies Last reply Reply Quote 0
                        • Negalein
                          Negalein Global Moderator @muckel last edited by Negalein

                          @muckel sagte in Unwetterwarnung für Österreich bzw. Europa ?:

                          eher weil kein unwetter naht. 😉

                          Dann vergleich mal das UWZ-Script mit dem DWD-Adapter!

                          Hier bei mir liefert das Script nichts, aber DWD gibt eine Warnung raus.

                          DWD
                          objects - ioBroker (2).png

                          UWZ
                          objects - ioBroker (3).png

                          M 1 Reply Last reply Reply Quote 0
                          • Nashra
                            Nashra Most Active Forum Testing @muckel last edited by

                            @muckel sagte in Unwetterwarnung für Österreich bzw. Europa ?:

                            eher weil kein unwetter naht. 😉

                            Habe 10 Orte getestet wo Unwetter gemeldet werden, aber in den Datenpunkten wird nichts eingetragen 😉

                            sigi234 1 Reply Last reply Reply Quote 0
                            • sigi234
                              sigi234 Forum Testing Most Active @Nashra last edited by sigi234

                              @Nashra

                              Vielleicht ist das vorübergehend oder sie haben die API eingestellt.......☹
                              No Money - No API

                              Nashra 1 Reply Last reply Reply Quote 0
                              • Nashra
                                Nashra Most Active Forum Testing @sigi234 last edited by

                                @sigi234 sagte in Unwetterwarnung für Österreich bzw. Europa ?:

                                @Nashra

                                Vielleicht ist das vorübergehend oder sie haben die API eingestellt.......☹
                                No Money - No API

                                Dies könnte durchaus sein, versuche mal etwas in Erfahrung zu bringen was da los ist.

                                1 Reply Last reply Reply Quote 1
                                • Nashra
                                  Nashra Most Active Forum Testing last edited by

                                  So die Anfrage ist raus, mal sehen ob und mit was die Antworten.

                                  sigi234 1 Reply Last reply Reply Quote 1
                                  • sigi234
                                    sigi234 Forum Testing Most Active @Nashra last edited by

                                    @Nashra
                                    Ich glaube mit einer Zahlungsaufforderung! 😏

                                    Nashra 1 Reply Last reply Reply Quote 0
                                    • Nashra
                                      Nashra Most Active Forum Testing @sigi234 last edited by Nashra

                                      @sigi234 sagte in Unwetterwarnung für Österreich bzw. Europa ?:

                                      @Nashra
                                      Ich glaube mit einer Zahlungsaufforderung! 😏

                                      Das wäre der Hit aber noch steht bei denen...

                                      Die Unwetterzentrale ist für jeden online frei zugänglich. Firmen, Behörden, Feuerwehren etc. bieten wir
                                      darüber hinaus spezielle Abonnements mit Zugang zu den Leistungen im geschlossenen Online-Benutzerbereich
                                      der Unwetterzentrale an. Die Abonnements umfassen den Zugriff auf alle ausführlichen Warntexte sowie
                                      weiterführende (Un-)Wetterinformationen. Je nach Abonnement ist ein proaktiver Versand der Warnungen
                                      eingeschlossen.
                                      
                                      sigi234 1 Reply Last reply Reply Quote 0
                                      • sigi234
                                        sigi234 Forum Testing Most Active @Nashra last edited by

                                        @Nashra
                                        Tja, früher was es bei uns auch kostenlos, bis das kam:

                                        Screenshot (2278).png

                                        1 Reply Last reply Reply Quote 0
                                        • Nashra
                                          Nashra Most Active Forum Testing last edited by

                                          Tja das kam vorhin als Antwort

                                          Dies ist eine automatische E-Mail!
                                          Lieber Nutzer,

                                          vielen Dank für Ihre Nachricht und Ihr Interesse an der Unwetterzentrale und unserer Website. Wir konzentrieren uns rund um die Uhr darauf, die Unwetterlage im Blick zu behalten, so dass wir Ihnen hier keinen meteorologischen Support bieten können. Wir bitten um Ihr Verständnis.
                                          Vorhersagen, Warnungen und mehr liefern wir Ihnen jederzeit und mobil mit unseren Wetter-Apps WeatherPro, AlertsPro, MeteoEarth oder auch RainToday und auch auf http://www.wetter24.de finden Sie umfangreiche Informationen rund ums Wetter. Zudem verweisen wir für schnelle Selbst-Hilfe auch an unsere FAQs: https://meteogroup.zendesk.com/hc/de/categories/200750241-Unwetterzentrale. Geht es um eine gezielte Recherche/Anfrage und Sie benötigen beispielsweise Details zu einem Unwetterereignis oder Klimadaten, besuchen Sie bitte unseren kostenpflichtigen WebShop: https://shop.meteogroup.com/.
                                          Richten Sie sich aus geschäftlichem Interesse an uns oder benötigen Sie eine meteorologische Lösung für Ihr Geschäftsfeld, würden wir Sie bitten auf diese E-Mail zu antworten. Wir werden uns schnellstmöglich mit Ihnen in Verbindung setzen. Auf Grund der Tatsache, dass dies einige Tage dauern kann, bitten wir Sie um etwas Geduld.
                                          Ihr MeteoGroup-Team

                                          Negalein 1 Reply Last reply Reply Quote 0
                                          • Negalein
                                            Negalein Global Moderator @Nashra last edited by

                                            @Nashra sagte in Unwetterwarnung für Österreich bzw. Europa ?:

                                            Tja das kam vorhin als Antwort

                                            Ja, dann bleib ich beim DWD

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            927
                                            Online

                                            31.6k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            23
                                            123
                                            14947
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo