Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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] Alle X Min. einen Datenpunkt von false auf true

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    696

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

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

[Gelöst] Alle X Min. einen Datenpunkt von false auf true

Geplant Angeheftet Gesperrt Verschoben JavaScript
8 Beiträge 4 Kommentatoren 553 Aufrufe 3 Beobachtet
  • Ä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.
  • H Offline
    H Offline
    hagst
    schrieb am zuletzt editiert von hagst
    #1

    Hallo,

    ich habe einen Datenpunkt, den ich alle x Minuten von false wieder auf true setzen möchte.

    Wie kann ich das mit js anstellen? Irgendwie versteh ich mal wieder gar nix. Hat vielleicht jemand das Schnipsel für mich?

    ham.0.Micro.Switch.On false soll dann auf true gesetzt werden.

    O VumerV 2 Antworten Letzte Antwort
    0
    • H hagst

      Hallo,

      ich habe einen Datenpunkt, den ich alle x Minuten von false wieder auf true setzen möchte.

      Wie kann ich das mit js anstellen? Irgendwie versteh ich mal wieder gar nix. Hat vielleicht jemand das Schnipsel für mich?

      ham.0.Micro.Switch.On false soll dann auf true gesetzt werden.

      O Abwesend
      O Abwesend
      oFbEQnpoLKKl6mbY5e13
      schrieb am zuletzt editiert von oFbEQnpoLKKl6mbY5e13
      #2

      @hagst

      schedule("*/3 * * * *", async function () {
        setState("ham.0.Micro.Switch.On"/*On*/, true);
      });
      
      H 2 Antworten Letzte Antwort
      0
      • H hagst

        Hallo,

        ich habe einen Datenpunkt, den ich alle x Minuten von false wieder auf true setzen möchte.

        Wie kann ich das mit js anstellen? Irgendwie versteh ich mal wieder gar nix. Hat vielleicht jemand das Schnipsel für mich?

        ham.0.Micro.Switch.On false soll dann auf true gesetzt werden.

        VumerV Offline
        VumerV Offline
        Vumer
        schrieb am zuletzt editiert von
        #3

        @hagst
        9f015dae-f856-46d3-bfa1-c6fe277daeba-grafik.png

        1 Antwort Letzte Antwort
        0
        • O oFbEQnpoLKKl6mbY5e13

          @hagst

          schedule("*/3 * * * *", async function () {
            setState("ham.0.Micro.Switch.On"/*On*/, true);
          });
          
          H Offline
          H Offline
          hagst
          schrieb am zuletzt editiert von
          #4

          @ofbeqnpolkkl6mby5e13

          Vielen herzlichen Dank, genau das habe ich gebraucht.

          1 Antwort Letzte Antwort
          1
          • O oFbEQnpoLKKl6mbY5e13

            @hagst

            schedule("*/3 * * * *", async function () {
              setState("ham.0.Micro.Switch.On"/*On*/, true);
            });
            
            H Offline
            H Offline
            hagst
            schrieb am zuletzt editiert von hagst
            #5

            @ofbeqnpolkkl6mby5e13
            Eine Frage habe ich noch. Wenn der Datenpunkt auf true gesetzt wurde, und ein anderer Datenpunkt einen Wert von z.B. 500 oder mehr weniger anzeigt, dass dann der Datenpunkt welcher vorher auf true gesetzt worden ist, sofort wieder auf false gesetzt wird?

            Z.B.
            ham.0.Micro.Switch.On wird geändert auf true.
            30 Sekunden warten
            0_userdata.ANALOG_A0 gibt einen Wert von z.B. 500 oder weniger aus
            ham.0.Micro.Switch.On wird wieder auf false gesetzt, wenn der Wert 500 oder weniger anzeigt. Bei über 500 soll alles so bleiben wie es ist.

            Die 30 Sekunden Wartezeit sind nötig, weil mit ham.0.Micro.Switch.On ein Sensor / Wemos D1 Mini gestartet wird und bis der hochgefahren und im Netz ist, dauert es etwas.

            Geht sowas?

            paul53P 1 Antwort Letzte Antwort
            0
            • H hagst

              @ofbeqnpolkkl6mby5e13
              Eine Frage habe ich noch. Wenn der Datenpunkt auf true gesetzt wurde, und ein anderer Datenpunkt einen Wert von z.B. 500 oder mehr weniger anzeigt, dass dann der Datenpunkt welcher vorher auf true gesetzt worden ist, sofort wieder auf false gesetzt wird?

              Z.B.
              ham.0.Micro.Switch.On wird geändert auf true.
              30 Sekunden warten
              0_userdata.ANALOG_A0 gibt einen Wert von z.B. 500 oder weniger aus
              ham.0.Micro.Switch.On wird wieder auf false gesetzt, wenn der Wert 500 oder weniger anzeigt. Bei über 500 soll alles so bleiben wie es ist.

              Die 30 Sekunden Wartezeit sind nötig, weil mit ham.0.Micro.Switch.On ein Sensor / Wemos D1 Mini gestartet wird und bis der hochgefahren und im Netz ist, dauert es etwas.

              Geht sowas?

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

              @hagst sagte: auf false gesetzt, wenn der Wert 500 oder weniger anzeigt.

              const idSwitch = 'ham.0.Micro.Switch.On';
              const idAnalog = '0_userdata.ANALOG_A0';
              
              var anlauf = null;
              
              schedule('*/2 * * * *', function() { // alle 2 Minuten
                  if(!getState(idSwitch).val) {
                      setState(idSwitch, true);
                      anlauf = setTimeout(function() {
                          anlauf = null;
                      }, 30000); // 30 s
                  }
              });
              
              on(idAnalog, function(dp) {
                  if(!anlauf && dp.state.val <= 500) {
                       setState(idSwitch, 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

              H 2 Antworten Letzte Antwort
              0
              • paul53P paul53

                @hagst sagte: auf false gesetzt, wenn der Wert 500 oder weniger anzeigt.

                const idSwitch = 'ham.0.Micro.Switch.On';
                const idAnalog = '0_userdata.ANALOG_A0';
                
                var anlauf = null;
                
                schedule('*/2 * * * *', function() { // alle 2 Minuten
                    if(!getState(idSwitch).val) {
                        setState(idSwitch, true);
                        anlauf = setTimeout(function() {
                            anlauf = null;
                        }, 30000); // 30 s
                    }
                });
                
                on(idAnalog, function(dp) {
                    if(!anlauf && dp.state.val <= 500) {
                         setState(idSwitch, false);
                    }
                });
                
                H Offline
                H Offline
                hagst
                schrieb am zuletzt editiert von hagst
                #7

                @paul53
                Vielen Dank Paul!

                Ich habe hier etwas an den Datenpunkten geändert und in Deinem Script angepasst:

                const idSwitch = 'ham.0.Micro-.Switch.On';
                const idAnalog = 'sonoff.0.Regensensor.ANALOG_A0';
                 
                var anlauf = null;
                 
                schedule('*/2 * * * *', function() { // alle 2 Minuten
                    if(!getState(idSwitch).val) {
                        setState(idSwitch, true);
                        anlauf = setTimeout(function() {
                            anlauf = null;
                        }, 30000); // 30 s
                    }
                });
                 
                on(idAnalog, function(dp) {
                    if(!anlauf && dp.state.val <= 100) {
                         setState(idSwitch, false);
                    }
                });
                

                Ich habe das Script gestartet, der Wert von ham.0.Micro.Switch.On wird auf true gesetzt, aber sofort wieder auf false, obwohl der Wert in 0_userdata.ANALOG_A0 bei 185 liegt. ham.0.Micro.Switch.On sollte aber jetzt true bleiben.

                ham1.png

                ham2.png

                1 Antwort Letzte Antwort
                0
                • paul53P paul53

                  @hagst sagte: auf false gesetzt, wenn der Wert 500 oder weniger anzeigt.

                  const idSwitch = 'ham.0.Micro.Switch.On';
                  const idAnalog = '0_userdata.ANALOG_A0';
                  
                  var anlauf = null;
                  
                  schedule('*/2 * * * *', function() { // alle 2 Minuten
                      if(!getState(idSwitch).val) {
                          setState(idSwitch, true);
                          anlauf = setTimeout(function() {
                              anlauf = null;
                          }, 30000); // 30 s
                      }
                  });
                  
                  on(idAnalog, function(dp) {
                      if(!anlauf && dp.state.val <= 500) {
                           setState(idSwitch, false);
                      }
                  });
                  
                  H Offline
                  H Offline
                  hagst
                  schrieb am zuletzt editiert von
                  #8

                  @paul53

                  Den letzten Beitrag von mir kannst Du komplett vergessen. Auf der Hardware-Seite wurde der Sensor automatisch sofort wieder ausgeschaltet. Dein Script arbeitet so wie gewünscht! Vielen vielen Dank Paul!

                  1 Antwort Letzte Antwort
                  0

                  Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                  Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                  Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                  Registrieren Anmelden
                  Antworten
                  • In einem neuen Thema antworten
                  Anmelden zum Antworten
                  • Älteste zuerst
                  • Neuste zuerst
                  • Meiste Stimmen


                  Support us

                  ioBroker
                  Community Adapters
                  Donate

                  543

                  Online

                  32.7k

                  Benutzer

                  82.6k

                  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