Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.6k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.0k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.3k

[Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten

Scheduled Pinned Locked Moved JavaScript
1.5k Posts 53 Posters 592.0k Views 52 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • D drapo

    @ticaki was meinst du mit ansonsten KK?
    Kann ich immer noch die config im script stehen lassen und danach den ganzen code austauschen?

    T Do not disturb
    T Do not disturb
    ticaki
    wrote on last edited by ticaki
    #242

    @drapo
    KK = Keine Konfigurationsänderung :)

    Heißt kannst ab 123456 alles kopieren und einfügen, nur unter der Objektansicht, im Datenzweig dieses Scriptes mußt du .alert löschen, da sich das geändert hat. Sry dafür.

    Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

    Spenden

    D 1 Reply Last reply
    0
    • T ticaki

      @drapo
      KK = Keine Konfigurationsänderung :)

      Heißt kannst ab 123456 alles kopieren und einfügen, nur unter der Objektansicht, im Datenzweig dieses Scriptes mußt du .alert löschen, da sich das geändert hat. Sry dafür.

      D Offline
      D Offline
      drapo
      wrote on last edited by
      #243

      @ticaki alles klar. Habs aktualisiert. Warte dann mal auf ein paar Meldungen :-) Danke Dir

      1 Reply Last reply
      0
      • T ticaki

        V0.97.0

        • Update: Wichtig - den Datenzweig .alert löschen vor dem Update. ansonsten KK
        • Verbesserung: UWZ/DWD Nachrichten enthalten jetzt Symbole an dem man den Typ mit einem Blick erkennt
        • .alert wurde angepasst. Die Datenpunkte begin und end sind jetzt value.time, da value.datetime nicht mehr erwünscht ist. (vorher Zeichenkette, jetzt Nummer)
        • .alert verbessert.
        warningTypesString[DWD] = [
            ['Gewitter','⚡'],
            ['Sturm', '🌪'],
            ['Regen', '🌧'],
            ['Schnee', '🌨'],
            ['Nebel', '🌁'],
            ['Frost', '🌡'],
            ['Glatteis', '❄'],
            ['Tauwetter', '⛄'],
            ['Hitzewarnungen', '🔥'],
            ['UV_Warnungen', '🔆']/*,
            ['Kuestenwarnungen', ''],
            ['Binnenseewarnungen', '']*/
        ];
        
        warningTypesString[UWZ] = [
            ['n_a', ''],
            ['unbekannt', ''],
            ['Sturm-Orkan', '🌪'],
            ['Schneefall', '🌨'],
            ['Starkregen', '🌧'],
            ['Extremfrost', '🌡'],
            ['Waldbrandgefahr', '🔥'],
            ['Gewitter', '⚡'],
            ['Glätte', '❄'],
            ['Hitze', '🔆'],
            ['Glatteisregen', '❄'],
            ['Bodenfrost', '🌡']
        ];
        

        todo:

        • das Ausfiltern von aufgehoben Meldungen beim "Verlängern" einer Warnung, will noch nicht so.
        • Anscheinend hat DWD auch Verbindungsprobleme. Umbau auf das selbe System wie Nina - also löschen erst nach 90 Minuten oder wenns abgelaufen ist.

        EDIT 2. Punkt zur todo hinzugefügt

        T Do not disturb
        T Do not disturb
        ticaki
        wrote on last edited by ticaki
        #244

        @ticaki sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:

        todo:

        • das Ausfiltern von aufgehoben Meldungen beim "Verlängern" einer Warnung, will noch nicht so.

        gefunden. Habs in 1 Zeile zusammengefasst.

        V0.97.1

        • 0.97.1 Fehler in Warnungsverlängerung behoben.
        //vorher
        966          if (i != -1) warnDatabase.new.splice(a--, 1);
        //nachher
        966          if (i != -1) { warnDatabase.new.splice(i, 1); if (i < a) t = --a; }        
        

        Vielleicht ist damit auch der andere ToDo Punkt erledigt. Mal sehen.

        Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

        Spenden

        crunchipC 1 Reply Last reply
        0
        • T ticaki

          @ticaki sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:

          todo:

          • das Ausfiltern von aufgehoben Meldungen beim "Verlängern" einer Warnung, will noch nicht so.

          gefunden. Habs in 1 Zeile zusammengefasst.

          V0.97.1

          • 0.97.1 Fehler in Warnungsverlängerung behoben.
          //vorher
          966          if (i != -1) warnDatabase.new.splice(a--, 1);
          //nachher
          966          if (i != -1) { warnDatabase.new.splice(i, 1); if (i < a) t = --a; }        
          

          Vielleicht ist damit auch der andere ToDo Punkt erledigt. Mal sehen.

          crunchipC Away
          crunchipC Away
          crunchip
          Forum Testing Most Active
          wrote on last edited by crunchip
          #245

          @ticaki nur so als Hinweis...wenn man das script kopiert hat und in iobroker einfügt, stimmen die Zeilennummern nicht überein. Da sind im oberen Teil zwischen den Beschreibungen hin und wieder, bzw mehr oder weniger die Leerzeilen unterschiedlich, somit gibt es einen Versatz.
          Die besagte Zeile finde ich z.b. bei mir bei 960.

          umgestiegen von Proxmox auf Unraid

          T 1 Reply Last reply
          0
          • crunchipC crunchip

            @ticaki nur so als Hinweis...wenn man das script kopiert hat und in iobroker einfügt, stimmen die Zeilennummern nicht überein. Da sind im oberen Teil zwischen den Beschreibungen hin und wieder, bzw mehr oder weniger die Leerzeilen unterschiedlich, somit gibt es einen Versatz.
            Die besagte Zeile finde ich z.b. bei mir bei 960.

            T Do not disturb
            T Do not disturb
            ticaki
            wrote on last edited by ticaki
            #246

            @crunchip
            Jo, ich weiß aber nicht wie ich sonst die Kurzfassung machen soll :) Leider ist die Korrektur noch nicht ausreichend.

            vielleicht so:

            suche zusätzlich noch nach:

            ca. 970

            if (a == t && isWarnIgnored(w)) {
            

            und ersetzte die Zeile mit folgenden Zeilen:

            }
                for (let a = 0; a < warnDatabase.new.length; a++) {
                    let w = warnDatabase.new[a];
                    if ( isWarnIgnored(w)) {
            

            Die Korrektur oben hat zwar den Fehler behoben, aber dann konnte es sich bei den ignorierten Warnungen verzählen. Ob das aber jemand ausser mir nutzt ist fraglich :)

            Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

            Spenden

            crunchipC 1 Reply Last reply
            0
            • T ticaki

              @crunchip
              Jo, ich weiß aber nicht wie ich sonst die Kurzfassung machen soll :) Leider ist die Korrektur noch nicht ausreichend.

              vielleicht so:

              suche zusätzlich noch nach:

              ca. 970

              if (a == t && isWarnIgnored(w)) {
              

              und ersetzte die Zeile mit folgenden Zeilen:

              }
                  for (let a = 0; a < warnDatabase.new.length; a++) {
                      let w = warnDatabase.new[a];
                      if ( isWarnIgnored(w)) {
              

              Die Korrektur oben hat zwar den Fehler behoben, aber dann konnte es sich bei den ignorierten Warnungen verzählen. Ob das aber jemand ausser mir nutzt ist fraglich :)

              crunchipC Away
              crunchipC Away
              crunchip
              Forum Testing Most Active
              wrote on last edited by
              #247

              @ticaki momentan ist es eh recht mau mit Wetterwarnungen, fällt also gar nicht auf 😉

              umgestiegen von Proxmox auf Unraid

              T 1 Reply Last reply
              0
              • crunchipC crunchip

                @ticaki momentan ist es eh recht mau mit Wetterwarnungen, fällt also gar nicht auf 😉

                T Do not disturb
                T Do not disturb
                ticaki
                wrote on last edited by ticaki
                #248

                @crunchip Bei mir stürmt es ganz schön, deshalb kommen jetzt auch Korrekturen :)

                Zum Script:

                const uFilterDuplicate = false;
                

                stellt das bitte auf false. funktioniert nach den ganzen umarbeiten nicht mehr. Zumindest nicht für Nina, hat bei mir Nina Warnungen ohne Datum verworfen und nur 1 von denen drin gelassen. Sind aktuell 3 Warnungen wegen Corona vorhanden.

                Ich denke ich werfe das raus. Das wofür es gedacht war, hab ich woanders schon funktionierend :)

                Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                Spenden

                crunchipC 1 Reply Last reply
                0
                • T ticaki

                  @crunchip Bei mir stürmt es ganz schön, deshalb kommen jetzt auch Korrekturen :)

                  Zum Script:

                  const uFilterDuplicate = false;
                  

                  stellt das bitte auf false. funktioniert nach den ganzen umarbeiten nicht mehr. Zumindest nicht für Nina, hat bei mir Nina Warnungen ohne Datum verworfen und nur 1 von denen drin gelassen. Sind aktuell 3 Warnungen wegen Corona vorhanden.

                  Ich denke ich werfe das raus. Das wofür es gedacht war, hab ich woanders schon funktionierend :)

                  crunchipC Away
                  crunchipC Away
                  crunchip
                  Forum Testing Most Active
                  wrote on last edited by
                  #249

                  @ticaki erledigt
                  Nina hab ich, wie gesagt , nicht in Verwendung, ist mir zuviel Action im Objektbaum:grin:

                  umgestiegen von Proxmox auf Unraid

                  T 1 Reply Last reply
                  0
                  • crunchipC crunchip

                    @ticaki erledigt
                    Nina hab ich, wie gesagt , nicht in Verwendung, ist mir zuviel Action im Objektbaum:grin:

                    T Do not disturb
                    T Do not disturb
                    ticaki
                    wrote on last edited by ticaki
                    #250

                    @crunchip sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:

                    @ticaki erledigt
                    Nina hab ich, wie gesagt , nicht in Verwendung, ist mir zuviel Action im Objektbaum:grin:

                    Mir auch, aber ich schau/höre/lese so gut wie keine "Sack Reis ist in China umgefallen" Nachrichten und will wenigstens Bescheid wissen, wenn wir Krieg haben oder so g

                    EDIT: Version 97.2

                    • Funktion hinter uFilterDuplicate raus geworfen
                    • Sprachausgabe hat bei einzelnen Entwarnungen die Zeitschaltuhr missachtet.
                      V97.2.1
                      -Doppelte Symbole bei Entwarnungen (Telegram, pushover) entfernt

                    Das ist mir kein Posting und das letzte nicht mal ne 97.3 wert :)

                    • Variable umbenannt.

                    Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                    Spenden

                    1 Reply Last reply
                    0
                    • T Do not disturb
                      T Do not disturb
                      ticaki
                      wrote on last edited by ticaki
                      #251

                      Update für UWZ-Script von dwm

                      // Version 1.03
                      // Author: dwm
                      // Änderungen ticaki
                      // 1.01 debuglevel keine Ausgabe bei 1;
                      // 1.02 let und variable "Fehler" behoben (wurde als Syntaxfehler angezeigt)
                      // 1.03 logausgabe fehler bei keiner Verbindung behoben
                      // 1.03 schedule gegen setInterval() getauscht.
                      
                      var intervalMinutes = 5;
                      var debuglevel = 1;
                      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 = 7;
                      
                      var url='http://feed.alertspro.meteogroup.com/AlertsPro/AlertsProPollService.php?method=getWarning&language=de&areaID=XXXAREAXXX';
                      
                      
                      /********************* Hier die Warnzellen-Id's eintragen *****************************/
                      var warncellid = ['UWZDE55606'];
                      /**************************************************************************************/
                      
                      
                      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 (let 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 (let 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),2);
                      
                         for (let 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);
                      
                      setInterval(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("UWZ Body: " + body,4);
                                     if (response !== undefined && typeof response === 'object' ) {
                                         dwmlog("AREA: "+getAreaFromURI(response.request.uri.href),4);
                                         if (response.statusCode == 200) {
                                             processData(getAreaFromURI(response.request.uri.href),body);
                                         }
                                     }
                                 });
                         }
                      },intervalMinutes * 60 * 1000);
                      
                      

                      behoben:

                      • Hatte keine Internetverbindung und das Script ist mit Fehlern ausgestiegen (behoben)
                      • schedule gegen setInterval() getauscht. Zugriff von allen Nutzern des Script zu einer bestimmten Uhrzeit auf den Server kann einem DDoS Angriff gleich kommen. Mit setIntervall wird dieser Zugriff zeitlich variieren. Wird wohl kein wirkliches Problem sein, aber gehört sich so. Jetzt läuft das Script das erste mal nach Startzeit + intervalMinutes Minuten.

                      Und ich hatte schon vorher alle logausgaben abgeschaltet, wenn man welche will muß man debuglevel auf 4 oder 5 stellen.

                      Und grundsätzlich, man fragt einen Server der einem kostenlos Daten gibt nicht alle paar Sekunden ab.

                      Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                      Spenden

                      sigi234S 1 Reply Last reply
                      2
                      • T ticaki

                        Update für UWZ-Script von dwm

                        // Version 1.03
                        // Author: dwm
                        // Änderungen ticaki
                        // 1.01 debuglevel keine Ausgabe bei 1;
                        // 1.02 let und variable "Fehler" behoben (wurde als Syntaxfehler angezeigt)
                        // 1.03 logausgabe fehler bei keiner Verbindung behoben
                        // 1.03 schedule gegen setInterval() getauscht.
                        
                        var intervalMinutes = 5;
                        var debuglevel = 1;
                        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 = 7;
                        
                        var url='http://feed.alertspro.meteogroup.com/AlertsPro/AlertsProPollService.php?method=getWarning&language=de&areaID=XXXAREAXXX';
                        
                        
                        /********************* Hier die Warnzellen-Id's eintragen *****************************/
                        var warncellid = ['UWZDE55606'];
                        /**************************************************************************************/
                        
                        
                        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 (let 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 (let 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),2);
                        
                           for (let 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);
                        
                        setInterval(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("UWZ Body: " + body,4);
                                       if (response !== undefined && typeof response === 'object' ) {
                                           dwmlog("AREA: "+getAreaFromURI(response.request.uri.href),4);
                                           if (response.statusCode == 200) {
                                               processData(getAreaFromURI(response.request.uri.href),body);
                                           }
                                       }
                                   });
                           }
                        },intervalMinutes * 60 * 1000);
                        
                        

                        behoben:

                        • Hatte keine Internetverbindung und das Script ist mit Fehlern ausgestiegen (behoben)
                        • schedule gegen setInterval() getauscht. Zugriff von allen Nutzern des Script zu einer bestimmten Uhrzeit auf den Server kann einem DDoS Angriff gleich kommen. Mit setIntervall wird dieser Zugriff zeitlich variieren. Wird wohl kein wirkliches Problem sein, aber gehört sich so. Jetzt läuft das Script das erste mal nach Startzeit + intervalMinutes Minuten.

                        Und ich hatte schon vorher alle logausgaben abgeschaltet, wenn man welche will muß man debuglevel auf 4 oder 5 stellen.

                        Und grundsätzlich, man fragt einen Server der einem kostenlos Daten gibt nicht alle paar Sekunden ab.

                        sigi234S Online
                        sigi234S Online
                        sigi234
                        Forum Testing Most Active
                        wrote on last edited by sigi234
                        #252

                        @ticaki

                        javascript.0	2020-03-25 22:12:01.982	warn	(1664) You are assigning a number to the state "javascript.0.wetterwarnung.alert.uwz.unbekannt.end" which expects a string. Please fix your code to use a string or change the state type to number. Th
                        javascript.0	2020-03-25 22:12:01.982	warn	(1664) at processImmediate (timers.js:658:5)
                        javascript.0	2020-03-25 22:12:01.982	warn	(1664) at tryOnImmediate (timers.js:676:5)
                        javascript.0	2020-03-25 22:12:01.982	warn	(1664) at runCallback (timers.js:705:18)
                        javascript.0	2020-03-25 22:12:01.982	warn	(1664) at Immediate.setImmediate (C:\Program Files\iobroker\Test\node_modules\iobroker.js-controller\lib\adapter.js:4851:37)
                        javascript.0	2020-03-25 22:12:01.982	warn	(1664) at Object.stateChange (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\main.js:450:25)
                        javascript.0	2020-03-25 22:12:01.982	warn	(1664) at Object.callback (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\lib\sandbox.js:1123:38)
                        javascript.0	2020-03-25 22:12:01.982	warn	(1664) at Object.onChangeDWD (script.js.Alexa.Ansage_UWZ10:1345:5)
                        javascript.0	2020-03-25 22:12:01.982	warn	(1664) at onChange (script.js.Alexa.Ansage_UWZ10:1360:9)
                        javascript.0	2020-03-25 22:12:01.982	warn	(1664) at addDatabaseData (script.js.Alexa.Ansage_UWZ10:1510:17)
                        javascript.0	2020-03-25 22:12:01.982	warn	(1664) at setAlertState (script.js.Alexa.Ansage_UWZ10:761:21)
                        javascript.0	2020-03-25 22:12:01.982	warn	(1664) at setState (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\lib\sandbox.js:1426:20)
                        javascript.0	2020-03-25 22:12:01.981	warn	(1664) You are assigning a number to the state "javascript.0.wetterwarnung.alert.uwz.unbekannt.begin" which expects a string. Please fix your code to use a string or change the state type to number.
                        javascript.0	2020-03-25 22:12:01.974	warn	(1664) at processImmediate (timers.js:658:5)
                        javascript.0	2020-03-25 22:12:01.974	warn	(1664) at tryOnImmediate (timers.js:676:5)
                        javascript.0	2020-03-25 22:12:01.974	warn	(1664) at runCallback (timers.js:705:18)
                        javascript.0	2020-03-25 22:12:01.974	warn	(1664) at Immediate.setImmediate (C:\Program Files\iobroker\Test\node_modules\iobroker.js-controller\lib\adapter.js:4851:37)
                        javascript.0	2020-03-25 22:12:01.974	warn	(1664) at Object.stateChange (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\main.js:450:25)
                        javascript.0	2020-03-25 22:12:01.974	warn	(1664) at Object.callback (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\lib\sandbox.js:1123:38)
                        javascript.0	2020-03-25 22:12:01.974	warn	(1664) at Object.onChangeDWD (script.js.Alexa.Ansage_UWZ10:1345:5)
                        javascript.0	2020-03-25 22:12:01.974	warn	(1664) at onChange (script.js.Alexa.Ansage_UWZ10:1360:9)
                        javascript.0	2020-03-25 22:12:01.974	warn	(1664) at addDatabaseData (script.js.Alexa.Ansage_UWZ10:1510:17)
                        javascript.0	2020-03-25 22:12:01.974	warn	(1664) at setAlertState (script.js.Alexa.Ansage_UWZ10:762:21)
                        javascript.0	2020-03-25 22:12:01.974	warn	(1664) at setState (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\lib\sandbox.js:1426:20)
                        javascript.0	2020-03-25 22:12:01.974	warn	(1664) You are assigning a number to the state "javascript.0.wetterwarnung.alert.dwd.Sturm.end" which expects a string. Please fix your code to use a string or change the state type to number. This w
                        javascript.0	2020-03-25 22:12:01.973	warn	(1664) at processImmediate (timers.js:658:5)
                        javascript.0	2020-03-25 22:12:01.973	warn	(1664) at tryOnImmediate (timers.js:676:5)
                        javascript.0	2020-03-25 22:12:01.973	warn	(1664) at runCallback (timers.js:705:18)
                        javascript.0	2020-03-25 22:12:01.973	warn	(1664) at Immediate.setImmediate (C:\Program Files\iobroker\Test\node_modules\iobroker.js-controller\lib\adapter.js:4851:37)
                        javascript.0	2020-03-25 22:12:01.973	warn	(1664) at Object.stateChange (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\main.js:450:25)
                        javascript.0	2020-03-25 22:12:01.973	warn	(1664) at Object.callback (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\lib\sandbox.js:1123:38)
                        javascript.0	2020-03-25 22:12:01.973	warn	(1664) at Object.onChangeDWD (script.js.Alexa.Ansage_UWZ10:1345:5)
                        javascript.0	2020-03-25 22:12:01.973	warn	(1664) at onChange (script.js.Alexa.Ansage_UWZ10:1360:9)
                        javascript.0	2020-03-25 22:12:01.973	warn	(1664) at addDatabaseData (script.js.Alexa.Ansage_UWZ10:1510:17)
                        javascript.0	2020-03-25 22:12:01.973	warn	(1664) at setAlertState (script.js.Alexa.Ansage_UWZ10:761:21)
                        javascript.0	2020-03-25 22:12:01.973	warn	(1664) at setState (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\lib\sandbox.js:1426:20)
                        javascript.0	2020-03-25 22:12:01.973	warn	(1664) You are assigning a number to the state "javascript.0.wetterwarnung.alert.dwd.Sturm.begin" which expects a string. Please fix your code to use a string or change the state type to number. This
                        javascript.0	2020-03-25 22:12:01.971	info	(1664) script.js.Alexa.Ansage_UWZ10: Add DWD warning to database. headline: Amtliche WARNUNG vor WINDBÖEN
                        

                        Version 0.97.2.1

                        Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                        Immer Daten sichern!

                        1 Reply Last reply
                        0
                        • T ticaki

                          V0.97.0

                          • Update: Wichtig - den Datenzweig .alert löschen vor dem Update. ansonsten KK
                          • Verbesserung: UWZ/DWD Nachrichten enthalten jetzt Symbole an dem man den Typ mit einem Blick erkennt
                          • .alert wurde angepasst. Die Datenpunkte begin und end sind jetzt value.time, da value.datetime nicht mehr erwünscht ist. (vorher Zeichenkette, jetzt Nummer)
                          • .alert verbessert.
                          warningTypesString[DWD] = [
                              ['Gewitter','⚡'],
                              ['Sturm', '🌪'],
                              ['Regen', '🌧'],
                              ['Schnee', '🌨'],
                              ['Nebel', '🌁'],
                              ['Frost', '🌡'],
                              ['Glatteis', '❄'],
                              ['Tauwetter', '⛄'],
                              ['Hitzewarnungen', '🔥'],
                              ['UV_Warnungen', '🔆']/*,
                              ['Kuestenwarnungen', ''],
                              ['Binnenseewarnungen', '']*/
                          ];
                          
                          warningTypesString[UWZ] = [
                              ['n_a', ''],
                              ['unbekannt', ''],
                              ['Sturm-Orkan', '🌪'],
                              ['Schneefall', '🌨'],
                              ['Starkregen', '🌧'],
                              ['Extremfrost', '🌡'],
                              ['Waldbrandgefahr', '🔥'],
                              ['Gewitter', '⚡'],
                              ['Glätte', '❄'],
                              ['Hitze', '🔆'],
                              ['Glatteisregen', '❄'],
                              ['Bodenfrost', '🌡']
                          ];
                          

                          todo:

                          • das Ausfiltern von aufgehoben Meldungen beim "Verlängern" einer Warnung, will noch nicht so.
                          • Anscheinend hat DWD auch Verbindungsprobleme. Umbau auf das selbe System wie Nina - also löschen erst nach 90 Minuten oder wenns abgelaufen ist.

                          EDIT 2. Punkt zur todo hinzugefügt

                          T Do not disturb
                          T Do not disturb
                          ticaki
                          wrote on last edited by ticaki
                          #253

                          @ticaki sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:

                          V0.97.0

                          • Update: Wichtig - den Datenzweig .alert löschen vor dem Update. ansonsten KK

                          @sigi234
                          :) lösche den Datenzweig und starte das Script neu. EDIT: Nur die Punkte unter .alert. müssen gelöscht werden

                          Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                          Spenden

                          sigi234S 1 Reply Last reply
                          0
                          • T ticaki

                            @ticaki sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:

                            V0.97.0

                            • Update: Wichtig - den Datenzweig .alert löschen vor dem Update. ansonsten KK

                            @sigi234
                            :) lösche den Datenzweig und starte das Script neu. EDIT: Nur die Punkte unter .alert. müssen gelöscht werden

                            sigi234S Online
                            sigi234S Online
                            sigi234
                            Forum Testing Most Active
                            wrote on last edited by
                            #254

                            @ticaki sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:

                            @sigi234
                            :) lösche den Datenzweig und starte das Script neu. EDIT: Nur die Punkte unter .alert. müssen gelöscht werden

                            Ok, hatte die neue Version kopiert und darauf anscheinend vergessen. Sollte das in der Neuen Version nicht weg sein?

                            Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                            Immer Daten sichern!

                            T 1 Reply Last reply
                            0
                            • sigi234S sigi234

                              @ticaki sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:

                              @sigi234
                              :) lösche den Datenzweig und starte das Script neu. EDIT: Nur die Punkte unter .alert. müssen gelöscht werden

                              Ok, hatte die neue Version kopiert und darauf anscheinend vergessen. Sollte das in der Neuen Version nicht weg sein?

                              T Do not disturb
                              T Do not disturb
                              ticaki
                              wrote on last edited by
                              #255

                              @sigi234
                              Ich hoffe ich verstehe dich richtig:
                              Ich hab die Datenart von begin und end unter .alert. geändert. Ist jetzt eine Nummer, vorher war es eine Zeichenkette. Das soll auch so bleiben, ein Datum als String in einen Datenpunkt schreiben ist "falsch" :)

                              Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                              Spenden

                              sigi234S 1 Reply Last reply
                              0
                              • T ticaki

                                @sigi234
                                Ich hoffe ich verstehe dich richtig:
                                Ich hab die Datenart von begin und end unter .alert. geändert. Ist jetzt eine Nummer, vorher war es eine Zeichenkette. Das soll auch so bleiben, ein Datum als String in einen Datenpunkt schreiben ist "falsch" :)

                                sigi234S Online
                                sigi234S Online
                                sigi234
                                Forum Testing Most Active
                                wrote on last edited by
                                #256

                                @ticaki sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:

                                Ist jetzt eine Nummer, vorher war es eine Zeichenkette.

                                Das stimmt.

                                Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                                Immer Daten sichern!

                                1 Reply Last reply
                                0
                                • Chris_71C Offline
                                  Chris_71C Offline
                                  Chris_71
                                  wrote on last edited by
                                  #257

                                  @ticaki
                                  Irgendwie bekomme ich keine Nina-Warnungen (zB jetzt wegen Corona) angezeigt.
                                  Vielleicht habe ich ja auch nur die Variablen falsch befüllt.

                                  var uGemeinde = 'Unna';
                                  var uLandkreis = '05978';

                                  T 1 Reply Last reply
                                  0
                                  • Chris_71C Chris_71

                                    @ticaki
                                    Irgendwie bekomme ich keine Nina-Warnungen (zB jetzt wegen Corona) angezeigt.
                                    Vielleicht habe ich ja auch nur die Variablen falsch befüllt.

                                    var uGemeinde = 'Unna';
                                    var uLandkreis = '05978';

                                    T Do not disturb
                                    T Do not disturb
                                    ticaki
                                    wrote on last edited by ticaki
                                    #258

                                    @Chris_71
                                    Hast du unter .config. in der Objektansicht Nina auf true?
                                    Was passiert wenn du unter "command." auf einen der Buttons klickst?

                                    Beim ersten Test ist das zwar nervig, aber nur das Starten des Scripts löst keine Nachrichten aus, das Script muß laufen während die Warnung eintrifft. Sonst würde es jedesmal Nachrichten hageln, wenn das Script gestartet wird.

                                    Davon unabhängig. uLandkreis ist der Name deines Landkreises nicht die Zahl. z.B. Kreis Bitburg... dann schreibe da 'Bitburg' rein. Das ist aber optional.

                                    EDIT: Eigentlich sollte beim Modus umschalten Nachrichten Versand werden. Muß das nochmal testen.

                                    Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                                    Spenden

                                    1 Reply Last reply
                                    0
                                    • crunchipC Away
                                      crunchipC Away
                                      crunchip
                                      Forum Testing Most Active
                                      wrote on last edited by
                                      #259

                                      Ich checks grad nicht mehr, endlich heut mal ne Wetterwarnung im DWD, bekomme aber gar keine Meldung, auch manuell kommt nix
                                      extra nochmal das script von git geladen, aber da kommt einfach nichts

                                      umgestiegen von Proxmox auf Unraid

                                      1 Reply Last reply
                                      0
                                      • T Do not disturb
                                        T Do not disturb
                                        ticaki
                                        wrote on last edited by ticaki
                                        #260

                                        Stand etwas im log bei der manuellen Auslösung? Benutzt du Telegramm und email?
                                        EDIT: Bei mir läuft es, nur UWZ Meldungen gibt es bei mir so gut wie nie.

                                        Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                                        Spenden

                                        crunchipC 1 Reply Last reply
                                        0
                                        • Chris_71C Offline
                                          Chris_71C Offline
                                          Chris_71
                                          wrote on last edited by
                                          #261

                                          @ticaki
                                          Unter .config. steht nina auf true - hab alle 3 (UWZ,DWD und Nina) auf true
                                          Selbst wenn die Warnhinweise bei nina aktualisiert werden wird keine Warnung per Pushover oder Alexa ausgegeben.
                                          Über den Button .commands.alexa oder .pushover wird nur der Hinweis das alle Warnmeldungen aufgehoben sind, da es im Moment keine Meldungen bei DWD oder UWZ gibt, übermittelt .

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          597

                                          Online

                                          32.6k

                                          Users

                                          82.3k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe