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. Zeitsteuerung will nicht

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

Zeitsteuerung will nicht

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
11 Beiträge 4 Kommentatoren 2.3k 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.
  • DutchmanD Offline
    DutchmanD Offline
    Dutchman
    Developer Most Active Administrators
    schrieb am zuletzt editiert von
    #2

    @takero78:

    Hallo Zusammen,

    ! ich versuche mir eine Zeitsteuerung via VIS zu bauen, bei welcher ich zwei separate an- und Abschaltzeiten definieren kann.
    ! Zusätzlich soll es einen Schalter aktiv geben.
    ! Wenn ich nur die Zeiten übergebe passt das, jedoch funktioniert der Schalter aktiv nicht.
    ! vis.JPG
    ! Skript:
    ! ````
    var ontime = null;
    var offtime1 = null;
    ! on("javascript.0.FunkStart1_1", function(dp) {
    var Einschaltzeit = dp.state.val.split(':'); // Array: [h,m]
    var timeHourOn = Einschaltzeit[0];
    var timeMinuteOn = Einschaltzeit[1];
    log(timeHourOn, "info");
    log(timeMinuteOn, "info");
    if (ontime) clearSchedule(ontime);

    ontime = schedule(timeMinuteOn + ' ' + timeHourOn + ' * * *', function () {
           if ("javascript.0.FunkAktiv1"/*FunkAktiv1*/ === true) {
            sendTo("telegram.0", "send", {
            text: 'Test Zeitsteuerung1 AN',
            user: 'Andreas'
            });
            console.info("telegram['Andreas']: " + 'Zeit 1 an');
           }
    });
    

    });

    ! on("javascript.0.FunkStop1_1"/FunkStop1_1/, function(dp) {
    var Einschaltzeit = dp.state.val.split(':'); // Array: [h,m]
    var timeHourOn = Einschaltzeit[0];
    var timeMinuteOn = Einschaltzeit[1];
    log(timeHourOn, "info");
    log(timeMinuteOn, "info");
    if (offtime1) clearSchedule(offtime1);
    offtime1 = schedule(timeMinuteOn + ' ' + timeHourOn + ' * * *', function () {
    if ("javascript.0.FunkAktiv1"/FunkAktiv1/ === true) {
    sendTo("telegram.0", "send", {
    text: 'Test Zeitsteuerung1 AUS',
    user: 'Andreas'
    });
    console.info("telegram['Andreas']: " + 'Zeit 1 aus');
    }
    });
    });
    ```` `

    komt irgendwas im log wen du den haken setzt ?

    Ist die variable auch wirklich ein boolean (true/false) oder wert 0/1 ?

    Die abfrage "if ("javascript.0.FunkAktiv1"/FunkAktiv1/ === true) {" sieht schon richtig aus, wen der datenpunkt stimmt :)

    1 Antwort Letzte Antwort
    0
    • T Offline
      T Offline
      takero78
      schrieb am zuletzt editiert von
      #3

      Ja es ist bool. Es steht auch unter Objekten mit true. Im Log kommt rein garnichts.

      Wenn ich die if Zeile raus nehme funktioniert es auch.

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

        @Dutchman:

        Die abfrage "if ("javascript.0.FunkAktiv1"/FunkAktiv1/ === true) {" sieht schon richtig aus, wen der datenpunkt stimmt `
        Nein, sieht sie nicht. Richtig:

        if (getState("javascript.0.FunkAktiv1"/*FunkAktiv1*/).val === true) {
        

        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
        • DutchmanD Offline
          DutchmanD Offline
          Dutchman
          Developer Most Active Administrators
          schrieb am zuletzt editiert von
          #5

          Oeps Paul hat recht, ohne .val kommt ja kein Wert zum vergleichen ich krische jetzt mal wieder ins Loch….

          Sent from my iPhone using Tapatalk

          1 Antwort Letzte Antwort
          0
          • T Offline
            T Offline
            takero78
            schrieb am zuletzt editiert von
            #6

            Verdammt, stimmt… Das getstate fehlt auch... Ich werde glaube ich nie ein Fan von Java..

            Danke

            1 Antwort Letzte Antwort
            0
            • S Offline
              S Offline
              simpixo
              schrieb am zuletzt editiert von
              #7

              @takero78:

              Hallo Zusammen,

              ich versuche mir eine Zeitsteuerung via VIS zu bauen, bei welcher ich zwei separate an- und Abschaltzeiten definieren kann.

              Zusätzlich soll es einen Schalter aktiv geben.

              Wenn ich nur die Zeiten übergebe passt das, jedoch funktioniert der Schalter aktiv nicht.

              vis.JPG `

              Hallo takero78

              Könntest du auch das Widget veröffentlichen? Sieht toll aus….

              Schon mal ein Danke dafür

              Gruß

              Adrian

              1 Antwort Letzte Antwort
              0
              • T Offline
                T Offline
                takero78
                schrieb am zuletzt editiert von
                #8

                Hallo Adrian,

                das ist kein einzelnes Widget. Das ist quasi aus einzelnen Elementen zusammengestellt.

                Viele Grüße

                1 Antwort Letzte Antwort
                0
                • T Offline
                  T Offline
                  takero78
                  schrieb am zuletzt editiert von
                  #9

                  Hallo,

                  ich nutze da im ersten Post verwendete Script. Dies funktioniert auch Tadellos, nur habe ich das Problem das bei einem Systemneustart die Zeiten nicht automatisch neu gesetzt werden.

                  Was auch relativ logisch ist, da das Script ja nur auf Änderungen an den Zeiten reagieren soll.

                  Gibt es einen einfachen schnellen Weg dieses Problem zu umgehen?

                  Ich hatte überlegt einfach ein getState und ein setState bei Scripstart zu setzten, aber ist das sauber?

                  Jemand eine bessere Idee?

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

                    @takero78:

                    Ich hatte überlegt einfach ein getState und ein setState bei Scripstart zu setzten, aber ist das sauber?

                    Jemand eine bessere Idee? `
                    Das mit dem setState ist nicht so gut. Vorschlag:

                    var ontime = null;
                    var offtime1 = null;
                    var Einschaltzeit = getState("javascript.0.FunkStart1_1").val.split(':');
                    var Ausschaltzeit = getState("javascript.0.FunkStop1_1").val.split(':');
                    
                    function setOn() {
                        var timeHourOn = Einschaltzeit[0];
                        var timeMinuteOn = Einschaltzeit[1];
                        log(timeHourOn, "info");
                        log(timeMinuteOn, "info");
                        if (ontime) clearSchedule(ontime);
                    
                        ontime = schedule(timeMinuteOn + ' ' + timeHourOn + ' * * *', function () {
                            if (getState("javascript.0.FunkAktiv1").val === true) {
                                sendTo("telegram.0", "send", {
                                text: 'Test Zeitsteuerung1 AN',
                                user: 'Andreas'
                                });
                                console.info("telegram['Andreas']: " + 'Zeit 1 an');
                            }
                        });
                    }
                    
                    function setOff() {
                        var timeHourOn = Ausschaltzeit[0];
                        var timeMinuteOn = Ausschaltzeit[1];
                        log(timeHourOn, "info");
                        log(timeMinuteOn, "info");
                        if (offtime1) clearSchedule(offtime1);
                        offtime1 = schedule(timeMinuteOn + ' ' + timeHourOn + ' * * *', function () {
                            if (getState("javascript.0.FunkAktiv1").val === true) {
                                sendTo("telegram.0", "send", {
                                text: 'Test Zeitsteuerung1 AUS',
                                user: 'Andreas'
                                });
                                console.info("telegram['Andreas']: " + 'Zeit 1 aus');
                            }
                        });
                    }
                    
                    setOn();  // Script start
                    setOff();  // Script start
                    
                    on("javascript.0.FunkStart1_1", function(dp) {
                        Einschaltzeit = dp.state.val.split(':');  // Array: [h,m]
                        setOn();
                    });
                    
                    on("javascript.0.FunkStop1_1"/*FunkStop1_1*/, function(dp) {
                        Ausschaltzeit = dp.state.val.split(':');  // Array: [h,m
                        setOff();
                    });
                    

                    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
                    • T Offline
                      T Offline
                      takero78
                      schrieb am zuletzt editiert von
                      #11

                      Danke, das sieht gut aus :-)

                      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

                      506

                      Online

                      32.6k

                      Benutzer

                      82.2k

                      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