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. Skripten / Logik
  4. JavaScript
  5. [gelöst] Manchmal geht es, manchmal nicht???

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.1k

[gelöst] Manchmal geht es, manchmal nicht???

Geplant Angeheftet Gesperrt Verschoben JavaScript
javascript
25 Beiträge 2 Kommentatoren 1.2k Aufrufe 1 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.
  • S skorpil

    @paul53 Empfehlung? Wie würdest Du es machen?

    paul53P Offline
    paul53P Offline
    paul53
    schrieb am zuletzt editiert von
    #16

    @skorpil sagte:

    Wie würdest Du es machen?

    Ich würde es in ein Skript packen.

    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

    1 Antwort Letzte Antwort
    1
    • S Offline
      S Offline
      skorpil
      schrieb am zuletzt editiert von
      #17

      @paul53

      ich schon wieder... Folgende Frage:

      ich habe einen Datenpunkt, Typ String aus openweathermap

      var idWindGeschw = 'openweathermap.0.forecast.current.windSpeed'/*Forecast for wind speed*/;
      var idWindGeschwWert = idWindGeschw.state;
      

      Ich möchte in der Variablen"idWindGeschwWert " den INHALT des Datenpunktes, also den Wert, zuweisen. Und daran scheitere ich immer wieder. Weder mit ".state" noch mit ".val" noch mit ".state.val" bekomme ich das gewünschte Ergebnis. Ich produziere Fehlermeldungen.

      Was mache ich falsch? Das Problem habe ich quasi immer wieder. Ich begreife einfach nicht, wie ich der Variablen "idWindGeschwWert "den Inhalt/ Wert zuweise. Bitte um Erklärung.

      Dankeschön.

      paul53P 1 Antwort Letzte Antwort
      0
      • S skorpil

        @paul53

        ich schon wieder... Folgende Frage:

        ich habe einen Datenpunkt, Typ String aus openweathermap

        var idWindGeschw = 'openweathermap.0.forecast.current.windSpeed'/*Forecast for wind speed*/;
        var idWindGeschwWert = idWindGeschw.state;
        

        Ich möchte in der Variablen"idWindGeschwWert " den INHALT des Datenpunktes, also den Wert, zuweisen. Und daran scheitere ich immer wieder. Weder mit ".state" noch mit ".val" noch mit ".state.val" bekomme ich das gewünschte Ergebnis. Ich produziere Fehlermeldungen.

        Was mache ich falsch? Das Problem habe ich quasi immer wieder. Ich begreife einfach nicht, wie ich der Variablen "idWindGeschwWert "den Inhalt/ Wert zuweise. Bitte um Erklärung.

        Dankeschön.

        paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von paul53
        #18

        @skorpil sagte:

        wie ich der Variablen "idWindGeschwWert "den Inhalt/ Wert zuweise.

        getState(id).val

        const idWindGeschw = 'openweathermap.0.forecast.current.windSpeed'/*Forecast for wind speed*/;
        var WindGeschwWert = getState(idWindGeschw).val; // Initialisierung bei Script start
        
        on(idWindGeschw, function(dp) { // triggert bei Wertänderung
           WindGeschwWert = dp.state.val;
           // Auswertung der Variablen
        });
        

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        S 2 Antworten Letzte Antwort
        0
        • paul53P paul53

          @skorpil sagte:

          wie ich der Variablen "idWindGeschwWert "den Inhalt/ Wert zuweise.

          getState(id).val

          const idWindGeschw = 'openweathermap.0.forecast.current.windSpeed'/*Forecast for wind speed*/;
          var WindGeschwWert = getState(idWindGeschw).val; // Initialisierung bei Script start
          
          on(idWindGeschw, function(dp) { // triggert bei Wertänderung
             WindGeschwWert = dp.state.val;
             // Auswertung der Variablen
          });
          
          S Offline
          S Offline
          skorpil
          schrieb am zuletzt editiert von
          #19

          @paul53

          Danke. getState. Klar Ich hätte es wissen müssen.

          1 Antwort Letzte Antwort
          0
          • paul53P paul53

            @skorpil sagte:

            wie ich der Variablen "idWindGeschwWert "den Inhalt/ Wert zuweise.

            getState(id).val

            const idWindGeschw = 'openweathermap.0.forecast.current.windSpeed'/*Forecast for wind speed*/;
            var WindGeschwWert = getState(idWindGeschw).val; // Initialisierung bei Script start
            
            on(idWindGeschw, function(dp) { // triggert bei Wertänderung
               WindGeschwWert = dp.state.val;
               // Auswertung der Variablen
            });
            
            S Offline
            S Offline
            skorpil
            schrieb am zuletzt editiert von
            #20

            @paul53

            ...und nochmal ich...

            In dem schon mehrfach diskutierten Skript habe ich mir timeouts eingebaut. Was ich erreichen will:

            die drei Teile des Skripts sollen in einer bestimmten zeitlichen Reihenfolge ausgeführt werden:

            on(idBM, function(dp) {
               if(dp.state.val && compareTime('6:00', '10:00', 'between') && !aufstehen) {
                  aufstehen = true;
                
            
                setTimeout(function() {
            
                // ************************************************
                //  nach 12 Sekunden starten
                // ************************************************
            
               Script  Teil 1
            
            
               }, 12000);
               // Ende timeout/ Verzögerung
            
            
            setTimeout(function() {
                // ************************************************
                //  nach 45 Sekunden starten
                // ************************************************
            
            Script  Teil 2
            
             }, 45000);
               // Ende timeout für Start
            
            setTimeout(function() {
                // ************************************************
                // Befehl zum stop nach 45 Minuten
                // ************************************************
            
            Script  Teil 3
            
            }, 2700000);
            // Ende timeout für Stop
            
            
               }
               // Ende If
               
            });
            

            Der erste Teil nach 12 Sekunden, der zweite Teil des Skripts nach 45 Sekunden, der dritte Teil nach 45 Minuten.

            Ich kann das ja wg. der On Anweisung immer nur einmal morgens testen. Und heute morgen mindestens klappte Teil 1 des Skripts nicht.

            Ist das so richtig?
            Oder sollte ich das besser in drei verschiedenen Skripten abbilden?

            paul53P 1 Antwort Letzte Antwort
            0
            • S skorpil

              @paul53

              ...und nochmal ich...

              In dem schon mehrfach diskutierten Skript habe ich mir timeouts eingebaut. Was ich erreichen will:

              die drei Teile des Skripts sollen in einer bestimmten zeitlichen Reihenfolge ausgeführt werden:

              on(idBM, function(dp) {
                 if(dp.state.val && compareTime('6:00', '10:00', 'between') && !aufstehen) {
                    aufstehen = true;
                  
              
                  setTimeout(function() {
              
                  // ************************************************
                  //  nach 12 Sekunden starten
                  // ************************************************
              
                 Script  Teil 1
              
              
                 }, 12000);
                 // Ende timeout/ Verzögerung
              
              
              setTimeout(function() {
                  // ************************************************
                  //  nach 45 Sekunden starten
                  // ************************************************
              
              Script  Teil 2
              
               }, 45000);
                 // Ende timeout für Start
              
              setTimeout(function() {
                  // ************************************************
                  // Befehl zum stop nach 45 Minuten
                  // ************************************************
              
              Script  Teil 3
              
              }, 2700000);
              // Ende timeout für Stop
              
              
                 }
                 // Ende If
                 
              });
              

              Der erste Teil nach 12 Sekunden, der zweite Teil des Skripts nach 45 Sekunden, der dritte Teil nach 45 Minuten.

              Ich kann das ja wg. der On Anweisung immer nur einmal morgens testen. Und heute morgen mindestens klappte Teil 1 des Skripts nicht.

              Ist das so richtig?
              Oder sollte ich das besser in drei verschiedenen Skripten abbilden?

              paul53P Offline
              paul53P Offline
              paul53
              schrieb am zuletzt editiert von
              #21

              @skorpil
              Das Rücksetzen der Variable aufstehen ist vorhanden ?

              schedule('0 3 * * *', function() {
                 aufstehen = false;
              });
              

              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
              Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

              S 3 Antworten Letzte Antwort
              0
              • paul53P paul53

                @skorpil
                Das Rücksetzen der Variable aufstehen ist vorhanden ?

                schedule('0 3 * * *', function() {
                   aufstehen = false;
                });
                
                S Offline
                S Offline
                skorpil
                schrieb am zuletzt editiert von
                #22

                @paul53 ja

                1 Antwort Letzte Antwort
                0
                • paul53P paul53

                  @skorpil
                  Das Rücksetzen der Variable aufstehen ist vorhanden ?

                  schedule('0 3 * * *', function() {
                     aufstehen = false;
                  });
                  
                  S Offline
                  S Offline
                  skorpil
                  schrieb am zuletzt editiert von
                  #23

                  @paul53

                  Nochmal zurück zu meiner Frage: ist das Skript von Grundsatz her so richtig?

                  paul53P 1 Antwort Letzte Antwort
                  0
                  • S skorpil

                    @paul53

                    Nochmal zurück zu meiner Frage: ist das Skript von Grundsatz her so richtig?

                    paul53P Offline
                    paul53P Offline
                    paul53
                    schrieb am zuletzt editiert von paul53
                    #24

                    @skorpil sagte:

                    ist das Skript von Grundsatz her so richtig?

                    Ja, zusammen mit dem Rücksetzen von aufstehen.

                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                    1 Antwort Letzte Antwort
                    0
                    • paul53P paul53

                      @skorpil
                      Das Rücksetzen der Variable aufstehen ist vorhanden ?

                      schedule('0 3 * * *', function() {
                         aufstehen = false;
                      });
                      
                      S Offline
                      S Offline
                      skorpil
                      schrieb am zuletzt editiert von
                      #25

                      @paul53

                      Könntest Du Dir mal diese Fehlermeldung ansehen und mir sagen, was da falsch läuft?

                      Link Text

                      Ich verstehe diese Fehlermeldungen nicht.

                      Danke u. frohe Pfingsten

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


                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      407

                      Online

                      32.6k

                      Benutzer

                      82.1k

                      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