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

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

NEWS

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.4k

[Linux Shell-Skript] WLAN-Wetterstation

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
linuxshell-scriptwetterstationwlan-wetterstation
5.7k Beiträge 152 Kommentatoren 3.8m Aufrufe 134 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.
  • M MartyBr

    @sborg
    Ich habe die 2.11.1 Version laufen und nun auch den DP100 integriert. Es funktioniert fast alles: Es fehlen nur die Datenpunkte

    Info.Temp_Aussen_24h_max und ..min

    Bildschirmfoto 2022-03-01 um 16.03.29.png

    Wo kann der Fehler liegen? Die Wetterstation läuft schon ein paar Tage.

    R Offline
    R Offline
    Rushmed
    Most Active
    schrieb am zuletzt editiert von
    #3575

    @martybr Liegt daran dass du noch keine 365 Tage loggst.

    M 1 Antwort Letzte Antwort
    0
    • R Rushmed

      @martybr Liegt daran dass du noch keine 365 Tage loggst.

      M Offline
      M Offline
      MartyBr
      schrieb am zuletzt editiert von
      #3576

      @rushmed Ich dachte, dass sind die Tageshöchst- oder Tagesmindesttemperaturen. Dann lasse ich das mal weitere 363 Tage laufen :innocent:

      Gruß
      Martin


      Intel NUCs mit Proxmox / Iobroker als VM unter Debian
      Raspeberry mit USB Leseköpfen für Smartmeter
      Homematic und Homematic IP

      R 1 Antwort Letzte Antwort
      0
      • M MartyBr

        @rushmed Ich dachte, dass sind die Tageshöchst- oder Tagesmindesttemperaturen. Dann lasse ich das mal weitere 363 Tage laufen :innocent:

        R Offline
        R Offline
        Rushmed
        Most Active
        schrieb am zuletzt editiert von Rushmed
        #3577

        @martybr Sorry, meine aussage bezog sich auf die DPs mit 365t.
        Bei mir siehts so aus, ich hab aber vor Kurzem alle Daten zurückgesetzt.
        49934952-d9a6-40da-a38f-17f0c436d189-grafik.png

        Edit: Ich seh gerade, da stimmt was nicht mit den heutigen min-, max-Werten
        e20710f4-0cb4-405a-a16c-03407abd0f7c-grafik.png

        M 1 Antwort Letzte Antwort
        0
        • R Rushmed

          @martybr Sorry, meine aussage bezog sich auf die DPs mit 365t.
          Bei mir siehts so aus, ich hab aber vor Kurzem alle Daten zurückgesetzt.
          49934952-d9a6-40da-a38f-17f0c436d189-grafik.png

          Edit: Ich seh gerade, da stimmt was nicht mit den heutigen min-, max-Werten
          e20710f4-0cb4-405a-a16c-03407abd0f7c-grafik.png

          M Offline
          M Offline
          MartyBr
          schrieb am zuletzt editiert von
          #3578

          @rushmed Vielleicht ist da ein Problem in dem Script. Welcher Version setzt du ein?

          Gruß
          Martin


          Intel NUCs mit Proxmox / Iobroker als VM unter Debian
          Raspeberry mit USB Leseköpfen für Smartmeter
          Homematic und Homematic IP

          R 1 Antwort Letzte Antwort
          0
          • M MartyBr

            @rushmed Vielleicht ist da ein Problem in dem Script. Welcher Version setzt du ein?

            R Offline
            R Offline
            Rushmed
            Most Active
            schrieb am zuletzt editiert von
            #3579

            @martybr Beide Scripte sind aktuell.

            M 1 Antwort Letzte Antwort
            0
            • R Rushmed

              @martybr Beide Scripte sind aktuell.

              M Offline
              M Offline
              MartyBr
              schrieb am zuletzt editiert von
              #3580

              @rushmed
              Ich setze die 2.11.1 ein. Welche zwei Scripte setzt du ein? Auch das Statistik-Script?

              Gruß
              Martin


              Intel NUCs mit Proxmox / Iobroker als VM unter Debian
              Raspeberry mit USB Leseköpfen für Smartmeter
              Homematic und Homematic IP

              R 1 Antwort Letzte Antwort
              0
              • M MartyBr

                @rushmed
                Ich setze die 2.11.1 ein. Welche zwei Scripte setzt du ein? Auch das Statistik-Script?

                R Offline
                R Offline
                Rushmed
                Most Active
                schrieb am zuletzt editiert von
                #3581

                @martybr
                wetterstation-statistik.js V1.0.1
                wetterstation.sh V2.11.1

                M 1 Antwort Letzte Antwort
                0
                • R Rushmed

                  @martybr
                  wetterstation-statistik.js V1.0.1
                  wetterstation.sh V2.11.1

                  M Offline
                  M Offline
                  MartyBr
                  schrieb am zuletzt editiert von MartyBr
                  #3582

                  @rushmed
                  Ich habe nun auch das Statistik-Script in der aktuellen Version 1.0.1 installiert. Es liefert leider immer den Fehler

                  Fehler beim Lesen der InfluxDB: Invalid call
                  

                  Hast du den String in

                    //InfluxDB abfragen (Regen +1min Startverzögerung wg. ev. Ungenauigkeit der Systemzeit des Wetterstation-Displays)
                              sendTo('influxdb.'+INFLUXDB_INSTANZ, 'query', 
                              'select * FROM "' + WET_DP + '.Aussentemperatur" WHERE time >= ' + (start *1000000) + ' AND time <= ' + (end *1000000)
                               + '; select * FROM "' + WET_DP + '.Wind_max" WHERE time >= '  + (start *1000000) + ' AND time <= ' + (end *1000000)
                               + '; select * FROM "' + WET_DP + '.Regen_Tag" WHERE time >= ' + ((start+72000) *1000000) + ' AND time <= ' + (end *1000000)
                           , function (result) {
                               //Anlegen der Arrays + befüllen mit den relevanten Daten
                              if (result.error) {
                                 console.error('Fehler beim Lesen der InfluxDB: '+result.error);
                                 Statusmeldung('Fehler beim Lesen der InfluxDB: '+result.error);
                              } else {
                                  //console.log('Rows: ' + JSON.stringify(result.result[2]));
                                  for (let i = 0; i < result.result[0].length; i++) { temps[i] = result.result[0][i].value; }
                                  for (let i = 0; i < result.result[1].length; i++) { wind[i] = result.result[1][i].value; }
                                  for (let i = 0; i < result.result[2].length; i++) { regen[i] = result.result[2][i].value; }
                              }    
                  

                  auf InfluxDB V2 angepasst?

                  Edit:
                  Habe folgende Log-Einträge:

                  
                  javascript.0
                  2022-03-02 09:18:07.870	info	Stop script script.js.Wetterstation.Statistik_Wetterstation
                  
                  javascript.0
                  2022-03-02 09:16:00.189	warn	TypeError: Reduce of empty array with no initial value at Array.reduce (<anonymous>) at Object.cb (script.js.Wetterstation.Statistik_Wetterstation:741:43) at change (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.js:5809:71) at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/db-states-redis/lib/states/statesInRedisClient.js:322:37) at processImmediate (internal/timers.js:464:21)
                  
                  javascript.0
                  2022-03-02 09:16:00.185	warn	States system pmessage io.messagebox.system.adapter.javascript.0 {"command":"query","message":{"result":[],"error":"Invalid call"},"from":"system.adapter.influxdb.0","callback":{"message":"select * FROM \"0_userdata.0.Wetterstation.Aussentemperatur\" WHERE time >= 1646089200000000000 AND time <= 1646175599000000000; select * FROM \"0_userdata.0.Wetterstation.Wind_max\" WHERE time >= 1646089200000000000 AND time <= 1646175599000000000; select * FROM \"0_userdata.0.Wetterstation.Regen_Tag\" WHERE time >= 1646089272000000000 AND time <= 1646175599000000000","id":1,"ack":true,"time":1646208960014},"_id":61369237} Reduce of empty array with no initial value
                  
                  javascript.0
                  2022-03-02 09:16:00.184	error	script.js.Wetterstation.Statistik_Wetterstation: Fehler beim Lesen der InfluxDB: Invalid call
                  
                  influxdb.0
                  2022-03-02 09:16:00.158	error	queries: Error: 3 Error happened while processing 3 queries
                  
                  influxdb.0
                  2022-03-02 09:16:00.158	warn	Error in query " select * FROM "0_userdata.0.Wetterstation.Regen_Tag" WHERE time >= 1646089272000000000 AND time <= 1646175599000000000": HttpError: error @1:2-1:8: undefined identifier selecterror @1:11-1:15: undefined identifier FROMerror @1:55-1:60: undefined identifier WHEREerror @1:61-1:65: (v:A) => time is not Equatableerror @1:89-1:92: undefined identifier ANDerror @1:93-1:97: (v:A) => time is not Equatable
                  
                  influxdb.0
                  2022-03-02 09:16:00.151	warn	Error in query " select * FROM "0_userdata.0.Wetterstation.Wind_max" WHERE time >= 1646089200000000000 AND time <= 1646175599000000000": HttpError: error @1:2-1:8: undefined identifier selecterror @1:11-1:15: undefined identifier FROMerror @1:54-1:59: undefined identifier WHEREerror @1:60-1:64: (v:A) => time is not Equatableerror @1:88-1:91: undefined identifier ANDerror @1:92-1:96: (v:A) => time is not Equatable
                  
                  influxdb.0
                  2022-03-02 09:16:00.141	warn	Error in query "select * FROM "0_userdata.0.Wetterstation.Aussentemperatur" WHERE time >= 1646089200000000000 AND time <= 1646175599000000000": HttpError: error @1:1-1:7: undefined identifier selecterror @1:10-1:14: undefined identifier FROMerror @1:61-1:66: undefined identifier WHEREerror @1:67-1:71: (v:A) => time is not Equatableerror @1:95-1:98: undefined identifier ANDerror @1:99-1:103: (v:A) => time is not Equatable
                  

                  Gruß
                  Martin


                  Intel NUCs mit Proxmox / Iobroker als VM unter Debian
                  Raspeberry mit USB Leseköpfen für Smartmeter
                  Homematic und Homematic IP

                  1 Antwort Letzte Antwort
                  0
                  • SBorgS Offline
                    SBorgS Offline
                    SBorg
                    Forum Testing Most Active
                    schrieb am zuletzt editiert von
                    #3583

                    Die 365Tage lassen wir mal außen vor, da muss man halt schon mindestens ein Jahr loggen ;)
                    Da aber "Heute" und "letzte 24h" im 15 Minuten-Raster generiert werden, liegen diese spätestens zur nächsten vollen (00, 15, 30 oder 45) Viertelstunde vor.
                    "Heute" ist allerdings um Mitternacht ein Sonderfall, da bedingt durch die Usereinstellungen wie viel Datenpunkte im RAM gehalten werden sollen, es nicht sichergestellt ist, dass wirklich schlag 0:00 Uhr auch schon ein Wert der Außentemperatur vorliegt (für "letzte 24h" wird immer mal ein Wert vorliegen, notfalls steht dann halt "(null)" da). Es könnte dann also sein, dass bis zum nächsten Update um 0:15 Uhr oftmals kein Messwert vorliegt/angezeigt wird.
                    Deswegen wird, falls kein Min-/Max-Wert ermittelt werden konnte, einfach die aktuelle Außentemperatur angezeigt. Würde in dem Fall ja stimmen, denn wenn ich nur einen Messwert habe, stellt der Min-, Max- und Durchschnittstemperatur gleichermaßen dar. Erst wenn ich einen davon abweichenden Messwert erhalte sind die drei unterschiedlich.

                    Lange Rede, kurzer Sinn. Das Fehlerbild zeigt eindeutig, das ihr keine Verbindung zur InfluxDB habt, deswegen sind die "24h" nur "(null)" (=kein Wert gelesen) und die Min-/Max-Temp identisch, da er auch hier nix aus der InfluxDB lesen konnte aber dann dafür die akt. Außentemperatur nutzt...

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

                    1 Antwort Letzte Antwort
                    0
                    • M Offline
                      M Offline
                      MartyBr
                      schrieb am zuletzt editiert von
                      #3584

                      @sborg Das ist ja genau die Frage. Mit dem folgenden Code kann ich auf dem Influx-Server die Daten abrufen:

                      influx query 'from(bucket:"iobroker") |> range(start:-15m) |> filter(fn: (r) => r._measurement == "proxmox.0.node_pve.cpu")|> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value")'
                      

                      Da bekomme ich auch Ergebnisse. Ich habe nun versucht, den Code im Statistik-Script anzupassen. Ich bekomme leider immer wieder Script Fehler:

                                 //InfluxDB abfragen (Regen +1min Startverzögerung wg. ev. Ungenauigkeit der Systemzeit des Wetterstation-Displays)
                                  sendTo('influxdb.'+INFLUXDB_INSTANZ, 'query', 
                                  ' FROM(bucket:"iobroker")' |> range(start:-1h) |> filter(fn: (r) => r["_measurement"] == WET_DP +".Aussentemperatur")|> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value")'
                                   + '; FROM(bucket:"iobroker")' |> range(start:-1h) |> filter(fn: (r) => r["_measurement"] == WET_DP +".Wind_max")|> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value")'
                                   + '; FROM(bucket:"iobroker")' |> range(start:-1h) |> filter(fn: (r) => r["_measurement"] == WET_DP +".Regen_Tag")|> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value")'
                               , function (result) {
                                   //Anlegen der Arrays + befüllen mit den relevanten Daten
                                  if (result.error) {
                                     console.error('Fehler beim Lesen der InfluxDB: '+result.error);
                                     Statusmeldung('Fehler beim Lesen der InfluxDB: '+result.error);
                                  } else {
                                      //console.log('Rows: ' + JSON.stringify(result.result[2]));
                                      for (let i = 0; i < result.result[0].length; i++) { temps[i] = result.result[0][i].value; }
                                      for (let i = 0; i < result.result[1].length; i++) { wind[i] = result.result[1][i].value; }
                                      for (let i = 0; i < result.result[2].length; i++) { regen[i] = result.result[2][i].value; }
                                  }            
                      

                      Vielleicht kann mir hier ein Fachmann helfen?

                      Gruß
                      Martin


                      Intel NUCs mit Proxmox / Iobroker als VM unter Debian
                      Raspeberry mit USB Leseköpfen für Smartmeter
                      Homematic und Homematic IP

                      J 1 Antwort Letzte Antwort
                      0
                      • SBorgS SBorg

                        @martybr Da muss ich erst mal selbst schauen, offiziell wird aktuell nur 1.x unterstützt. Für die 2er habe ich noch keine Zeit gefunden zu migrieren.

                        R Offline
                        R Offline
                        Rushmed
                        Most Active
                        schrieb am zuletzt editiert von
                        #3585

                        Ich nutze InfluxDB 2.1.1.
                        In der Conf habe ich die Zugangsdaten zu meiner auf V1 gemappten DB eingetragen die ich auch für den Zugriff mit Grafana nutze.

                         #InfluxDB-Konfiguration / ohne InfluxDB alles leer lassen
                          #IP und Port der API [xxx.xxx.xxx.xxx:xxxxx]
                           INFLUX_API=192.168.178.20:8086
                          #Name, User und Passwort der InfluxDB-Datenbank
                           INFLUX_DB=ioBroker_db
                           INFLUX_USER=USERNAME
                           INFLUX_PASSWORD=PASSWORD
                        

                        Reichen denn diese Zugangsdaten wirklich?
                        Um mit Grafana auf die gemappte DB zugreifen zu können muss zusätzlich:
                        13251bf0-7696-4bbd-83f5-130f7be00371-grafik.png
                        eingestellt werden, wobei Value = Token MYTOKEN ist.

                        M 1 Antwort Letzte Antwort
                        0
                        • R Rushmed

                          Ich nutze InfluxDB 2.1.1.
                          In der Conf habe ich die Zugangsdaten zu meiner auf V1 gemappten DB eingetragen die ich auch für den Zugriff mit Grafana nutze.

                           #InfluxDB-Konfiguration / ohne InfluxDB alles leer lassen
                            #IP und Port der API [xxx.xxx.xxx.xxx:xxxxx]
                             INFLUX_API=192.168.178.20:8086
                            #Name, User und Passwort der InfluxDB-Datenbank
                             INFLUX_DB=ioBroker_db
                             INFLUX_USER=USERNAME
                             INFLUX_PASSWORD=PASSWORD
                          

                          Reichen denn diese Zugangsdaten wirklich?
                          Um mit Grafana auf die gemappte DB zugreifen zu können muss zusätzlich:
                          13251bf0-7696-4bbd-83f5-130f7be00371-grafik.png
                          eingestellt werden, wobei Value = Token MYTOKEN ist.

                          M Offline
                          M Offline
                          MartyBr
                          schrieb am zuletzt editiert von
                          #3586

                          @rushmed Ich habe es genauso gemacht. Die Datenbank habe ich auf V1 gemalt und
                          influx v1 dbrp list
                          hat das erfolgreiche Mapping gezeigt.
                          Setzt du das unveränderte Statistik-Script ein?

                          Gruß
                          Martin


                          Intel NUCs mit Proxmox / Iobroker als VM unter Debian
                          Raspeberry mit USB Leseköpfen für Smartmeter
                          Homematic und Homematic IP

                          R 1 Antwort Letzte Antwort
                          0
                          • M MartyBr

                            @rushmed Ich habe es genauso gemacht. Die Datenbank habe ich auf V1 gemalt und
                            influx v1 dbrp list
                            hat das erfolgreiche Mapping gezeigt.
                            Setzt du das unveränderte Statistik-Script ein?

                            R Offline
                            R Offline
                            Rushmed
                            Most Active
                            schrieb am zuletzt editiert von
                            #3587

                            @martybr ja

                            M 1 Antwort Letzte Antwort
                            0
                            • R Rushmed

                              @martybr ja

                              M Offline
                              M Offline
                              MartyBr
                              schrieb am zuletzt editiert von
                              #3588

                              @rushmed Und es liefert Werte? Bei mir bricht es ab.
                              Ich habe keine Idee mehr :disappointed:

                              Gruß
                              Martin


                              Intel NUCs mit Proxmox / Iobroker als VM unter Debian
                              Raspeberry mit USB Leseköpfen für Smartmeter
                              Homematic und Homematic IP

                              R 1 Antwort Letzte Antwort
                              0
                              • M MartyBr

                                @rushmed Und es liefert Werte? Bei mir bricht es ab.
                                Ich habe keine Idee mehr :disappointed:

                                R Offline
                                R Offline
                                Rushmed
                                Most Active
                                schrieb am zuletzt editiert von
                                #3589

                                @martybr Du hast Recht. Ich hab das voll übersehen. Die Werte sind noch von vor meine Umstellung auf Influx2.

                                M 1 Antwort Letzte Antwort
                                0
                                • R Rushmed

                                  @martybr Du hast Recht. Ich hab das voll übersehen. Die Werte sind noch von vor meine Umstellung auf Influx2.

                                  M Offline
                                  M Offline
                                  MartyBr
                                  schrieb am zuletzt editiert von
                                  #3590

                                  @rushmed
                                  Du kannst den Status hier ablesen:

                                  0_userdata.0.Statistik.Wetter.Control.Statusmeldung

                                  Gruß
                                  Martin


                                  Intel NUCs mit Proxmox / Iobroker als VM unter Debian
                                  Raspeberry mit USB Leseköpfen für Smartmeter
                                  Homematic und Homematic IP

                                  R 1 Antwort Letzte Antwort
                                  0
                                  • M MartyBr

                                    @rushmed
                                    Du kannst den Status hier ablesen:

                                    0_userdata.0.Statistik.Wetter.Control.Statusmeldung

                                    R Offline
                                    R Offline
                                    Rushmed
                                    Most Active
                                    schrieb am zuletzt editiert von
                                    #3591

                                    @martybr Fehler beim Lesen der InfluxDB: Invalid call

                                    M 1 Antwort Letzte Antwort
                                    0
                                    • R Rushmed

                                      @martybr Fehler beim Lesen der InfluxDB: Invalid call

                                      M Offline
                                      M Offline
                                      MartyBr
                                      schrieb am zuletzt editiert von
                                      #3592

                                      @rushmed Wie bei mir. Das Script scheint nur bei Influx Version 1 zu laufen. Ich hatte weiter oben mal einen Versuch eingestellt, die Abfrage auf Influx Version zu ändern. Bekommen aber immer einen Error beim Speichern.
                                      Die Abfragen hatte ich mir aus der Weboberfläche Influx geholt. Dort funktionieren sie und liefern Daten.
                                      Ich komme da mit dem Script nicht weiter, vielleicht kann sich das jemand mal anschauen.

                                      Gruß
                                      Martin


                                      Intel NUCs mit Proxmox / Iobroker als VM unter Debian
                                      Raspeberry mit USB Leseköpfen für Smartmeter
                                      Homematic und Homematic IP

                                      SBorgS 1 Antwort Letzte Antwort
                                      0
                                      • M MartyBr

                                        @rushmed Wie bei mir. Das Script scheint nur bei Influx Version 1 zu laufen. Ich hatte weiter oben mal einen Versuch eingestellt, die Abfrage auf Influx Version zu ändern. Bekommen aber immer einen Error beim Speichern.
                                        Die Abfragen hatte ich mir aus der Weboberfläche Influx geholt. Dort funktionieren sie und liefern Daten.
                                        Ich komme da mit dem Script nicht weiter, vielleicht kann sich das jemand mal anschauen.

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

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

                                        Ich hatte weiter oben mal einen Versuch eingestellt, die Abfrage auf Influx Version zu ändern. Bekommen aber immer einen Error beim Speichern.

                                        Das wird auch so nicht funktionieren, da du die Syntax eines Influx-Querys nicht 1:1 in den "sendTo" des Javascript-Adapters übernehmen kannst. Der kann damit schlichtweg nichts anfangen.

                                        Ich habe aktuell leider keine Zeit mir das selbst anzuschauen, da es nur mit "kleinen" Anpassungen auch nicht getan ist.

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

                                        1 Antwort Letzte Antwort
                                        0
                                        • M MartyBr

                                          @sborg Das ist ja genau die Frage. Mit dem folgenden Code kann ich auf dem Influx-Server die Daten abrufen:

                                          influx query 'from(bucket:"iobroker") |> range(start:-15m) |> filter(fn: (r) => r._measurement == "proxmox.0.node_pve.cpu")|> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value")'
                                          

                                          Da bekomme ich auch Ergebnisse. Ich habe nun versucht, den Code im Statistik-Script anzupassen. Ich bekomme leider immer wieder Script Fehler:

                                                     //InfluxDB abfragen (Regen +1min Startverzögerung wg. ev. Ungenauigkeit der Systemzeit des Wetterstation-Displays)
                                                      sendTo('influxdb.'+INFLUXDB_INSTANZ, 'query', 
                                                      ' FROM(bucket:"iobroker")' |> range(start:-1h) |> filter(fn: (r) => r["_measurement"] == WET_DP +".Aussentemperatur")|> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value")'
                                                       + '; FROM(bucket:"iobroker")' |> range(start:-1h) |> filter(fn: (r) => r["_measurement"] == WET_DP +".Wind_max")|> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value")'
                                                       + '; FROM(bucket:"iobroker")' |> range(start:-1h) |> filter(fn: (r) => r["_measurement"] == WET_DP +".Regen_Tag")|> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value")'
                                                   , function (result) {
                                                       //Anlegen der Arrays + befüllen mit den relevanten Daten
                                                      if (result.error) {
                                                         console.error('Fehler beim Lesen der InfluxDB: '+result.error);
                                                         Statusmeldung('Fehler beim Lesen der InfluxDB: '+result.error);
                                                      } else {
                                                          //console.log('Rows: ' + JSON.stringify(result.result[2]));
                                                          for (let i = 0; i < result.result[0].length; i++) { temps[i] = result.result[0][i].value; }
                                                          for (let i = 0; i < result.result[1].length; i++) { wind[i] = result.result[1][i].value; }
                                                          for (let i = 0; i < result.result[2].length; i++) { regen[i] = result.result[2][i].value; }
                                                      }            
                                          

                                          Vielleicht kann mir hier ein Fachmann helfen?

                                          J Offline
                                          J Offline
                                          jostereo
                                          schrieb am zuletzt editiert von jostereo
                                          #3594

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

                                          @sborg Das ist ja genau die Frage. Mit dem folgenden Code kann ich auf dem Influx-Server die Daten abrufen:

                                          influx query 'from(bucket:"iobroker") |> range(start:-15m) |> filter(fn: (r) => r._measurement == "proxmox.0.node_pve.cpu")|> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value")'
                                          

                                          Da bekomme ich auch Ergebnisse. Ich habe nun versucht, den Code im Statistik-Script anzupassen. Ich bekomme leider immer wieder Script Fehler:

                                                     //InfluxDB abfragen (Regen +1min Startverzögerung wg. ev. Ungenauigkeit der Systemzeit des Wetterstation-Displays)
                                                      sendTo('influxdb.'+INFLUXDB_INSTANZ, 'query', 
                                                      ' FROM(bucket:"iobroker")' |> range(start:-1h) |> filter(fn: (r) => r["_measurement"] == WET_DP +".Aussentemperatur")|> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value")'
                                                       + '; FROM(bucket:"iobroker")' |> range(start:-1h) |> filter(fn: (r) => r["_measurement"] == WET_DP +".Wind_max")|> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value")'
                                                       + '; FROM(bucket:"iobroker")' |> range(start:-1h) |> filter(fn: (r) => r["_measurement"] == WET_DP +".Regen_Tag")|> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value")'
                                                   , function (result) {
                                                       //Anlegen der Arrays + befüllen mit den relevanten Daten
                                                      if (result.error) {
                                                         console.error('Fehler beim Lesen der InfluxDB: '+result.error);
                                                         Statusmeldung('Fehler beim Lesen der InfluxDB: '+result.error);
                                                      } else {
                                                          //console.log('Rows: ' + JSON.stringify(result.result[2]));
                                                          for (let i = 0; i < result.result[0].length; i++) { temps[i] = result.result[0][i].value; }
                                                          for (let i = 0; i < result.result[1].length; i++) { wind[i] = result.result[1][i].value; }
                                                          for (let i = 0; i < result.result[2].length; i++) { regen[i] = result.result[2][i].value; }
                                                      }            
                                          

                                          Vielleicht kann mir hier ein Fachmann helfen?

                                          Ich habe das Statistikscript glaube ich für InfluxDB 2.0 angepasst.

                                          Dafür benutze ich folgendes Flux Command. Ist die entsprechende Anpassung zu dem bestehenden Command für Version 1.0

                                          'from(bucket: "iobroker") |> range(start: ' + (start / 1000) + ', stop: ' + (end / 1000) + ') |> filter(fn: (r) => r["_measurement"] == "' + WET_DP + '.Aussentemperatur") |> filter(fn: (r) => r["_field"] == "value");' +
                                                  'from(bucket: "iobroker") |> range(start: ' + (start / 1000) + ', stop: ' + (end / 1000) + ') |> filter(fn: (r) => r["_measurement"] == "' + WET_DP + '.Wind_max") |> filter(fn: (r) => r["_field"] == "value");' +
                                                  'from(bucket: "iobroker") |> range(start: ' + ((start + 72000) / 1000) + ', stop: ' + (end / 1000) + ') |> filter(fn: (r) => r["_measurement"] == "' + WET_DP + '.Regen_Tag") |> filter(fn: (r) => r["_field"] == "value")'
                                          

                                          Ich bin der Meinung das das Script bei mir richtig funktioniert, allerdings habe ich das nicht bis ins Detail an den Messwerten überprüft. Die Messwerte werden allerdings geschrieben und auch vollständig berechnet.

                                          Vielleicht kannst du den FLUX Command auch mal bei dir einbauen und dann testen ob es für dich läuft.

                                          Influx Bucket heißt bei mir "iobroker", müsste natürlich notfalls angepasst werden.

                                          Ich hatte damals längere Zeit damit verbracht die Zeitangaben entsprechende anzupassen, da der Timestamp Vergleich wohl in FLUX anders läuft als in V 1.0.

                                          Gruß,

                                          jostereo

                                          M 1 Antwort Letzte Antwort
                                          2
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          723

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          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