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. Skript für Lichtsteuerung auf Zeit

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    7
    1
    61

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.9k

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

Skript für Lichtsteuerung auf Zeit

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
7 Beiträge 4 Kommentatoren 829 Aufrufe
  • Ä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.
  • C Offline
    C Offline
    coswald76
    schrieb am zuletzt editiert von
    #1

    Hallo ich bin ein Neuling versuche mich gerade im Javascript/js

    Ich Möchte Eine Lampe einschalte für 5 Minuten wenn ich den Taster kurz drücke, wenn die Lampe Leuchtet und die Taste noch mal kurz drücke wieder ausgehen

    auch wenn die 5 Minuten nicht um Sind

    ich habe schon geschaut ich finde Leider nichts, ist das Überhaut möglich

    Hatte eine CL-Box bei der hat das Funktioniert Möchte alles Umstellen auf ioBroker

    Bitte Bitte um Hilfe

    MfG Christian

    1 Antwort Letzte Antwort
    0
    • paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von
      #2

      Vielleicht so:

      // Datenpunkt-IDs
      const idTaste = '...';
      const idLampe = '...';
      
      var timer = null;
      
      on({id: idTaste, val: true}, function() {
         if(timer) {
            clearTimeout(timer);  // laufenden Timer stoppen
            timer = null;
            setState(idLampe, false);
         } else {
            setState(idLampe, true);
            timer = setTimeout(function() {
               setState(idLampe, false);
               timer = null;
            }, 5 * 60000);  // 5 Minuten
         }
      });
      

      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
      • C Offline
        C Offline
        coswald
        schrieb am zuletzt editiert von
        #3

        Hallo Paul53

        erst mal danke habe es eingegeben es funktioniert leider nicht

        Skript sieht so aus

        var timer=null;

        on({id: 'hm-rpc.0.OEQ0279752.2.PRESS_SHORT',val:true},function() {

        if(timer){

        clearTimeout(timer);

        stoppen

        timer=null;

        setState("hm-rpc.0.IEQ0007850.1.STATE",false);

        }else{

        SetState("hm-rpc.0.IEQ0007850.1.STATE",true);

        timer = setTimeout(function() {

        setState("hm-rpc.0.IEQ0007850.1.STATE",false);

        timer=nul;

        },5*60000);

        }

        });

        beim Start des Skript Steht unten

        22:24:21.706 [info] javascript.0 Start javascript script.js.Skript3

        22:24:21.706 [info] javascript.0 script.js.Skript3: registered 1 subscription and 0 schedules

        Beim Drücken der Taste kommt das

        22:24:44.719 [error] javascript.0 at Object. (script.js.Skript3:9:5)

        Hat sich da ein Fehler eingeschlichen? und wo ist er

        MfG Christian

        1 Antwort Letzte Antwort
        0
        • S Offline
          S Offline
          SchuetzeSchulz
          schrieb am zuletzt editiert von
          #4

          5. Zeile das "stoppen" muss raus/entfernt werden und 4. Zeile von unten das muss

          timer=null;

          heissen

          1 Antwort Letzte Antwort
          0
          • C Offline
            C Offline
            coswald
            schrieb am zuletzt editiert von
            #5

            Hallo noch mal

            geht immer noch nicht

            var timer=null;

            on({id: 'hm-rpc.0.OEQ0279752.2.PRESS_SHORT',val:true},function() {

            if(timer){

            clearTimeout(timer);

            timer=null;

            setState("hm-rpc.0.IEQ0007850.1.STATE",false);

            }else{

            SetState("hm-rpc.0.IEQ0007850.1.STATE",true);

            timer=setTimeout(function(){

            setState("hm-rpc.0.IEQ0007850.1.STATE",false);

            timer=null;

            },5*60000);

            }

            });

            1 Antwort Letzte Antwort
            0
            • paul53P Offline
              paul53P Offline
              paul53
              schrieb am zuletzt editiert von
              #6

              @SchuetzeSchulz:

              5. Zeile das "stoppen" muss raus/entfernt werden und 4. Zeile von unten das muss

              timer=null; `
              … und
              @coswald:

              SetState("hm-rpc.0.IEQ0007850.1.STATE",true); `
              –>

              setState("hm-rpc.0.IEQ0007850.1.STATE",true);
              

              Weshalb hast Du das Skript nicht einfach kopiert (copy & paste) und dann die Zeilen 2 und 3 angepasst ?

              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
              • C Offline
                C Offline
                coswald
                schrieb am zuletzt editiert von
                #7

                Möchte es Raus bekommen wo Klammern usw hinkommen drum habe ich es eingegeben

                Möchte mich recht herzlich bedanken

                MfG Christian

                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

                880

                Online

                32.5k

                Benutzer

                81.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