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. [Frage] Schedule mit Zeit aus einem Datenpunk

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

[Frage] Schedule mit Zeit aus einem Datenpunk

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
9 Beiträge 3 Kommentatoren 1.4k 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.
  • PeoplesP Offline
    PeoplesP Offline
    Peoples
    schrieb am zuletzt editiert von
    #1

    HI,

    ist es möglich folgenden schedule Befehl mit Zeiten aus einem Datenpunkt / Objekt zu bedienen?

    schedule("30 22 * * 0-6", function () {
    

    der Inhalt des Datenpunktes ist bspw. 22:30

    nun habe ich folgendes leider erfolglos versucht:

    var zu_stunden = parseFloat(getState("javascript.0.Jalousien.Konfig.Zeit_Schliessen").val.substring(0,2));
    var zu_minuten = parseFloat(getState("javascript.0.Jalousien.Konfig.Zeit_Schliessen").val.substring(3,5));
    
    schedule(zu_minuten +" "+ zu_stunden +" * * 0-6", function () {
    
    

    Aber leider funktioniert das nicht. Gibt es hier eine Möglichkeit das zu realisieren?

    Gruß

    Steffen

    Ich beantworte keine Fragen zu Themen via PN

    1 Antwort Letzte Antwort
    0
    • htreckslerH Offline
      htreckslerH Offline
      htrecksler
      Forum Testing
      schrieb am zuletzt editiert von
      #2

      wenn du nach "Wecker" suchst, findest du einige Interessante Ansätze.

      Hier noch ein Beispiel wie ich das für die Rolladensteuerung einsetze

      wobei in der Variable idt1 ein Text steht: z. B. 08:30

      // #################### Auslöser ##########
      // ########## Zeit/Wecker     ##########
      var idt1 = "javascript.0.Settings.TagesstartArbeitstag";
      var timer1;
      
      function getTimeObject(state) {
          var t = state.val.split(":");
          var h = parseInt(t[0]);
          var m = parseInt(t[1]);
          return {hour: h, minute: m};   
      }
      
      on(idt1, function(dp) {
          var t = getTimeObject(dp.newState);
          log("Beginn Tagesart Arbeitstag wird eingestellt " + JSON.stringify(t),'warn');
          if (timer1) clearSchedule(timer1);
          timer1 = on({time: t}, function () {
              RolladenFahren('Wecker');
          });
      });
      
      var state = getState(idt1);
      var t = getTimeObject(state);
      if (timer1) clearSchedule(timer1);
      timer1 = on({time: t}, function () {
              RolladenFahren('Wecker');
      });
      
      

      Gruss Hermann

      ioBroker auf Proxmox (Debian) auf IntelNuc als Produktivsystem

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

        Versuche es mal so:

        var zu = getState("javascript.0.Jalousien.Konfig.Zeit_Schliessen").val.split(':');
        
        schedule(zu[1] + ' ' + zu[0] + ' * * 0-6', function() {
        
        

        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
        • PeoplesP Offline
          PeoplesP Offline
          Peoples
          schrieb am zuletzt editiert von
          #4

          @paul53:

          Versuche es mal so:

          var zu = getState("javascript.0.Jalousien.Konfig.Zeit_Schliessen").val.split(':');
          
          schedule(zu[1] + ' ' + zu[0] + ' * * 0-6', function() {
          
          ```` `  
          

          Klappt perfekt Danke.

          Warum meines nicht funktioniert verstehe ich trotzdem nicht :(

          Gruß

          Steffen

          Ich beantworte keine Fragen zu Themen via PN

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

            @peoples:

            Warum meines nicht funktioniert verstehe ich trotzdem nicht `

            var zu_stunden = getState("javascript.0.Jalousien.Konfig.Zeit_Schliessen").val.substring(0,1);
            var zu_minuten = getState("javascript.0.Jalousien.Konfig.Zeit_Schliessen").val.substring(3,4);
            

            Wozu parseFloat() ? Das Ergebnis soll ein (Teil-)string sein. Außerdem sind führende Nullen erforderlich (z.B. 08:15), bei der Version mit split(':') nicht.

            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
            • htreckslerH Offline
              htreckslerH Offline
              htrecksler
              Forum Testing
              schrieb am zuletzt editiert von
              #6

              funktioniert der Code auch dann wenn die Datenpunkte geändert werden?

              Oder muss dann das Script neu gestartet werden?

              Gruss Hermann

              ioBroker auf Proxmox (Debian) auf IntelNuc als Produktivsystem

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

                @htrecksler:

                funktioniert der Code auch dann wenn die Datenpunkte geändert werden? `
                Nein, dazu muss man auf Änderung triggern.

                var zu = getState("javascript.0.Jalousien.Konfig.Zeit_Schliessen").val.split(':');
                
                function meineFunktion() {
                   ...
                }
                
                var timer = schedule(zu[1] + ' ' + zu[0] + ' * * 0-6', meineFunktion);
                
                on("javascript.0.Jalousien.Konfig.Zeit_Schliessen", function(dp) {  // Trigern bei Änderung
                   zu = dp.state.val.split(':');
                   clearSchedule(timer);   // altes Schedule löschen
                   timer = schedule(zu[1] + ' ' + zu[0] + ' * * 0-6', meineFunktion);
                });
                

                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
                • PeoplesP Offline
                  PeoplesP Offline
                  Peoples
                  schrieb am zuletzt editiert von
                  #8

                  Verstehe ich das richtig,

                  wenn ich den Datenpunkt ändern würde und den Trigger nicht nutze, würde die gänderte Zeit nie (bzw. erst nach einem Script - Neustart) gültig werden?

                  Gruß

                  Steffen

                  Ich beantworte keine Fragen zu Themen via PN

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

                    @peoples:

                    wenn ich den Datenpunkt ändern würde und den Trigger nicht nutze, würde die gänderte Zeit nie (bzw. erst nach einem Script - Neustart) gültig werden? `
                    Genau so ist es.

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


                    Support us

                    ioBroker
                    Community Adapters
                    Donate

                    337

                    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