Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Visualisierung
  4. VIS-Tabelle für WLAN Wetterstation

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    343

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.5k

VIS-Tabelle für WLAN Wetterstation

Geplant Angeheftet Gesperrt Verschoben Visualisierung
vis
101 Beiträge 11 Kommentatoren 16.3k Aufrufe 16 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • NegaleinN Negalein

    @liv-in-sky sagte in VIS-Tabelle für WLAN Wetterstation:

    fehler entdeckt und oben upgedatet

    Super, funktioniert
    Merci

    liv-in-skyL Offline
    liv-in-skyL Offline
    liv-in-sky
    schrieb am zuletzt editiert von
    #19

    @Negalein leider kann ich es nicht verwenden (habe keine wetterstation) - suche schon nach einer anzeige in meinen datenpunkten, damit ich das script verwenden kann :-)

    nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

    NegaleinN M 2 Antworten Letzte Antwort
    0
    • liv-in-skyL liv-in-sky

      @Negalein leider kann ich es nicht verwenden (habe keine wetterstation) - suche schon nach einer anzeige in meinen datenpunkten, damit ich das script verwenden kann :-)

      NegaleinN Offline
      NegaleinN Offline
      Negalein
      Global Moderator
      schrieb am zuletzt editiert von
      #20

      @liv-in-sky sagte in VIS-Tabelle für WLAN Wetterstation:

      habe keine wetterstation

      dann wird es Zeit ;)

      ° Node.js: 20.17.0 NPM: 10.8.2
      ° Proxmox, Ubuntu 22.04.3 LTS
      ° Fixer ---> iob fix

      da_WoodyD 1 Antwort Letzte Antwort
      0
      • NegaleinN Negalein

        @liv-in-sky sagte in VIS-Tabelle für WLAN Wetterstation:

        habe keine wetterstation

        dann wird es Zeit ;)

        da_WoodyD Online
        da_WoodyD Online
        da_Woody
        schrieb am zuletzt editiert von
        #21

        @Negalein said in VIS-Tabelle für WLAN Wetterstation:

        @liv-in-sky sagte in VIS-Tabelle für WLAN Wetterstation:

        habe keine wetterstation

        dann wird es Zeit ;)

        der meinung bin ich auch! macht sich so schick...
        20201023_143556.jpg

        gruß vom Woody
        HAPPINESS is not a DESTINATION, it's a WAY of LIFE!

        1 Antwort Letzte Antwort
        0
        • liv-in-skyL Offline
          liv-in-skyL Offline
          liv-in-sky
          schrieb am zuletzt editiert von
          #22

          hat jmd lust mal dieses script zu testen

          widgets:

          [{"tpl":"tplJquiSelectList","data":{"oid":"javascript.0.Wetterstation.AuswahlJahr","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","values":"0;2019;2020;2021;2022","texts":"All Years;2019;2020;2021;2022","height":"100","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,"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,"no_style":true},"style":{"left":"1142px","top":"70px"},"widgetSet":"jqui"},{"tpl":"tplJquiSelectList","data":{"oid":"javascript.0.Wetterstation.MonatAuswahl","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","values":"1;2;3;4;5;6;7;8;9;10;11;12","texts":"JANUAR;FEBRUAR;MÄRZ;APRIL;MAI;JUNI;JULI;AUGUST;SEPTEMBER;OKTOBER;NOVEMBER;DEZEMBER","height":"100","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,"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,"no_style":true},"style":{"left":"1258px","top":"70px"},"widgetSet":"jqui"},{"tpl":"tplHtml","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","refreshInterval":"0","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,"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,"html":"{javascript.0.Wetterstation.MonthlyDaten}"},"style":{"left":"1095px","top":"133px","width":"634px","height":"589px","font-family":"","color":"#f7f51d"},"widgetSet":"basic"}]
          

          script:

          // @liv-in-sky 5.11.2020 14:45
          
          
          const dataInputPath="controll-own.0.AAATEST.Wetter.Data";  //SEHR WICHTIG !!!!!!!!!
          const inhaltFarbe="black"
          const inhaltHintergrund="lightgray"
          const monatFarbe="yellow"
          const hintergrund="gray"
          const htmlFarbTableBorderColor="yellow";
          const abstandZelle=6;
          const htmlRahmenLinien="all"
          const htmlSchriftgroessehtmlSchriftart=""  //nicht verwendbar!
          const htmlFarbFelderschrift="red";         //nicht verwendbar!
          const htmlSchriftgroesse="13px";
          const htmlSchriftart="Ubuntu-Light"//"monospace";       //oder z.b. "Helvetica"
          const weite="auto";                        //oder "500px"
          let myTable="table bordercolor=\""+htmlFarbTableBorderColor+"\" border=\"2px\" cellspacing=\""+abstandZelle+"\" cellpadding=\""+abstandZelle+"\" width=\""+weite+"\" rules=\""+htmlRahmenLinien+"\" style=\"color:"+htmlFarbFelderschrift+";  font-size:"+htmlSchriftgroesse+
                                "; font-family:"+htmlSchriftart+";\"";
                                
          const varData={  Tiefstwert:       { einheit:"°C", name:"Minimum Temperatur"},
                         Hoechstwert:      { einheit:"°C", name:"Maximum Temperatur"},
                         Temp_Durchschnitt:{ einheit:"°C", name:"Durchschnittstemperatur"},
                         Max_Windboe:      { einheit:'km/h', name:"Max Windböe"},
                         Max_Regenmenge:   { einheit:'l/m2', name:"Max. Regen/Tag"},
                         Regenmenge_Monat: { einheit:'l/m2', name:"Regen"},
                         warme_Tage:       { einheit:"", name:"Warme Tage (über 20°C)"},
                         Sommertage:       { einheit:"", name:"Sommertage (über 25°C)"},
                         heisse_Tage:      { einheit:"", name:'Heiße Tage (über 30°C)'},
                         Frost_Tage:       { einheit:"", name:"Frosttage (Min. unter 0°C)"},
                         kalte_Tage:       { einheit:"", name:"Kalte Tage (Max. unter 10°C)"},
                         Eistage:          { einheit:"", name:"Eistage (Max. unter 0°C)"},
                         sehr_kalte_Tage:  { einheit:"", name:"Sehr kalte Tage (Min. unter -10°C)"}
          }  
          
          const monate =["JANUAR","FEBRUAR","MÄRZ","APRIL","MAI","JUNI","JULI","AUGUST","SEPTEMBER","OKTOBER","NOVEMBER","DEZEMBER"];
          
          
          //--------------------------nix mehr ändern ab hier--------------------------------------
          let myObj;
          let myArrAll=[]
          let myArrErstellt=[]
          let tableContent;
          let monWahlVIS;
          let lastThree;
          //----------------------------------------------------------------------------------------
          function dataStuff(){
          let myArrAll=[]
          let mySelector=dataInputPath+'.*.*'
          $(mySelector).each(function(id, i) {
          let ida=id.split("."); let lang=ida.length; let jahri=lang-2; let moni=lang-1;
          let obj2 = { jahr: ida[jahri]};
          let obj3 = { monat: ida[moni]};
          let helper=JSON.parse(getState(id).val)
          helper={ ...helper, ...obj2, ...obj3}
          myArrAll.push(JSON.stringify(helper))
          });
          
          tableContent = ""  
          myObj=JSON.parse("\["+myArrAll.toString()+"\]")
          
          if (lastThree==0) {
          //KOPFZEILE
          let choseMonth=monate[monWahlVIS-1]
          let choseMonthArr=choseMonth.split('')
          let test=""
          for (let i=0;i<choseMonthArr.length;i++){
            // log(choseMonthArr[i])
             test=test+choseMonthArr[i]+`
             `    
          }
          
          //log(test)
          //tableContent+='<td  class=\"test-klein\"  rowspan=\"14\"\">'+choseMonth+'</td><td>Wetterwerte</td>'
          tableContent+='<td class=\"myWetterStation\" width=\"25px\"  style=\"color:'+monatFarbe+';font-size:26px; background-color:'+hintergrund+' ; vertical-align:middle; text-align:center \"   rowspan=\"14\"\">'+test+'</td><td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\>Wetterwerte</td>'
          for (let i=0;i<myObj.length;i++) {
             if(parseInt(myObj[i].monat)==monWahlVIS){
          tableContent += '<td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\ align=center>'  + myObj[i].jahr+'</td>'}
          }; tableContent="<tr style=\"font-weight\:bold\">"+tableContent+"</tr>"
          //RESTZEILEN
          for(var index in varData){
             tableContent+='<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\">'+varData[index].name+'</td>'
             for (let i=0;i<myObj.length;i++) {
                if(myObj[i].monat==monWahlVIS){
                  tableContent += '<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\" align=right>' + myObj[i][index] + ' '+ varData[index].einheit+'</td>'}
                                              }; tableContent="<tr>"+tableContent+"</tr>"
          
          }
          } //lastThree
          else {
          //log(myObj[0].monat)
              myObj.sort(function (alpha, beta) {
                       if (parseInt(alpha.monat) > parseInt(beta.monat))
                           return 1;
                        if (parseInt(beta.monat) > parseInt(alpha.monat))
                           return -1;
                        return 0;});
                    //    log(myObj[0].monat)
          
          //KOPFZEILE LASTTHREE
          
          let choseJahr=lastThree.toString()//formatDate(getDateObject((new Date().getTime())), "JJJJ")//monate[monWahlVIS-1]
          let choseMonthArr=choseJahr.split('')
          let test=""
          for (let i=0;i<choseMonthArr.length;i++){
            // log(choseMonthArr[i])
             test=test+choseMonthArr[i]+`
             `    
          }
          
          //log(test)
          //tableContent+='<td  class=\"test-klein\"  rowspan=\"14\"\">'+choseMonth+'</td><td>Wetterwerte</td>'
          tableContent+='<td class=\"myWetterStation\" width=\"25px\"  style=\"color:'+monatFarbe+';font-size:26px; background-color:'+hintergrund+' ; vertical-align:middle; text-align:center \"   rowspan=\"14\"\">'+test+'</td><td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\>Wetterwerte</td>'
          
          for (let i=0;i<myObj.length;i++) {
             
             if( parseInt(myObj[i].jahr)==parseInt(choseJahr) && (parseInt(myObj[i].monat)==parseInt(monWahlVIS) || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-1 || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-2)){
          tableContent += '<td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\ align=center>'  + monate[parseInt(myObj[i].monat)-1]+'</td>';}
          }; tableContent="<tr style=\"font-weight\:bold\">"+tableContent+"</tr>"
          //RESTZEILEN
          for(var index in varData){
             tableContent+='<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\">'+varData[index].name+'</td>'
             for (let i=0;i<myObj.length;i++) {
              if( parseInt(myObj[i].jahr)==parseInt(choseJahr) && (parseInt(myObj[i].monat)==parseInt(monWahlVIS) || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-1 || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-2)){
                  tableContent += '<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\" align=right>' + myObj[i][index] + ' '+ varData[index].einheit+'</td>'}
                                              }; tableContent="<tr>"+tableContent+"</tr>"
          
          }
          
          
          }
          
          tableContent = '<'+myTable+' ><tbody>'+tableContent+'</tbody></table >'
          //log(tableContent)
          
          setState("javascript." + instance + ".Wetterstation.MonthlyDaten",tableContent)
          }
          
          //--------------------------------------------------------------------------------------------------
          async function main() {
             if (!(await existsStateAsync("javascript." + instance + ".Wetterstation.MonthlyDaten"))) {
                 await createStateAsync("Wetterstation.MonthlyDaten", "leer", {type: "string", name: "MonthlyDaten", role: "value", read: true, write: true, } ); }
             if (!(await existsStateAsync("javascript." + instance + ".Wetterstation.MonatAuswahl"))) {
                 await createStateAsync("Wetterstation.MonatAuswahl", 10, {type: "number", name: "MonatAuswahl", role: "value", read: true, write: true, } ); } 
             if (!(await existsStateAsync("javascript." + instance + ".Wetterstation.AuswahlJahr"))) {
                 await createStateAsync("Wetterstation.AuswahlJahr", 0, {type: "number", name: "AuswahlJahr", role: "value", read: true, write: true, } ); } 
             lastThree = (await getStateAsync("javascript." + instance + ".Wetterstation.AuswahlJahr")).val //? lastThree=true : lastThree=false;  
                  
             monWahlVIS=((await getStateAsync("javascript." + instance + ".Wetterstation.MonatAuswahl")).val ) 
             dataStuff();
          
          }
          
          //-----------------------------------------------------------------------------------------------------
          main()
          
          
          
          on({id: "javascript." + instance + ".Wetterstation.MonatAuswahl", change: "any"}, async function (obj) {
          main()
          
          });
          
          on({id: "javascript." + instance + ".Wetterstation.AuswahlJahr", change: "any"}, async function (obj) {
          main()
          
          });
          
          schedule('  */30 * * * *', function() { 
             setState("javascript." + instance + ".Wetterstation.MonatAuswahl", parseInt(formatDate(getDateObject((new Date().getTime())), "MM"))) 
          });
          
          
          
          
          
          

          • im script muss eigenlich nur der datenpunkt eingestellt werden
          • es kommt ein weiteres widget dazu
          • man kann das jahr abfragen und bekommt die letzten beiden monate und den gesuchten monat des jahres

          anim-gif12.gif

          nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

          da_WoodyD SBorgS NegaleinN 3 Antworten Letzte Antwort
          2
          • liv-in-skyL liv-in-sky

            hat jmd lust mal dieses script zu testen

            widgets:

            [{"tpl":"tplJquiSelectList","data":{"oid":"javascript.0.Wetterstation.AuswahlJahr","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","values":"0;2019;2020;2021;2022","texts":"All Years;2019;2020;2021;2022","height":"100","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,"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,"no_style":true},"style":{"left":"1142px","top":"70px"},"widgetSet":"jqui"},{"tpl":"tplJquiSelectList","data":{"oid":"javascript.0.Wetterstation.MonatAuswahl","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","values":"1;2;3;4;5;6;7;8;9;10;11;12","texts":"JANUAR;FEBRUAR;MÄRZ;APRIL;MAI;JUNI;JULI;AUGUST;SEPTEMBER;OKTOBER;NOVEMBER;DEZEMBER","height":"100","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,"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,"no_style":true},"style":{"left":"1258px","top":"70px"},"widgetSet":"jqui"},{"tpl":"tplHtml","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","refreshInterval":"0","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,"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,"html":"{javascript.0.Wetterstation.MonthlyDaten}"},"style":{"left":"1095px","top":"133px","width":"634px","height":"589px","font-family":"","color":"#f7f51d"},"widgetSet":"basic"}]
            

            script:

            // @liv-in-sky 5.11.2020 14:45
            
            
            const dataInputPath="controll-own.0.AAATEST.Wetter.Data";  //SEHR WICHTIG !!!!!!!!!
            const inhaltFarbe="black"
            const inhaltHintergrund="lightgray"
            const monatFarbe="yellow"
            const hintergrund="gray"
            const htmlFarbTableBorderColor="yellow";
            const abstandZelle=6;
            const htmlRahmenLinien="all"
            const htmlSchriftgroessehtmlSchriftart=""  //nicht verwendbar!
            const htmlFarbFelderschrift="red";         //nicht verwendbar!
            const htmlSchriftgroesse="13px";
            const htmlSchriftart="Ubuntu-Light"//"monospace";       //oder z.b. "Helvetica"
            const weite="auto";                        //oder "500px"
            let myTable="table bordercolor=\""+htmlFarbTableBorderColor+"\" border=\"2px\" cellspacing=\""+abstandZelle+"\" cellpadding=\""+abstandZelle+"\" width=\""+weite+"\" rules=\""+htmlRahmenLinien+"\" style=\"color:"+htmlFarbFelderschrift+";  font-size:"+htmlSchriftgroesse+
                                  "; font-family:"+htmlSchriftart+";\"";
                                  
            const varData={  Tiefstwert:       { einheit:"°C", name:"Minimum Temperatur"},
                           Hoechstwert:      { einheit:"°C", name:"Maximum Temperatur"},
                           Temp_Durchschnitt:{ einheit:"°C", name:"Durchschnittstemperatur"},
                           Max_Windboe:      { einheit:'km/h', name:"Max Windböe"},
                           Max_Regenmenge:   { einheit:'l/m2', name:"Max. Regen/Tag"},
                           Regenmenge_Monat: { einheit:'l/m2', name:"Regen"},
                           warme_Tage:       { einheit:"", name:"Warme Tage (über 20°C)"},
                           Sommertage:       { einheit:"", name:"Sommertage (über 25°C)"},
                           heisse_Tage:      { einheit:"", name:'Heiße Tage (über 30°C)'},
                           Frost_Tage:       { einheit:"", name:"Frosttage (Min. unter 0°C)"},
                           kalte_Tage:       { einheit:"", name:"Kalte Tage (Max. unter 10°C)"},
                           Eistage:          { einheit:"", name:"Eistage (Max. unter 0°C)"},
                           sehr_kalte_Tage:  { einheit:"", name:"Sehr kalte Tage (Min. unter -10°C)"}
            }  
            
            const monate =["JANUAR","FEBRUAR","MÄRZ","APRIL","MAI","JUNI","JULI","AUGUST","SEPTEMBER","OKTOBER","NOVEMBER","DEZEMBER"];
            
            
            //--------------------------nix mehr ändern ab hier--------------------------------------
            let myObj;
            let myArrAll=[]
            let myArrErstellt=[]
            let tableContent;
            let monWahlVIS;
            let lastThree;
            //----------------------------------------------------------------------------------------
            function dataStuff(){
            let myArrAll=[]
            let mySelector=dataInputPath+'.*.*'
            $(mySelector).each(function(id, i) {
            let ida=id.split("."); let lang=ida.length; let jahri=lang-2; let moni=lang-1;
            let obj2 = { jahr: ida[jahri]};
            let obj3 = { monat: ida[moni]};
            let helper=JSON.parse(getState(id).val)
            helper={ ...helper, ...obj2, ...obj3}
            myArrAll.push(JSON.stringify(helper))
            });
            
            tableContent = ""  
            myObj=JSON.parse("\["+myArrAll.toString()+"\]")
            
            if (lastThree==0) {
            //KOPFZEILE
            let choseMonth=monate[monWahlVIS-1]
            let choseMonthArr=choseMonth.split('')
            let test=""
            for (let i=0;i<choseMonthArr.length;i++){
              // log(choseMonthArr[i])
               test=test+choseMonthArr[i]+`
               `    
            }
            
            //log(test)
            //tableContent+='<td  class=\"test-klein\"  rowspan=\"14\"\">'+choseMonth+'</td><td>Wetterwerte</td>'
            tableContent+='<td class=\"myWetterStation\" width=\"25px\"  style=\"color:'+monatFarbe+';font-size:26px; background-color:'+hintergrund+' ; vertical-align:middle; text-align:center \"   rowspan=\"14\"\">'+test+'</td><td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\>Wetterwerte</td>'
            for (let i=0;i<myObj.length;i++) {
               if(parseInt(myObj[i].monat)==monWahlVIS){
            tableContent += '<td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\ align=center>'  + myObj[i].jahr+'</td>'}
            }; tableContent="<tr style=\"font-weight\:bold\">"+tableContent+"</tr>"
            //RESTZEILEN
            for(var index in varData){
               tableContent+='<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\">'+varData[index].name+'</td>'
               for (let i=0;i<myObj.length;i++) {
                  if(myObj[i].monat==monWahlVIS){
                    tableContent += '<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\" align=right>' + myObj[i][index] + ' '+ varData[index].einheit+'</td>'}
                                                }; tableContent="<tr>"+tableContent+"</tr>"
            
            }
            } //lastThree
            else {
            //log(myObj[0].monat)
                myObj.sort(function (alpha, beta) {
                         if (parseInt(alpha.monat) > parseInt(beta.monat))
                             return 1;
                          if (parseInt(beta.monat) > parseInt(alpha.monat))
                             return -1;
                          return 0;});
                      //    log(myObj[0].monat)
            
            //KOPFZEILE LASTTHREE
            
            let choseJahr=lastThree.toString()//formatDate(getDateObject((new Date().getTime())), "JJJJ")//monate[monWahlVIS-1]
            let choseMonthArr=choseJahr.split('')
            let test=""
            for (let i=0;i<choseMonthArr.length;i++){
              // log(choseMonthArr[i])
               test=test+choseMonthArr[i]+`
               `    
            }
            
            //log(test)
            //tableContent+='<td  class=\"test-klein\"  rowspan=\"14\"\">'+choseMonth+'</td><td>Wetterwerte</td>'
            tableContent+='<td class=\"myWetterStation\" width=\"25px\"  style=\"color:'+monatFarbe+';font-size:26px; background-color:'+hintergrund+' ; vertical-align:middle; text-align:center \"   rowspan=\"14\"\">'+test+'</td><td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\>Wetterwerte</td>'
            
            for (let i=0;i<myObj.length;i++) {
               
               if( parseInt(myObj[i].jahr)==parseInt(choseJahr) && (parseInt(myObj[i].monat)==parseInt(monWahlVIS) || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-1 || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-2)){
            tableContent += '<td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\ align=center>'  + monate[parseInt(myObj[i].monat)-1]+'</td>';}
            }; tableContent="<tr style=\"font-weight\:bold\">"+tableContent+"</tr>"
            //RESTZEILEN
            for(var index in varData){
               tableContent+='<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\">'+varData[index].name+'</td>'
               for (let i=0;i<myObj.length;i++) {
                if( parseInt(myObj[i].jahr)==parseInt(choseJahr) && (parseInt(myObj[i].monat)==parseInt(monWahlVIS) || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-1 || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-2)){
                    tableContent += '<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\" align=right>' + myObj[i][index] + ' '+ varData[index].einheit+'</td>'}
                                                }; tableContent="<tr>"+tableContent+"</tr>"
            
            }
            
            
            }
            
            tableContent = '<'+myTable+' ><tbody>'+tableContent+'</tbody></table >'
            //log(tableContent)
            
            setState("javascript." + instance + ".Wetterstation.MonthlyDaten",tableContent)
            }
            
            //--------------------------------------------------------------------------------------------------
            async function main() {
               if (!(await existsStateAsync("javascript." + instance + ".Wetterstation.MonthlyDaten"))) {
                   await createStateAsync("Wetterstation.MonthlyDaten", "leer", {type: "string", name: "MonthlyDaten", role: "value", read: true, write: true, } ); }
               if (!(await existsStateAsync("javascript." + instance + ".Wetterstation.MonatAuswahl"))) {
                   await createStateAsync("Wetterstation.MonatAuswahl", 10, {type: "number", name: "MonatAuswahl", role: "value", read: true, write: true, } ); } 
               if (!(await existsStateAsync("javascript." + instance + ".Wetterstation.AuswahlJahr"))) {
                   await createStateAsync("Wetterstation.AuswahlJahr", 0, {type: "number", name: "AuswahlJahr", role: "value", read: true, write: true, } ); } 
               lastThree = (await getStateAsync("javascript." + instance + ".Wetterstation.AuswahlJahr")).val //? lastThree=true : lastThree=false;  
                    
               monWahlVIS=((await getStateAsync("javascript." + instance + ".Wetterstation.MonatAuswahl")).val ) 
               dataStuff();
            
            }
            
            //-----------------------------------------------------------------------------------------------------
            main()
            
            
            
            on({id: "javascript." + instance + ".Wetterstation.MonatAuswahl", change: "any"}, async function (obj) {
            main()
            
            });
            
            on({id: "javascript." + instance + ".Wetterstation.AuswahlJahr", change: "any"}, async function (obj) {
            main()
            
            });
            
            schedule('  */30 * * * *', function() { 
               setState("javascript." + instance + ".Wetterstation.MonatAuswahl", parseInt(formatDate(getDateObject((new Date().getTime())), "MM"))) 
            });
            
            
            
            
            
            

            • im script muss eigenlich nur der datenpunkt eingestellt werden
            • es kommt ein weiteres widget dazu
            • man kann das jahr abfragen und bekommt die letzten beiden monate und den gesuchten monat des jahres

            anim-gif12.gif

            da_WoodyD Online
            da_WoodyD Online
            da_Woody
            schrieb am zuletzt editiert von
            #23

            @liv-in-sky mann, ich komm ja jetzt schon nicht mehr nach! :clown_face:

            gruß vom Woody
            HAPPINESS is not a DESTINATION, it's a WAY of LIFE!

            1 Antwort Letzte Antwort
            0
            • liv-in-skyL liv-in-sky

              hat jmd lust mal dieses script zu testen

              widgets:

              [{"tpl":"tplJquiSelectList","data":{"oid":"javascript.0.Wetterstation.AuswahlJahr","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","values":"0;2019;2020;2021;2022","texts":"All Years;2019;2020;2021;2022","height":"100","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,"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,"no_style":true},"style":{"left":"1142px","top":"70px"},"widgetSet":"jqui"},{"tpl":"tplJquiSelectList","data":{"oid":"javascript.0.Wetterstation.MonatAuswahl","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","values":"1;2;3;4;5;6;7;8;9;10;11;12","texts":"JANUAR;FEBRUAR;MÄRZ;APRIL;MAI;JUNI;JULI;AUGUST;SEPTEMBER;OKTOBER;NOVEMBER;DEZEMBER","height":"100","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,"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,"no_style":true},"style":{"left":"1258px","top":"70px"},"widgetSet":"jqui"},{"tpl":"tplHtml","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","refreshInterval":"0","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,"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,"html":"{javascript.0.Wetterstation.MonthlyDaten}"},"style":{"left":"1095px","top":"133px","width":"634px","height":"589px","font-family":"","color":"#f7f51d"},"widgetSet":"basic"}]
              

              script:

              // @liv-in-sky 5.11.2020 14:45
              
              
              const dataInputPath="controll-own.0.AAATEST.Wetter.Data";  //SEHR WICHTIG !!!!!!!!!
              const inhaltFarbe="black"
              const inhaltHintergrund="lightgray"
              const monatFarbe="yellow"
              const hintergrund="gray"
              const htmlFarbTableBorderColor="yellow";
              const abstandZelle=6;
              const htmlRahmenLinien="all"
              const htmlSchriftgroessehtmlSchriftart=""  //nicht verwendbar!
              const htmlFarbFelderschrift="red";         //nicht verwendbar!
              const htmlSchriftgroesse="13px";
              const htmlSchriftart="Ubuntu-Light"//"monospace";       //oder z.b. "Helvetica"
              const weite="auto";                        //oder "500px"
              let myTable="table bordercolor=\""+htmlFarbTableBorderColor+"\" border=\"2px\" cellspacing=\""+abstandZelle+"\" cellpadding=\""+abstandZelle+"\" width=\""+weite+"\" rules=\""+htmlRahmenLinien+"\" style=\"color:"+htmlFarbFelderschrift+";  font-size:"+htmlSchriftgroesse+
                                    "; font-family:"+htmlSchriftart+";\"";
                                    
              const varData={  Tiefstwert:       { einheit:"°C", name:"Minimum Temperatur"},
                             Hoechstwert:      { einheit:"°C", name:"Maximum Temperatur"},
                             Temp_Durchschnitt:{ einheit:"°C", name:"Durchschnittstemperatur"},
                             Max_Windboe:      { einheit:'km/h', name:"Max Windböe"},
                             Max_Regenmenge:   { einheit:'l/m2', name:"Max. Regen/Tag"},
                             Regenmenge_Monat: { einheit:'l/m2', name:"Regen"},
                             warme_Tage:       { einheit:"", name:"Warme Tage (über 20°C)"},
                             Sommertage:       { einheit:"", name:"Sommertage (über 25°C)"},
                             heisse_Tage:      { einheit:"", name:'Heiße Tage (über 30°C)'},
                             Frost_Tage:       { einheit:"", name:"Frosttage (Min. unter 0°C)"},
                             kalte_Tage:       { einheit:"", name:"Kalte Tage (Max. unter 10°C)"},
                             Eistage:          { einheit:"", name:"Eistage (Max. unter 0°C)"},
                             sehr_kalte_Tage:  { einheit:"", name:"Sehr kalte Tage (Min. unter -10°C)"}
              }  
              
              const monate =["JANUAR","FEBRUAR","MÄRZ","APRIL","MAI","JUNI","JULI","AUGUST","SEPTEMBER","OKTOBER","NOVEMBER","DEZEMBER"];
              
              
              //--------------------------nix mehr ändern ab hier--------------------------------------
              let myObj;
              let myArrAll=[]
              let myArrErstellt=[]
              let tableContent;
              let monWahlVIS;
              let lastThree;
              //----------------------------------------------------------------------------------------
              function dataStuff(){
              let myArrAll=[]
              let mySelector=dataInputPath+'.*.*'
              $(mySelector).each(function(id, i) {
              let ida=id.split("."); let lang=ida.length; let jahri=lang-2; let moni=lang-1;
              let obj2 = { jahr: ida[jahri]};
              let obj3 = { monat: ida[moni]};
              let helper=JSON.parse(getState(id).val)
              helper={ ...helper, ...obj2, ...obj3}
              myArrAll.push(JSON.stringify(helper))
              });
              
              tableContent = ""  
              myObj=JSON.parse("\["+myArrAll.toString()+"\]")
              
              if (lastThree==0) {
              //KOPFZEILE
              let choseMonth=monate[monWahlVIS-1]
              let choseMonthArr=choseMonth.split('')
              let test=""
              for (let i=0;i<choseMonthArr.length;i++){
                // log(choseMonthArr[i])
                 test=test+choseMonthArr[i]+`
                 `    
              }
              
              //log(test)
              //tableContent+='<td  class=\"test-klein\"  rowspan=\"14\"\">'+choseMonth+'</td><td>Wetterwerte</td>'
              tableContent+='<td class=\"myWetterStation\" width=\"25px\"  style=\"color:'+monatFarbe+';font-size:26px; background-color:'+hintergrund+' ; vertical-align:middle; text-align:center \"   rowspan=\"14\"\">'+test+'</td><td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\>Wetterwerte</td>'
              for (let i=0;i<myObj.length;i++) {
                 if(parseInt(myObj[i].monat)==monWahlVIS){
              tableContent += '<td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\ align=center>'  + myObj[i].jahr+'</td>'}
              }; tableContent="<tr style=\"font-weight\:bold\">"+tableContent+"</tr>"
              //RESTZEILEN
              for(var index in varData){
                 tableContent+='<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\">'+varData[index].name+'</td>'
                 for (let i=0;i<myObj.length;i++) {
                    if(myObj[i].monat==monWahlVIS){
                      tableContent += '<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\" align=right>' + myObj[i][index] + ' '+ varData[index].einheit+'</td>'}
                                                  }; tableContent="<tr>"+tableContent+"</tr>"
              
              }
              } //lastThree
              else {
              //log(myObj[0].monat)
                  myObj.sort(function (alpha, beta) {
                           if (parseInt(alpha.monat) > parseInt(beta.monat))
                               return 1;
                            if (parseInt(beta.monat) > parseInt(alpha.monat))
                               return -1;
                            return 0;});
                        //    log(myObj[0].monat)
              
              //KOPFZEILE LASTTHREE
              
              let choseJahr=lastThree.toString()//formatDate(getDateObject((new Date().getTime())), "JJJJ")//monate[monWahlVIS-1]
              let choseMonthArr=choseJahr.split('')
              let test=""
              for (let i=0;i<choseMonthArr.length;i++){
                // log(choseMonthArr[i])
                 test=test+choseMonthArr[i]+`
                 `    
              }
              
              //log(test)
              //tableContent+='<td  class=\"test-klein\"  rowspan=\"14\"\">'+choseMonth+'</td><td>Wetterwerte</td>'
              tableContent+='<td class=\"myWetterStation\" width=\"25px\"  style=\"color:'+monatFarbe+';font-size:26px; background-color:'+hintergrund+' ; vertical-align:middle; text-align:center \"   rowspan=\"14\"\">'+test+'</td><td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\>Wetterwerte</td>'
              
              for (let i=0;i<myObj.length;i++) {
                 
                 if( parseInt(myObj[i].jahr)==parseInt(choseJahr) && (parseInt(myObj[i].monat)==parseInt(monWahlVIS) || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-1 || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-2)){
              tableContent += '<td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\ align=center>'  + monate[parseInt(myObj[i].monat)-1]+'</td>';}
              }; tableContent="<tr style=\"font-weight\:bold\">"+tableContent+"</tr>"
              //RESTZEILEN
              for(var index in varData){
                 tableContent+='<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\">'+varData[index].name+'</td>'
                 for (let i=0;i<myObj.length;i++) {
                  if( parseInt(myObj[i].jahr)==parseInt(choseJahr) && (parseInt(myObj[i].monat)==parseInt(monWahlVIS) || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-1 || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-2)){
                      tableContent += '<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\" align=right>' + myObj[i][index] + ' '+ varData[index].einheit+'</td>'}
                                                  }; tableContent="<tr>"+tableContent+"</tr>"
              
              }
              
              
              }
              
              tableContent = '<'+myTable+' ><tbody>'+tableContent+'</tbody></table >'
              //log(tableContent)
              
              setState("javascript." + instance + ".Wetterstation.MonthlyDaten",tableContent)
              }
              
              //--------------------------------------------------------------------------------------------------
              async function main() {
                 if (!(await existsStateAsync("javascript." + instance + ".Wetterstation.MonthlyDaten"))) {
                     await createStateAsync("Wetterstation.MonthlyDaten", "leer", {type: "string", name: "MonthlyDaten", role: "value", read: true, write: true, } ); }
                 if (!(await existsStateAsync("javascript." + instance + ".Wetterstation.MonatAuswahl"))) {
                     await createStateAsync("Wetterstation.MonatAuswahl", 10, {type: "number", name: "MonatAuswahl", role: "value", read: true, write: true, } ); } 
                 if (!(await existsStateAsync("javascript." + instance + ".Wetterstation.AuswahlJahr"))) {
                     await createStateAsync("Wetterstation.AuswahlJahr", 0, {type: "number", name: "AuswahlJahr", role: "value", read: true, write: true, } ); } 
                 lastThree = (await getStateAsync("javascript." + instance + ".Wetterstation.AuswahlJahr")).val //? lastThree=true : lastThree=false;  
                      
                 monWahlVIS=((await getStateAsync("javascript." + instance + ".Wetterstation.MonatAuswahl")).val ) 
                 dataStuff();
              
              }
              
              //-----------------------------------------------------------------------------------------------------
              main()
              
              
              
              on({id: "javascript." + instance + ".Wetterstation.MonatAuswahl", change: "any"}, async function (obj) {
              main()
              
              });
              
              on({id: "javascript." + instance + ".Wetterstation.AuswahlJahr", change: "any"}, async function (obj) {
              main()
              
              });
              
              schedule('  */30 * * * *', function() { 
                 setState("javascript." + instance + ".Wetterstation.MonatAuswahl", parseInt(formatDate(getDateObject((new Date().getTime())), "MM"))) 
              });
              
              
              
              
              
              

              • im script muss eigenlich nur der datenpunkt eingestellt werden
              • es kommt ein weiteres widget dazu
              • man kann das jahr abfragen und bekommt die letzten beiden monate und den gesuchten monat des jahres

              anim-gif12.gif

              SBorgS Offline
              SBorgS Offline
              SBorg
              Forum Testing Most Active
              schrieb am zuletzt editiert von
              #24

              @liv-in-sky Bin endlich auch mal dazu gekommen, sieht mit "echten" Daten gut aus :+1:
              Bild 1.png

              LG SBorg ( SBorg auf GitHub)
              Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

              liv-in-skyL 1 Antwort Letzte Antwort
              0
              • SBorgS SBorg

                @liv-in-sky Bin endlich auch mal dazu gekommen, sieht mit "echten" Daten gut aus :+1:
                Bild 1.png

                liv-in-skyL Offline
                liv-in-skyL Offline
                liv-in-sky
                schrieb am zuletzt editiert von
                #25

                @SBorg

                danke für's testen - die farben gehören wohl noch geändert - aber das kann man ja im script einfach machen

                nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                SBorgS 1 Antwort Letzte Antwort
                0
                • liv-in-skyL liv-in-sky

                  @SBorg

                  danke für's testen - die farben gehören wohl noch geändert - aber das kann man ja im script einfach machen

                  SBorgS Offline
                  SBorgS Offline
                  SBorg
                  Forum Testing Most Active
                  schrieb am zuletzt editiert von
                  #26

                  @liv-in-sky :grin: Gelb ist auch nicht so meins, aber für einen 1. Test zuerst so wenig wie möglich ändern.
                  ...und schön wenn man sich nicht um alles alleine kümmern muss. Doku dauert mittlerweile bald länger als das programmieren.

                  btw: Wetterstation im Angebot ;)

                  LG SBorg ( SBorg auf GitHub)
                  Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

                  liv-in-skyL 1 Antwort Letzte Antwort
                  0
                  • SBorgS SBorg

                    @liv-in-sky :grin: Gelb ist auch nicht so meins, aber für einen 1. Test zuerst so wenig wie möglich ändern.
                    ...und schön wenn man sich nicht um alles alleine kümmern muss. Doku dauert mittlerweile bald länger als das programmieren.

                    btw: Wetterstation im Angebot ;)

                    liv-in-skyL Offline
                    liv-in-skyL Offline
                    liv-in-sky
                    schrieb am zuletzt editiert von
                    #27

                    @SBorg glaub ich - deshalb dachte ich mir, du hast so viel arbeit reingesteckt - da schadet es nicht, wenn man in der vis was zu spielen und sehen hat

                    nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                    1 Antwort Letzte Antwort
                    0
                    • liv-in-skyL liv-in-sky

                      hat jmd lust mal dieses script zu testen

                      widgets:

                      [{"tpl":"tplJquiSelectList","data":{"oid":"javascript.0.Wetterstation.AuswahlJahr","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","values":"0;2019;2020;2021;2022","texts":"All Years;2019;2020;2021;2022","height":"100","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,"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,"no_style":true},"style":{"left":"1142px","top":"70px"},"widgetSet":"jqui"},{"tpl":"tplJquiSelectList","data":{"oid":"javascript.0.Wetterstation.MonatAuswahl","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","values":"1;2;3;4;5;6;7;8;9;10;11;12","texts":"JANUAR;FEBRUAR;MÄRZ;APRIL;MAI;JUNI;JULI;AUGUST;SEPTEMBER;OKTOBER;NOVEMBER;DEZEMBER","height":"100","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,"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,"no_style":true},"style":{"left":"1258px","top":"70px"},"widgetSet":"jqui"},{"tpl":"tplHtml","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","refreshInterval":"0","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,"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,"html":"{javascript.0.Wetterstation.MonthlyDaten}"},"style":{"left":"1095px","top":"133px","width":"634px","height":"589px","font-family":"","color":"#f7f51d"},"widgetSet":"basic"}]
                      

                      script:

                      // @liv-in-sky 5.11.2020 14:45
                      
                      
                      const dataInputPath="controll-own.0.AAATEST.Wetter.Data";  //SEHR WICHTIG !!!!!!!!!
                      const inhaltFarbe="black"
                      const inhaltHintergrund="lightgray"
                      const monatFarbe="yellow"
                      const hintergrund="gray"
                      const htmlFarbTableBorderColor="yellow";
                      const abstandZelle=6;
                      const htmlRahmenLinien="all"
                      const htmlSchriftgroessehtmlSchriftart=""  //nicht verwendbar!
                      const htmlFarbFelderschrift="red";         //nicht verwendbar!
                      const htmlSchriftgroesse="13px";
                      const htmlSchriftart="Ubuntu-Light"//"monospace";       //oder z.b. "Helvetica"
                      const weite="auto";                        //oder "500px"
                      let myTable="table bordercolor=\""+htmlFarbTableBorderColor+"\" border=\"2px\" cellspacing=\""+abstandZelle+"\" cellpadding=\""+abstandZelle+"\" width=\""+weite+"\" rules=\""+htmlRahmenLinien+"\" style=\"color:"+htmlFarbFelderschrift+";  font-size:"+htmlSchriftgroesse+
                                            "; font-family:"+htmlSchriftart+";\"";
                                            
                      const varData={  Tiefstwert:       { einheit:"°C", name:"Minimum Temperatur"},
                                     Hoechstwert:      { einheit:"°C", name:"Maximum Temperatur"},
                                     Temp_Durchschnitt:{ einheit:"°C", name:"Durchschnittstemperatur"},
                                     Max_Windboe:      { einheit:'km/h', name:"Max Windböe"},
                                     Max_Regenmenge:   { einheit:'l/m2', name:"Max. Regen/Tag"},
                                     Regenmenge_Monat: { einheit:'l/m2', name:"Regen"},
                                     warme_Tage:       { einheit:"", name:"Warme Tage (über 20°C)"},
                                     Sommertage:       { einheit:"", name:"Sommertage (über 25°C)"},
                                     heisse_Tage:      { einheit:"", name:'Heiße Tage (über 30°C)'},
                                     Frost_Tage:       { einheit:"", name:"Frosttage (Min. unter 0°C)"},
                                     kalte_Tage:       { einheit:"", name:"Kalte Tage (Max. unter 10°C)"},
                                     Eistage:          { einheit:"", name:"Eistage (Max. unter 0°C)"},
                                     sehr_kalte_Tage:  { einheit:"", name:"Sehr kalte Tage (Min. unter -10°C)"}
                      }  
                      
                      const monate =["JANUAR","FEBRUAR","MÄRZ","APRIL","MAI","JUNI","JULI","AUGUST","SEPTEMBER","OKTOBER","NOVEMBER","DEZEMBER"];
                      
                      
                      //--------------------------nix mehr ändern ab hier--------------------------------------
                      let myObj;
                      let myArrAll=[]
                      let myArrErstellt=[]
                      let tableContent;
                      let monWahlVIS;
                      let lastThree;
                      //----------------------------------------------------------------------------------------
                      function dataStuff(){
                      let myArrAll=[]
                      let mySelector=dataInputPath+'.*.*'
                      $(mySelector).each(function(id, i) {
                      let ida=id.split("."); let lang=ida.length; let jahri=lang-2; let moni=lang-1;
                      let obj2 = { jahr: ida[jahri]};
                      let obj3 = { monat: ida[moni]};
                      let helper=JSON.parse(getState(id).val)
                      helper={ ...helper, ...obj2, ...obj3}
                      myArrAll.push(JSON.stringify(helper))
                      });
                      
                      tableContent = ""  
                      myObj=JSON.parse("\["+myArrAll.toString()+"\]")
                      
                      if (lastThree==0) {
                      //KOPFZEILE
                      let choseMonth=monate[monWahlVIS-1]
                      let choseMonthArr=choseMonth.split('')
                      let test=""
                      for (let i=0;i<choseMonthArr.length;i++){
                        // log(choseMonthArr[i])
                         test=test+choseMonthArr[i]+`
                         `    
                      }
                      
                      //log(test)
                      //tableContent+='<td  class=\"test-klein\"  rowspan=\"14\"\">'+choseMonth+'</td><td>Wetterwerte</td>'
                      tableContent+='<td class=\"myWetterStation\" width=\"25px\"  style=\"color:'+monatFarbe+';font-size:26px; background-color:'+hintergrund+' ; vertical-align:middle; text-align:center \"   rowspan=\"14\"\">'+test+'</td><td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\>Wetterwerte</td>'
                      for (let i=0;i<myObj.length;i++) {
                         if(parseInt(myObj[i].monat)==monWahlVIS){
                      tableContent += '<td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\ align=center>'  + myObj[i].jahr+'</td>'}
                      }; tableContent="<tr style=\"font-weight\:bold\">"+tableContent+"</tr>"
                      //RESTZEILEN
                      for(var index in varData){
                         tableContent+='<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\">'+varData[index].name+'</td>'
                         for (let i=0;i<myObj.length;i++) {
                            if(myObj[i].monat==monWahlVIS){
                              tableContent += '<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\" align=right>' + myObj[i][index] + ' '+ varData[index].einheit+'</td>'}
                                                          }; tableContent="<tr>"+tableContent+"</tr>"
                      
                      }
                      } //lastThree
                      else {
                      //log(myObj[0].monat)
                          myObj.sort(function (alpha, beta) {
                                   if (parseInt(alpha.monat) > parseInt(beta.monat))
                                       return 1;
                                    if (parseInt(beta.monat) > parseInt(alpha.monat))
                                       return -1;
                                    return 0;});
                                //    log(myObj[0].monat)
                      
                      //KOPFZEILE LASTTHREE
                      
                      let choseJahr=lastThree.toString()//formatDate(getDateObject((new Date().getTime())), "JJJJ")//monate[monWahlVIS-1]
                      let choseMonthArr=choseJahr.split('')
                      let test=""
                      for (let i=0;i<choseMonthArr.length;i++){
                        // log(choseMonthArr[i])
                         test=test+choseMonthArr[i]+`
                         `    
                      }
                      
                      //log(test)
                      //tableContent+='<td  class=\"test-klein\"  rowspan=\"14\"\">'+choseMonth+'</td><td>Wetterwerte</td>'
                      tableContent+='<td class=\"myWetterStation\" width=\"25px\"  style=\"color:'+monatFarbe+';font-size:26px; background-color:'+hintergrund+' ; vertical-align:middle; text-align:center \"   rowspan=\"14\"\">'+test+'</td><td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\>Wetterwerte</td>'
                      
                      for (let i=0;i<myObj.length;i++) {
                         
                         if( parseInt(myObj[i].jahr)==parseInt(choseJahr) && (parseInt(myObj[i].monat)==parseInt(monWahlVIS) || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-1 || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-2)){
                      tableContent += '<td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\ align=center>'  + monate[parseInt(myObj[i].monat)-1]+'</td>';}
                      }; tableContent="<tr style=\"font-weight\:bold\">"+tableContent+"</tr>"
                      //RESTZEILEN
                      for(var index in varData){
                         tableContent+='<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\">'+varData[index].name+'</td>'
                         for (let i=0;i<myObj.length;i++) {
                          if( parseInt(myObj[i].jahr)==parseInt(choseJahr) && (parseInt(myObj[i].monat)==parseInt(monWahlVIS) || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-1 || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-2)){
                              tableContent += '<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\" align=right>' + myObj[i][index] + ' '+ varData[index].einheit+'</td>'}
                                                          }; tableContent="<tr>"+tableContent+"</tr>"
                      
                      }
                      
                      
                      }
                      
                      tableContent = '<'+myTable+' ><tbody>'+tableContent+'</tbody></table >'
                      //log(tableContent)
                      
                      setState("javascript." + instance + ".Wetterstation.MonthlyDaten",tableContent)
                      }
                      
                      //--------------------------------------------------------------------------------------------------
                      async function main() {
                         if (!(await existsStateAsync("javascript." + instance + ".Wetterstation.MonthlyDaten"))) {
                             await createStateAsync("Wetterstation.MonthlyDaten", "leer", {type: "string", name: "MonthlyDaten", role: "value", read: true, write: true, } ); }
                         if (!(await existsStateAsync("javascript." + instance + ".Wetterstation.MonatAuswahl"))) {
                             await createStateAsync("Wetterstation.MonatAuswahl", 10, {type: "number", name: "MonatAuswahl", role: "value", read: true, write: true, } ); } 
                         if (!(await existsStateAsync("javascript." + instance + ".Wetterstation.AuswahlJahr"))) {
                             await createStateAsync("Wetterstation.AuswahlJahr", 0, {type: "number", name: "AuswahlJahr", role: "value", read: true, write: true, } ); } 
                         lastThree = (await getStateAsync("javascript." + instance + ".Wetterstation.AuswahlJahr")).val //? lastThree=true : lastThree=false;  
                              
                         monWahlVIS=((await getStateAsync("javascript." + instance + ".Wetterstation.MonatAuswahl")).val ) 
                         dataStuff();
                      
                      }
                      
                      //-----------------------------------------------------------------------------------------------------
                      main()
                      
                      
                      
                      on({id: "javascript." + instance + ".Wetterstation.MonatAuswahl", change: "any"}, async function (obj) {
                      main()
                      
                      });
                      
                      on({id: "javascript." + instance + ".Wetterstation.AuswahlJahr", change: "any"}, async function (obj) {
                      main()
                      
                      });
                      
                      schedule('  */30 * * * *', function() { 
                         setState("javascript." + instance + ".Wetterstation.MonatAuswahl", parseInt(formatDate(getDateObject((new Date().getTime())), "MM"))) 
                      });
                      
                      
                      
                      
                      
                      

                      • im script muss eigenlich nur der datenpunkt eingestellt werden
                      • es kommt ein weiteres widget dazu
                      • man kann das jahr abfragen und bekommt die letzten beiden monate und den gesuchten monat des jahres

                      anim-gif12.gif

                      NegaleinN Offline
                      NegaleinN Offline
                      Negalein
                      Global Moderator
                      schrieb am zuletzt editiert von
                      #28

                      @liv-in-sky sagte in VIS-Tabelle für WLAN Wetterstation:

                      hat jmd lust mal dieses script zu testen

                      getestet, läuft und für sehr gut gefunden :grin:

                      ° Node.js: 20.17.0 NPM: 10.8.2
                      ° Proxmox, Ubuntu 22.04.3 LTS
                      ° Fixer ---> iob fix

                      1 Antwort Letzte Antwort
                      0
                      • liv-in-skyL liv-in-sky

                        @Negalein leider kann ich es nicht verwenden (habe keine wetterstation) - suche schon nach einer anzeige in meinen datenpunkten, damit ich das script verwenden kann :-)

                        M Offline
                        M Offline
                        MyMeyer
                        schrieb am zuletzt editiert von
                        #29

                        @liv-in-sky Na dann habe ich mir mal gleich eine bestellt...damit ich das Script testen kann.. :-)

                        MyMeyer

                        >>> Hardware: Intel I5 mit ****Debian ProxMox OS: Debian **** <<< >>> Network with UniFi <<<
                        >>> HomeMatic CCU-2 (Wired und Funk) / Philips HUE / Echo.DOT / Echo.SHOW / Xiaomi Smart-Home / Xiaomi Robot Vacuum Cleaner / Synology DS 918+ / Shelly 1&2 <<<

                        1 Antwort Letzte Antwort
                        1
                        • liv-in-skyL liv-in-sky

                          gehört zu: https://forum.iobroker.net/topic/28384/linux-shell-skript-wlan-wetterstation/1528

                          dieses script dient zur Wetterdaten-Anzeige für die WLAN Wetterstation

                          1604403727276-anim-gif10.gif
                          oder
                          anim-gif12.gif

                          • datenpunkte werden unter javascript.x.Wetterstation angelegt
                          • ein dp für das html-standard-widget mit binding
                          • ein datenpunkt um auswählen des monats
                          • farben können eingestellt werden
                          • schriftgröße oder abstand zu den zellen

                          [{"tpl":"tplJquiSelectList","data":{"oid":"javascript.0.Wetterstation.AuswahlJahr","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","values":"0;2019;2020;2021;2022","texts":"All Years;2019;2020;2021;2022","height":"100","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,"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,"no_style":true},"style":{"left":"1142px","top":"70px"},"widgetSet":"jqui"},{"tpl":"tplJquiSelectList","data":{"oid":"javascript.0.Wetterstation.MonatAuswahl","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","values":"1;2;3;4;5;6;7;8;9;10;11;12","texts":"JANUAR;FEBRUAR;MÄRZ;APRIL;MAI;JUNI;JULI;AUGUST;SEPTEMBER;OKTOBER;NOVEMBER;DEZEMBER","height":"100","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,"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,"no_style":true},"style":{"left":"1258px","top":"70px"},"widgetSet":"jqui"},{"tpl":"tplHtml","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","refreshInterval":"0","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,"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,"html":"{javascript.0.Wetterstation.MonthlyDaten}"},"style":{"left":"1095px","top":"133px","width":"634px","height":"589px","font-family":"","color":"#f7f51d"},"widgetSet":"basic"}]
                          

                          // @liv-in-sky 4.10.2021 11:45
                          //forum: https://forum.iobroker.net/topic/38286/vis-tabelle-f%C3%BCr-wlan-wetterstation
                          
                          
                          const dataInputPath="0_userdata.0.CONTROL-OWN.AAATEST.Wetter.Data";  //SEHR WICHTIG !!!!!!!!!
                          const inhaltFarbe="black"
                          const inhaltHintergrund="lightgray"
                          const monatFarbe="yellow"
                          const hintergrund="grey"
                          const htmlFarbTableBorderColor="yellow";
                          const abstandZelle=6;
                          const htmlRahmenLinien="all"
                          const htmlSchriftgroessehtmlSchriftart=""  //nicht verwendbar!
                          const htmlFarbFelderschrift="red";         //nicht verwendbar!
                          const htmlSchriftgroesse="13px";
                          const htmlSchriftart="Ubuntu-Light"//"monospace";       //oder z.b. "Helvetica"
                          const weite="auto";                        //oder "500px"
                          let myTable="table bordercolor=\""+htmlFarbTableBorderColor+"\" border=\"2px\" cellspacing=\""+abstandZelle+"\" cellpadding=\""+abstandZelle+"\" width=\""+weite+"\" rules=\""+htmlRahmenLinien+"\" style=\"color:"+htmlFarbFelderschrift+";  font-size:"+htmlSchriftgroesse+
                                                "; font-family:"+htmlSchriftart+";\"";
                                                
                          const varData={ 
                                         Hoechstwert:      { einheit:"°C", name:"Maximum Temperatur"}, 
                                          kalte_Tage:       { einheit:"", name:"Kalte Tage (Max. unter 10°C)"},
                                         Tiefstwert:       { einheit:"°C", name:"Minimum Temperatur"},
                                         Temp_Durchschnitt:{ einheit:"°C", name:"Durchschnittstemperatur"},
                                         Max_Windboe:      { einheit:'km/h', name:"Max Windböe"},
                                         Max_Regenmenge:   { einheit:'l/m2', name:"Max. Regen/Tag"},
                                         Regenmenge_Monat: { einheit:'l/m2', name:"Regen"},
                                         warme_Tage:       { einheit:"", name:"Warme Tage (über 20°C)"},
                                         Sommertage:       { einheit:"", name:"Sommertage (über 25°C)"},
                                         heisse_Tage:      { einheit:"", name:'Heiße Tage (über 30°C)'},
                                         Frost_Tage:       { einheit:"", name:"Frosttage (Min. unter 0°C)"},
                                        
                                         Eistage:          { einheit:"", name:"Eistage (Max. unter 0°C)"},
                                         sehr_kalte_Tage:  { einheit:"", name:"Sehr kalte Tage (Min. unter -10°C)"}
                          }  
                          
                          const monate =["JANUAR","FEBRUAR","MÄRZ","APRIL","MAI","JUNI","JULI","AUGUST","SEPTEMBER","OKTOBER","NOVEMBER","DEZEMBER"];
                          
                          
                          //--------------------------nix mehr ändern ab hier--------------------------------------
                          let myObj;
                          let myArrAll=[]
                          let myArrErstellt=[]
                          let tableContent;
                          let monWahlVIS;
                          let lastThree;
                          //----------------------------------------------------------------------------------------
                          function dataStuff(){
                          let myArrAll=[]
                          let mySelector=dataInputPath+'.*.*'
                          $(mySelector).each(function(id, i) {
                          let ida=id.split("."); let lang=ida.length; let jahri=lang-2; let moni=lang-1;
                          let obj2 = { jahr: ida[jahri]};
                          let obj3 = { monat: ida[moni]};
                          let formathelp= getState(id).val
                          let helper;
                          if (typeof(formathelp)=="object") {helper=getState(id).val[0];}  else{helper=JSON.parse(getState(id).val)}
                          
                          helper={ ...helper, ...obj2, ...obj3}
                          myArrAll.push(JSON.stringify(helper))
                          });
                          //log(myArrAll)
                          tableContent = ""  
                          myObj=JSON.parse("\["+myArrAll.toString()+"\]")
                          
                          if (lastThree==0) {
                          //KOPFZEILE
                          let choseMonth=monate[monWahlVIS-1]
                          let choseMonthArr=choseMonth.split('')
                          let test=""
                          for (let i=0;i<choseMonthArr.length;i++){
                            // log(choseMonthArr[i])
                             test=test+choseMonthArr[i]+`
                             `    
                          }
                          
                          //log(test)
                          //tableContent+='<td  class=\"test-klein\"  rowspan=\"14\"\">'+choseMonth+'</td><td>Wetterwerte</td>'
                          tableContent+='<td class=\"myWetterStation\" width=\"25px\"  style=\"color:'+monatFarbe+';font-size:26px; background-color:'+hintergrund+' ; vertical-align:middle; text-align:center \"   rowspan=\"14\"\">'+test+'</td><td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\>Wetterwerte</td>'
                          for (let i=0;i<myObj.length;i++) {
                             if(parseInt(myObj[i].monat)==monWahlVIS){
                          tableContent += '<td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\ align=center>'  + myObj[i].jahr+'</td>'}
                          }; tableContent="<tr style=\"font-weight\:bold\">"+tableContent+"</tr>"
                          //RESTZEILEN
                          for(var index in varData){
                             tableContent+='<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\">'+varData[index].name+'</td>'
                             for (let i=0;i<myObj.length;i++) {
                                if(myObj[i].monat==monWahlVIS){
                                  tableContent += '<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\" align=right>' + myObj[i][index] + ' '+ varData[index].einheit+'</td>'}
                                                              }; tableContent="<tr>"+tableContent+"</tr>"
                          
                          }
                          } //lastThree
                          else {
                          //log(myObj[0].monat)
                              myObj.sort(function (alpha, beta) {
                                       if (parseInt(alpha.monat) > parseInt(beta.monat))
                                           return 1;
                                        if (parseInt(beta.monat) > parseInt(alpha.monat))
                                           return -1;
                                        return 0;});
                                    //    log(myObj[0].monat)
                          
                          //KOPFZEILE LASTTHREE
                          
                          let choseJahr=lastThree.toString()//formatDate(getDateObject((new Date().getTime())), "JJJJ")//monate[monWahlVIS-1]
                          let choseMonthArr=choseJahr.split('')
                          let test=""
                          for (let i=0;i<choseMonthArr.length;i++){
                            // log(choseMonthArr[i])
                             test=test+choseMonthArr[i]+`
                             `    
                          }
                          
                          //log(test)
                          //tableContent+='<td  class=\"test-klein\"  rowspan=\"14\"\">'+choseMonth+'</td><td>Wetterwerte</td>'
                          tableContent+='<td class=\"myWetterStation\" width=\"25px\"  style=\"color:'+monatFarbe+';font-size:26px; background-color:'+hintergrund+' ; vertical-align:middle; text-align:center \"   rowspan=\"14\"\">'+test+'</td><td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\>Wetterwerte</td>'
                          
                          for (let i=0;i<myObj.length;i++) {
                             
                             if( parseInt(myObj[i].jahr)==parseInt(choseJahr) && (parseInt(myObj[i].monat)==parseInt(monWahlVIS) || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-1 || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-2)){
                          tableContent += '<td style=\"color:'+monatFarbe+'; background-color:'+hintergrund+'"\ align=center>'  + monate[parseInt(myObj[i].monat)-1]+'</td>';}
                          }; tableContent="<tr style=\"font-weight\:bold\">"+tableContent+"</tr>"
                          //RESTZEILEN
                          for(var index in varData){
                             tableContent+='<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\">'+varData[index].name+'</td>'
                             for (let i=0;i<myObj.length;i++) {
                              if( parseInt(myObj[i].jahr)==parseInt(choseJahr) && (parseInt(myObj[i].monat)==parseInt(monWahlVIS) || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-1 || parseInt(myObj[i].monat)==parseInt(monWahlVIS)-2)){
                                  tableContent += '<td style=\"color:'+inhaltFarbe+'; background-color:'+inhaltHintergrund+'\" align=right>' + myObj[i][index] + ' '+ varData[index].einheit+'</td>'}
                                                              }; tableContent="<tr>"+tableContent+"</tr>"
                          
                          }
                          
                          
                          }
                          
                          tableContent = '<'+myTable+' ><tbody>'+tableContent+'</tbody></table >'
                          //log(tableContent)
                          
                          setState("javascript." + instance + ".Wetterstation.MonthlyDaten",tableContent)
                          }
                          
                          //--------------------------------------------------------------------------------------------------
                          async function main() {
                             if (!(await existsStateAsync("javascript." + instance + ".Wetterstation.MonthlyDaten"))) {
                                 await createStateAsync("Wetterstation.MonthlyDaten", "leer", {type: "string", name: "MonthlyDaten", role: "value", read: true, write: true, } ); }
                             if (!(await existsStateAsync("javascript." + instance + ".Wetterstation.MonatAuswahl"))) {
                                 await createStateAsync("Wetterstation.MonatAuswahl", 10, {type: "number", name: "MonatAuswahl", role: "value", read: true, write: true, } ); } 
                             if (!(await existsStateAsync("javascript." + instance + ".Wetterstation.AuswahlJahr"))) {
                                 await createStateAsync("Wetterstation.AuswahlJahr", 0, {type: "number", name: "AuswahlJahr", role: "value", read: true, write: true, } ); } 
                             lastThree = (await getStateAsync("javascript." + instance + ".Wetterstation.AuswahlJahr")).val //? lastThree=true : lastThree=false;  
                                  
                             monWahlVIS=((await getStateAsync("javascript." + instance + ".Wetterstation.MonatAuswahl")).val ) 
                             dataStuff();
                          
                          }
                          
                          //-----------------------------------------------------------------------------------------------------
                          main()
                          
                          
                          
                          on({id: "javascript." + instance + ".Wetterstation.MonatAuswahl", change: "any"}, async function (obj) {
                          main()
                          
                          });
                          
                          on({id: "javascript." + instance + ".Wetterstation.AuswahlJahr", change: "any"}, async function (obj) {
                          main()
                          
                          });
                          
                          schedule('  */30 * * * *', function() { 
                             setState("javascript." + instance + ".Wetterstation.MonatAuswahl", parseInt(formatDate(getDateObject((new Date().getTime())), "MM"))) ;
                             setStateDelayed("javascript." + instance + ".Wetterstation.AuswahlJahr", parseInt(formatDate(getDateObject((new Date().getTime())), "JJJJ")),10000) ;
                          });
                          
                          
                          
                          
                          
                          
                          

                          @Negalein

                          • mußte den monat wieder horizontal einfügen - wenn ich eine lösung finde, ändere ich das noch
                          • du kannst die namen hier ändern
                          • mußt den pfad für die daten eingeben in der ersten"const"

                          Image 2.png

                          NegaleinN Offline
                          NegaleinN Offline
                          Negalein
                          Global Moderator
                          schrieb am zuletzt editiert von
                          #30

                          @liv-in-sky sagte in VIS-Tabelle für WLAN Wetterstation:

                          dieses script dient zur Wetterdaten-Anzeige für die WLAN Wetterstation

                          Hallo @liv-in-sky

                          Wo im Script kann ich die Zeilen umsortieren?

                          derzeit so:
                          vis.png

                          möchte es mir so gestalten:
                          _4  Wetterstation Sachsenberg Wernstein am Inn   Facebook.png

                          ° Node.js: 20.17.0 NPM: 10.8.2
                          ° Proxmox, Ubuntu 22.04.3 LTS
                          ° Fixer ---> iob fix

                          liv-in-skyL 1 Antwort Letzte Antwort
                          0
                          • NegaleinN Negalein

                            @liv-in-sky sagte in VIS-Tabelle für WLAN Wetterstation:

                            dieses script dient zur Wetterdaten-Anzeige für die WLAN Wetterstation

                            Hallo @liv-in-sky

                            Wo im Script kann ich die Zeilen umsortieren?

                            derzeit so:
                            vis.png

                            möchte es mir so gestalten:
                            _4  Wetterstation Sachsenberg Wernstein am Inn   Facebook.png

                            liv-in-skyL Offline
                            liv-in-skyL Offline
                            liv-in-sky
                            schrieb am zuletzt editiert von
                            #31

                            @negalein

                            ich denke, du mußt das array hier sortieren /in die richtige reihenfolge setzen- ist schon eine weile her - pass auf die kommas auf - nach dem letzten eintrag darf kein komma sein

                            Image 1.png

                            nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                            NegaleinN 1 Antwort Letzte Antwort
                            0
                            • liv-in-skyL liv-in-sky

                              @negalein

                              ich denke, du mußt das array hier sortieren /in die richtige reihenfolge setzen- ist schon eine weile her - pass auf die kommas auf - nach dem letzten eintrag darf kein komma sein

                              Image 1.png

                              NegaleinN Offline
                              NegaleinN Offline
                              Negalein
                              Global Moderator
                              schrieb am zuletzt editiert von
                              #32

                              @liv-in-sky sagte in VIS-Tabelle für WLAN Wetterstation:

                              ich denke, du mußt das array hier sortieren

                              Danke, funktioniert

                              vis (1).png

                              ° Node.js: 20.17.0 NPM: 10.8.2
                              ° Proxmox, Ubuntu 22.04.3 LTS
                              ° Fixer ---> iob fix

                              1 Antwort Letzte Antwort
                              1
                              • NashraN Offline
                                NashraN Offline
                                Nashra
                                Most Active Forum Testing
                                schrieb am zuletzt editiert von
                                #33

                                Besteht die Möglichkeit das man auch alle Monate anzeigen lassen kann anstatt nur 3?

                                Gruß Ralf
                                Mir egal, wer Dein Vater ist! Wenn ich hier angel, wird nicht übers Wasser gelaufen!!

                                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                liv-in-skyL 1 Antwort Letzte Antwort
                                0
                                • NashraN Nashra

                                  Besteht die Möglichkeit das man auch alle Monate anzeigen lassen kann anstatt nur 3?

                                  liv-in-skyL Offline
                                  liv-in-skyL Offline
                                  liv-in-sky
                                  schrieb am zuletzt editiert von
                                  #34

                                  @nashra

                                  in diesem änderungen werden immer alle monate, die für das jahr vorhanden sind angezeigt - teste doch mal - bei mir funktioniert es

                                  du kannst auch dein existierendes script mal kopieren und dann folgende zeilen ändern - dann musst du deine settings nicht kopieren und das design bleibt, wie es ist

                                  änderungen ab zeile 120

                                  Image 1.png

                                  nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                  NashraN 1 Antwort Letzte Antwort
                                  1
                                  • liv-in-skyL liv-in-sky

                                    @nashra

                                    in diesem änderungen werden immer alle monate, die für das jahr vorhanden sind angezeigt - teste doch mal - bei mir funktioniert es

                                    du kannst auch dein existierendes script mal kopieren und dann folgende zeilen ändern - dann musst du deine settings nicht kopieren und das design bleibt, wie es ist

                                    änderungen ab zeile 120

                                    Image 1.png

                                    NashraN Offline
                                    NashraN Offline
                                    Nashra
                                    Most Active Forum Testing
                                    schrieb am zuletzt editiert von
                                    #35

                                    @liv-in-sky sagte in VIS-Tabelle für WLAN Wetterstation:

                                    @nashra

                                    in diesem änderungen werden immer alle monate, die für das jahr vorhanden sind angezeigt - teste doch mal - bei mir funktioniert es

                                    du kannst auch dein existierendes script mal kopieren und dann folgende zeilen ändern - dann musst du deine settings nicht kopieren und das design bleibt, wie es ist

                                    änderungen ab zeile 120

                                    Image 1.png

                                    Funktioniert, danke :+1:

                                    Gruß Ralf
                                    Mir egal, wer Dein Vater ist! Wenn ich hier angel, wird nicht übers Wasser gelaufen!!

                                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                    1 Antwort Letzte Antwort
                                    0
                                    • Chris76eC Online
                                      Chris76eC Online
                                      Chris76e
                                      schrieb am zuletzt editiert von
                                      #36

                                      Hi, bei mir wird die Monatsansicht nicht richtig ausgefüllt. Die Tabelle bekommt keine richtigen Daten.

                                      JSON sieht so aus:

                                      [
                                        {
                                          "Tiefstwert": 5.27,
                                          "Hoechstwert": 33,
                                          "Temp_Durchschnitt": 18.79,
                                          "Max_Windboe": 21.88,
                                          "Max_Regenmenge": 8.1,
                                          "Regenmenge_Monat": 31.2,
                                          "warme_Tage": 22,
                                          "Sommertage": 14,
                                          "heisse_Tage": 2,
                                          "Frost_Tage": 0,
                                          "kalte_Tage": 0,
                                          "Eistage": 0,
                                          "sehr_kalte_Tage": 0
                                        }
                                      ]
                                      

                                      Screenshot 2022-06-01 200028.jpg

                                      Muss man noch irgendwas einstellen? DP ist bei mir 0_userdata.0.Statistik.Wetter.Data und javascript.0.Wetterstation.MonthlyDaten.

                                      liv-in-skyL 1 Antwort Letzte Antwort
                                      0
                                      • Chris76eC Chris76e

                                        Hi, bei mir wird die Monatsansicht nicht richtig ausgefüllt. Die Tabelle bekommt keine richtigen Daten.

                                        JSON sieht so aus:

                                        [
                                          {
                                            "Tiefstwert": 5.27,
                                            "Hoechstwert": 33,
                                            "Temp_Durchschnitt": 18.79,
                                            "Max_Windboe": 21.88,
                                            "Max_Regenmenge": 8.1,
                                            "Regenmenge_Monat": 31.2,
                                            "warme_Tage": 22,
                                            "Sommertage": 14,
                                            "heisse_Tage": 2,
                                            "Frost_Tage": 0,
                                            "kalte_Tage": 0,
                                            "Eistage": 0,
                                            "sehr_kalte_Tage": 0
                                          }
                                        ]
                                        

                                        Screenshot 2022-06-01 200028.jpg

                                        Muss man noch irgendwas einstellen? DP ist bei mir 0_userdata.0.Statistik.Wetter.Data und javascript.0.Wetterstation.MonthlyDaten.

                                        liv-in-skyL Offline
                                        liv-in-skyL Offline
                                        liv-in-sky
                                        schrieb am zuletzt editiert von
                                        #37

                                        @chris76e

                                        das ist aber sehr lange her - hasg du das script von hier https://forum.iobroker.net/post/515791 genutzt

                                        man muss eigentlich nur (soweit ich mich erinnere) dieses setting im script setzen: dataInputPath ist ganz oben im script

                                        nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                        NashraN 1 Antwort Letzte Antwort
                                        0
                                        • liv-in-skyL liv-in-sky

                                          @chris76e

                                          das ist aber sehr lange her - hasg du das script von hier https://forum.iobroker.net/post/515791 genutzt

                                          man muss eigentlich nur (soweit ich mich erinnere) dieses setting im script setzen: dataInputPath ist ganz oben im script

                                          NashraN Offline
                                          NashraN Offline
                                          Nashra
                                          Most Active Forum Testing
                                          schrieb am zuletzt editiert von
                                          #38

                                          @liv-in-sky sagte in VIS-Tabelle für WLAN Wetterstation:

                                          @chris76e

                                          das ist aber sehr lange her - hasg du das script von hier https://forum.iobroker.net/post/515791 genutzt

                                          man muss eigentlich nur (soweit ich mich erinnere) dieses setting im script setzen: dataInputPath ist ganz oben im script

                                          Moin @liv-in-sky, das selbe Problem habe ich auch mit deinem Skript
                                          ws-mai.png

                                          Gruß Ralf
                                          Mir egal, wer Dein Vater ist! Wenn ich hier angel, wird nicht übers Wasser gelaufen!!

                                          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                          liv-in-skyL 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          757

                                          Online

                                          32.5k

                                          Benutzer

                                          81.7k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe