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. Hilfe bei Skript

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.0k

Hilfe bei Skript

Geplant Angeheftet Gesperrt Verschoben JavaScript
javascript
21 Beiträge 3 Kommentatoren 1.3k Aufrufe 2 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.
  • Dominik F.D Dominik F.

    @paul53

    Habe die Fehler glaube ich gefunden, so dass im log nix mehr angezeigt wird.
    Wie kann ich nun testen ob alles funktioniert? Ich hab die Werte mal auf 600 gestellt aber es wird nix geschaltet

    const id_Power_Poolpumpe = 'hm-rpc.0.OEQ0572933.2.POWER'/*Steckdose Poolpumpe Garage Messwert POWER*/;
    const id_Poolpumpe = 'hm-rpc.0.OEQ0572933.1.STATE'/*Steckdose Poolpumpe Garage STATE*/;
    
    var timer = null;
    
    on(id_Power_Poolpumpe, function (dp) {
        if (dp.state.val < 600) {
            if (dp.oldState.val >= 600) {
                timer = setTimeout(function () {
                    setState(id_Poolpumpe, false);
                }, 10000);
            }
            else if (timer) clearTimeout(timer);
        }
    });
    
    
    paul53P Offline
    paul53P Offline
    paul53
    schrieb am zuletzt editiert von paul53
    #11

    @Dominik-F sagte:

    Ich hab die Werte mal auf 600 gestellt aber es wird nix geschaltet

    Kann auch nicht, denn der Wert müsste erst über 600 gehen, damit beim Zurückgehen unter 600 abgeschaltet wird.
    Die Pumpe wird abgeschaltet, wenn der Wert den Grenzwert(500) erstmalig unterschreitet und innerhalb von 10 s unterhalb des Grenzwertes bleibt.

    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

    Dominik F.D 1 Antwort Letzte Antwort
    0
    • paul53P paul53

      @Dominik-F sagte:

      Ich hab die Werte mal auf 600 gestellt aber es wird nix geschaltet

      Kann auch nicht, denn der Wert müsste erst über 600 gehen, damit beim Zurückgehen unter 600 abgeschaltet wird.
      Die Pumpe wird abgeschaltet, wenn der Wert den Grenzwert(500) erstmalig unterschreitet und innerhalb von 10 s unterhalb des Grenzwertes bleibt.

      Dominik F.D Offline
      Dominik F.D Offline
      Dominik F.
      schrieb am zuletzt editiert von
      #12

      @paul53

      Okay, das ist genau das was ich möchte. Was muss ich denn einstellen, damit er zu testzwecken abschaltet? oder muss ich dafür die Pumpe einmal kein Wasser ziehen lassen?

      paul53P 1 Antwort Letzte Antwort
      0
      • Dominik F.D Dominik F.

        @paul53

        Okay, das ist genau das was ich möchte. Was muss ich denn einstellen, damit er zu testzwecken abschaltet? oder muss ich dafür die Pumpe einmal kein Wasser ziehen lassen?

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

        @Dominik-F sagte:

        muss ich dafür die Pumpe einmal kein Wasser ziehen lassen?

        Das ist der beste Test, denn zu diesem Zweck soll es dienen.

        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

        Dominik F.D 1 Antwort Letzte Antwort
        0
        • paul53P paul53

          @Dominik-F sagte:

          muss ich dafür die Pumpe einmal kein Wasser ziehen lassen?

          Das ist der beste Test, denn zu diesem Zweck soll es dienen.

          Dominik F.D Offline
          Dominik F.D Offline
          Dominik F.
          schrieb am zuletzt editiert von
          #14

          @paul53

          Mir ist gerade aufgefallen, dass die Pumpe immer ausgeschaltet wird obwohl sie Wasser zieht und Power über 500 W war

          1 Antwort Letzte Antwort
          0
          • Dominik F.D Dominik F.

            @paul53

            Habe die Fehler glaube ich gefunden, so dass im log nix mehr angezeigt wird.
            Wie kann ich nun testen ob alles funktioniert? Ich hab die Werte mal auf 600 gestellt aber es wird nix geschaltet

            const id_Power_Poolpumpe = 'hm-rpc.0.OEQ0572933.2.POWER'/*Steckdose Poolpumpe Garage Messwert POWER*/;
            const id_Poolpumpe = 'hm-rpc.0.OEQ0572933.1.STATE'/*Steckdose Poolpumpe Garage STATE*/;
            
            var timer = null;
            
            on(id_Power_Poolpumpe, function (dp) {
                if (dp.state.val < 600) {
                    if (dp.oldState.val >= 600) {
                        timer = setTimeout(function () {
                            setState(id_Poolpumpe, false);
                        }, 10000);
                    }
                    else if (timer) clearTimeout(timer);
                }
            });
            
            
            paul53P Offline
            paul53P Offline
            paul53
            schrieb am zuletzt editiert von
            #15

            @Dominik-F sagte:

                    else if (timer) clearTimeout(timer);
                }
            

            Richtig (Zeile 13 und 14 vertauschen):

                }
                else if (timer) clearTimeout(timer);
            

            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

            Dominik F.D 2 Antworten Letzte Antwort
            0
            • paul53P paul53

              @Dominik-F sagte:

                      else if (timer) clearTimeout(timer);
                  }
              

              Richtig (Zeile 13 und 14 vertauschen):

                  }
                  else if (timer) clearTimeout(timer);
              
              Dominik F.D Offline
              Dominik F.D Offline
              Dominik F.
              schrieb am zuletzt editiert von
              #16

              @paul53

              alles klar. ich werde es gleich mal testen und dann Rückmeldung geben. Vielen Dank schonmal.

              1 Antwort Letzte Antwort
              0
              • paul53P paul53

                @Dominik-F sagte:

                        else if (timer) clearTimeout(timer);
                    }
                

                Richtig (Zeile 13 und 14 vertauschen):

                    }
                    else if (timer) clearTimeout(timer);
                
                Dominik F.D Offline
                Dominik F.D Offline
                Dominik F.
                schrieb am zuletzt editiert von Dominik F.
                #17

                @paul53

                Das Skript funktioniert soweit. Wenn man nun die Poolpumpe manuell ausschaltet, dann geht ja logischerweise die Leistung auf 0 und das Skript schaltet die Poolpumpe "nochmal" aus und gibt im Log aus, dass die Pumpe überprüft werden soll.
                Ich möchte später noch Pushnachrichten zu dem Skript hinzufügen (Sollte ich eigentlich selber hinbekommen) und das würde dann zur Verwirrung führen wenn ich 3 mal am Tag ne Nachricht bekomme das etwas mit der Pumpe nicht stimmt. Hast du ne Idee wie man das Problem lösen kann?

                Hier die aktuelle Version:

                const logging = true;
                const id_Power_Poolpumpe = 'hm-rpc.0.OEQ0572933.2.POWER'/*Steckdose Poolpumpe Garage Messwert POWER*/;
                const id_Poolpumpe = 'hm-rpc.0.OEQ0572933.1.STATE'/*Steckdose Poolpumpe Garage STATE*/;
                
                var timer = null;
                
                on(id_Power_Poolpumpe, function (dp) {
                    if (dp.state.val < 500) {
                        if (dp.oldState.val >= 500) {
                            timer = setTimeout(function () {
                                setState(id_Poolpumpe, false);
                                if (logging) { log('Poolpumpe ausgeschaltet - Poolpumpe überprüfen') };
                            }, 10000);
                        }
                    }
                    else if (timer) clearTimeout(timer);
                
                });
                
                
                paul53P 1 Antwort Letzte Antwort
                0
                • Dominik F.D Dominik F.

                  @paul53

                  Das Skript funktioniert soweit. Wenn man nun die Poolpumpe manuell ausschaltet, dann geht ja logischerweise die Leistung auf 0 und das Skript schaltet die Poolpumpe "nochmal" aus und gibt im Log aus, dass die Pumpe überprüft werden soll.
                  Ich möchte später noch Pushnachrichten zu dem Skript hinzufügen (Sollte ich eigentlich selber hinbekommen) und das würde dann zur Verwirrung führen wenn ich 3 mal am Tag ne Nachricht bekomme das etwas mit der Pumpe nicht stimmt. Hast du ne Idee wie man das Problem lösen kann?

                  Hier die aktuelle Version:

                  const logging = true;
                  const id_Power_Poolpumpe = 'hm-rpc.0.OEQ0572933.2.POWER'/*Steckdose Poolpumpe Garage Messwert POWER*/;
                  const id_Poolpumpe = 'hm-rpc.0.OEQ0572933.1.STATE'/*Steckdose Poolpumpe Garage STATE*/;
                  
                  var timer = null;
                  
                  on(id_Power_Poolpumpe, function (dp) {
                      if (dp.state.val < 500) {
                          if (dp.oldState.val >= 500) {
                              timer = setTimeout(function () {
                                  setState(id_Poolpumpe, false);
                                  if (logging) { log('Poolpumpe ausgeschaltet - Poolpumpe überprüfen') };
                              }, 10000);
                          }
                      }
                      else if (timer) clearTimeout(timer);
                  
                  });
                  
                  
                  paul53P Offline
                  paul53P Offline
                  paul53
                  schrieb am zuletzt editiert von paul53
                  #18

                  @Dominik-F sagte in Hilfe bei Skript:

                  Hast du ne Idee wie man das Problem lösen kann?

                  Es wir hoffentlich nicht 3 mal am Tag durch ein Script ausgeschaltet ?

                  const logging = true; 
                  const id_Power_Poolpumpe = 'hm-rpc.0.OEQ0572933.2.POWER'/*Steckdose Poolpumpe Garage Messwert POWER*/;
                  const id_Poolpumpe = 'hm-rpc.0.OEQ0572933.1.STATE'/*Steckdose Poolpumpe Garage STATE*/;
                  
                  var timer = null;
                   
                  on(id_Power_Poolpumpe, function (dp) {
                      if (dp.state.val < 500) {
                          if (dp.oldState.val >= 500) {
                              timer = setTimeout(function () {
                                  setState(id_Poolpumpe, false);
                              }, 10000);
                          }
                      } else if (timer) clearTimeout(timer);
                  });
                  
                  on({id: id_Poolpumpe, change: 'lt', from: 'system.adapter.javascript.0'}, function() { // triggert beim Ausschalten
                      if (logging) log('Poolpumpe ausgeschaltet - Poolpumpe überprüfen');
                  });
                  

                  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

                  Dominik F.D 1 Antwort Letzte Antwort
                  0
                  • paul53P paul53

                    @Dominik-F sagte in Hilfe bei Skript:

                    Hast du ne Idee wie man das Problem lösen kann?

                    Es wir hoffentlich nicht 3 mal am Tag durch ein Script ausgeschaltet ?

                    const logging = true; 
                    const id_Power_Poolpumpe = 'hm-rpc.0.OEQ0572933.2.POWER'/*Steckdose Poolpumpe Garage Messwert POWER*/;
                    const id_Poolpumpe = 'hm-rpc.0.OEQ0572933.1.STATE'/*Steckdose Poolpumpe Garage STATE*/;
                    
                    var timer = null;
                     
                    on(id_Power_Poolpumpe, function (dp) {
                        if (dp.state.val < 500) {
                            if (dp.oldState.val >= 500) {
                                timer = setTimeout(function () {
                                    setState(id_Poolpumpe, false);
                                }, 10000);
                            }
                        } else if (timer) clearTimeout(timer);
                    });
                    
                    on({id: id_Poolpumpe, change: 'lt', from: 'system.adapter.javascript.0'}, function() { // triggert beim Ausschalten
                        if (logging) log('Poolpumpe ausgeschaltet - Poolpumpe überprüfen');
                    });
                    
                    Dominik F.D Offline
                    Dominik F.D Offline
                    Dominik F.
                    schrieb am zuletzt editiert von
                    #19

                    @paul53 sagte in Hilfe bei Skript:

                    Es wir hoffentlich nicht 3 mal am Tag durch ein Script ausgeschaltet ?

                    Doch, genau das wird es :D Die Pumpe läuft 3 mal pro Tag für 2h

                    paul53P 1 Antwort Letzte Antwort
                    0
                    • Dominik F.D Dominik F.

                      @paul53 sagte in Hilfe bei Skript:

                      Es wir hoffentlich nicht 3 mal am Tag durch ein Script ausgeschaltet ?

                      Doch, genau das wird es :D Die Pumpe läuft 3 mal pro Tag für 2h

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

                      @Dominik-F sagte:

                      Doch, genau das wird es

                      Dann anders.

                      const logging = true; 
                      const id_Power_Poolpumpe = 'hm-rpc.0.OEQ0572933.2.POWER'/*Steckdose Poolpumpe Garage Messwert POWER*/;
                      const id_Poolpumpe = 'hm-rpc.0.OEQ0572933.1.STATE'/*Steckdose Poolpumpe Garage STATE*/;
                       
                      var timer = null;
                       
                      on(id_Power_Poolpumpe, function (dp) {
                          if (dp.state.val < 500) {
                              if (dp.oldState.val >= 500) {
                                  timer = setTimeout(function () {
                                      if(getState(id_Poolpumpe).val) {
                                          setState(id_Poolpumpe, false);
                                          if (logging) log('Poolpumpe ausgeschaltet - Poolpumpe überprüfen');
                                      }
                                  }, 10000);
                              }
                          } else if (timer) clearTimeout(timer);
                      });
                      

                      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

                      Dominik F.D 1 Antwort Letzte Antwort
                      0
                      • paul53P paul53

                        @Dominik-F sagte:

                        Doch, genau das wird es

                        Dann anders.

                        const logging = true; 
                        const id_Power_Poolpumpe = 'hm-rpc.0.OEQ0572933.2.POWER'/*Steckdose Poolpumpe Garage Messwert POWER*/;
                        const id_Poolpumpe = 'hm-rpc.0.OEQ0572933.1.STATE'/*Steckdose Poolpumpe Garage STATE*/;
                         
                        var timer = null;
                         
                        on(id_Power_Poolpumpe, function (dp) {
                            if (dp.state.val < 500) {
                                if (dp.oldState.val >= 500) {
                                    timer = setTimeout(function () {
                                        if(getState(id_Poolpumpe).val) {
                                            setState(id_Poolpumpe, false);
                                            if (logging) log('Poolpumpe ausgeschaltet - Poolpumpe überprüfen');
                                        }
                                    }, 10000);
                                }
                            } else if (timer) clearTimeout(timer);
                        });
                        
                        Dominik F.D Offline
                        Dominik F.D Offline
                        Dominik F.
                        schrieb am zuletzt editiert von
                        #21

                        @paul53

                        Vielen Dank, ich werde es morgen testen

                        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

                        877

                        Online

                        32.6k

                        Benutzer

                        82.0k

                        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