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

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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Praktische Anwendungen (Showcase)
  4. [Linux Shell-Skript] WLAN-Wetterstation

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

[Linux Shell-Skript] WLAN-Wetterstation

Scheduled Pinned Locked Moved Praktische Anwendungen (Showcase)
linuxshell-scriptwetterstationwlan-wetterstation
5.7k Posts 156 Posters 3.9m Views 138 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • L Langer

    @thomas-braun

    root@pi-slave:/home/iobroker# dir
    wetterstation.conf wetterstation.sh wetterstation.sub ws_updater.sh

    Ich hoffe das hast Du gemeint?

    MfG
    Wastl

    Thomas BraunT Online
    Thomas BraunT Online
    Thomas Braun
    Most Active
    wrote on last edited by
    #2969

    @langer

    Du springst da ja immer noch als root rum.
    Log dich aus und als Standarduser wieder an.

    ls -l /home/iobroker
    

    Linux-Werkzeugkasten:
    https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
    NodeJS Fixer Skript:
    https://forum.iobroker.net/topic/68035/iob-node-fix-skript
    iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

    1 Reply Last reply
    0
    • da_WoodyD da_Woody

      @negalein sagte in [Linux Shell-Skript] WLAN-Wetterstation:

      Mir gings nur um das aussehen.

      schau in den spiegel, dann weist du, das ist nebensächlich...
      goo.gif

      SBorgS Offline
      SBorgS Offline
      SBorg
      Forum Testing Most Active
      wrote on last edited by
      #2970

      @da_woody sagte in [Linux Shell-Skript] WLAN-Wetterstation:

      schau in den spiegel, dann weist du, das ist nebensächlich...

      Jeden Morgen...
      "Ich kenn dich zwar nicht, wasch dich aber trotzdem..." :grinning:

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

      1 Reply Last reply
      1
      • SBorgS SBorg

        @negalein sagte in [Linux Shell-Skript] WLAN-Wetterstation:

        beim Start dieses Scripts von @liv-in-sky kommt nun

        + @all liv-in-sky Skript-Nutzer:
        Ändere mal so um Zeile ~#53 ab:

        let helper=JSON.parse(getState(id).val); 
        

        in

        //let helper=JSON.parse(getState(id).val); 
        let helper=getState(id).val[0];
        

        also Originalzeile auskommentieren und dafür die neue einfügen. Danach sollte es wieder laufen.

        NegaleinN Offline
        NegaleinN Offline
        Negalein
        Global Moderator
        wrote on last edited by
        #2971

        @sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:

        Danach sollte es wieder laufen.

        Merci
        läuft wieder :)

        ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
        ° Node.js Fixer ---> iob nodejs-update
        ° Fixer ---> iob fix

        1 Reply Last reply
        0
        • Rene55R Offline
          Rene55R Offline
          Rene55
          wrote on last edited by
          #2972

          @SBorg Danke für die Antwort. Probleme mit Influx/Grafana hatte ich eigentlich noch keine, oder sind mir nicht aufgefallen. Die Fehlermeldung aus dem ersten Post hatte ich ja auch nur einmal beim ersten Start des Scripts V1.0.0. Und da ja in dem Lgeintrag drin stand "Please report this to the developer." dachte ich mir, das sollte der Entwickler mal beäugen. Wenns nur bei mir auftrat ist es auch nicht weiter wichtig - es läuft ja alles.
          LG Rainer

          Host: Fujitsu Intel(R) Pentium(R) CPU G4560T, 32 GB RAM, Proxmox 8.x + lxc Ubuntu 22.04
          ioBroker (8 GB RAM) Node.js: 20.19.1, NPM: 10.8.2, js-Controller: 7.0.6, Admin: 7.6.3
          Wetterstation: Froggit WH3000SE V1.6.6

          SBorgS 1 Reply Last reply
          0
          • NegaleinN Negalein

            @negalein sagte in [Linux Shell-Skript] WLAN-Wetterstation:

            @sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:

            Falls nicht bitte melden, sind ggf. nur wenige Zeilen.

            bei mir steht es still :(
            log.gif

            beim Start dieses Scripts von @liv-in-sky kommt nun

            00:14:32.040	error	javascript.0 (31206) script.js.Wetter.Wettertabelle: SyntaxError: Unexpected token o in JSON at position 1
            00:14:32.040	error	javascript.0 (31206) at script.js.Wetter.Wettertabelle:53:17
            00:14:32.040	error	javascript.0 (31206) at dataStuff (script.js.Wetter.Wettertabelle:49:15)
            00:14:32.040	error	javascript.0 (31206) at main (script.js.Wetter.Wettertabelle:149:4)
            
            liv-in-skyL Offline
            liv-in-skyL Offline
            liv-in-sky
            wrote on last edited by
            #2973

            @negalein
            da wurden wohl die states geändert - da kann das script nicht von allein drauf kommen, dass sich da was geändert hat

            @SBorg - ich denk, deine änderung müßte so passen - wenn du das array - 0 - element einliest, sollten die daten wieder wie vorher verarbeitet werden :+1:

            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 SBorgS 2 Replies Last reply
            0
            • liv-in-skyL liv-in-sky

              @negalein
              da wurden wohl die states geändert - da kann das script nicht von allein drauf kommen, dass sich da was geändert hat

              @SBorg - ich denk, deine änderung müßte so passen - wenn du das array - 0 - element einliest, sollten die daten wieder wie vorher verarbeitet werden :+1:

              NegaleinN Offline
              NegaleinN Offline
              Negalein
              Global Moderator
              wrote on last edited by
              #2974

              @liv-in-sky sagte in [Linux Shell-Skript] WLAN-Wetterstation:

              @SBorg - ich denk, deine änderung müßte so passen - wenn du das array - 0 - element einliest, sollten die daten wieder wie vorher verarbeitet werden

              Jepp, passt wieder :)

              ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
              ° Node.js Fixer ---> iob nodejs-update
              ° Fixer ---> iob fix

              1 Reply Last reply
              0
              • liv-in-skyL liv-in-sky

                @negalein
                da wurden wohl die states geändert - da kann das script nicht von allein drauf kommen, dass sich da was geändert hat

                @SBorg - ich denk, deine änderung müßte so passen - wenn du das array - 0 - element einliest, sollten die daten wieder wie vorher verarbeitet werden :+1:

                SBorgS Offline
                SBorgS Offline
                SBorg
                Forum Testing Most Active
                wrote on last edited by
                #2975

                @liv-in-sky Mehr Zwangsweise, da der "neue" JSC mehr oder minder JSON nun als Array + Object vorschreibt. Von meiner Seite aus ändere ich nur sehr, sehr ungern etwas im laufenden Betrieb noch an States etc.

                Da das hier im Thread wohl auch untergeht, magst du eine Änderung in deinem Skript hinzufügen, dass ab >=V1.0.0 Version xyz deines Skriptes zu nutzen ist :) :+1:

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

                liv-in-skyL 1 Reply Last reply
                0
                • SBorgS SBorg

                  @liv-in-sky Mehr Zwangsweise, da der "neue" JSC mehr oder minder JSON nun als Array + Object vorschreibt. Von meiner Seite aus ändere ich nur sehr, sehr ungern etwas im laufenden Betrieb noch an States etc.

                  Da das hier im Thread wohl auch untergeht, magst du eine Änderung in deinem Skript hinzufügen, dass ab >=V1.0.0 Version xyz deines Skriptes zu nutzen ist :) :+1:

                  liv-in-skyL Offline
                  liv-in-skyL Offline
                  liv-in-sky
                  wrote on last edited by
                  #2976

                  @sborg

                  ich überlege gerade, ob man nicht einen teil einfügt, der überprüft, ob ein array oder pure json drinsteht - evtl umwandelt und dann weitermacht

                  muss das mal näher anschauen - dann bräuchten die user auch die alten dp nicht von hand konvertieren

                  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 Reply Last reply
                  0
                  • Rene55R Rene55

                    @SBorg Danke für die Antwort. Probleme mit Influx/Grafana hatte ich eigentlich noch keine, oder sind mir nicht aufgefallen. Die Fehlermeldung aus dem ersten Post hatte ich ja auch nur einmal beim ersten Start des Scripts V1.0.0. Und da ja in dem Lgeintrag drin stand "Please report this to the developer." dachte ich mir, das sollte der Entwickler mal beäugen. Wenns nur bei mir auftrat ist es auch nicht weiter wichtig - es läuft ja alles.
                    LG Rainer

                    SBorgS Offline
                    SBorgS Offline
                    SBorg
                    Forum Testing Most Active
                    wrote on last edited by
                    #2977

                    @rene55 sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                    Danke für die Antwort. Probleme mit Influx/Grafana hatte ich eigentlich noch keine, oder sind mir nicht aufgefallen.

                    Siehste, verwechselt... ;)
                    ...wobei die Fehlermeldung nicht schlüssig ist. Wenn aber jetzt Ruhe ist und auch alles läuft --> dann "gut" so, nachvollziehen kann ich es eh nicht

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

                    1 Reply Last reply
                    0
                    • liv-in-skyL liv-in-sky

                      @sborg

                      ich überlege gerade, ob man nicht einen teil einfügt, der überprüft, ob ein array oder pure json drinsteht - evtl umwandelt und dann weitermacht

                      muss das mal näher anschauen - dann bräuchten die user auch die alten dp nicht von hand konvertieren

                      SBorgS Offline
                      SBorgS Offline
                      SBorg
                      Forum Testing Most Active
                      wrote on last edited by
                      #2978

                      @liv-in-sky sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                      dann bräuchten die user auch die alten dp nicht von hand konvertieren

                      Doch, da ich die auch am 01. des Monats wieder einlese (sonst muss ich immer etliche Datenbankabfragen und Auswertungen fahren die unnötig sind, denn zu dem entsprechenden Monat [wie bspw. aktuell Oktober 2020] liegen die Daten ja vor) und da es ein Array sein soll, schreibe ich das nun auch als Array. Ich kam zwar auch auf den Gedanken, um aber da spätere Inkompatibilitäten (zB. Nutzung in der VIS, Bindings...) zu vermeiden, bin ich dafür nur ein Format zu haben. Schlimmstenfalls 13 DPs zu ändern geht ja auch fix.

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

                      liv-in-skyL 2 Replies Last reply
                      0
                      • SBorgS SBorg

                        @liv-in-sky sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                        dann bräuchten die user auch die alten dp nicht von hand konvertieren

                        Doch, da ich die auch am 01. des Monats wieder einlese (sonst muss ich immer etliche Datenbankabfragen und Auswertungen fahren die unnötig sind, denn zu dem entsprechenden Monat [wie bspw. aktuell Oktober 2020] liegen die Daten ja vor) und da es ein Array sein soll, schreibe ich das nun auch als Array. Ich kam zwar auch auf den Gedanken, um aber da spätere Inkompatibilitäten (zB. Nutzung in der VIS, Bindings...) zu vermeiden, bin ich dafür nur ein Format zu haben. Schlimmstenfalls 13 DPs zu ändern geht ja auch fix.

                        liv-in-skyL Offline
                        liv-in-skyL Offline
                        liv-in-sky
                        wrote on last edited by liv-in-sky
                        #2979

                        @sborg

                        hat sich erledigt

                        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 Reply Last reply
                        0
                        • SBorgS SBorg

                          @liv-in-sky sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                          dann bräuchten die user auch die alten dp nicht von hand konvertieren

                          Doch, da ich die auch am 01. des Monats wieder einlese (sonst muss ich immer etliche Datenbankabfragen und Auswertungen fahren die unnötig sind, denn zu dem entsprechenden Monat [wie bspw. aktuell Oktober 2020] liegen die Daten ja vor) und da es ein Array sein soll, schreibe ich das nun auch als Array. Ich kam zwar auch auf den Gedanken, um aber da spätere Inkompatibilitäten (zB. Nutzung in der VIS, Bindings...) zu vermeiden, bin ich dafür nur ein Format zu haben. Schlimmstenfalls 13 DPs zu ändern geht ja auch fix.

                          liv-in-skyL Offline
                          liv-in-skyL Offline
                          liv-in-sky
                          wrote on last edited by
                          #2980

                          @sborg

                          script ist upgedated und läuft für jede dp-version

                          dem script ist es jetzt egal, was da drin steht - wenn es ein object ist, nimmt es das object - ist es ein string - wie früher - nimmt es einen string

                          https://forum.iobroker.net/topic/38286/vis-tabelle-für-wlan-wetterstation

                          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 Reply Last reply
                          1
                          • L Langer

                            @thomas-braun

                            root@pi-slave:/home/iobroker# dir
                            wetterstation.conf wetterstation.sh wetterstation.sub ws_updater.sh

                            Ich hoffe das hast Du gemeint?

                            MfG
                            Wastl

                            SBorgS Offline
                            SBorgS Offline
                            SBorg
                            Forum Testing Most Active
                            wrote on last edited by
                            #2981

                            @langer Ich nehme an durch den "bösen" root stimmen die Userrechte so nicht mehr.
                            Eigentlich sollte es so aussehen (bei mir läuft es unter User/Gruppe sborg )
                            Bild 1.png
                            wobei "wetterstation.js" uninteressant ist und bei der "sh" -rwxr--r-- völlig genügt, außer man arbeitet wirklich mit Gruppen.
                            Auch wenn es nerven mag, als User arbeiten und bei ev. nötigen Rechten halt ein "sudo" davor.

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

                            1 Reply Last reply
                            0
                            • liv-in-skyL liv-in-sky

                              @sborg

                              script ist upgedated und läuft für jede dp-version

                              dem script ist es jetzt egal, was da drin steht - wenn es ein object ist, nimmt es das object - ist es ein string - wie früher - nimmt es einen string

                              https://forum.iobroker.net/topic/38286/vis-tabelle-für-wlan-wetterstation

                              NegaleinN Offline
                              NegaleinN Offline
                              Negalein
                              Global Moderator
                              wrote on last edited by
                              #2982

                              @liv-in-sky sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                              script ist upgedated und läuft für jede dp-version

                              habs getestet, wirft aber Fehler aus.

                              12:12:36.575	error	javascript.0 (31206) script.js.Wetter.Wettertabelle: SyntaxError: Unexpected token ] in JSON at position 0
                              12:12:36.575	error	javascript.0 (31206) at script.js.Wetter.Wettertabelle:56:83
                              12:12:36.576	error	javascript.0 (31206) at dataStuff (script.js.Wetter.Wettertabelle:50:15)
                              12:12:36.576	error	javascript.0 (31206) at main (script.js.Wetter.Wettertabelle:153:4)
                              

                              ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                              ° Node.js Fixer ---> iob nodejs-update
                              ° Fixer ---> iob fix

                              liv-in-skyL 1 Reply Last reply
                              0
                              • NegaleinN Negalein

                                @liv-in-sky sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                                script ist upgedated und läuft für jede dp-version

                                habs getestet, wirft aber Fehler aus.

                                12:12:36.575	error	javascript.0 (31206) script.js.Wetter.Wettertabelle: SyntaxError: Unexpected token ] in JSON at position 0
                                12:12:36.575	error	javascript.0 (31206) at script.js.Wetter.Wettertabelle:56:83
                                12:12:36.576	error	javascript.0 (31206) at dataStuff (script.js.Wetter.Wettertabelle:50:15)
                                12:12:36.576	error	javascript.0 (31206) at main (script.js.Wetter.Wettertabelle:153:4)
                                
                                liv-in-skyL Offline
                                liv-in-skyL Offline
                                liv-in-sky
                                wrote on last edited by
                                #2983

                                @negalein

                                ich habe 3 werte umgewandelt mit [..] und als object type "object" statt "string" im raw geändert

                                Image 1.png

                                läuft bei mir

                                hast du das in object umwandeln gemacht ?

                                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 SBorgS 2 Replies Last reply
                                0
                                • liv-in-skyL liv-in-sky

                                  @negalein

                                  ich habe 3 werte umgewandelt mit [..] und als object type "object" statt "string" im raw geändert

                                  Image 1.png

                                  läuft bei mir

                                  hast du das in object umwandeln gemacht ?

                                  NegaleinN Offline
                                  NegaleinN Offline
                                  Negalein
                                  Global Moderator
                                  wrote on last edited by
                                  #2984

                                  @liv-in-sky sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                                  hast du das in object umwandeln gemacht ?

                                  Ja, schon gestern
                                  objects - ioBroker (6).png

                                  So schaut das Script jetzt aus.
                                  Eventuell siehst du einen copy/paste Fehler.

                                  // @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.Statistik.Wetter.Data";  //SEHR WICHTIG !!!!!!!!!
                                  const inhaltFarbe="black"
                                  const inhaltHintergrund="lightgray"
                                  const monatFarbe="black"
                                  const hintergrund="gray"
                                  const htmlFarbTableBorderColor="black";
                                  const abstandZelle=6;
                                  const htmlRahmenLinien="all"
                                  const htmlSchriftgroessehtmlSchriftart=""  //nicht verwendbar!
                                  const htmlFarbFelderschrift="red";         //nicht verwendbar!
                                  const htmlSchriftgroesse="14px";
                                  const htmlSchriftart="Ubuntu-Light"//"RobotoCondensed-Regular";       //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"},
                                                 heisse_Tage:      { einheit:"", name:'Heiße Tage (über 30°C)'},
                                                 Sommertage:       { einheit:"", name:"Sommertage (über 25°C)"},
                                                 warme_Tage:       { einheit:"", name:"Warme Tage (über 20°C)"},
                                                 kalte_Tage:       { einheit:"", name:"Kalte Tage (Max. unter 10°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) ;
                                  });
                                  

                                  ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                                  ° Node.js Fixer ---> iob nodejs-update
                                  ° Fixer ---> iob fix

                                  1 Reply Last reply
                                  0
                                  • liv-in-skyL liv-in-sky

                                    @negalein

                                    ich habe 3 werte umgewandelt mit [..] und als object type "object" statt "string" im raw geändert

                                    Image 1.png

                                    läuft bei mir

                                    hast du das in object umwandeln gemacht ?

                                    SBorgS Offline
                                    SBorgS Offline
                                    SBorg
                                    Forum Testing Most Active
                                    wrote on last edited by
                                    #2985

                                    @liv-in-sky sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                                    läuft bei mir

                                    Sorry @Negalein , lüppt bei mir auch.
                                    Hast du ev. aus Versehen bei einem der Datenpunkte ein [ oder ] zu wenig/viel?

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

                                    NegaleinN 1 Reply Last reply
                                    0
                                    • SBorgS SBorg

                                      @liv-in-sky sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                                      läuft bei mir

                                      Sorry @Negalein , lüppt bei mir auch.
                                      Hast du ev. aus Versehen bei einem der Datenpunkte ein [ oder ] zu wenig/viel?

                                      NegaleinN Offline
                                      NegaleinN Offline
                                      Negalein
                                      Global Moderator
                                      wrote on last edited by Negalein
                                      #2986

                                      @liv-in-sky @sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                                      Hast du ev. aus Versehen bei einem der Datenpunkte ein [ oder ] zu wenig/viel?

                                      Haaaa, tatsächlich.
                                      Hatte 1x in der 1. Zeile [ mit ] vertauscht.

                                      Kleiner Fehler-----große Auswirkung

                                      PS: schon Bier gekauft ;)

                                      ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                                      ° Node.js Fixer ---> iob nodejs-update
                                      ° Fixer ---> iob fix

                                      liv-in-skyL 1 Reply Last reply
                                      0
                                      • NegaleinN Negalein

                                        @liv-in-sky @sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                                        Hast du ev. aus Versehen bei einem der Datenpunkte ein [ oder ] zu wenig/viel?

                                        Haaaa, tatsächlich.
                                        Hatte 1x in der 1. Zeile [ mit ] vertauscht.

                                        Kleiner Fehler-----große Auswirkung

                                        PS: schon Bier gekauft ;)

                                        liv-in-skyL Offline
                                        liv-in-skyL Offline
                                        liv-in-sky
                                        wrote on last edited by
                                        #2987

                                        @negalein

                                        läuft also - dann is ja gut

                                        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 Reply Last reply
                                        1
                                        • SBorgS Offline
                                          SBorgS Offline
                                          SBorg
                                          Forum Testing Most Active
                                          wrote on last edited by
                                          #2988

                                          [OFF Topic]
                                          Ich bin nun wieder hin- und hergerissen. Zum einen ist es für mich nicht selbstverständlich, zum anderen hat es aber in meinen Augen immer einen schalen Beigeschmack. Wie man es macht ist es aber eh immer verkehrt.

                                          Aber ich bin älter und so erzogen worden. Many Thx @CW ( ;) ) für die Spende. Es wird aber Kaffee werden, da ich Alk weitest meiden soll ;)
                                          ...und Schal: es braucht sich wirklich keiner deswegen genötigt zu sehen etwas spenden zu müssen. Ich will mich einfach nur bedanken. Es macht nichts besser oder schlechter, ich mach das gerne weil ich es (mehr oder minder gut) kann, zum Teil selbst nutze und an anderer Stelle auch von der Arbeit Anderer profitiere.

                                          ...und jetzt kam dein Post dazwischen während ich hier tippe und du es selbst schon teilweise verraten hast, also Danke @Negalein :blush:

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

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          745

                                          Online

                                          32.7k

                                          Users

                                          82.4k

                                          Topics

                                          1.3m

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

                                          • Don't have an account? Register

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