Skip to content
  • 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
Logo
  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.0k

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

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

[Linux Shell-Skript] WLAN-Wetterstation

[Linux Shell-Skript] WLAN-Wetterstation

Scheduled Pinned Locked Moved Praktische Anwendungen (Showcase)
linuxshell-scriptwetterstationwlan-wetterstation
5.7k Posts 152 Posters 3.8m Views 134 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.
  • SBorgS SBorg

    @protheus Ich habe es zwar nie mit einer anderen Instanz als "0" getestet, aber der Aufruf erfolgt genau 2x im Skript:

    sendTo('influxdb.'+INFLUXDB_INSTANZ, 'query',...
    

    Da kann eigentlich nicht viel falsch sein. Ich kann mir nur vorstellen, dass er bei "1" etwas missinterpretiert (was ihm bei "0" egal ist).
    Ändere mal versuchsweise das User-Setting ab auf

    const INFLUXDB_INSTANZ=1; /* unter welcher Instanz läuft die InfluxDB [default: 0] */ 
    

    also ohne '' bei 1 und berichte dann morgen oder später 🙂

    P Offline
    P Offline
    Protheus
    wrote on last edited by
    #2473

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

    @protheus Ich habe es zwar nie mit einer anderen Instanz als "0" getestet, aber der Aufruf erfolgt genau 2x im Skript:

    sendTo('influxdb.'+INFLUXDB_INSTANZ, 'query',...
    

    Da kann eigentlich nicht viel falsch sein. Ich kann mir nur vorstellen, dass er bei "1" etwas missinterpretiert (was ihm bei "0" egal ist).
    Ändere mal versuchsweise das User-Setting ab auf

    const INFLUXDB_INSTANZ=1; /* unter welcher Instanz läuft die InfluxDB [default: 0] */ 
    

    also ohne '' bei 1 und berichte dann morgen oder später 🙂

    Macht ' vs " eigentlich einen Unterschied?

    Weil

    let REKORDWERTE_AUSGABEFORMAT="[WERT] im [MONAT_KURZ] [JAHR]"
    

    steht in "..."

    Alle anderen Werte (auch die DB-ID) stehen in '...'

    Habs jetzt mal angepasst und wir schauen mal.

    Grund für die 2. DB: Ich logge für Grafana noch mehr DP der Wetterstation und wollte nicht das meine normale InfluxDB so unübersichtlich voll wird.

    Grüße
    Protheus

    SBorgS 1 Reply Last reply
    0
    • P Protheus

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

      @protheus Ich habe es zwar nie mit einer anderen Instanz als "0" getestet, aber der Aufruf erfolgt genau 2x im Skript:

      sendTo('influxdb.'+INFLUXDB_INSTANZ, 'query',...
      

      Da kann eigentlich nicht viel falsch sein. Ich kann mir nur vorstellen, dass er bei "1" etwas missinterpretiert (was ihm bei "0" egal ist).
      Ändere mal versuchsweise das User-Setting ab auf

      const INFLUXDB_INSTANZ=1; /* unter welcher Instanz läuft die InfluxDB [default: 0] */ 
      

      also ohne '' bei 1 und berichte dann morgen oder später 🙂

      Macht ' vs " eigentlich einen Unterschied?

      Weil

      let REKORDWERTE_AUSGABEFORMAT="[WERT] im [MONAT_KURZ] [JAHR]"
      

      steht in "..."

      Alle anderen Werte (auch die DB-ID) stehen in '...'

      Habs jetzt mal angepasst und wir schauen mal.

      Grund für die 2. DB: Ich logge für Grafana noch mehr DP der Wetterstation und wollte nicht das meine normale InfluxDB so unübersichtlich voll wird.

      Grüße
      Protheus

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

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

      Macht ' vs " eigentlich einen Unterschied?

      Ja und nein. Es macht einen Unterschied, der ist aber an der Stelle nicht maßgeblich.

      Ein "tolles" JS zur Veranschaulichung:

      let a="\"";
      let b='"';
      let c=1
      let d="2"
      let e='3'
      
      console.log("Ergebnis: "+a+"|"+b);
      console.log(typeof(a));
      console.log(typeof(b));
      console.log(typeof(c));
      console.log(typeof(d));
      console.log(typeof(e));
      


      12.4.2021, 16:33:53.919 [info ]: javascript.0 (5881) Start javascript script.js.common.Test.TMP.Skript_2
      12.4.2021, 16:33:53.928 [info ]: javascript.0 (5881) script.js.common.Test.TMP.Skript_2: Ergebnis: "|"
      12.4.2021, 16:33:53.928 [info ]: javascript.0 (5881) script.js.common.Test.TMP.Skript_2: string
      12.4.2021, 16:33:53.928 [info ]: javascript.0 (5881) script.js.common.Test.TMP.Skript_2: string
      12.4.2021, 16:33:53.928 [info ]: javascript.0 (5881) script.js.common.Test.TMP.Skript_2: number
      12.4.2021, 16:33:53.928 [info ]: javascript.0 (5881) script.js.common.Test.TMP.Skript_2: string
      12.4.2021, 16:33:53.928 [info ]: javascript.0 (5881) script.js.common.Test.TMP.Skript_2: string
      12.4.2021, 16:33:53.928 [info ]: javascript.0 (5881) script.js.common.Test.TMP.Skript_2: registered 0 subscriptions and 0 schedules
      12.4.2021, 16:36:22.988 [info ]: javascript.0 (5881) Stop script script.js.common.Test.TMP.Skript_2

      Wie man nun ev. sieht wird die entsprechende Variable bei ' und " immer zu einer Zeichenkette (string).
      Lediglich #3 deklariert sie wirklich als Zahl (number). Es wäre also egal ob du xyz='1' oder xyz="1" schreibst. xyz wird immer eine Zeichenkette mit Inhalt 1 sein.
      Den Unterschied sieht man dann in #1 und #2. Du kannst in einer Zeichenkette die mit " deklariert wurde keine weiteren " innerhalb oder spezielle Zeichen (CR, LF, usw.) nutzen. Die musst du vorher "escapen" (siehe #1). Da ließt sich #2 einfach stellenweise besser...

      Der "sendTo"-Befehl funktioniert zwar bei "0" wenn es als String vorliegt, vielleicht geht es aber eigentlich nur als Zahl und funktioniert eher zufällig mit "0" als String. Mag ich zwar alles nicht so richtig glauben, aber es gibt sonst keine weitere Unterscheidung der Instanzen.
      Wenn du die Uhrzeit noch per Default auf 01:03 Uhr stehen hast, kommt dann um die Zeit eine Fehlermeldung vom Skript? Wenn er die DB so gar nicht lesen kann sollte er eigentlich "Fehler: ...[Fehlertext was ihn stört]" werfen.

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

      P da_WoodyD 2 Replies Last reply
      0
      • SBorgS SBorg

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

        Macht ' vs " eigentlich einen Unterschied?

        Ja und nein. Es macht einen Unterschied, der ist aber an der Stelle nicht maßgeblich.

        Ein "tolles" JS zur Veranschaulichung:

        let a="\"";
        let b='"';
        let c=1
        let d="2"
        let e='3'
        
        console.log("Ergebnis: "+a+"|"+b);
        console.log(typeof(a));
        console.log(typeof(b));
        console.log(typeof(c));
        console.log(typeof(d));
        console.log(typeof(e));
        


        12.4.2021, 16:33:53.919 [info ]: javascript.0 (5881) Start javascript script.js.common.Test.TMP.Skript_2
        12.4.2021, 16:33:53.928 [info ]: javascript.0 (5881) script.js.common.Test.TMP.Skript_2: Ergebnis: "|"
        12.4.2021, 16:33:53.928 [info ]: javascript.0 (5881) script.js.common.Test.TMP.Skript_2: string
        12.4.2021, 16:33:53.928 [info ]: javascript.0 (5881) script.js.common.Test.TMP.Skript_2: string
        12.4.2021, 16:33:53.928 [info ]: javascript.0 (5881) script.js.common.Test.TMP.Skript_2: number
        12.4.2021, 16:33:53.928 [info ]: javascript.0 (5881) script.js.common.Test.TMP.Skript_2: string
        12.4.2021, 16:33:53.928 [info ]: javascript.0 (5881) script.js.common.Test.TMP.Skript_2: string
        12.4.2021, 16:33:53.928 [info ]: javascript.0 (5881) script.js.common.Test.TMP.Skript_2: registered 0 subscriptions and 0 schedules
        12.4.2021, 16:36:22.988 [info ]: javascript.0 (5881) Stop script script.js.common.Test.TMP.Skript_2

        Wie man nun ev. sieht wird die entsprechende Variable bei ' und " immer zu einer Zeichenkette (string).
        Lediglich #3 deklariert sie wirklich als Zahl (number). Es wäre also egal ob du xyz='1' oder xyz="1" schreibst. xyz wird immer eine Zeichenkette mit Inhalt 1 sein.
        Den Unterschied sieht man dann in #1 und #2. Du kannst in einer Zeichenkette die mit " deklariert wurde keine weiteren " innerhalb oder spezielle Zeichen (CR, LF, usw.) nutzen. Die musst du vorher "escapen" (siehe #1). Da ließt sich #2 einfach stellenweise besser...

        Der "sendTo"-Befehl funktioniert zwar bei "0" wenn es als String vorliegt, vielleicht geht es aber eigentlich nur als Zahl und funktioniert eher zufällig mit "0" als String. Mag ich zwar alles nicht so richtig glauben, aber es gibt sonst keine weitere Unterscheidung der Instanzen.
        Wenn du die Uhrzeit noch per Default auf 01:03 Uhr stehen hast, kommt dann um die Zeit eine Fehlermeldung vom Skript? Wenn er die DB so gar nicht lesen kann sollte er eigentlich "Fehler: ...[Fehlertext was ihn stört]" werfen.

        P Offline
        P Offline
        Protheus
        wrote on last edited by
        #2475

        @sborg

        Hm, ich glaube da liegt ein anderes Problem vor:

        javascript.0	2021-04-12 13:14:03.580	info	(1648) script.js.common.Wetterstation.WS-Statistic: registered 0 subscriptions and 1 schedule
        javascript.0	2021-04-12 13:14:03.580	info	(1648) script.js.common.Wetterstation.WS-Statistic: Wetterstation-Statistiken gestartet...
        javascript.0	2021-04-12 13:14:03.574	info	(1648) Start javascript script.js.common.Wetterstation.WS-Statistic
        javascript.0	2021-04-12 13:14:01.061	info	(1648) Stop script script.js.common.Wetterstation.WS-Statistic
        javascript.0	2021-04-12 13:14:01.060	error	(1648) Cannot write file /opt/iobroker-Scripts/javascript-backup/common/Wetterstation/WS-Statistic.js: Error: EACCES: permission denied, mkdir '/opt/iobroker-Scripts/javascript-backup/common/Wetterst
        javascript.0	2021-04-12 13:13:54.468	info	(1648) Stop script script.js.common.Wetterstation.WS-Statistic
        

        Ich habe die Berechtigung mal angepasst und nun kommt der Fehler nicht mehr.
        Das ist noch ein Überbleibsel vom Javascript-Backup

        javascript.0	2021-04-12 17:12:33.861	info	(1648) script.js.common.Wetterstation.WS-Statistic: registered 0 subscriptions and 1 schedule
        javascript.0	2021-04-12 17:12:33.855	info	(1648) script.js.common.Wetterstation.WS-Statistic: Wetterstation-Statistiken gestartet...
        javascript.0	2021-04-12 17:12:33.842	info	(1648) Start javascript script.js.common.Wetterstation.WS-Statistic
        

        Nach einem Neustart des Scripts passiert aber noch nichts.
        Also mal die Nacht abwarten.

        Grüße
        Protheus

        1 Reply Last reply
        0
        • P Offline
          P Offline
          Protheus
          wrote on last edited by
          #2476

          @sborg

          Hi,

          leider heute wieder keine Daten im Statistik Skript.
          Ich habe den Schedule mal auf minütlich umgestellt, verbose und debug logging aktiviert und den javaskript-Adapter reinstalliert.
          Jetzt sehe ich auch Wanmeldungen im Log:

          javascript.0	2021-04-13 12:11:00.008	warn	at processImmediate (internal/timers.js:461:21)
          javascript.0	2021-04-13 12:11:00.008	warn	at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/db-states-redis/lib/states/statesInRedisClient.js:232:37)
          javascript.0	2021-04-13 12:11:00.008	warn	at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:5467:71)
          javascript.0	2021-04-13 12:11:00.008	warn	at Object.cb (script.js.common.Wetterstation.WS-Statistic:190:38)
          javascript.0	2021-04-13 12:11:00.008	warn	at Math.sum (script.js.common.Wetterstation.WS-Statistic:189:53)
          javascript.0	2021-04-13 12:11:00.008	warn	at Array.reduce (<anonymous>:null:null)
          javascript.0	2021-04-13 12:11:00.008	warn	(9301) TypeError: Reduce of empty array with no initial value
          javascript.0	2021-04-13 12:11:00.007	warn	(9301) States system pmessage io.messagebox.system.adapter.javascript.0 {"command":"query","message":{"result":[[],[],[]],"ts":1618308660007,"error":null},"from":"system.adapter.influxdb.1","callback
          javascript.0	2021-04-13 12:11:00.004	warn	(9301) script.js.common.Wetterstation.WS-Statistic: setForeignState(id=0_userdata.0.Statistik.Wetter.Control.Statusmeldung, state={"val":"erfolgreich","ack":true,"c":"script.js.common.Wetterstation.W
          javascript.0	2021-04-13 12:11:00.004	info	(9301) script.js.common.Wetterstation.WS-Statistic: setForeignState(id=0_userdata.0.Statistik.Wetter.Control.Statusmeldung, state={"val":"erfolgreich","ack":true,"c":"script.js.common.Wetterstation.W
          javascript.0	2021-04-13 12:11:00.004	info	(9301) script.js.common.Wetterstation.WS-Statistic: getState(id=0_userdata.0.Statistik.Wetter.Control.ScriptVersion_UpdateCheck, timerId=undefined) => {"val":"","ack":true,"ts":1617267968468,"q":0,"f
          javascript.0	2021-04-13 12:11:00.004	info	(9301) script.js.common.Wetterstation.WS-Statistic: Auswertung durchgeführt...
          javascript.0	2021-04-13 12:11:00.003	info	(9301) script.js.common.Wetterstation.WS-Statistic: getState(id=0_userdata.0.Statistik.Wetter.Control.Reset_Jahresstatistik, timerId=undefined) => {"val":false,"ack":true,"ts":1617267968468,"q":0,"fr
          javascript.0	2021-04-13 12:11:00.003	info	(9301) script.js.common.Wetterstation.WS-Statistic: sendTo(adapter=influxdb.1, cmd=query, msg="select * FROM \"javascript.0.Wetterstation.Aussentemperatur\" WHERE time >= 1618178400000000000 AND time
          

          Er scheint zumindest den richtigen InfluxDB-Adapter zu nehmen (sendTo(adapter=influxdb.1).
          Mit dem Rest kann ich aber nichts anfangen 🙂

          Viele Grüße
          Protheus

          1 Reply Last reply
          0
          • SBorgS SBorg

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

            Macht ' vs " eigentlich einen Unterschied?

            Ja und nein. Es macht einen Unterschied, der ist aber an der Stelle nicht maßgeblich.

            Ein "tolles" JS zur Veranschaulichung:

            let a="\"";
            let b='"';
            let c=1
            let d="2"
            let e='3'
            
            console.log("Ergebnis: "+a+"|"+b);
            console.log(typeof(a));
            console.log(typeof(b));
            console.log(typeof(c));
            console.log(typeof(d));
            console.log(typeof(e));
            


            12.4.2021, 16:33:53.919 [info ]: javascript.0 (5881) Start javascript script.js.common.Test.TMP.Skript_2
            12.4.2021, 16:33:53.928 [info ]: javascript.0 (5881) script.js.common.Test.TMP.Skript_2: Ergebnis: "|"
            12.4.2021, 16:33:53.928 [info ]: javascript.0 (5881) script.js.common.Test.TMP.Skript_2: string
            12.4.2021, 16:33:53.928 [info ]: javascript.0 (5881) script.js.common.Test.TMP.Skript_2: string
            12.4.2021, 16:33:53.928 [info ]: javascript.0 (5881) script.js.common.Test.TMP.Skript_2: number
            12.4.2021, 16:33:53.928 [info ]: javascript.0 (5881) script.js.common.Test.TMP.Skript_2: string
            12.4.2021, 16:33:53.928 [info ]: javascript.0 (5881) script.js.common.Test.TMP.Skript_2: string
            12.4.2021, 16:33:53.928 [info ]: javascript.0 (5881) script.js.common.Test.TMP.Skript_2: registered 0 subscriptions and 0 schedules
            12.4.2021, 16:36:22.988 [info ]: javascript.0 (5881) Stop script script.js.common.Test.TMP.Skript_2

            Wie man nun ev. sieht wird die entsprechende Variable bei ' und " immer zu einer Zeichenkette (string).
            Lediglich #3 deklariert sie wirklich als Zahl (number). Es wäre also egal ob du xyz='1' oder xyz="1" schreibst. xyz wird immer eine Zeichenkette mit Inhalt 1 sein.
            Den Unterschied sieht man dann in #1 und #2. Du kannst in einer Zeichenkette die mit " deklariert wurde keine weiteren " innerhalb oder spezielle Zeichen (CR, LF, usw.) nutzen. Die musst du vorher "escapen" (siehe #1). Da ließt sich #2 einfach stellenweise besser...

            Der "sendTo"-Befehl funktioniert zwar bei "0" wenn es als String vorliegt, vielleicht geht es aber eigentlich nur als Zahl und funktioniert eher zufällig mit "0" als String. Mag ich zwar alles nicht so richtig glauben, aber es gibt sonst keine weitere Unterscheidung der Instanzen.
            Wenn du die Uhrzeit noch per Default auf 01:03 Uhr stehen hast, kommt dann um die Zeit eine Fehlermeldung vom Skript? Wenn er die DB so gar nicht lesen kann sollte er eigentlich "Fehler: ...[Fehlertext was ihn stört]" werfen.

            da_WoodyD Offline
            da_WoodyD Offline
            da_Woody
            wrote on last edited by
            #2477

            @sborg nachdem ich ja den umstieg damals verpennt habe und ich heute draufgekommen bin das meine station offline ist, hab ich mich mal drangehockt und mit der 2.5.0 neu angefangen. station is wieder online, alles brav wieder eingerichtet, ./wetterstation.sh --debug pöff, kommunikationsfehler...
            @Negalein meinte, das man das öfter aufrufen sollte. ok, nach ca. 15x wurde dann endlich 192.168.0.99 gefunden, die DP gefüllt, aber sofort wieder rot. in unregelmäßigen abständen verbindet sich das script, sonst der kommunikationsfehler...
            vllt kannst du da was rauslesen... bevor ich das wieder automatisch laufen lasse und die statistik aktiviere, würds mich interessieren was das soll... 🙂

            woody@ioBroker:~$ ./wetterstation.sh --debug
            (UNKNOWN) [192.168.0.250] 8087 (?) open
            listening on [any] 6969 ...
            no connection : Connection timed out
            
            
            Messwerteblock:
            
            
            Nicht alle Werte werden unterstützt (abhängig vom Modell der Wetterstation und dem verwendeten Protokoll)!
            
            Temperatur Innen        :  °C
            Temperatur Aussen       :  °C
            Taupunkt                :  °C
            Gefühlte Temperatur     :  °C
            Luftfeuchte Innen       :  %
            Luftfeuchte Aussen      :  %
            Windgeschwindkeit       :  km/h
            Windböengeschwindkeit   :  km/h
            max. Windböe            :  km/h
            Windrichtung            :  °
            Windrichtung            :
            Luftdruck absolut       :  hPa
            Luftdruck relativ       :  hPa
            Regenrate               :  mm/h
            Regenstatus             :
            Regen seit Regenbeginn  :  mm
            Regen Stunde            :  mm
            Regen Tag               :  mm
            Regen Woche             :  mm
            Regen Monat             :  mm
            Regen Jahr              :  mm
            Regen Gesamt            :  mm
            Sonnenstrahlung         :  W/m²
            UV-Index                :
            Zeitstempel             :
            Firmware                :
            Batteriestand:          :
            Gateway-Modell          :
            
            Zusatzsensoren: keine
            
            
            Datenstring für ioBroker:
            
            
            
            DATA von Wetterstation:
            
            
            
            Debug VAR:
            Installationsverzeichnis: /home/woody
            IPP: 192.168.0.250:8087 WS_PORT: 6969           WS_POLL: 20             PRE_DP: 0_userdata.0.WoodyWetter
            WEB: HTTP               WS_PROT: Wunderground   DP50/60/70/100/200: 0 | 0 | 0 | 0 | 0
            Script-Version: V2.5.0  Config-Version: V2.5.0  Sub-Version: V2.5.0
            
            Kommunikationsfehler!
            
            
            woody@ioBroker:~$ ./wetterstation.sh --debug
            (UNKNOWN) [192.168.0.250] 8087 (?) open
            listening on [any] 6969 ...
            connect to [192.168.0.250] from (UNKNOWN) [192.168.0.99] 8525
            [
              {
                "id": "0_userdata.0.WoodyWetter.Innentemperatur",
                "val": 18.88
              },
              {
                "id": "0_userdata.0.WoodyWetter.Aussentemperatur",
                "val": 1
              },
              {
                "id": "0_userdata.0.WoodyWetter.Taupunkt",
                "val": -0.27
              },
              {
                "id": "0_userdata.0.WoodyWetter.Gefuehlte_Temperatur",
                "val": 1
              },
              {
                "id": "0_userdata.0.WoodyWetter.Innenfeuchtigkeit",
                "val": 38
              },
              {
                "id": "0_userdata.0.WoodyWetter.Aussenfeuchtigkeit",
                "val": 91
              },
              {
                "id": "0_userdata.0.WoodyWetter.Wind",
                "val": 2.89
              },
              {
                "id": "0_userdata.0.WoodyWetter.Wind_max",
                "val": 5.47
              },
              {
                "id": "0_userdata.0.WoodyWetter.Windrichtung",
                "val": 0
              },
              {
                "id": "0_userdata.0.WoodyWetter.Druck_absolut",
                "val": 998.24
              },
              {
                "id": "0_userdata.0.WoodyWetter.Druck_relativ",
                "val": 1019.64
              },
              {
                "id": "0_userdata.0.WoodyWetter.Regenrate",
                "val": 1.8
              },
              {
                "id": "0_userdata.0.WoodyWetter.Regen_Tag",
                "val": 7.6
              },
              {
                "id": "0_userdata.0.WoodyWetter.Regen_Woche",
                "val": 14.5
              },
              {
                "id": "0_userdata.0.WoodyWetter.Regen_Monat",
                "val": 16.3
              },
              {
                "id": "0_userdata.0.WoodyWetter.Regen_Jahr",
                "val": 0
              },
              {
                "id": "0_userdata.0.WoodyWetter.Sonnenstrahlung",
                "val": 0
              },
              {
                "id": "0_userdata.0.WoodyWetter.UV_Index",
                "val": 0
              },
              {
                "id": "0_userdata.0.WoodyWetter.Zeitstempel",
                "val": "13.04.2021 21:00:54"
              },
              {
                "id": "0_userdata.0.WoodyWetter.Info.FW_Version",
                "val": "EasyWeatherV1.5.8"
              },
              {
                "id": "0_userdata.0.WoodyWetter.Regenstatus",
                "val": "mäßiger Regen"
              },
              {
                "id": "0_userdata.0.WoodyWetter.UV_Belastung",
                "val": "keine"
              },
              {
                "id": "0_userdata.0.WoodyWetter.Windrichtung_Text",
                "val": "N"
              },
              {
                "id": "0_userdata.0.WoodyWetter.Info.Hitzeindex",
                "val": ""
              }
            ]
            
            Messwerteblock: 18.88 1.00 -.27 1.00 38 91 2.89 5.47 0 998.24 1019.64 1.8 7.6 14.5 16.3 0 0.00 0 13.04.2021%2021:00:54 EasyWeatherV1.5.8
            
            
            Nicht alle Werte werden unterstützt (abhängig vom Modell der Wetterstation und dem verwendeten Protokoll)!
            
            Temperatur Innen        : 18.88 °C
            Temperatur Aussen       : 1.00 °C
            Taupunkt                : -.27 °C
            Gefühlte Temperatur     : 1.00 °C
            Luftfeuchte Innen       : 38 %
            Luftfeuchte Aussen      : 91 %
            Windgeschwindkeit       : 2.89 km/h
            Windböengeschwindkeit   : 5.47 km/h
            max. Windböe            :  km/h
            Windrichtung            : 0 °
            Windrichtung            : N
            Luftdruck absolut       : 998.24 hPa
            Luftdruck relativ       : 1019.64 hPa
            Regenrate               : 1.8 mm/h
            Regenstatus             : mäßiger Regen
            Regen seit Regenbeginn  :  mm
            Regen Stunde            :  mm
            Regen Tag               : 7.6 mm
            Regen Woche             : 14.5 mm
            Regen Monat             : 16.3 mm
            Regen Jahr              : 0 mm
            Regen Gesamt            :  mm
            Sonnenstrahlung         : 0.00 W/m²
            UV-Index                : 0
            Zeitstempel             : 13.04.2021%2021:00:54
            Firmware                : EasyWeatherV1.5.8
            Batteriestand:          :
            Gateway-Modell          :
            
            Zusatzsensoren: keine
            
            
            Datenstring für ioBroker:
            0_userdata.0.WoodyWetter.Innentemperatur=18.88&0_userdata.0.WoodyWetter.Aussentemperatur=1.00&0_userdata.0.WoodyWetter.Taupunkt=-.27&0_userdata.0.WoodyWetter.Gefuehlte_Temperatur=1.00&0_userdata.0.WoodyWetter.Innenfeuchtigkeit=38&0_userdata.0.WoodyWetter.Aussenfeuchtigkeit=91&0_userdata.0.WoodyWetter.Wind=2.89&0_userdata.0.WoodyWetter.Wind_max=5.47&0_userdata.0.WoodyWetter.Windrichtung=0&0_userdata.0.WoodyWetter.Druck_absolut=998.24&0_userdata.0.WoodyWetter.Druck_relativ=1019.64&0_userdata.0.WoodyWetter.Regenrate=1.8&0_userdata.0.WoodyWetter.Regen_Tag=7.6&0_userdata.0.WoodyWetter.Regen_Woche=14.5&0_userdata.0.WoodyWetter.Regen_Monat=16.3&0_userdata.0.WoodyWetter.Regen_Jahr=0&0_userdata.0.WoodyWetter.Sonnenstrahlung=0.00&0_userdata.0.WoodyWetter.UV_Index=0&0_userdata.0.WoodyWetter.Zeitstempel=13.04.2021%2021:00:54&0_userdata.0.WoodyWetter.Info.FW_Version=EasyWeatherV1.5.8&0_userdata.0.WoodyWetter.Regenstatus=mäßiger Regen&0_userdata.0.WoodyWetter.UV_Belastung=keine&0_userdata.0.WoodyWetter.Windrichtung_Text=N&0_userdata.0.WoodyWetter.Info.Hitzeindex=
            
            
            DATA von Wetterstation:
            GET /weatherstation/updateweatherstation.php?ID=xxxxxx&PASSWORD=xxxxxx&indoortempf=66.0&tempf=33.8&dewptf=31.5&windchillf=33.8&indoorhumidity=38&humidity=91&windspeedmph=1.8&windgustmph=3.4&winddir=0&absbaromin=29.478&baromin=30.110&rainin=0.071&dailyrainin=0.303&weeklyrainin=0.571&monthlyrainin=0.642&yearlyrainin=0&solarradiation=0.00&UV=0&dateutc=2021-04-13%2019:00:54&softwaretype=EasyWeatherV1.5.8&action=updateraw&realtime=1&rtfreq=5 HTTP/1.0
            
            
            Debug VAR:
            Installationsverzeichnis: /home/woody
            IPP: 192.168.0.250:8087 WS_PORT: 6969           WS_POLL: 20             PRE_DP: 0_userdata.0.WoodyWetter
            WEB: HTTP               WS_PROT: Wunderground   DP50/60/70/100/200: 0 | 0 | 0 | 0 | 0
            Script-Version: V2.5.0  Config-Version: V2.5.0  Sub-Version: V2.5.0
            woody@ioBroker:~$
            
            

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

            SBorgS 1 Reply Last reply
            0
            • P Protheus

              Hi,

              leider tut bei mir das Statistik Skript auch nicht.

              Ich habe eine 2. Influx-Instanz (influxdb.1) für die Wetterstation.

              Aussentemperatur, Regen_Tag und Wind_Max werden dahin gelogged. (Daten werden auch tatsächlich in die DB geschrieben)

              Das Statistik Skript habe ich angepasst

              const INFLUXDB_INSTANZ='1';                       /* unter welcher Instanz läuft die InfluxDB [default: 0]        */
              

              aber den Rest alles beibehalten.

              Aber leider sind alle Werte auf default:

              Screenshot - 2021-04-12 09_55_59-objects - ioBroker.png

              ("SkriptVersion_Update" und "SkriptVersion_UpdateCheck" sollten doch nicht leer sein oder?)

              Hat da jemand eine Idee?

              Grüße
              Protheus

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

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

              ("SkriptVersion_Update" und "SkriptVersion_UpdateCheck" sollten doch nicht leer sein oder?)

              Hatte ich noch vergessen. "Update" wird erst befüllt wenn auch tatsächlich der "Check" aktiviert wurde.
              Den "Check" muss man selbst aktivieren falls gewünscht. Per Default ist er leer (=false) wird also nicht ausgeführt. Der Anwender muss ihn selbst aktiv auf "true" setzen wenn er die Funktion nutzen möchte. Immerhin wird hier aktiv eine Seite (meines) GitHub-Projektes gelesen (+so ggf. eine INet-Verbindung aufgebaut) und die aktuelle Versionsnummer heraus geparst. Will ja ev. nicht jeder.

              ...und zum Problem:

              javascript.0	2021-04-13 12:11:00.008	warn	at Array.reduce (<anonymous>:null:null)
              javascript.0	2021-04-13 12:11:00.008	warn	(9301) TypeError: Reduce of empty array with no initial value
              

              Er kann nichts aus der InfluxDB lesen. Er spricht sie auch korrekt an und es kommt zu keinem Fehler (error:null):

              ..."ts":1618308660007,"error":null},"from":"system.adapter.influxdb.1",...
              

              Müsste ich raten, wäre mein Favorit, dass die DB schlichtweg leer ist?
              Kannst du direkt per Influx oder Grafana zB. die Aussentemperatur aus der 1er Instanz lesen?
              Ich habe leider keine Testumgebung und kann es nicht gerade mal eben in meiner Produktivumgebung nachbilden. Deswegen weiß ich aktuell nicht ob bei dir (denn es läuft so problemlos unter "0" bei allen Anderen) ev. ein pauschales Problem vorliegt, oder es prinzipiell nicht wg. der 1er Instanz (was aber im Grunde keinen Unterschied machen darf und auch funktionieren muss) geht.

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

              P 1 Reply Last reply
              0
              • da_WoodyD da_Woody

                @sborg nachdem ich ja den umstieg damals verpennt habe und ich heute draufgekommen bin das meine station offline ist, hab ich mich mal drangehockt und mit der 2.5.0 neu angefangen. station is wieder online, alles brav wieder eingerichtet, ./wetterstation.sh --debug pöff, kommunikationsfehler...
                @Negalein meinte, das man das öfter aufrufen sollte. ok, nach ca. 15x wurde dann endlich 192.168.0.99 gefunden, die DP gefüllt, aber sofort wieder rot. in unregelmäßigen abständen verbindet sich das script, sonst der kommunikationsfehler...
                vllt kannst du da was rauslesen... bevor ich das wieder automatisch laufen lasse und die statistik aktiviere, würds mich interessieren was das soll... 🙂

                woody@ioBroker:~$ ./wetterstation.sh --debug
                (UNKNOWN) [192.168.0.250] 8087 (?) open
                listening on [any] 6969 ...
                no connection : Connection timed out
                
                
                Messwerteblock:
                
                
                Nicht alle Werte werden unterstützt (abhängig vom Modell der Wetterstation und dem verwendeten Protokoll)!
                
                Temperatur Innen        :  °C
                Temperatur Aussen       :  °C
                Taupunkt                :  °C
                Gefühlte Temperatur     :  °C
                Luftfeuchte Innen       :  %
                Luftfeuchte Aussen      :  %
                Windgeschwindkeit       :  km/h
                Windböengeschwindkeit   :  km/h
                max. Windböe            :  km/h
                Windrichtung            :  °
                Windrichtung            :
                Luftdruck absolut       :  hPa
                Luftdruck relativ       :  hPa
                Regenrate               :  mm/h
                Regenstatus             :
                Regen seit Regenbeginn  :  mm
                Regen Stunde            :  mm
                Regen Tag               :  mm
                Regen Woche             :  mm
                Regen Monat             :  mm
                Regen Jahr              :  mm
                Regen Gesamt            :  mm
                Sonnenstrahlung         :  W/m²
                UV-Index                :
                Zeitstempel             :
                Firmware                :
                Batteriestand:          :
                Gateway-Modell          :
                
                Zusatzsensoren: keine
                
                
                Datenstring für ioBroker:
                
                
                
                DATA von Wetterstation:
                
                
                
                Debug VAR:
                Installationsverzeichnis: /home/woody
                IPP: 192.168.0.250:8087 WS_PORT: 6969           WS_POLL: 20             PRE_DP: 0_userdata.0.WoodyWetter
                WEB: HTTP               WS_PROT: Wunderground   DP50/60/70/100/200: 0 | 0 | 0 | 0 | 0
                Script-Version: V2.5.0  Config-Version: V2.5.0  Sub-Version: V2.5.0
                
                Kommunikationsfehler!
                
                
                woody@ioBroker:~$ ./wetterstation.sh --debug
                (UNKNOWN) [192.168.0.250] 8087 (?) open
                listening on [any] 6969 ...
                connect to [192.168.0.250] from (UNKNOWN) [192.168.0.99] 8525
                [
                  {
                    "id": "0_userdata.0.WoodyWetter.Innentemperatur",
                    "val": 18.88
                  },
                  {
                    "id": "0_userdata.0.WoodyWetter.Aussentemperatur",
                    "val": 1
                  },
                  {
                    "id": "0_userdata.0.WoodyWetter.Taupunkt",
                    "val": -0.27
                  },
                  {
                    "id": "0_userdata.0.WoodyWetter.Gefuehlte_Temperatur",
                    "val": 1
                  },
                  {
                    "id": "0_userdata.0.WoodyWetter.Innenfeuchtigkeit",
                    "val": 38
                  },
                  {
                    "id": "0_userdata.0.WoodyWetter.Aussenfeuchtigkeit",
                    "val": 91
                  },
                  {
                    "id": "0_userdata.0.WoodyWetter.Wind",
                    "val": 2.89
                  },
                  {
                    "id": "0_userdata.0.WoodyWetter.Wind_max",
                    "val": 5.47
                  },
                  {
                    "id": "0_userdata.0.WoodyWetter.Windrichtung",
                    "val": 0
                  },
                  {
                    "id": "0_userdata.0.WoodyWetter.Druck_absolut",
                    "val": 998.24
                  },
                  {
                    "id": "0_userdata.0.WoodyWetter.Druck_relativ",
                    "val": 1019.64
                  },
                  {
                    "id": "0_userdata.0.WoodyWetter.Regenrate",
                    "val": 1.8
                  },
                  {
                    "id": "0_userdata.0.WoodyWetter.Regen_Tag",
                    "val": 7.6
                  },
                  {
                    "id": "0_userdata.0.WoodyWetter.Regen_Woche",
                    "val": 14.5
                  },
                  {
                    "id": "0_userdata.0.WoodyWetter.Regen_Monat",
                    "val": 16.3
                  },
                  {
                    "id": "0_userdata.0.WoodyWetter.Regen_Jahr",
                    "val": 0
                  },
                  {
                    "id": "0_userdata.0.WoodyWetter.Sonnenstrahlung",
                    "val": 0
                  },
                  {
                    "id": "0_userdata.0.WoodyWetter.UV_Index",
                    "val": 0
                  },
                  {
                    "id": "0_userdata.0.WoodyWetter.Zeitstempel",
                    "val": "13.04.2021 21:00:54"
                  },
                  {
                    "id": "0_userdata.0.WoodyWetter.Info.FW_Version",
                    "val": "EasyWeatherV1.5.8"
                  },
                  {
                    "id": "0_userdata.0.WoodyWetter.Regenstatus",
                    "val": "mäßiger Regen"
                  },
                  {
                    "id": "0_userdata.0.WoodyWetter.UV_Belastung",
                    "val": "keine"
                  },
                  {
                    "id": "0_userdata.0.WoodyWetter.Windrichtung_Text",
                    "val": "N"
                  },
                  {
                    "id": "0_userdata.0.WoodyWetter.Info.Hitzeindex",
                    "val": ""
                  }
                ]
                
                Messwerteblock: 18.88 1.00 -.27 1.00 38 91 2.89 5.47 0 998.24 1019.64 1.8 7.6 14.5 16.3 0 0.00 0 13.04.2021%2021:00:54 EasyWeatherV1.5.8
                
                
                Nicht alle Werte werden unterstützt (abhängig vom Modell der Wetterstation und dem verwendeten Protokoll)!
                
                Temperatur Innen        : 18.88 °C
                Temperatur Aussen       : 1.00 °C
                Taupunkt                : -.27 °C
                Gefühlte Temperatur     : 1.00 °C
                Luftfeuchte Innen       : 38 %
                Luftfeuchte Aussen      : 91 %
                Windgeschwindkeit       : 2.89 km/h
                Windböengeschwindkeit   : 5.47 km/h
                max. Windböe            :  km/h
                Windrichtung            : 0 °
                Windrichtung            : N
                Luftdruck absolut       : 998.24 hPa
                Luftdruck relativ       : 1019.64 hPa
                Regenrate               : 1.8 mm/h
                Regenstatus             : mäßiger Regen
                Regen seit Regenbeginn  :  mm
                Regen Stunde            :  mm
                Regen Tag               : 7.6 mm
                Regen Woche             : 14.5 mm
                Regen Monat             : 16.3 mm
                Regen Jahr              : 0 mm
                Regen Gesamt            :  mm
                Sonnenstrahlung         : 0.00 W/m²
                UV-Index                : 0
                Zeitstempel             : 13.04.2021%2021:00:54
                Firmware                : EasyWeatherV1.5.8
                Batteriestand:          :
                Gateway-Modell          :
                
                Zusatzsensoren: keine
                
                
                Datenstring für ioBroker:
                0_userdata.0.WoodyWetter.Innentemperatur=18.88&0_userdata.0.WoodyWetter.Aussentemperatur=1.00&0_userdata.0.WoodyWetter.Taupunkt=-.27&0_userdata.0.WoodyWetter.Gefuehlte_Temperatur=1.00&0_userdata.0.WoodyWetter.Innenfeuchtigkeit=38&0_userdata.0.WoodyWetter.Aussenfeuchtigkeit=91&0_userdata.0.WoodyWetter.Wind=2.89&0_userdata.0.WoodyWetter.Wind_max=5.47&0_userdata.0.WoodyWetter.Windrichtung=0&0_userdata.0.WoodyWetter.Druck_absolut=998.24&0_userdata.0.WoodyWetter.Druck_relativ=1019.64&0_userdata.0.WoodyWetter.Regenrate=1.8&0_userdata.0.WoodyWetter.Regen_Tag=7.6&0_userdata.0.WoodyWetter.Regen_Woche=14.5&0_userdata.0.WoodyWetter.Regen_Monat=16.3&0_userdata.0.WoodyWetter.Regen_Jahr=0&0_userdata.0.WoodyWetter.Sonnenstrahlung=0.00&0_userdata.0.WoodyWetter.UV_Index=0&0_userdata.0.WoodyWetter.Zeitstempel=13.04.2021%2021:00:54&0_userdata.0.WoodyWetter.Info.FW_Version=EasyWeatherV1.5.8&0_userdata.0.WoodyWetter.Regenstatus=mäßiger Regen&0_userdata.0.WoodyWetter.UV_Belastung=keine&0_userdata.0.WoodyWetter.Windrichtung_Text=N&0_userdata.0.WoodyWetter.Info.Hitzeindex=
                
                
                DATA von Wetterstation:
                GET /weatherstation/updateweatherstation.php?ID=xxxxxx&PASSWORD=xxxxxx&indoortempf=66.0&tempf=33.8&dewptf=31.5&windchillf=33.8&indoorhumidity=38&humidity=91&windspeedmph=1.8&windgustmph=3.4&winddir=0&absbaromin=29.478&baromin=30.110&rainin=0.071&dailyrainin=0.303&weeklyrainin=0.571&monthlyrainin=0.642&yearlyrainin=0&solarradiation=0.00&UV=0&dateutc=2021-04-13%2019:00:54&softwaretype=EasyWeatherV1.5.8&action=updateraw&realtime=1&rtfreq=5 HTTP/1.0
                
                
                Debug VAR:
                Installationsverzeichnis: /home/woody
                IPP: 192.168.0.250:8087 WS_PORT: 6969           WS_POLL: 20             PRE_DP: 0_userdata.0.WoodyWetter
                WEB: HTTP               WS_PROT: Wunderground   DP50/60/70/100/200: 0 | 0 | 0 | 0 | 0
                Script-Version: V2.5.0  Config-Version: V2.5.0  Sub-Version: V2.5.0
                woody@ioBroker:~$
                
                
                SBorgS Offline
                SBorgS Offline
                SBorg
                Forum Testing Most Active
                wrote on last edited by
                #2479

                @da_woody sagte in [Linux Shell-Skript] WLAN-Wetterstation:
                Gleich Zeile #2:

                (UNKNOWN) [192.168.0.250] 8087 (?) open

                Er baut keine (stabile) Verbindung zur API des ioB auf. Heißt aber auch im Umkehrschluss, die Verbindung zum Display "steht" auch nicht richtig 😉

                Leider hat es noch keiner gemacht (auch per Issue unter GitHub bekomme ich keine Antwort, aber keine Antwort dürfte dann auch so viel heißen wie Problem gelöst...):

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

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

                Was muß ich noch machen oder was habe ich falsch gemacht??

                Hi, der Fehler steckt wie so oft im Detail:

                (UNKNOWN) [192.168.xxx.xxx] 8087 (?) open
                

                mangels "korrekter" netcat-Version kann er keine stabile Verbindung aufbauen. Deswegen geht es mal, oder halt nicht...
                Ev. habe ich dafür aber eine Lösung (die habe ich schon, nur so kann ich ev. von vorn herein eine "falsche" Version ausfiltern).
                Gib bitte mal im Terminal ls -al /etc/alternatives/nc|grep openbsd ein, da sollte bei dir jetzt nichts erscheinen.
                Gegentest: ls -al /etc/alternatives/nc|grep trad (da kommt dann so etwas wie lrwxrwxrwx 1 root root 15 Mai 9 2020 /etc/alternatives/nc -> /bin/nc.traditional) ?

                Lösung deines Problems: im Wiki --> FAQ --> "erhalte keine Daten" (netcat in passender Version nachinstallieren)

                Ich zähl auf dich 😁
                Kannst du das bitte mal vorher bei dir checken?
                Dann bitte noch mal ein sudo update-alternatives --config nc
                Da sollte dann in etwa (oder halt traditional)

                Es gibt nur eine Alternative in Link-Gruppe nc (die /bin/nc bereitstellt): /bin/nc.openbsd
                Nichts zu konfigurieren.
                

                kommen, wenn beide Versionen bei dir installiert sind, dann

                There are 2 choices for the alternative nc (providing /bin/nc).
                
                  Selection    Path                 Priority   Status
                ------------------------------------------------------------
                  0            /bin/nc.openbsd       50        auto mode
                * 1            /bin/nc.openbsd       50        manual mode
                  2            /bin/nc.traditional   10        manual mode
                
                Press enter to keep the current choice[*], or type selection number:
                

                Dann musst du sogar nur die Nummer des "openbsd" auswählen, sonst siehe WiKi wie oben beschrieben (Openbsd nachinstallieren).
                Dann könnte ich es im Skript zukünftig abfangen, oder "wir" schwenken zukünftig vom netcat zum neueren socat über 🙂

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

                da_WoodyD 1 Reply Last reply
                0
                • SBorgS SBorg

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

                  ("SkriptVersion_Update" und "SkriptVersion_UpdateCheck" sollten doch nicht leer sein oder?)

                  Hatte ich noch vergessen. "Update" wird erst befüllt wenn auch tatsächlich der "Check" aktiviert wurde.
                  Den "Check" muss man selbst aktivieren falls gewünscht. Per Default ist er leer (=false) wird also nicht ausgeführt. Der Anwender muss ihn selbst aktiv auf "true" setzen wenn er die Funktion nutzen möchte. Immerhin wird hier aktiv eine Seite (meines) GitHub-Projektes gelesen (+so ggf. eine INet-Verbindung aufgebaut) und die aktuelle Versionsnummer heraus geparst. Will ja ev. nicht jeder.

                  ...und zum Problem:

                  javascript.0	2021-04-13 12:11:00.008	warn	at Array.reduce (<anonymous>:null:null)
                  javascript.0	2021-04-13 12:11:00.008	warn	(9301) TypeError: Reduce of empty array with no initial value
                  

                  Er kann nichts aus der InfluxDB lesen. Er spricht sie auch korrekt an und es kommt zu keinem Fehler (error:null):

                  ..."ts":1618308660007,"error":null},"from":"system.adapter.influxdb.1",...
                  

                  Müsste ich raten, wäre mein Favorit, dass die DB schlichtweg leer ist?
                  Kannst du direkt per Influx oder Grafana zB. die Aussentemperatur aus der 1er Instanz lesen?
                  Ich habe leider keine Testumgebung und kann es nicht gerade mal eben in meiner Produktivumgebung nachbilden. Deswegen weiß ich aktuell nicht ob bei dir (denn es läuft so problemlos unter "0" bei allen Anderen) ev. ein pauschales Problem vorliegt, oder es prinzipiell nicht wg. der 1er Instanz (was aber im Grunde keinen Unterschied machen darf und auch funktionieren muss) geht.

                  P Offline
                  P Offline
                  Protheus
                  wrote on last edited by
                  #2480

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

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

                  ("SkriptVersion_Update" und "SkriptVersion_UpdateCheck" sollten doch nicht leer sein oder?)

                  Hatte ich noch vergessen. "Update" wird erst befüllt wenn auch tatsächlich der "Check" aktiviert wurde.
                  Den "Check" muss man selbst aktivieren falls gewünscht. Per Default ist er leer (=false) wird also nicht ausgeführt. Der Anwender muss ihn selbst aktiv auf "true" setzen wenn er die Funktion nutzen möchte. Immerhin wird hier aktiv eine Seite (meines) GitHub-Projektes gelesen (+so ggf. eine INet-Verbindung aufgebaut) und die aktuelle Versionsnummer heraus geparst. Will ja ev. nicht jeder.

                  ...und zum Problem:

                  javascript.0	2021-04-13 12:11:00.008	warn	at Array.reduce (<anonymous>:null:null)
                  javascript.0	2021-04-13 12:11:00.008	warn	(9301) TypeError: Reduce of empty array with no initial value
                  

                  Er kann nichts aus der InfluxDB lesen. Er spricht sie auch korrekt an und es kommt zu keinem Fehler (error:null):

                  ..."ts":1618308660007,"error":null},"from":"system.adapter.influxdb.1",...
                  

                  Müsste ich raten, wäre mein Favorit, dass die DB schlichtweg leer ist?
                  Kannst du direkt per Influx oder Grafana zB. die Aussentemperatur aus der 1er Instanz lesen?
                  Ich habe leider keine Testumgebung und kann es nicht gerade mal eben in meiner Produktivumgebung nachbilden. Deswegen weiß ich aktuell nicht ob bei dir (denn es läuft so problemlos unter "0" bei allen Anderen) ev. ein pauschales Problem vorliegt, oder es prinzipiell nicht wg. der 1er Instanz (was aber im Grunde keinen Unterschied machen darf und auch funktionieren muss) geht.

                  Hi,

                  ich habe das jetzt mal etwas umgestellt.
                  Ich schreibe die Werte jetzt in beide Instanzen der InfluxDB und lese jetzt wieder Instanz 0 aus.

                  Möglicherweise lag es auch daran, das ich die Aliase gesetzt habe (in Instanz 0 wird dies nun automatisch gemacht).

                  Und ja, ich monitore die Werte ja mit Grafana und die werden befüllt.
                  Ich warte jetzt mal die Nacht ab, wenn genug Werte in der DB stehen obs dann besser klappt.

                  Viele Grüße
                  Protheus

                  SBorgS 1 Reply Last reply
                  0
                  • P Protheus

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

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

                    ("SkriptVersion_Update" und "SkriptVersion_UpdateCheck" sollten doch nicht leer sein oder?)

                    Hatte ich noch vergessen. "Update" wird erst befüllt wenn auch tatsächlich der "Check" aktiviert wurde.
                    Den "Check" muss man selbst aktivieren falls gewünscht. Per Default ist er leer (=false) wird also nicht ausgeführt. Der Anwender muss ihn selbst aktiv auf "true" setzen wenn er die Funktion nutzen möchte. Immerhin wird hier aktiv eine Seite (meines) GitHub-Projektes gelesen (+so ggf. eine INet-Verbindung aufgebaut) und die aktuelle Versionsnummer heraus geparst. Will ja ev. nicht jeder.

                    ...und zum Problem:

                    javascript.0	2021-04-13 12:11:00.008	warn	at Array.reduce (<anonymous>:null:null)
                    javascript.0	2021-04-13 12:11:00.008	warn	(9301) TypeError: Reduce of empty array with no initial value
                    

                    Er kann nichts aus der InfluxDB lesen. Er spricht sie auch korrekt an und es kommt zu keinem Fehler (error:null):

                    ..."ts":1618308660007,"error":null},"from":"system.adapter.influxdb.1",...
                    

                    Müsste ich raten, wäre mein Favorit, dass die DB schlichtweg leer ist?
                    Kannst du direkt per Influx oder Grafana zB. die Aussentemperatur aus der 1er Instanz lesen?
                    Ich habe leider keine Testumgebung und kann es nicht gerade mal eben in meiner Produktivumgebung nachbilden. Deswegen weiß ich aktuell nicht ob bei dir (denn es läuft so problemlos unter "0" bei allen Anderen) ev. ein pauschales Problem vorliegt, oder es prinzipiell nicht wg. der 1er Instanz (was aber im Grunde keinen Unterschied machen darf und auch funktionieren muss) geht.

                    Hi,

                    ich habe das jetzt mal etwas umgestellt.
                    Ich schreibe die Werte jetzt in beide Instanzen der InfluxDB und lese jetzt wieder Instanz 0 aus.

                    Möglicherweise lag es auch daran, das ich die Aliase gesetzt habe (in Instanz 0 wird dies nun automatisch gemacht).

                    Und ja, ich monitore die Werte ja mit Grafana und die werden befüllt.
                    Ich warte jetzt mal die Nacht ab, wenn genug Werte in der DB stehen obs dann besser klappt.

                    Viele Grüße
                    Protheus

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

                    @protheus Wäre schön wenn es daran läge und würde dann auch so einiges erklären.
                    Dann kommt aber auch das ABER, es müsste auch mittels Alias funktionieren... 😉

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

                    P 1 Reply Last reply
                    0
                    • SBorgS SBorg

                      @da_woody sagte in [Linux Shell-Skript] WLAN-Wetterstation:
                      Gleich Zeile #2:

                      (UNKNOWN) [192.168.0.250] 8087 (?) open

                      Er baut keine (stabile) Verbindung zur API des ioB auf. Heißt aber auch im Umkehrschluss, die Verbindung zum Display "steht" auch nicht richtig 😉

                      Leider hat es noch keiner gemacht (auch per Issue unter GitHub bekomme ich keine Antwort, aber keine Antwort dürfte dann auch so viel heißen wie Problem gelöst...):

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

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

                      Was muß ich noch machen oder was habe ich falsch gemacht??

                      Hi, der Fehler steckt wie so oft im Detail:

                      (UNKNOWN) [192.168.xxx.xxx] 8087 (?) open
                      

                      mangels "korrekter" netcat-Version kann er keine stabile Verbindung aufbauen. Deswegen geht es mal, oder halt nicht...
                      Ev. habe ich dafür aber eine Lösung (die habe ich schon, nur so kann ich ev. von vorn herein eine "falsche" Version ausfiltern).
                      Gib bitte mal im Terminal ls -al /etc/alternatives/nc|grep openbsd ein, da sollte bei dir jetzt nichts erscheinen.
                      Gegentest: ls -al /etc/alternatives/nc|grep trad (da kommt dann so etwas wie lrwxrwxrwx 1 root root 15 Mai 9 2020 /etc/alternatives/nc -> /bin/nc.traditional) ?

                      Lösung deines Problems: im Wiki --> FAQ --> "erhalte keine Daten" (netcat in passender Version nachinstallieren)

                      Ich zähl auf dich 😁
                      Kannst du das bitte mal vorher bei dir checken?
                      Dann bitte noch mal ein sudo update-alternatives --config nc
                      Da sollte dann in etwa (oder halt traditional)

                      Es gibt nur eine Alternative in Link-Gruppe nc (die /bin/nc bereitstellt): /bin/nc.openbsd
                      Nichts zu konfigurieren.
                      

                      kommen, wenn beide Versionen bei dir installiert sind, dann

                      There are 2 choices for the alternative nc (providing /bin/nc).
                      
                        Selection    Path                 Priority   Status
                      ------------------------------------------------------------
                        0            /bin/nc.openbsd       50        auto mode
                      * 1            /bin/nc.openbsd       50        manual mode
                        2            /bin/nc.traditional   10        manual mode
                      
                      Press enter to keep the current choice[*], or type selection number:
                      

                      Dann musst du sogar nur die Nummer des "openbsd" auswählen, sonst siehe WiKi wie oben beschrieben (Openbsd nachinstallieren).
                      Dann könnte ich es im Skript zukünftig abfangen, oder "wir" schwenken zukünftig vom netcat zum neueren socat über 🙂

                      da_WoodyD Offline
                      da_WoodyD Offline
                      da_Woody
                      wrote on last edited by da_Woody
                      #2482

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

                      Ich zähl auf dich
                      Da sollte dann in etwa (oder halt traditional)

                      bin ja da! 😄
                      da kommt:

                      woody@ioBroker:~$ sudo update-alternatives --config nc
                      [sudo] Passwort für woody:
                      Es gibt nur eine Alternative in Link-Gruppe nc (die /bin/nc bereitstellt): /bin/nc.traditional
                      Nichts zu konfigurieren.
                      woody@ioBroker:~$
                      
                      

                      bei den anderen dingens:

                      woody@ioBroker:~$ ls -al /etc/alternatives/nc|grep openbsd
                      woody@ioBroker:~$ ls -al /etc/alternatives/nc|grep trad
                      lrwxrwxrwx 1 root root 19 Jän 24 20:01 /etc/alternatives/nc -> /bin/nc.traditional
                      woody@ioBroker:~$
                      
                      

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

                      SBorgS 1 Reply Last reply
                      1
                      • da_WoodyD da_Woody

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

                        Ich zähl auf dich
                        Da sollte dann in etwa (oder halt traditional)

                        bin ja da! 😄
                        da kommt:

                        woody@ioBroker:~$ sudo update-alternatives --config nc
                        [sudo] Passwort für woody:
                        Es gibt nur eine Alternative in Link-Gruppe nc (die /bin/nc bereitstellt): /bin/nc.traditional
                        Nichts zu konfigurieren.
                        woody@ioBroker:~$
                        
                        

                        bei den anderen dingens:

                        woody@ioBroker:~$ ls -al /etc/alternatives/nc|grep openbsd
                        woody@ioBroker:~$ ls -al /etc/alternatives/nc|grep trad
                        lrwxrwxrwx 1 root root 19 Jän 24 20:01 /etc/alternatives/nc -> /bin/nc.traditional
                        woody@ioBroker:~$
                        
                        
                        SBorgS Offline
                        SBorgS Offline
                        SBorg
                        Forum Testing Most Active
                        wrote on last edited by
                        #2483

                        @da_woody 😁 👍

                        ...danke + jupp, musst den "openbsd" nachinstallieren, dann klappt es auch 🙂

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

                        da_WoodyD 1 Reply Last reply
                        0
                        • SBorgS SBorg

                          @protheus Wäre schön wenn es daran läge und würde dann auch so einiges erklären.
                          Dann kommt aber auch das ABER, es müsste auch mittels Alias funktionieren... 😉

                          P Offline
                          P Offline
                          Protheus
                          wrote on last edited by
                          #2484

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

                          @protheus Wäre schön wenn es daran läge und würde dann auch so einiges erklären.
                          Dann kommt aber auch das ABER, es müsste auch mittels Alias funktionieren... 😉

                          Nicht ganz 😉

                          Alias im Sinne von InfluxDB Alias

                          Screenshot - 2021-04-14 14_33_44-objects - ioBroker.png

                          Für die bessere Sortierung und Findbarkeit habe ich die Alias-Werte selbst festgelegt

                          Screenshot - 2021-04-14 14_31_58- Grafana.png

                          Wenn man da nichts festlegt, wird der komplette Datenpunkt-Pfad als Bezeichnung genommen

                          Screenshot - 2021-04-14 14_31_0 - Grafana.png

                          Ich denke mal, den fragst du auch ab.

                          Viele Grüße
                          Protheus

                          SBorgS 1 Reply Last reply
                          0
                          • SBorgS SBorg

                            @da_woody 😁 👍

                            ...danke + jupp, musst den "openbsd" nachinstallieren, dann klappt es auch 🙂

                            da_WoodyD Offline
                            da_WoodyD Offline
                            da_Woody
                            wrote on last edited by
                            #2485

                            @sborg bitte sags mir wie, ich hab gestern 5 sachen gleichzeitig gemacht, die nacht fast nix gepennt. meine birne ist leer... 😞

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

                            SBorgS 1 Reply Last reply
                            0
                            • da_WoodyD da_Woody

                              @sborg bitte sags mir wie, ich hab gestern 5 sachen gleichzeitig gemacht, die nacht fast nix gepennt. meine birne ist leer... 😞

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

                              @da_woody No Prop: sudo apt-get install netcat-openbsd

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

                              da_WoodyD 1 Reply Last reply
                              0
                              • SBorgS SBorg

                                @da_woody No Prop: sudo apt-get install netcat-openbsd

                                da_WoodyD Offline
                                da_WoodyD Offline
                                da_Woody
                                wrote on last edited by
                                #2487

                                @sborg boah, jetzt ist's soweit, ich rauch grad 2 ziggen gleichzeitig... 😵
                                passt, erledigt und die vorgegebene 0 bestätigt.

                                  Auswahl      Pfad                 Priorität Status
                                ------------------------------------------------------------
                                * 0            /bin/nc.openbsd       50        automatischer Modus
                                  1            /bin/nc.openbsd       50        manueller Modus
                                  2            /bin/nc.traditional   10        manueller Modus
                                
                                

                                ich schau mal obs jetzt tutet...

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

                                da_WoodyD 1 Reply Last reply
                                0
                                • P Protheus

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

                                  @protheus Wäre schön wenn es daran läge und würde dann auch so einiges erklären.
                                  Dann kommt aber auch das ABER, es müsste auch mittels Alias funktionieren... 😉

                                  Nicht ganz 😉

                                  Alias im Sinne von InfluxDB Alias

                                  Screenshot - 2021-04-14 14_33_44-objects - ioBroker.png

                                  Für die bessere Sortierung und Findbarkeit habe ich die Alias-Werte selbst festgelegt

                                  Screenshot - 2021-04-14 14_31_58- Grafana.png

                                  Wenn man da nichts festlegt, wird der komplette Datenpunkt-Pfad als Bezeichnung genommen

                                  Screenshot - 2021-04-14 14_31_0 - Grafana.png

                                  Ich denke mal, den fragst du auch ab.

                                  Viele Grüße
                                  Protheus

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

                                  @protheus Jupp, dann isses klar. Das geht so nicht 😉
                                  Irgendwo in der Anleitung/Skript (ja, die ist schon lang...) steht funktioniert nur mit der Original-Datenstruktur
                                  Die Influx-Aliase hatte ich bei deinem Problem aktuell gar nicht auf dem Schirm.

                                  Durch den Influx-Alias heißt dein Wert dann nicht mehr [0_userdata/javascript].n.xyz.Aussentemperatur sondern nur noch Aussentemperatur, er fragt aber explizit ersteres ab. Dann ist deine DB für ihn tatsächlich leer 🙂

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

                                  P 1 Reply Last reply
                                  0
                                  • da_WoodyD da_Woody

                                    @sborg boah, jetzt ist's soweit, ich rauch grad 2 ziggen gleichzeitig... 😵
                                    passt, erledigt und die vorgegebene 0 bestätigt.

                                      Auswahl      Pfad                 Priorität Status
                                    ------------------------------------------------------------
                                    * 0            /bin/nc.openbsd       50        automatischer Modus
                                      1            /bin/nc.openbsd       50        manueller Modus
                                      2            /bin/nc.traditional   10        manueller Modus
                                    
                                    

                                    ich schau mal obs jetzt tutet...

                                    da_WoodyD Offline
                                    da_WoodyD Offline
                                    da_Woody
                                    wrote on last edited by da_Woody
                                    #2489

                                    @da_woody jep, funzt. wenn ich jetzt automatisch lafen lasse, sollten daten reinkommen...?
                                    aktualisieren tuts mal wenn ich normal aufrufe...

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

                                    SBorgS 1 Reply Last reply
                                    0
                                    • SBorgS SBorg

                                      @protheus Jupp, dann isses klar. Das geht so nicht 😉
                                      Irgendwo in der Anleitung/Skript (ja, die ist schon lang...) steht funktioniert nur mit der Original-Datenstruktur
                                      Die Influx-Aliase hatte ich bei deinem Problem aktuell gar nicht auf dem Schirm.

                                      Durch den Influx-Alias heißt dein Wert dann nicht mehr [0_userdata/javascript].n.xyz.Aussentemperatur sondern nur noch Aussentemperatur, er fragt aber explizit ersteres ab. Dann ist deine DB für ihn tatsächlich leer 🙂

                                      P Offline
                                      P Offline
                                      Protheus
                                      wrote on last edited by
                                      #2490

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

                                      @protheus Jupp, dann isses klar. Das geht so nicht 😉
                                      Irgendwo in der Anleitung/Skript (ja, die ist schon lang...) steht funktioniert nur mit der Original-Datenstruktur
                                      Die Influx-Aliase hatte ich bei deinem Problem aktuell gar nicht auf dem Schirm.

                                      Durch den Influx-Alias heißt dein Wert dann nicht mehr [0_userdata/javascript].n.xyz.Aussentemperatur sondern nur noch Aussentemperatur, er fragt aber explizit ersteres ab. Dann ist deine DB für ihn tatsächlich leer 🙂

                                      Ich hatte daran auch nicht gedacht. Ich bin zuversichtlich, das es heut Nacht dann tut 🙂
                                      Ich spiel halt gern mal rum bzw. versuchs immer aufgeräumt und übersichtlich zu halten.

                                      *funktioniert nur mit der Original-Datenstruktur*
                                      

                                      hatte ich nur auf die iobroker Objektstruktur bezogen und die DB völlig vergessen.

                                      Danke für den Klasse Support (und die Geduld).
                                      Das hat mir echt geholfen und wenns endlich warm wird, kann ich endlich die Bewässerung vergraben 🙂

                                      Viele Grüße
                                      Protheus

                                      SBorgS 1 Reply Last reply
                                      0
                                      • da_WoodyD da_Woody

                                        @da_woody jep, funzt. wenn ich jetzt automatisch lafen lasse, sollten daten reinkommen...?
                                        aktualisieren tuts mal wenn ich normal aufrufe...

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

                                        @da_woody Ja, ich bin aber persönlich nicht so ganz der Freund von automatismen. Funktioniert oft, aber...
                                        Stell es lieber fest auf "1", der openbsd kann eh mehr, zumindest alles was auch der traditional kann 🙂

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

                                        da_WoodyD 1 Reply Last reply
                                        0
                                        • P Protheus

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

                                          @protheus Jupp, dann isses klar. Das geht so nicht 😉
                                          Irgendwo in der Anleitung/Skript (ja, die ist schon lang...) steht funktioniert nur mit der Original-Datenstruktur
                                          Die Influx-Aliase hatte ich bei deinem Problem aktuell gar nicht auf dem Schirm.

                                          Durch den Influx-Alias heißt dein Wert dann nicht mehr [0_userdata/javascript].n.xyz.Aussentemperatur sondern nur noch Aussentemperatur, er fragt aber explizit ersteres ab. Dann ist deine DB für ihn tatsächlich leer 🙂

                                          Ich hatte daran auch nicht gedacht. Ich bin zuversichtlich, das es heut Nacht dann tut 🙂
                                          Ich spiel halt gern mal rum bzw. versuchs immer aufgeräumt und übersichtlich zu halten.

                                          *funktioniert nur mit der Original-Datenstruktur*
                                          

                                          hatte ich nur auf die iobroker Objektstruktur bezogen und die DB völlig vergessen.

                                          Danke für den Klasse Support (und die Geduld).
                                          Das hat mir echt geholfen und wenns endlich warm wird, kann ich endlich die Bewässerung vergraben 🙂

                                          Viele Grüße
                                          Protheus

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

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

                                          Ich hatte daran auch nicht gedacht. Ich bin zuversichtlich, das es heut Nacht dann tut

                                          Ich kam auch schon auf die Idee, sieht halt "netter" aus. Am nächsten Tag habe ich dann etliche Zeit gesucht warum in Grafana der Wert nicht mehr angezeigt wird...
                                          Ich werde es aber noch mal ausdrücklich mit Hinweis auf Influx-Aliase ins Skript aufnehmen.

                                          Mittlerweile gibt es so viele Berührungspunkte, dass man auch den Überblick verliert, bash, Influx, Javascript, ioB...

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

                                          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

                                          606

                                          Online

                                          32.4k

                                          Users

                                          81.3k

                                          Topics

                                          1.3m

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

                                          • Don't have an account? Register

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