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.
    • Q
      Qlink last edited by

      Hi Leute,

      ich habe diese Anfrage auch schon im Homematic Forum gestellt, leider nur mit mäßigem Erfolg.

      Sämtliche Unwetterwarnungslösungen/scripte die ich bis jetzt für Homematic/iobroker gefunden habe laufen mit dwd.de und sind somit "nur" für Deutschland zu gebrauchen.

      Hat schon jemand eine Lösung für Österreich bzw. Europa in Verwendung ?

      Wenn nein, lässt sich eventuell die Variante(unwetterzentrale.de) aus dem fhem Forum auf iobroker adaptieren ?

      https://forum.fhem.de/index.php?topic=51233.0

      Und falls ja, findet sich jemand, der das auch scripttechnisch umsetzen kann oder einen Adapter daraus basteln kann?

      Beste Grüße

      1 Reply Last reply Reply Quote 0
      • D
        dwm last edited by Negalein

        Hm …

        Es findet sich leider sehr wenig Information über die API. Trotzdem, so ganz auf die Schnelle mit einer Abwandlung meines DWD Proof of Concepts:

        var AdapterId = "javascript.0";
        var ChannelId = "UWZ";
        var forceInitStates = false;
        var numOfWarnings = 3;
        var warncellid = 'UWZDE92540'; // HIER DIE EIGENE AREA ID eintragen!
        //==============================================================
        var url='http://feed.alertspro.meteogroup.com/AlertsPro/AlertsProPollService.php?method=getWarning&language=de&areaID=XXXAREAXXX';
        url=url.replace("XXXAREAXXX",warncellid);
        function createStates(n){
            for (var i=0; i<n; i++)/{/createstate(channelid+".warning."+i+".name","",forceinitstates,{type:/'string'});/createstate(channelid+".warning."+i+".text","",forceinitstates,{type:/createstate(channelid+".warning."+i+".shorttext","",forceinitstates,{type:/createstate(channelid+".warning."+i+".longtext","",forceinitstates,{type:/createstate(channelid+".warning."+i+".object","",forceinitstates,{type:/createstate(channelid+".warning."+i+".begin",0,forceinitstates,{type:/'number'});/createstate(channelid+".warning."+i+".end",0,forceinitstates,{type:/createstate(channelid+".warning."+i+".severity",0,forceinitstates,{type:/createstate(channelid+".warning."+i+".type",0,forceinitstates,{type:/}/function/processresultentry(w)/this.object="JSON.stringify(w);" this.begin="new" date(w.dtgstart).gettime();/this.end="new" date(w.dtgend).gettime();/this.longtext="w.payload.translationsLongText.DE;" this.shorttext="w.payload.translationsShortText.DE;" this.severity="w.severity;" this.type="w.type;" processdata(data)/if/(!data)/return;/var/thedata="JSON.parse(data);" warnings="[];" (thedata.results.length="">0) {
                for (i=0; i<thedata.results.length; 3/10/i++)/{/warnings.push(new/processresultentry(thedata.results[i]));/}/*/warnings.sort(function(a,b){/var/asort="a.urgency*1000+a.category*100+a.severity;" bsort="b.urgency*1000+b.category*100+b.severity;" return/bsort-asort;/});/for/(i="0;" i<numofwarnings;/if/(i<warnings.length)/setstate(channelid+".warning."+i+".longtext",warnings[i].longtext);/setstate(channelid+".warning."+i+".shorttext",warnings[i].shorttext);/setstate(channelid+".warning."+i+".object","{}");/setstate(channelid+".warning."+i+".begin",warnings[i].begin);/setstate(channelid+".warning."+i+".end",warnings[i].end);/setstate(channelid+".warning."+i+".severity",warnings[i].severity);/setstate(channelid+".warning."+i+".type",warnings[i].type);/else/setstate(channelid+".warning."+i+".longtext","");/setstate(channelid+".warning."+i+".shorttext","");/setstate(channelid+".warning."+i+".begin",0);/setstate(channelid+".warning."+i+".end",0);/setstate(channelid+".warning."+i+".severity",0);/setstate(channelid+".warning."+i+".type",0);/createstates(numofwarnings);/request="require('request');" schedule/("*/*",/function(){/request({/uri:/url,/method:/"get",/timeout:/10000,/followredirect:/true,/maxredirects:/},/function(error,/response,/body)/(response.statuscode="=" 200)/processdata(body);/<e=""></thedata.results.length;></n;>`
        

        Im Script die eigene AREA Id eintragen, dann wird alle drei Minuten die UWZ API aufgerufen und in javascript.0.UWZ.warnung.... geschrieben.
        Wie man die Area ID rausfindet, stand irgendwo bei dem FHEM beschrieben.
        Ich konnte auf die Schnelle nicht rausfinden, was severity und type jetzt bedeuten, hab allerdings auch nicht lange danach gesucht.
        Deswegen ist auch eine Sortierung der Warnungen abgeschaltet ... und Farbcode gibts auch keinen.
        Aber schon mal ein Anfang 🙂
        CU
        Werner

        1 Reply Last reply Reply Quote 0
        • Homoran
          Homoran Global Moderator Administrators last edited by

          @dwm:

          Ich konnte auf die Schnelle nicht rausfinden, was severity und type jetzt bedeuten `
          Beim DWD ist die severity die Warnstufe 0=keine 1= leicht=gelb 2= rot und 4 = lila, da wären dann auch schon die Farben. Außerdem gibt es noch Hitze und Ozon.

          Type müsste ich auch noch suchen.

          Gruß

          Rainer

          1 Reply Last reply Reply Quote 0
          • Q
            Qlink last edited by

            Hi Werner,

            vielen Dank für deine Hilfe.

            Skript läuft soweit:
            415_uwz.png

            Wie kann ich die Zahlen bei begin und end deuten ?

            Der Severity Wert dürfte dann bei UWZ wohl bis 10 gehen oder ?

            so in der art

            1= kein unwetter in sicht

            5= starkes unwetter

            10= weltuntergang

            oder ?

            1 Reply Last reply Reply Quote 0
            • D
              dwm last edited by

              Die Zahlen bei begin und end sind der Anfangs- und Endzeitpunkt in ms seit dem 1.1.1970.

              Hm, ja. Könnte man noch "human readable" gestalten :D.

              Was severity und type bei der Unwetterzentrale jetzt heissen … keine Ahnung. Wie Hormoran schrieb, beim DWD ist das gut dokumentiert.

              type=7 ist wohl "Gewitter"... aber das ist mit der Stange im Nebel stochern. Mal sehen, ob sich da nicht im Netz eine Doku findet...

              Ein Bug ist auch noch drin ... das "object" sollte eigentlich das JSON der Warnung zeigen.

              ! ```
              var AdapterId = "javascript.0"; var ChannelId = "UWZ"; ! var forceInitStates = true; var numOfWarnings = 3; ! var warncellid = 'UWZDE92540'; // HIER DIE EIGENE AREA ID eintragen! ! //============================================================== var url='http://feed.alertspro.meteogroup.com/AlertsPro/AlertsProPollService.php?method=getWarning&language=de&areaID=XXXAREAXXX'; ! url=url.replace("XXXAREAXXX",warncellid); ! function createStates(n){ for (var i=0; i<n; i++)/{/createstate(channelid+".warning."+i+".name","",forceinitstates,{type:/'string'});/createstate(channelid+".warning."+i+".text","",forceinitstates,{type:/createstate(channelid+".warning."+i+".shorttext","",forceinitstates,{type:/createstate(channelid+".warning."+i+".longtext","",forceinitstates,{type:/createstate(channelid+".warning."+i+".object","",forceinitstates,{type:/createstate(channelid+".warning."+i+".begin",0,forceinitstates,{type:/createstate(channelid+".warning."+i+".end",0,forceinitstates,{type:/createstate(channelid+".warning."+i+".severity",0,forceinitstates,{type:/'number'});/createstate(channelid+".warning."+i+".type",0,forceinitstates,{type:/}/function/processresultentry(w)/this.object="JSON.stringify(w);" this.begin="formatDate(new" date(w.dtgstart),"dd.mm.yyyy/hh:mm");/this.end="formatDate(new" date(w.dtgend),"dd.mm.yyyy/this.longtext="w.payload.translationsLongText.DE;" this.shorttext="w.payload.translationsShortText.DE;" this.severity="w.severity;" this.type="w.type;" processdata(data)/if/(!data)/return;/var/thedata="JSON.parse(data);" warnings="[];" (thedata.results.length="">0) { for (i=0; i<thedata.results.length; 3/10/i++)/{/warnings.push(new/processresultentry(thedata.results[i]));/}/*/warnings.sort(function(a,b){/var/asort="a.urgency*1000+a.category*100+a.severity;" bsort="b.urgency*1000+b.category*100+b.severity;" return/bsort-asort;/});/for/(i="0;" i<numofwarnings;/if/(i<warnings.length)/setstate(channelid+".warning."+i+".longtext",warnings[i].longtext);/setstate(channelid+".warning."+i+".shorttext",warnings[i].shorttext);/setstate(channelid+".warning."+i+".object","{}");/setstate(channelid+".warning."+i+".begin",warnings[i].begin);/setstate(channelid+".warning."+i+".end",warnings[i].end);/setstate(channelid+".warning."+i+".severity",warnings[i].severity);/setstate(channelid+".warning."+i+".type",warnings[i].type);/else/setstate(channelid+".warning."+i+".longtext","");/setstate(channelid+".warning."+i+".shorttext","");/setstate(channelid+".warning."+i+".begin",0);/setstate(channelid+".warning."+i+".end",0);/setstate(channelid+".warning."+i+".severity",0);/setstate(channelid+".warning."+i+".type",0);/createstates(numofwarnings);/request="require('request');" schedule/("*/*",/function(){/request({/uri:/url,/method:/"get",/timeout:/10000,/followredirect:/true,/maxredirects:/},/function(error,/response,/body)/(response.statuscode="=" 200)/processdata(body);/<e=""></thedata.results.length;></n;>
              ! ... object drin und begin und end sind lesbar.
              ! Bitte aus der Zeile
              ~~[code]~~var forceInitStates = true; [/code]
              nach dem ersten Mal laufenlassen wieder ein
              ~~[code]~~var forceInitStates = false; [/code]
              ! machen - dient dazu, das Neuanlegen der Datenpunkte für begin und end zu erzwingen, da sich ja der Typ geändert hat.
              ! CU
              ! Werner[/i][/i][/i][/i][/i][/i][/i]

              S 1 Reply Last reply Reply Quote 0
              • Q
                Qlink last edited by

                Hi Werner,

                ich hätte heute probiert dein überarbeitetes Skript laufen zu lassen.

                Ich habe nach dem ersten Mal auch forceInitStates von true auf false abgeändert, aber es erscheint trotzdem folgende FM im Log:

                415_uwzlog.png

                Es werden auch keine Werte unter Objects angezeigt.

                Wie bekomme ich das Skript korrekt zum Laufen ?

                Beste Grüße

                1 Reply Last reply Reply Quote 0
                • D
                  dwm last edited by

                  Hier eine aktualisierte Version:

                  ! ```
                  `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 = ['UWZDE77756','UWZDE85570'];
                  /
                  *********************************************************/
                  ! 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; 0/1/2/3/4/5/j++)/{/areachannelid="ChannelId+&quot;.&quot;+warncellid[j];" for/(var/i="0;" i<n;/i++)/createstate(areachannelid+".warning."+i+".shorttext","",forceinitstates,{type:/'string'});/createstate(areachannelid+".warning."+i+".longtext","",forceinitstates,{type:/createstate(areachannelid+".warning."+i+".object","",forceinitstates,{type:/createstate(areachannelid+".warning."+i+".begin","",forceinitstates,{type:/createstate(areachannelid+".warning."+i+".end","",forceinitstates,{type:/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,/createstate(areachannelid+".warning."+i+".uwzcolor",0,forceinitstates,{type:'number'});/createstate(areachannelid+".warning."+i+".htmlshort","",forceinitstates,{type:/createstate(areachannelid+".warning."+i+".htmllong","",forceinitstates,{type:/}/function/getuwzlevel/(warnname){/var/result="-1;" -1/is/an/error!/alert="warnName.split(&quot;_&quot;);" colors="[&quot;green&quot;,&quot;darkgreen&quot;,&quot;yellow&quot;,&quot;orange&quot;,&quot;red&quot;,&quot;violet&quot;];" if/(alert[0]="=&quot;notice&quot;)" else/(alert[1]="=" "forewarn")/return/result;/getuwzurgency/immediate;/getlevelcolor(uwzlevel)/uwzcolor="[" 0x00ff00,/-/grün/0x009b00,/dunkelgrün/0xffff00,/gelb/wetterwarnungen/(stufe/1)/0xffb400,/orange/warnungen/vor/markantem/wetter/2)/0xff0000,/rot/unwetterwarnungen/3)/0xff00ff,/violett/extremem/unwetter/4)/];/(uwzlevel="">=0 && uwzLevel<=5)
                      return uwzColor[uwzLevel];
                  else
                      return 0;
                  

                  }

                  ! function createHTMLShort(w){
                  var html = '';

                  var theData = JSON.parse(w.object);
                  
                  html += '
                  

                  ! ### ';
                  if (w.uwzUrgency==1) html+="Vorwarnung vor "; else html+="Warnung vor ";
                  html += UWZTypesArray[w.type];
                  html +="
                  ! ";
                  html += "
                  ! Zeitraum von "+formatDate(new Date(theData.dtgStart1000),"WW, DD. OO YYYY hh:mm")+" Uhr bis "+formatDate(new Date(theData.dtgEnd1000),"WW, DD. OO YYYY hh:mm")+" Uhr
                  ! ";
                  html += '
                  ! '+w.ShortText+'
                  ! ';
                  html += "";
                  return html;
                  }
                  ! function createHTMLLong(w){
                  var html = '';

                  var theData = JSON.parse(w.object);
                  
                  html += '
                  

                  ! ### ';
                  if (w.uwzUrgency==1) html+="Vorwarnung vor "; else html+="Warnung vor ";
                  html += UWZTypesArray[w.type];
                  html +="
                  ! ";
                  html += "
                  ! Zeitraum von "+formatDate(new Date(theData.dtgStart1000),"WW, DD. OO YYYY hh:mm")+" Uhr bis "+formatDate(new Date(theData.dtgEnd1000),"WW, DD. OO YYYY hh:mm")+" Uhr
                  ! ";
                  html += '
                  ! '+w.LongText+'
                  ! ';
                  html += "";
                  return html;
                  }
                  ! function processResultEntry(w) {
                  this.object = JSON.stringify(w);
                  ! this.begin=formatDate(new Date(w.dtgStart1000),"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; 10/i++)/{/warnings.push(new/processresultentry(thedata.results[i]));/}/warnings.sort(function(a,b){/var/asort="a.severity;" bsort="b.severity;" return/bsort-asort;/});/dwmlog(json.stringify(warnings));/for/(i="0;" i<numofwarnings;/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)/searchstr="&amp;areaID=" ;/n="uri.search(searchstr);" result="uri.slice(n+searchstr.length,uri.length);" result;/createstates(numofwarnings);/processdata(jsond2);/request="require('request');" schedule/("*/*/*",/function(){/(var/i="0;" i<warncellid.length;/request({/uri:/url.replace("xxxareaxxx",warncellid[i]),/method:/"get",/timeout:/10000,/followredirect:/true,/maxredirects:/},/function(error,/response,/body)/dwmlog("uwz/error"/+/error,2);/response:/"/json.stringify(response),4);/dwmlog("area:/"+getareafromuri(response.request.uri.href),4);/body:/body,4);/(response.statuscode="=" 200)/processdata(getareafromuri(response.request.uri.href),body);/<e=""></thedata.results.length;></warncellid.length;>`
                  

                  ! - Farbcodes sind drin
                  ! - Type wird aufgelöst
                  ! - Kann mehrere Warnzellen-Ids abfragen[/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i]

                  1 Reply Last reply Reply Quote 0
                  • Q
                    Qlink last edited by

                    Hi Werner,

                    ich hätte jetzt die aktualisierte Version von dir probiert.

                    Ich muss doch nur die UWZ ID im Script eintragen oder ?

                    Sonst muss nichts geändert, angelegt oder ähnliches gemacht werden richtig ?

                    Ich erhalte nämlich folgende Meldungen im Log:

                    javascript.0	2018-06-19 21:45:00.691	info	script.js.Unwetter_Warnung_2: []
                    javascript.0	2018-06-19 21:45:00.691	info	script.js.Unwetter_Warnung_2: UWZ Body: {"results":[],"generator":"PHPjf"}
                    javascript.0	2018-06-19 21:45:00.691	info	script.js.Unwetter_Warnung_2: AREA: UWZxxxxxx
                    javascript.0	2018-06-19 21:44:00.651	info	script.js.Unwetter_Warnung_2: []
                    javascript.0	2018-06-19 21:44:00.651	info	script.js.Unwetter_Warnung_2: UWZ Body: {"results":[],"cached":1}
                    javascript.0	2018-06-19 21:44:00.651	info	script.js.Unwetter_Warnung_2: AREA: UWZxxxxx
                    

                    Ich habe auch in den entsprechenden Object IDs keine Werte …

                    Kannst du mir weiterhelfen ?

                    Beste Grüße

                    1 Reply Last reply Reply Quote 0
                    • D
                      dwm last edited by

                      Genau, man muss die "Warncellid" im Script eintragen:

                      /
                      ********************* Hier die Warnzellen-Id's eintragen *****************************/
                      var warncellid = ['UWZDE77756','UWZDE85570'];
                      /**************************************************************************************/
                      
                      

                      Wohlgemerkt, das ist ein Array, hier können mehrere definiert werden.

                      Dann wird das jede Minute abgefragt (wenns nicht so oft sein soll, den schedule ändern).

                      Die Meldung im Log

                      javascript.0	2018-06-20 10:37:00.583	info	script.js.aa.uwz_wetter: UWZ Body: {"results":[],"cached":1}
                      javascript.0	2018-06-20 10:37:00.583	info	script.js.aa.uwz_wetter: AREA: UWZDE85570
                      
                      

                      krieg ich grad auch, das ist normal (UWZ liefert da grad keine Message, weil keine Warnung).

                      Testweise kannst Du was in der Freiburger Gegend eintragen, da ist grad eine Hitzewarnung aktiv:

                      javascript.0	2018-06-20 10:36:00.471	info	script.js.aa.uwz_wetter: [{"object":"{\"center\":\"UWZ\",\"areaID\":\"UWZDE79618\",\"dtgEnd\":1529517600,\"areaType\":\"UWZCODE\",\"dtgStart\":1529492400,\"payload\":{\"translationsLongText\":{\"DE\"
                      javascript.0	2018-06-20 10:36:00.470	info	script.js.aa.uwz_wetter: UWZ Body: {"results":[{"center":"UWZ","areaID":"UWZDE79618","dtgEnd":1529517600,"areaType":"UWZCODE","dtgStart":1529492400,"payload":{"translationsLongText":{"DE":"F\u00fcr H
                      javascript.0	2018-06-20 10:36:00.470	info	script.js.aa.uwz_wetter: AREA: UWZDE77756
                      
                      

                      .. und da kommt dann auch was zurück.

                      1 Reply Last reply Reply Quote 0
                      • Q
                        Qlink last edited by

                        Stimmt,

                        mit der ID bekomme ich Daten rein.

                        Heißt das, dass wenn es keine Unwetterwarnung gibt automatisch immer alle Werte(severity, uwzcolor, uwzlevel) auf 0 sind ?

                        1 Reply Last reply Reply Quote 0
                        • D
                          dwm last edited by

                          Ganz genau, wenn nichts gemeldet wird steht da 0.

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

                            Hallo,

                            wo im Script kann ich den Intervall der Abfragen einstellen? Er fragt ja alle 3 Minuten ab. Möchte es auf 1 Stunde ändern.

                            1 Reply Last reply Reply Quote 0
                            • D
                              dwm last edited by

                              Das wird im schedule festgelegt.

                              Jede Stunde wäre z.B.:

                              schedule ("3 * * * *", function(){
                              
                              

                              dann wird das script zu jeder vollen Stunde in der dritten Minute ausgeführt, also 00:03, 01:03 usw.

                              Die "CRON" Taste beim Script Editor oben rechts erzeugt solche Schedule strings für Dich …

                              D

                              1 Reply Last reply Reply Quote 0
                              • F
                                Fatmax last edited by

                                Ich habe das überarbeitete Skript probiert, bekomme aber leider keine Werte abgerufen, die Objekte werden jedoch korrekt angelegt.

                                Folgende ID habe ich eingetragen: UWZAT3180

                                Ich habe es auch mit den ID's aus den Skripts probiert, es werden aber niemals Werte abgerufen.

                                Bei meiner oben genannten ID sind lt. Homepage Unwetterwarnungen aktiv.

                                Hier der Log aus Iobroker:

                                javascript.0	2018-07-09 22:34:01.345	info	script.js.scripte.Diverse.Unwetterwarnung: []
                                javascript.0	2018-07-09 22:34:01.344	info	script.js.scripte.Diverse.Unwetterwarnung: UWZ Body: {"results":[],"cached":1}
                                javascript.0	2018-07-09 22:34:01.330	info	script.js.scripte.Diverse.Unwetterwarnung: AREA: UWZAT3180
                                
                                

                                Kann mir hier jemand weiterhelfen?

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

                                  @Fatmax:

                                  Ich habe das überarbeitete Skript probiert, bekomme aber leider keine Werte abgerufen, die Objekte werden jedoch korrekt angelegt.

                                  Folgende ID habe ich eingetragen: UWZAT3180

                                  Ich habe es auch mit den ID's aus den Skripts probiert, es werden aber niemals Werte abgerufen.

                                  Bei meiner oben genannten ID sind lt. Homepage Unwetterwarnungen aktiv.

                                  Hier der Log aus Iobroker:

                                  javascript.0	2018-07-09 22:34:01.345	info	script.js.scripte.Diverse.Unwetterwarnung: []
                                  javascript.0	2018-07-09 22:34:01.344	info	script.js.scripte.Diverse.Unwetterwarnung: UWZ Body: {"results":[],"cached":1}
                                  javascript.0	2018-07-09 22:34:01.330	info	script.js.scripte.Diverse.Unwetterwarnung: AREA: UWZAT3180
                                  
                                  

                                  Kann mir hier jemand weiterhelfen? `

                                  Hi

                                  Soll 3180 für Lilienfeld, Niederösterreich stehen !?.

                                  <u>AREA ID über Lat,Lon herausfinden</u>

                                  http://feed.alertspro.meteogroup.com/Al … =15.594546

                                  3180 Lilienfeld, Niederösterreich --> [{"AREA_ID":"UWZAT00374"}]

                                  1 Reply Last reply Reply Quote 0
                                  • F
                                    Fatmax last edited by

                                    @m0rph:

                                    @Fatmax:

                                    Ich habe das überarbeitete Skript probiert, bekomme aber leider keine Werte abgerufen, die Objekte werden jedoch korrekt angelegt.

                                    Folgende ID habe ich eingetragen: UWZAT3180

                                    Ich habe es auch mit den ID's aus den Skripts probiert, es werden aber niemals Werte abgerufen.

                                    Bei meiner oben genannten ID sind lt. Homepage Unwetterwarnungen aktiv.

                                    Hier der Log aus Iobroker:

                                    javascript.0	2018-07-09 22:34:01.345	info	script.js.scripte.Diverse.Unwetterwarnung: []
                                    javascript.0	2018-07-09 22:34:01.344	info	script.js.scripte.Diverse.Unwetterwarnung: UWZ Body: {"results":[],"cached":1}
                                    javascript.0	2018-07-09 22:34:01.330	info	script.js.scripte.Diverse.Unwetterwarnung: AREA: UWZAT3180
                                    
                                    

                                    Kann mir hier jemand weiterhelfen? `

                                    Hi

                                    Soll 3180 für Lilienfeld, Niederösterreich stehen !?.

                                    <u>AREA ID über Lat,Lon herausfinden</u>

                                    http://feed.alertspro.meteogroup.com/Al … =15.594546

                                    3180 Lilienfeld, Niederösterreich --> [{"AREA_ID":"UWZAT00374"}] `

                                    Ja, genau dieser Ort war gemeint. Ich dachte es ist Länderkürzel + Postleitzahl richtig.

                                    Danke jedenfalls für die Info, ich verwende aber mittlerweile den Radar-Adapter, da funktioniert der Abruf einwandfrei.

                                    1 Reply Last reply Reply Quote 0
                                    • N
                                      n990090 last edited by

                                      Hallo dwm,

                                      zunächst einmal "Bewunderung" für dein script. Ich habe zwar vor x-Jahren programmiert und habe durch iobroker zwecks Hobby wieder eine alte Leidenschaft von mir entdeckt. Allein dein UZW script hat mich viele Dinge in JS verstehen lassen (oder zumindest wie sie unter iobroker zu verwenden sind.)

                                      Jetzt hast du ja in deinem script (für mich genial, interessant) eine html Aufbereitung eingebaut - 'HTMLLong'.

                                      Welches vis-widget muss ich wie benutzen, um die html Tags auch nutzen können?

                                      In meinen Setup (basic -html; oder basic string (escaped)) werden zwar die tags zB: h3,…, aber nicht die style background und border erkannt.

                                      Danke

                                      Michi

                                      1 Reply Last reply Reply Quote 0
                                      • D
                                        dwm last edited by

                                        Hallo,

                                        ich benutze sowas in "HTMLDialog", z.B. …

                                        Das heißt, ich zeig die Überschrift an, und wenn man drauf klickt kommt ein Dialog mit dem langen text ...

                                        Allerdings benutze ich ehrlich gesagt das UWZ nicht selbst, das ganze kam ja aus einem Test für den DWD auf Gemeindeebene, das passt mir persönlich besser ...

                                        Für den DWD schaut die Einbindung so aus ...

                                        ! [{"tpl":"tplJquiDialog","data":{"g_fixed":false,"g_visibility":true,"g_css_font_text":false,"g_css_background":true,"g_css_shadow_padding":false,"g_css_border":true,"g_gestures":false,"g_signals":false,"visibility-cond":">","visibility-val":"0","visibility-groups-action":"hide","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"html_dialog":"\n {javascript.0.dwd.809185127.warning.1.HTMLlong}\n","title":"{javascript.0.dwd.809175127.warning.1.headline}","html":"**{javascript.0.dwd.809185127.warning.1.headline}**","dialog_width":"800","dialog_height":"600","autoclose":"15000","visibility-oid":"javascript.0.dwd.809185127.warning.1.severity","lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0},"style":{"left":"15px","top":"715px","z-index":"1","background":"","background-color":"#{javascript.0.dwd.809185127.warning.1.color;HEX2}","width":"628px","height":"25px","border-style":"none"},"widgetSet":"jqui"}] !

                                        Ich hab also den "Longtext" nochmal in eingekapselt.

                                        Einfach mal probieren, die bindings auf dwd muss man halt mit uwz ersetzen …

                                        CU

                                        Werner

                                        1 Reply Last reply Reply Quote 0
                                        • S
                                          speedy last edited by

                                          Hallo,

                                          dieses Thema interessiert mich auch, ich habe das Script eingebunden, Daten kommen an, aber wie zeigt ihr die Informationen an?

                                          1 Reply Last reply Reply Quote 0
                                          • D
                                            dwm last edited by

                                            Am einfachsten den "HTMLLong" Datenpunkt bei vis in ein "string (unescaped)" Widget stecken.

                                            Kommt halt drauf an was Du machen willst, grundsätzlich mit allem, das ein HTML anzeigen bzw. ein binding zu HTML auflösen kann…

                                            CU

                                            Werner

                                            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

                                            636
                                            Online

                                            31.6k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            23
                                            123
                                            14958
                                            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