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. setStateDelayed - Fragen zur Funktion

NEWS

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

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    12
    1
    572

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.8k

setStateDelayed - Fragen zur Funktion

Geplant Angeheftet Gesperrt Verschoben JavaScript
16 Beiträge 3 Kommentatoren 535 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.
  • L Laser

    @paul53 Ja, das merke ich. Und wie schalte ich wieder aus? Hatte gehofft, das passiert mit dem "false"

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

    @laser sagte: wie schalte ich wieder aus?

    Was soll wann wieder ausgeschaltet werden? GPIO22 oder "power_on"?

    @laser sagte in setStateDelayed - Fragen zur Funktion:

    Hatte gehofft, das passiert mit dem "false"

    Das false hinter der Verzögerungszeit bedeutet, dass der Timer bei erneutem Aufruf nicht gestoppt wird.

    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

    L 1 Antwort Letzte Antwort
    0
    • paul53P paul53

      @laser sagte: wie schalte ich wieder aus?

      Was soll wann wieder ausgeschaltet werden? GPIO22 oder "power_on"?

      @laser sagte in setStateDelayed - Fragen zur Funktion:

      Hatte gehofft, das passiert mit dem "false"

      Das false hinter der Verzögerungszeit bedeutet, dass der Timer bei erneutem Aufruf nicht gestoppt wird.

      L Offline
      L Offline
      Laser
      schrieb am zuletzt editiert von
      #7

      @paul53
      power_on

      paul53P 1 Antwort Letzte Antwort
      0
      • L Laser

        @paul53
        power_on

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

        @laser
        Wenn "power_on" verzögert ausgeschaltet werden soll, muss false (anstelle von true) vor der Verzögerungszeit verwendet werden.

            setStateDelayed('opendtu.1.114184537824.power_control.power_on'/**/, false, 2000, false, function() {
                console.log("aus")
            }); 
        

        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

        L 1 Antwort Letzte Antwort
        0
        • paul53P paul53

          @laser
          Wenn "power_on" verzögert ausgeschaltet werden soll, muss false (anstelle von true) vor der Verzögerungszeit verwendet werden.

              setStateDelayed('opendtu.1.114184537824.power_control.power_on'/**/, false, 2000, false, function() {
                  console.log("aus")
              }); 
          
          L Offline
          L Offline
          Laser
          schrieb am zuletzt editiert von Laser
          #9

          @paul53 versuche es jetzt so:

          function einschalten() {
              setState('rpi2.0.gpio.22.state'/**/,true);  //  true ist einschalten Relais
              setState('opendtu.1.114184537824.power_control.power_on'/*Start the inverter*/,true); 
              setStateDelayed('opendtu.1.114184537824.power_control.power_on'/*Start the inverter*/,false,6000); 
          };  // Ende einschalten
          

          EDIT: das ging so schnell, daß ich es in "Objekte" nicht gesehen habe. Bin jetzt auf 6000 gegangen.

          L 1 Antwort Letzte Antwort
          0
          • L Laser

            @paul53 versuche es jetzt so:

            function einschalten() {
                setState('rpi2.0.gpio.22.state'/**/,true);  //  true ist einschalten Relais
                setState('opendtu.1.114184537824.power_control.power_on'/*Start the inverter*/,true); 
                setStateDelayed('opendtu.1.114184537824.power_control.power_on'/*Start the inverter*/,false,6000); 
            };  // Ende einschalten
            

            EDIT: das ging so schnell, daß ich es in "Objekte" nicht gesehen habe. Bin jetzt auf 6000 gegangen.

            L Offline
            L Offline
            Laser
            schrieb am zuletzt editiert von Laser
            #10

            @paul53 zweimal "delayed" geht wohl nicht? Nach Einschalten über Relais muß der Inverter erst hochlaufen...
            und: gibt es einen Höchstwert für Delay?

            function einschalten() {
              //  setState('rpi2.0.gpio.22.state'/**/,true);  //  true ist einschalten Relais
                setStateDelayed('opendtu.1.114184537824.power_control.power_on'/**/,true,5000); 
                setStateDelayed('opendtu.1.114184537824.power_control.power_on'/*Start the inverter*/,false,8000); 
            };  // Ende einschalten
            
            paul53P 1 Antwort Letzte Antwort
            0
            • L Laser

              @paul53 zweimal "delayed" geht wohl nicht? Nach Einschalten über Relais muß der Inverter erst hochlaufen...
              und: gibt es einen Höchstwert für Delay?

              function einschalten() {
                //  setState('rpi2.0.gpio.22.state'/**/,true);  //  true ist einschalten Relais
                  setStateDelayed('opendtu.1.114184537824.power_control.power_on'/**/,true,5000); 
                  setStateDelayed('opendtu.1.114184537824.power_control.power_on'/*Start the inverter*/,false,8000); 
              };  // Ende einschalten
              
              paul53P Offline
              paul53P Offline
              paul53
              schrieb am zuletzt editiert von
              #11

              @laser sagte: zweimal "delayed" geht wohl nicht?

              Sollte funktionieren. Ich würde allerdings setTimeout() bevorzugen.

              @laser sagte in setStateDelayed - Fragen zur Funktion:

              gibt es einen Höchstwert für Delay?

              Ja, der ist aber sehr hoch.

              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

              L 1 Antwort Letzte Antwort
              0
              • paul53P paul53

                @laser sagte: zweimal "delayed" geht wohl nicht?

                Sollte funktionieren. Ich würde allerdings setTimeout() bevorzugen.

                @laser sagte in setStateDelayed - Fragen zur Funktion:

                gibt es einen Höchstwert für Delay?

                Ja, der ist aber sehr hoch.

                L Offline
                L Offline
                Laser
                schrieb am zuletzt editiert von Laser
                #12

                @paul53 das setzen funktioniert nicht. Erst wenn ich das zweite "setstateDelayed" auskommentiere, wird gesetzt nach Ablauf der Zeit. "setTimeout" muß ich mir ansehen.

                
                function einschalten() {
                  //  setState('rpi2.0.gpio.22.state'/**/,true);  //  true ist einschalten Relais
                    setStateDelayed('opendtu.1.114184537824.power_control.power_on'/**/,true,5000); 
                 // setStateDelayed('opendtu.1.114184537824.power_control.power_on'/*Start the inverter*/,false,8000); 
                };  // Ende einschalten
                
                paul53P 1 Antwort Letzte Antwort
                0
                • L Laser

                  @paul53 das setzen funktioniert nicht. Erst wenn ich das zweite "setstateDelayed" auskommentiere, wird gesetzt nach Ablauf der Zeit. "setTimeout" muß ich mir ansehen.

                  
                  function einschalten() {
                    //  setState('rpi2.0.gpio.22.state'/**/,true);  //  true ist einschalten Relais
                      setStateDelayed('opendtu.1.114184537824.power_control.power_on'/**/,true,5000); 
                   // setStateDelayed('opendtu.1.114184537824.power_control.power_on'/*Start the inverter*/,false,8000); 
                  };  // Ende einschalten
                  
                  paul53P Offline
                  paul53P Offline
                  paul53
                  schrieb am zuletzt editiert von paul53
                  #13

                  @laser sagte: "setTimeout" muß ich mir ansehen.

                  function einschalten() {
                      setState('rpi2.0.gpio.22.state'/**/,true);  //  true ist einschalten Relais
                      setTimeout(function() {
                          setState('opendtu.1.114184537824.power_control.power_on'/**/, true); 
                          setStateDelayed('opendtu.1.114184537824.power_control.power_on', false, 3000); // 3 s Impuls
                      }, 5000); // 5 s Hochlauf
                  }; // Ende einschalten
                  

                  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

                  L 1 Antwort Letzte Antwort
                  1
                  • paul53P paul53

                    @laser sagte: "setTimeout" muß ich mir ansehen.

                    function einschalten() {
                        setState('rpi2.0.gpio.22.state'/**/,true);  //  true ist einschalten Relais
                        setTimeout(function() {
                            setState('opendtu.1.114184537824.power_control.power_on'/**/, true); 
                            setStateDelayed('opendtu.1.114184537824.power_control.power_on', false, 3000); // 3 s Impuls
                        }, 5000); // 5 s Hochlauf
                    }; // Ende einschalten
                    
                    L Offline
                    L Offline
                    Laser
                    schrieb am zuletzt editiert von Laser
                    #14

                    @paul53 Danke, das Absetzen der Impulse klappt so. Muß nur noch die Zeiten für den Inverter- Hochlauf hinbekommen, damit die Impulse auch wirken.
                    EDIT: Klappt auch mit dem Hochlauf abwarten... ,40000

                    L 1 Antwort Letzte Antwort
                    0
                    • L Laser

                      @paul53 Danke, das Absetzen der Impulse klappt so. Muß nur noch die Zeiten für den Inverter- Hochlauf hinbekommen, damit die Impulse auch wirken.
                      EDIT: Klappt auch mit dem Hochlauf abwarten... ,40000

                      L Offline
                      L Offline
                      Laser
                      schrieb am zuletzt editiert von Laser
                      #15

                      @paul53
                      irgendwelche Nebenwirkungen hat das aber nicht (Unterbrechen von JS- Abarbeitung für die timeout-Zeit?)

                      paul53P 1 Antwort Letzte Antwort
                      0
                      • L Laser

                        @paul53
                        irgendwelche Nebenwirkungen hat das aber nicht (Unterbrechen von JS- Abarbeitung für die timeout-Zeit?)

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

                        @laser sagte: Unterbrechen von JS- Abarbeitung für die timeout-Zeit?

                        Nein, setTimeout() wird asynchron ausgeführt.

                        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
                        Antworten
                        • In einem neuen Thema antworten
                        Anmelden zum Antworten
                        • Älteste zuerst
                        • Neuste zuerst
                        • Meiste Stimmen


                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        959

                        Online

                        32.5k

                        Benutzer

                        81.8k

                        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