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

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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. 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.7k

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

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

[Linux Shell-Skript] WLAN-Wetterstation

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
linuxshell-scriptwetterstationwlan-wetterstation
5.7k Beiträge 153 Kommentatoren 3.8m Aufrufe 135 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.
  • V viper4iob

    @sborg

    Ich wollte die OpenSenseMap Registrierung über das Skript durchführen: ./wetterstation.sh --osem_reg.
    Nur leider bricht diese gleich mit folgendem Fehler ab:
    2021-11-17_09-00-40__esx – VMware ESXi.jpg

    So sieht die conf aus:
    2021-11-17_09-10-34__esx – VMware ESXi.jpg

    Die Zeile, die den Fehler erzeugt, ist diese:
    2021-11-17_09-13-03__esx – VMware ESXi.jpg

    Jetzt habe ich mich gefragt, wo dieser OSEM_USER her kommt, der hier geprüft wird, in der conf gibt es nur einen senseBox_USER, und die Abfrage am Terminal durch read kommt erst nach dieser Prüfung. Und ich konnte auch keine Stelle finden, an der der senseBox_USER aus der conf ausgelesen und in den OSEM_USER geschrieben wird.
    Und selbst wenn im OSEM_USER an der Stelle den Inhalt aus senseBox_USER hätte, müsste dann das Prüfen auf den Leerstring vielleicht eher so aussehen if [ ! -z $OSEM_USER ];?
    Nun weiß ich auch nicht, ob nur ich damit ein Problem habe, weil das ws_update Skript bei mir auch nicht richtig läuft, wo das patchen schief geht und ich immer noch nicht weiß warum.
    Aber vielleicht ist es ja hier ein anderes Problem ;-)

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

    @viper4iob Kannst du auch nicht finden, klassicher C&P-Fehler.

    Die einfache *if variable; ..." funktioniert schon, denn alles was "nicht leer ist" liefert hier ein true und die Bedingung wird wahr. Ich habe es jetzt aber auf die eher geläufige [ "$var" != "" ] Variante geändert (+ nun mit der richtigen Variablen :innocent: ).

    BugFix V2.10.1 steht auf GitHub im "master"; einfach "sh" und "sub" tauschen (ggf. Service neu starten)
    Enthält noch kleinere Schönheitskorrekturen.

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

    V 1 Antwort Letzte Antwort
    1
    • SBorgS SBorg

      @viper4iob Kannst du auch nicht finden, klassicher C&P-Fehler.

      Die einfache *if variable; ..." funktioniert schon, denn alles was "nicht leer ist" liefert hier ein true und die Bedingung wird wahr. Ich habe es jetzt aber auf die eher geläufige [ "$var" != "" ] Variante geändert (+ nun mit der richtigen Variablen :innocent: ).

      BugFix V2.10.1 steht auf GitHub im "master"; einfach "sh" und "sub" tauschen (ggf. Service neu starten)
      Enthält noch kleinere Schönheitskorrekturen.

      V Offline
      V Offline
      viper4iob
      schrieb am zuletzt editiert von viper4iob
      #3131

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

      @viper4iob Kannst du auch nicht finden, klassicher C&P-Fehler.

      Die einfache *if variable; ..." funktioniert schon, denn alles was "nicht leer ist" liefert hier ein true und die Bedingung wird wahr. Ich habe es jetzt aber auf die eher geläufige [ "$var" != "" ] Variante geändert (+ nun mit der richtigen Variablen :innocent: ).

      BugFix V2.10.1 steht auf GitHub im "master"; einfach "sh" und "sub" tauschen (ggf. Service neu starten)
      Enthält noch kleinere Schönheitskorrekturen.

      Danke, für das schnelle Beheben.
      Mein Linux versucht aber bei if variable; den Inhalt als Kommando auszuführen, wenn dort etwas gesetzt ist und bei einem Leerstring, liefert es true zurück. Hier ein kleiner Test, 2 identische Skripte, bei einem ist die Variable OSEM_USER leer und bei dem anderen gesetzt:

      2021-11-17_10-59-52__esx – VMware ESXi.jpg

      So ist es besser lesbar:

      viper@kubix:/opt/wetterstation$ cat test_leer.sh
      #!/bin/bash
      
      OSEM_USER=
      if $OSEM_USER; then echo -e "\n${RE} [FEHLER:]   ABBRUCH! Es ist bereits ein Username für OpenSenseMap in der Konfiguration gesetzt!\n";fi
      viper@kubix:/opt/wetterstation$
      viper@kubix:/opt/wetterstation$
      viper@kubix:/opt/wetterstation$ cat test_gesetzt.sh
      #!/bin/bash
      
      OSEM_USER=ahg123
      if $OSEM_USER; then echo -e "\n${RE} [FEHLER:]   ABBRUCH! Es ist bereits ein Username für OpenSenseMap in der Konfiguration gesetzt!\n";fi
      viper@kubix:/opt/wetterstation$
      viper@kubix:/opt/wetterstation$
      viper@kubix:/opt/wetterstation$ ./test_leer.sh
      
       [FEHLER:]   ABBRUCH! Es ist bereits ein Username für OpenSenseMap in der Konfiguration gesetzt!
      
      viper@kubix:/opt/wetterstation$
      viper@kubix:/opt/wetterstation$
      viper@kubix:/opt/wetterstation$ ./test_gesetzt.sh
      ./test_gesetzt.sh: Zeile 5: ahg123: Befehl nicht gefunden
      viper@kubix:/opt/wetterstation$
      viper@kubix:/opt/wetterstation$ bash --version
      GNU bash, Version 5.0.17(1)-release (x86_64-pc-linux-gnu)
      
      SBorgS 1 Antwort Letzte Antwort
      0
      • V viper4iob

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

        @viper4iob Kannst du auch nicht finden, klassicher C&P-Fehler.

        Die einfache *if variable; ..." funktioniert schon, denn alles was "nicht leer ist" liefert hier ein true und die Bedingung wird wahr. Ich habe es jetzt aber auf die eher geläufige [ "$var" != "" ] Variante geändert (+ nun mit der richtigen Variablen :innocent: ).

        BugFix V2.10.1 steht auf GitHub im "master"; einfach "sh" und "sub" tauschen (ggf. Service neu starten)
        Enthält noch kleinere Schönheitskorrekturen.

        Danke, für das schnelle Beheben.
        Mein Linux versucht aber bei if variable; den Inhalt als Kommando auszuführen, wenn dort etwas gesetzt ist und bei einem Leerstring, liefert es true zurück. Hier ein kleiner Test, 2 identische Skripte, bei einem ist die Variable OSEM_USER leer und bei dem anderen gesetzt:

        2021-11-17_10-59-52__esx – VMware ESXi.jpg

        So ist es besser lesbar:

        viper@kubix:/opt/wetterstation$ cat test_leer.sh
        #!/bin/bash
        
        OSEM_USER=
        if $OSEM_USER; then echo -e "\n${RE} [FEHLER:]   ABBRUCH! Es ist bereits ein Username für OpenSenseMap in der Konfiguration gesetzt!\n";fi
        viper@kubix:/opt/wetterstation$
        viper@kubix:/opt/wetterstation$
        viper@kubix:/opt/wetterstation$ cat test_gesetzt.sh
        #!/bin/bash
        
        OSEM_USER=ahg123
        if $OSEM_USER; then echo -e "\n${RE} [FEHLER:]   ABBRUCH! Es ist bereits ein Username für OpenSenseMap in der Konfiguration gesetzt!\n";fi
        viper@kubix:/opt/wetterstation$
        viper@kubix:/opt/wetterstation$
        viper@kubix:/opt/wetterstation$ ./test_leer.sh
        
         [FEHLER:]   ABBRUCH! Es ist bereits ein Username für OpenSenseMap in der Konfiguration gesetzt!
        
        viper@kubix:/opt/wetterstation$
        viper@kubix:/opt/wetterstation$
        viper@kubix:/opt/wetterstation$ ./test_gesetzt.sh
        ./test_gesetzt.sh: Zeile 5: ahg123: Befehl nicht gefunden
        viper@kubix:/opt/wetterstation$
        viper@kubix:/opt/wetterstation$ bash --version
        GNU bash, Version 5.0.17(1)-release (x86_64-pc-linux-gnu)
        
        SBorgS Offline
        SBorgS Offline
        SBorg
        Forum Testing Most Active
        schrieb am zuletzt editiert von
        #3132

        @viper4iob Witzig, oder auch nicht... ;)

        Mache mal spaßeshalber den Gegentest direkt in der Console:

        a=1
        test $a && echo "Gesetzt" || echo "Nö"
        
        test $b && echo "Gesetzt" || echo "Nö"
        

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

        V 1 Antwort Letzte Antwort
        0
        • SBorgS SBorg

          @viper4iob Witzig, oder auch nicht... ;)

          Mache mal spaßeshalber den Gegentest direkt in der Console:

          a=1
          test $a && echo "Gesetzt" || echo "Nö"
          
          test $b && echo "Gesetzt" || echo "Nö"
          
          V Offline
          V Offline
          viper4iob
          schrieb am zuletzt editiert von
          #3133

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

          a=1 test $a && echo "Gesetzt" || echo "Nö" test $b && echo "Gesetzt" || echo "Nö"

          Erst direkt in der Konsole, dann als Skript:

          viper@kubix:/opt/wetterstation$ a=1
          viper@kubix:/opt/wetterstation$ test $a && echo "Gesetzt" || echo "Nö"
          Gesetzt
          viper@kubix:/opt/wetterstation$
          viper@kubix:/opt/wetterstation$ test $b && echo "Gesetzt" || echo "Nö"
          Nö
          viper@kubix:/opt/wetterstation$ ./test.sh
          Gesetzt
          Nö
          
          
          V 1 Antwort Letzte Antwort
          0
          • V viper4iob

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

            a=1 test $a && echo "Gesetzt" || echo "Nö" test $b && echo "Gesetzt" || echo "Nö"

            Erst direkt in der Konsole, dann als Skript:

            viper@kubix:/opt/wetterstation$ a=1
            viper@kubix:/opt/wetterstation$ test $a && echo "Gesetzt" || echo "Nö"
            Gesetzt
            viper@kubix:/opt/wetterstation$
            viper@kubix:/opt/wetterstation$ test $b && echo "Gesetzt" || echo "Nö"
            Nö
            viper@kubix:/opt/wetterstation$ ./test.sh
            Gesetzt
            Nö
            
            
            V Offline
            V Offline
            viper4iob
            schrieb am zuletzt editiert von viper4iob
            #3134

            @viper4iob
            Ich glaube ich habs:

            if $OSEM_USER;...
            if [ $OSEM_USER ];...
            

            Ersteres führt zu oben genannten Problem, mit eckigen Klammern geht es.

            EDIT
            Hier nochmal alles:

            viper@kubix:/opt/wetterstation$ cat test_leer.sh
            #!/bin/bash
            
            OSEM_USER=
            if [ $OSEM_USER ]; then echo -e "\n${RE} [FEHLER:]   ABBRUCH! Es ist bereits ein Username für OpenSenseMap in der Konfiguration gesetzt!\n";fi
            viper@kubix:/opt/wetterstation$
            viper@kubix:/opt/wetterstation$
            viper@kubix:/opt/wetterstation$
            viper@kubix:/opt/wetterstation$ cat test_gesetzt.sh
            #!/bin/bash
            
            OSEM_USER=ahg123
            if [ $OSEM_USER ]; then echo -e "\n${RE} [FEHLER:]   ABBRUCH! Es ist bereits ein Username für OpenSenseMap in der Konfiguration gesetzt!\n";fi
            viper@kubix:/opt/wetterstation$
            viper@kubix:/opt/wetterstation$
            viper@kubix:/opt/wetterstation$ ./test_leer.sh
            viper@kubix:/opt/wetterstation$
            viper@kubix:/opt/wetterstation$
            viper@kubix:/opt/wetterstation$ ./test_gesetzt.sh
            
             [FEHLER:]   ABBRUCH! Es ist bereits ein Username für OpenSenseMap in der Konfiguration gesetzt!
            
            viper@kubix:/opt/wetterstation$
            
            
            SBorgS 1 Antwort Letzte Antwort
            0
            • V viper4iob

              @viper4iob
              Ich glaube ich habs:

              if $OSEM_USER;...
              if [ $OSEM_USER ];...
              

              Ersteres führt zu oben genannten Problem, mit eckigen Klammern geht es.

              EDIT
              Hier nochmal alles:

              viper@kubix:/opt/wetterstation$ cat test_leer.sh
              #!/bin/bash
              
              OSEM_USER=
              if [ $OSEM_USER ]; then echo -e "\n${RE} [FEHLER:]   ABBRUCH! Es ist bereits ein Username für OpenSenseMap in der Konfiguration gesetzt!\n";fi
              viper@kubix:/opt/wetterstation$
              viper@kubix:/opt/wetterstation$
              viper@kubix:/opt/wetterstation$
              viper@kubix:/opt/wetterstation$ cat test_gesetzt.sh
              #!/bin/bash
              
              OSEM_USER=ahg123
              if [ $OSEM_USER ]; then echo -e "\n${RE} [FEHLER:]   ABBRUCH! Es ist bereits ein Username für OpenSenseMap in der Konfiguration gesetzt!\n";fi
              viper@kubix:/opt/wetterstation$
              viper@kubix:/opt/wetterstation$
              viper@kubix:/opt/wetterstation$ ./test_leer.sh
              viper@kubix:/opt/wetterstation$
              viper@kubix:/opt/wetterstation$
              viper@kubix:/opt/wetterstation$ ./test_gesetzt.sh
              
               [FEHLER:]   ABBRUCH! Es ist bereits ein Username für OpenSenseMap in der Konfiguration gesetzt!
              
              viper@kubix:/opt/wetterstation$
              
              
              SBorgS Offline
              SBorgS Offline
              SBorg
              Forum Testing Most Active
              schrieb am zuletzt editiert von
              #3135

              @viper4iob Trotzdem sehr eigenartig, da "test" die Vereinfachung von "if - then - else" ist und in der Console funktioniert, im Skript dann aber wieder nicht.

              Memo to me: Also sicherheitshalber, wenn faul, dann zumindest in [] oder gleich die Langvariante nehmen... ;)

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

              V 1 Antwort Letzte Antwort
              0
              • SBorgS SBorg

                @viper4iob Trotzdem sehr eigenartig, da "test" die Vereinfachung von "if - then - else" ist und in der Console funktioniert, im Skript dann aber wieder nicht.

                Memo to me: Also sicherheitshalber, wenn faul, dann zumindest in [] oder gleich die Langvariante nehmen... ;)

                V Offline
                V Offline
                viper4iob
                schrieb am zuletzt editiert von viper4iob
                #3136

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

                @viper4iob Trotzdem sehr eigenartig, da "test" die Vereinfachung von "if - then - else" ist und in der Console funktioniert, im Skript dann aber wieder nicht.

                Memo to me: Also sicherheitshalber, wenn faul, dann zumindest in [] oder gleich die Langvariante nehmen... ;)

                Naja, das Kommando test hat in der Konsole und im Skript das gleiche Ergebnis geliefert.
                Aber die Kombination aus dem if-Statement ohne Klammern scheint problematisch zu sein.

                In der Konsole passiert genau der gleiche Fehler, Vergleich if ohne und mit []:

                viper@kubix:/opt/wetterstation$ OSEM_USER=
                viper@kubix:/opt/wetterstation$ echo $OSEM_USER
                
                viper@kubix:/opt/wetterstation$ if $OSEM_USER; then echo "gesetzt";fi
                gesetzt
                viper@kubix:/opt/wetterstation$ if [ $OSEM_USER ]; then echo "gesetzt";fi
                viper@kubix:/opt/wetterstation$
                viper@kubix:/opt/wetterstation$
                viper@kubix:/opt/wetterstation$ OSEM_USER=zgh123
                viper@kubix:/opt/wetterstation$ echo $OSEM_USER
                zgh123
                viper@kubix:/opt/wetterstation$ if $OSEM_USER; then echo "gesetzt";fi
                zgh123: Befehl nicht gefunden.
                viper@kubix:/opt/wetterstation$ if [ $OSEM_USER ]; then echo "gesetzt";fi
                gesetzt
                viper@kubix:/opt/wetterstation$
                
                
                V 1 Antwort Letzte Antwort
                0
                • V viper4iob

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

                  @viper4iob Trotzdem sehr eigenartig, da "test" die Vereinfachung von "if - then - else" ist und in der Console funktioniert, im Skript dann aber wieder nicht.

                  Memo to me: Also sicherheitshalber, wenn faul, dann zumindest in [] oder gleich die Langvariante nehmen... ;)

                  Naja, das Kommando test hat in der Konsole und im Skript das gleiche Ergebnis geliefert.
                  Aber die Kombination aus dem if-Statement ohne Klammern scheint problematisch zu sein.

                  In der Konsole passiert genau der gleiche Fehler, Vergleich if ohne und mit []:

                  viper@kubix:/opt/wetterstation$ OSEM_USER=
                  viper@kubix:/opt/wetterstation$ echo $OSEM_USER
                  
                  viper@kubix:/opt/wetterstation$ if $OSEM_USER; then echo "gesetzt";fi
                  gesetzt
                  viper@kubix:/opt/wetterstation$ if [ $OSEM_USER ]; then echo "gesetzt";fi
                  viper@kubix:/opt/wetterstation$
                  viper@kubix:/opt/wetterstation$
                  viper@kubix:/opt/wetterstation$ OSEM_USER=zgh123
                  viper@kubix:/opt/wetterstation$ echo $OSEM_USER
                  zgh123
                  viper@kubix:/opt/wetterstation$ if $OSEM_USER; then echo "gesetzt";fi
                  zgh123: Befehl nicht gefunden.
                  viper@kubix:/opt/wetterstation$ if [ $OSEM_USER ]; then echo "gesetzt";fi
                  gesetzt
                  viper@kubix:/opt/wetterstation$
                  
                  
                  V Offline
                  V Offline
                  viper4iob
                  schrieb am zuletzt editiert von viper4iob
                  #3137

                  @SBorg

                  Zum Thema zurück :-)
                  Ich habe jetzt die sh und sub Dateien bei mir aktualisiert.
                  Nun scheitere ich aber am Punkt 2 des Install Guides genau an der gleichen Stelle.
                  Das Skript bricht ab, weil nun wirklich ein user gesetzt ist und man kann dann sie SenseBox nicht registrieren.

                  Die Registrierungsmail habe ich zwischen den beiden Aufrufen bestätigt.

                   Alle Eingaben korrekt [J/N]: J
                  
                  
                   Lege neuen SenseBox-User an... OK
                   Speichere User und Passwort in wetterstation.conf ab... OK
                   Vor dem fortfahren nun bitte zuerst die Email-Adresse verifizieren (Email von OpenSenseMap im Posteingang)...
                  viper@kubix:/opt/wetterstation$ ./wetterstation.sh --osem_reg
                  
                   [FEHLER:]   ABBRUCH! Es ist bereits ein Username für OpenSenseMap in der Konfiguration gesetzt!
                  
                  viper@kubix:/opt/wetterstation$
                  

                  Ich denke diese if-Abfrage, ob der user schon vorhanden ist, sollte erst kommen, wenn man die Frage nach dem Einrichten eines neuen Users mit Ja bestätigt hat, also nach hier:

                  echo -en "\n$WE Neuen SenseBox-User registrieren [${GR}Ja/Nein${WE}]: $GE"
                          read JN
                          if [ ! $JN ]; then JN="Nein"; fi
                          if [ $JN == "Ja" ]; then
                  
                  
                  da_WoodyD 1 Antwort Letzte Antwort
                  0
                  • V viper4iob

                    @SBorg

                    Zum Thema zurück :-)
                    Ich habe jetzt die sh und sub Dateien bei mir aktualisiert.
                    Nun scheitere ich aber am Punkt 2 des Install Guides genau an der gleichen Stelle.
                    Das Skript bricht ab, weil nun wirklich ein user gesetzt ist und man kann dann sie SenseBox nicht registrieren.

                    Die Registrierungsmail habe ich zwischen den beiden Aufrufen bestätigt.

                     Alle Eingaben korrekt [J/N]: J
                    
                    
                     Lege neuen SenseBox-User an... OK
                     Speichere User und Passwort in wetterstation.conf ab... OK
                     Vor dem fortfahren nun bitte zuerst die Email-Adresse verifizieren (Email von OpenSenseMap im Posteingang)...
                    viper@kubix:/opt/wetterstation$ ./wetterstation.sh --osem_reg
                    
                     [FEHLER:]   ABBRUCH! Es ist bereits ein Username für OpenSenseMap in der Konfiguration gesetzt!
                    
                    viper@kubix:/opt/wetterstation$
                    

                    Ich denke diese if-Abfrage, ob der user schon vorhanden ist, sollte erst kommen, wenn man die Frage nach dem Einrichten eines neuen Users mit Ja bestätigt hat, also nach hier:

                    echo -en "\n$WE Neuen SenseBox-User registrieren [${GR}Ja/Nein${WE}]: $GE"
                            read JN
                            if [ ! $JN ]; then JN="Nein"; fi
                            if [ $JN == "Ja" ]; then
                    
                    
                    da_WoodyD Offline
                    da_WoodyD Offline
                    da_Woody
                    schrieb am zuletzt editiert von
                    #3138

                    @viper4iob sorry wenn ich dich falsch verstehe, aber wenn du in der config den user schon drinnen hast, dann brauchst du ja keinen neuen user anlegen...

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

                    SBorgS V 2 Antworten Letzte Antwort
                    0
                    • da_WoodyD da_Woody

                      @viper4iob sorry wenn ich dich falsch verstehe, aber wenn du in der config den user schon drinnen hast, dann brauchst du ja keinen neuen user anlegen...

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

                      @da_woody Jepp, und genau darum geht es: falls schon ein User angelegt wurde --> dann lege nicht noch mal einen an. Allerdings hat @viper4iob Recht ( :+1: ), dass kommt eine Nummer zu früh, denn es wird bei jedem Aufruf ausgeführt, also auch wenn man einen User korrekt angelegt hat (dann existiert er ja völlig zu Recht) und dann beim nächsten Ablauf wieder dort landet :(

                      Ich habe es jetzt wie vorgeschlagen hinter / in die Abfrage der Neuuser-Registrierung verschoben. Kommt davon wenn man nachträglich "rumpfuscht" und es dann nicht mehr testen kann :man-facepalming:

                      ...wie üblich Fix auf GitHub, allerdings mit gleicher Versionsnummer. "sub" tauschen genügt.

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

                      V 2 Antworten Letzte Antwort
                      2
                      • da_WoodyD da_Woody

                        @viper4iob sorry wenn ich dich falsch verstehe, aber wenn du in der config den user schon drinnen hast, dann brauchst du ja keinen neuen user anlegen...

                        V Offline
                        V Offline
                        viper4iob
                        schrieb am zuletzt editiert von viper4iob
                        #3140

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

                        @viper4iob sorry wenn ich dich falsch verstehe, aber wenn du in der config den user schon drinnen hast, dann brauchst du ja keinen neuen user anlegen...

                        Ja, richtig.
                        Man ruft aber zum Registrieren der SensorBox das gleiche Skript wieder auf.
                        D.h. es kommt erst wieder die Frage, ob ein User angelegt werden soll. Da man den User schon in Schritt 1 angelegt hat, müsste man jetzt die Frage mit Nein beabtworten und dann würde er zum Registrieren der Sensor-Box springen, so steht es ja auch im Install Guide.
                        Soweit kommt er aber gar nicht, weil direkt nach Starten des Skripts geprüft wird, ob in der config schon ein User angelegt ist. Und wenn ja bricht das Skript komplett ab und man hat keine Chance mehr eine SensorBox zu registrieren.
                        Kurz gesagt, man würde so nie zum Registrieren der SensorBox kommen.

                        Der Check, ob der User schon existiert, darf erst kommen, wenn man die Frage zum Anlegen eines neuen Users mit Ja bestätigt.
                        Und genau das hat @SBorg jetzt gefixt, kann es aber erst morgen testen.

                        da_WoodyD 1 Antwort Letzte Antwort
                        0
                        • V viper4iob

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

                          @viper4iob sorry wenn ich dich falsch verstehe, aber wenn du in der config den user schon drinnen hast, dann brauchst du ja keinen neuen user anlegen...

                          Ja, richtig.
                          Man ruft aber zum Registrieren der SensorBox das gleiche Skript wieder auf.
                          D.h. es kommt erst wieder die Frage, ob ein User angelegt werden soll. Da man den User schon in Schritt 1 angelegt hat, müsste man jetzt die Frage mit Nein beabtworten und dann würde er zum Registrieren der Sensor-Box springen, so steht es ja auch im Install Guide.
                          Soweit kommt er aber gar nicht, weil direkt nach Starten des Skripts geprüft wird, ob in der config schon ein User angelegt ist. Und wenn ja bricht das Skript komplett ab und man hat keine Chance mehr eine SensorBox zu registrieren.
                          Kurz gesagt, man würde so nie zum Registrieren der SensorBox kommen.

                          Der Check, ob der User schon existiert, darf erst kommen, wenn man die Frage zum Anlegen eines neuen Users mit Ja bestätigt.
                          Und genau das hat @SBorg jetzt gefixt, kann es aber erst morgen testen.

                          da_WoodyD Offline
                          da_WoodyD Offline
                          da_Woody
                          schrieb am zuletzt editiert von
                          #3141

                          @viper4iob k, dann wär das ja geklärt! :)
                          so solls ja auch sein...

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

                          1 Antwort Letzte Antwort
                          0
                          • SBorgS SBorg

                            @da_woody Jepp, und genau darum geht es: falls schon ein User angelegt wurde --> dann lege nicht noch mal einen an. Allerdings hat @viper4iob Recht ( :+1: ), dass kommt eine Nummer zu früh, denn es wird bei jedem Aufruf ausgeführt, also auch wenn man einen User korrekt angelegt hat (dann existiert er ja völlig zu Recht) und dann beim nächsten Ablauf wieder dort landet :(

                            Ich habe es jetzt wie vorgeschlagen hinter / in die Abfrage der Neuuser-Registrierung verschoben. Kommt davon wenn man nachträglich "rumpfuscht" und es dann nicht mehr testen kann :man-facepalming:

                            ...wie üblich Fix auf GitHub, allerdings mit gleicher Versionsnummer. "sub" tauschen genügt.

                            V Offline
                            V Offline
                            viper4iob
                            schrieb am zuletzt editiert von
                            #3142

                            @sborg
                            Die openSenseMap Registrierung hat nun ohne Probleme funktioniert.
                            Danke nochmal für den Fix.

                            Noch eine Frage dazu: Falls später mal ein Sensor dazu kommt (z.B. ein Feinstaub Sensor), kann man das "Sensoren registrieren" einfach noch einmal aufrufen, oder muss man das dann manuell einpflegen?

                            SBorgS 1 Antwort Letzte Antwort
                            0
                            • SBorgS SBorg

                              @da_woody Jepp, und genau darum geht es: falls schon ein User angelegt wurde --> dann lege nicht noch mal einen an. Allerdings hat @viper4iob Recht ( :+1: ), dass kommt eine Nummer zu früh, denn es wird bei jedem Aufruf ausgeführt, also auch wenn man einen User korrekt angelegt hat (dann existiert er ja völlig zu Recht) und dann beim nächsten Ablauf wieder dort landet :(

                              Ich habe es jetzt wie vorgeschlagen hinter / in die Abfrage der Neuuser-Registrierung verschoben. Kommt davon wenn man nachträglich "rumpfuscht" und es dann nicht mehr testen kann :man-facepalming:

                              ...wie üblich Fix auf GitHub, allerdings mit gleicher Versionsnummer. "sub" tauschen genügt.

                              V Offline
                              V Offline
                              viper4iob
                              schrieb am zuletzt editiert von viper4iob
                              #3143

                              Mir ist gerade noch etwas anderes aufgefallen: bei der Windstärke auf wetter.com kommen mir die Werte ganz schön hoch vor.
                              Hier zum Vergleich ein EChart aus iobroker von der Windgeschwindigkeit heute 8 Uhr bis jetzt (maximal ca. 11 km/h) und gestern Nachmittag (maximal ca 15 km/h):
                              2021-11-18 13_05_37-echarts - kubix.jpg
                              2021-11-18 13_18_10-echarts - kubix.jpg

                              Und von wetter.com die letzten 24 Stunden:
                              2021-11-18 13_12_55-Window.jpg

                              Als Beispiel: 15:09 Uhr sagt das EChart 15,12 km/h und wetter.com hat 15:10 Uhr 46,4 km/h angegeben.
                              Bei openSenseMap passen die Werte, das habe ich gerade nochmal verglichen.
                              Jetzt weiß ich nicht, ob wetter.com irgendetwas komisches mit den Daten macht oder irgendetwas umgerechnet werden muss.
                              Der Taupunkt bei wetter.com stimmt auch nicht ganz überein, aber der wird glaube nicht hochgeladen, d.h. den berechnen die selbst.
                              Vielleicht kann das nochmal jemand checken, der den Upload zu wetter.com auch aktiv hat.

                              da_WoodyD 1 Antwort Letzte Antwort
                              0
                              • V viper4iob

                                Mir ist gerade noch etwas anderes aufgefallen: bei der Windstärke auf wetter.com kommen mir die Werte ganz schön hoch vor.
                                Hier zum Vergleich ein EChart aus iobroker von der Windgeschwindigkeit heute 8 Uhr bis jetzt (maximal ca. 11 km/h) und gestern Nachmittag (maximal ca 15 km/h):
                                2021-11-18 13_05_37-echarts - kubix.jpg
                                2021-11-18 13_18_10-echarts - kubix.jpg

                                Und von wetter.com die letzten 24 Stunden:
                                2021-11-18 13_12_55-Window.jpg

                                Als Beispiel: 15:09 Uhr sagt das EChart 15,12 km/h und wetter.com hat 15:10 Uhr 46,4 km/h angegeben.
                                Bei openSenseMap passen die Werte, das habe ich gerade nochmal verglichen.
                                Jetzt weiß ich nicht, ob wetter.com irgendetwas komisches mit den Daten macht oder irgendetwas umgerechnet werden muss.
                                Der Taupunkt bei wetter.com stimmt auch nicht ganz überein, aber der wird glaube nicht hochgeladen, d.h. den berechnen die selbst.
                                Vielleicht kann das nochmal jemand checken, der den Upload zu wetter.com auch aktiv hat.

                                da_WoodyD Offline
                                da_WoodyD Offline
                                da_Woody
                                schrieb am zuletzt editiert von
                                #3144

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

                                Als Beispiel: 15:09 Uhr sagt das EChart 15,12 km/h und wetter.com hat 15:10 Uhr 46,4 km/h angegeben.

                                kann es sein, daß du da die windböen nimmst? gerade bei mir nachgeschaut. wind ca 17kmh, böen bis 45kmh...

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

                                V 1 Antwort Letzte Antwort
                                0
                                • da_WoodyD da_Woody

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

                                  Als Beispiel: 15:09 Uhr sagt das EChart 15,12 km/h und wetter.com hat 15:10 Uhr 46,4 km/h angegeben.

                                  kann es sein, daß du da die windböen nimmst? gerade bei mir nachgeschaut. wind ca 17kmh, böen bis 45kmh...

                                  V Offline
                                  V Offline
                                  viper4iob
                                  schrieb am zuletzt editiert von viper4iob
                                  #3145

                                  @da_woody

                                  Was heißt nehmen? Das macht ja alles das Skript.
                                  In der Skript config sind nur die ID und das PW von wetter.com hinterlegt. Ich kann also nicht angeben, was wie hochgeladen wird, es sei denn ich würde das Skript umschreiben..

                                  Ich habe aber mal im Skript nachgeschaut, da gibt es die Zeile :
                                  WC_URL+="&windstaerke=${MESSWERTE[6]}&luftdruck=${MESSWERTE[10]}&niederschlagsmenge=${MESSWERTE[11]}"

                                  Und MESSWERTE[6] scheint die normale Windgeschwindigkeit zu sein:

                                     echo -e "Windgeschwindkeit\t: $GR${MESSWERTE[6]}$WE km/h"
                                     echo -e "Windböengeschwindkeit\t: $GR${MESSWERTE[7]}$WE km/h"
                                     echo -e "max. Windböe\t\t: $GR${MESSWERTE[21]}$WE km/h"
                                  

                                  Und ein EChart von der maximalen Windgeschwindigkeit/Böen sieht so aus (max ca. 20 km/h):
                                  2021-11-18 13_44_44-echarts - kubix.jpg

                                  Laut wetter.com Wettervorhersage sind heute für hier für den ganzen Tag 5-7 km/h Wind vorhergesagt, das passt auch zu den Daten, die die Wetterstation liefert, die schwanken zwar etwas mehr, aber nie mehr als um die 10 km/h.
                                  Aber in den Upload-Daten ins wetter.com Netzwerk zeigt der Graph heute schon mehrmals über 20 km/h und im Durchschnitt vielleicht so um die 10 km/h an, das passt irgendwie nicht zusammen.
                                  Die anderen Werte wie Temp oder Luftfeuchte oder Luftdruck passen aber, so dass ich zumindest ausschließen kann, dass die Werte von jemand anderem kommen.

                                  da_WoodyD 1 Antwort Letzte Antwort
                                  0
                                  • V viper4iob

                                    @da_woody

                                    Was heißt nehmen? Das macht ja alles das Skript.
                                    In der Skript config sind nur die ID und das PW von wetter.com hinterlegt. Ich kann also nicht angeben, was wie hochgeladen wird, es sei denn ich würde das Skript umschreiben..

                                    Ich habe aber mal im Skript nachgeschaut, da gibt es die Zeile :
                                    WC_URL+="&windstaerke=${MESSWERTE[6]}&luftdruck=${MESSWERTE[10]}&niederschlagsmenge=${MESSWERTE[11]}"

                                    Und MESSWERTE[6] scheint die normale Windgeschwindigkeit zu sein:

                                       echo -e "Windgeschwindkeit\t: $GR${MESSWERTE[6]}$WE km/h"
                                       echo -e "Windböengeschwindkeit\t: $GR${MESSWERTE[7]}$WE km/h"
                                       echo -e "max. Windböe\t\t: $GR${MESSWERTE[21]}$WE km/h"
                                    

                                    Und ein EChart von der maximalen Windgeschwindigkeit/Böen sieht so aus (max ca. 20 km/h):
                                    2021-11-18 13_44_44-echarts - kubix.jpg

                                    Laut wetter.com Wettervorhersage sind heute für hier für den ganzen Tag 5-7 km/h Wind vorhergesagt, das passt auch zu den Daten, die die Wetterstation liefert, die schwanken zwar etwas mehr, aber nie mehr als um die 10 km/h.
                                    Aber in den Upload-Daten ins wetter.com Netzwerk zeigt der Graph heute schon mehrmals über 20 km/h und im Durchschnitt vielleicht so um die 10 km/h an, das passt irgendwie nicht zusammen.
                                    Die anderen Werte wie Temp oder Luftfeuchte oder Luftdruck passen aber, so dass ich zumindest ausschließen kann, dass die Werte von jemand anderem kommen.

                                    da_WoodyD Offline
                                    da_WoodyD Offline
                                    da_Woody
                                    schrieb am zuletzt editiert von
                                    #3146

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

                                    Was heißt nehmen? Das macht ja alles das Skript.

                                    sorry, bin heute nicht ganz auf der höhe. hast ja recht.
                                    trotzdem kommt mir der grüne chart vor wie mit böen.

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

                                    1 Antwort Letzte Antwort
                                    0
                                    • NegaleinN Offline
                                      NegaleinN Offline
                                      Negalein
                                      Global Moderator
                                      schrieb am zuletzt editiert von
                                      #3147

                                      @viper4iob

                                      hab gerade bei mir nachgeschaut.

                                      Stimmt, auf Wetter.com werden hier falsche Werte angezeigt.

                                      Grafana (richtig)
                                      Wetterstation - Grafana.png

                                      Wetter.com (falsch)
                                      Wetterstation aus 4783 Wernstein   wetter.com.png

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

                                      V 1 Antwort Letzte Antwort
                                      1
                                      • NegaleinN Negalein

                                        @viper4iob

                                        hab gerade bei mir nachgeschaut.

                                        Stimmt, auf Wetter.com werden hier falsche Werte angezeigt.

                                        Grafana (richtig)
                                        Wetterstation - Grafana.png

                                        Wetter.com (falsch)
                                        Wetterstation aus 4783 Wernstein   wetter.com.png

                                        V Offline
                                        V Offline
                                        viper4iob
                                        schrieb am zuletzt editiert von viper4iob
                                        #3148

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

                                        @viper4iob

                                        hab gerade bei mir nachgeschaut.

                                        Stimmt, auf Wetter.com werden hier falsche Werte angezeigt.

                                        Grafana (richtig)
                                        Wetterstation - Grafana.png

                                        Wetter.com (falsch)
                                        Wetterstation aus 4783 Wernstein   wetter.com.png

                                        An Grafana habe ich vorhin gar nicht gedacht, das hätte ich auch liefern können 😉
                                        Da sieht man es auf jeden Fall nochmal deutlicher.
                                        Ich dachte vielleicht Wetter.com braucht den Wert in m/s, aber die Werte geteilt durch 3,6 wären dann vielleicht wieder zu wenig.

                                        1 Antwort Letzte Antwort
                                        0
                                        • V viper4iob

                                          @sborg
                                          Die openSenseMap Registrierung hat nun ohne Probleme funktioniert.
                                          Danke nochmal für den Fix.

                                          Noch eine Frage dazu: Falls später mal ein Sensor dazu kommt (z.B. ein Feinstaub Sensor), kann man das "Sensoren registrieren" einfach noch einmal aufrufen, oder muss man das dann manuell einpflegen?

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

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

                                          Noch eine Frage dazu: Falls später mal ein Sensor dazu kommt (z.B. ein Feinstaub Sensor), kann man das "Sensoren registrieren" einfach noch einmal aufrufen, oder muss man das dann manuell einpflegen?

                                          Das geht nur manuell. Die anderen Werte bzw. IDs sind statisch. So ist bspw. "1" immer die Außentemperatur. Die IDs der Zusatzsensoren sind aber dynamisch, je nach dem was der User so alles hat und wann sie sich melden. Dazu müsste ich höchstens noch ein Array anlegen mit den Bezeichnungen um darüber dann zweifelsfrei die ID automatisch zu ermitteln.
                                          Da kommen wir dann aber zu einem bereits hier im Thread schon öfters (ne, es braucht hier keiner >3k Posts zu lesen ;) ) erwähntem "Problemchen": geht nicht davon aus, dass mir selbst alles auffällt. Da brauche ich schon Hilfe/Input von euch. Vieles (wie Zusatzsensoren) habe ich schlichtweg einfach nicht oder anderes nutze ich nicht selbst (zB. ein Userwunsch). Deswegen wäre obige Funktion meinerseits schon fragwürdig, weil ich da mal nix vorher testen kann. Neue Sensoren kann ich dank der Datenstrings einfach mal so einpatchen und simulieren als ob ich einen hätte (ändert natürlich dann nie seine Werte ;) ).

                                          Genauso verhält es sich mit der Windstärke bei wetter.com. Ich schick da zwar die Daten hin, aber eigentlich nur um auch zu sehen ob alles funktioniert. Wenn natürlich jemand mit den Daten was anfangen kann, um so besser :)
                                          Es gibt nirgends eine Beschreibung zur API. Dass sie zur "Winterzeit" pauschal einfach eine Stunde abziehen ist mir auch nur zufällig aufgefallen. Ich bin, da die Anzeige der Seite es auch so ausgibt, davon ausgegangen, dass sie es als km/h wollen. Ev. sollen es aber Knoten, Beaufort oder what else sein...?
                                          Bei den anderen APIs habe ich Infos dazu bzw. kann ich dort eine Einheit angeben. Ich habe jetzt mal den Support von wetter.com angeschrieben ob sie mir eine Dokumentation freundlicherweise zukommen lassen können.

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

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          763

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          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