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. Feldinhalt in Schedule Funktion einfügen

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
    927

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

Feldinhalt in Schedule Funktion einfügen

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
10 Beiträge 2 Kommentatoren 582 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.
  • cashC Offline
    cashC Offline
    cash
    Most Active
    schrieb am zuletzt editiert von
    #1

    Ich habe in der ccu ein Feld Weckzeit.

    Mit

    var _Weckzeit = getState("hm-rega.0.21758").val;
    var _Stunden;
    var _Minuten;
    _Stunden = _Weckzeit.substring(0,2);
    _Minuten = _Weckzeit.substring(3,5);
    

    kriege ich ja schonmal das ganze auseinander

    wie kriege ich das jetzt in ein schedule?

    schedule("00 07 * * 1-5", function () {
    
    1 Antwort Letzte Antwort
    0
    • paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von
      #2

      Besser so:

      function macheWas() {
         // 
      }
      
      // Skriptstart
      var t = getState("hm-rega.0.21758").val.split(':');
      var sched = schedule(t[1] + ' ' + t[0] + ' * * 1-5', macheWas);
      
      on("hm-rega.0.21758", function(dp) {  // Vorgabezeit ändert sich
        clearSchedule(sched);  // bestehendes Schedule löschen
        t = dp.state.val.split(':');
        sched = schedule(t[1] + ' ' + t[0] + ' * * 1-5', macheWas);      
      });
      
      

      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
      • cashC Offline
        cashC Offline
        cash
        Most Active
        schrieb am zuletzt editiert von
        #3

        Nur um es richtig zu verstehen: In Zeile 2 dort wo // würde ich jetzt z. B. Eine Lampe einschalten usw.

        Und dann würde das Script pünktlich um xx:xx Uhr (Uhrzeit aus der Systemvariable) ausgeführt?

        Wenn ich danach die Uhrzeit in der Systemvariable ändere wird das Programm angetriggtert und er stellt dort die neue Uhrzeit ein dabei wird aber nicht die function machewas ausgeführt??

        Auf die idee mit split und den Doppelpunkten bin ich auch gekommen nur wußte ich nicht wie ich das umsetze :mrgreen: und dann fiel mir halt die Variante mit substring ein. War schon stolz das das funktioniert hat :mrgreen: :mrgreen:

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

          @cash:

          In Zeile 2 dort wo // würde ich jetzt z. B. Eine Lampe einschalten usw. `
          Ja.
          @cash:

          Und dann würde das Script pünktlich um xx:xx Uhr (Uhrzeit aus der Systemvariable) ausgeführt? `
          Dann würde die Funktion macheWas() pünktlich ausgeführt.
          @cash:

          er stellt dort die neue Uhrzeit ein dabei wird aber nicht die function machewas ausgeführt?? `
          Die Funktion macheWas() wird zur neu eingestellten Uhrzeit 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
          0
          • cashC Offline
            cashC Offline
            cash
            Most Active
            schrieb am zuletzt editiert von
            #5

            Perfekt. Noch eine Frage: Wie kann ich den gleichten Timer mit 25 Minuten später erstellen?

            Das erste ist meine Weckzeit und spätestens 25 Minuten später soll dann das Licht und andere sachen wieder ausgeschaltet werden sofern sie nicht zwischenzeitlich manuell ausgeschaltet wurden…

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

              @cash:

              25 Minuten später soll dann das Licht und andere sachen wieder ausgeschaltet werden `
              Das geht mit setTimeout().

              function macheWas() {
                 // Einschalten
                 setTimeout(function() {
                    // Ausschalten
                 }, 25 * 60000);  // 25 Minuten Verzögerung   
              }
              
              

              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
              • cashC Offline
                cashC Offline
                cash
                Most Active
                schrieb am zuletzt editiert von
                #7

                Einfach nur Hammer.

                Vielen, vielen Dank. Funktioniert perfekt.

                1 Antwort Letzte Antwort
                0
                • cashC Offline
                  cashC Offline
                  cash
                  Most Active
                  schrieb am zuletzt editiert von
                  #8

                  letzte Frage zu dem Thema.

                  Bisher habe ich in einem Homematic Script abgefragt ob die aktuelle Uhrzeit vor der "Wecker aus" Zeit lag (Weckzeit + 25 Minuten).

                  War dort sehr einfach mit "Geräteauswahl Schaltzeit Wecker aus:2 bei TIMER_GET im Wertebereich größer als 1.00 s nur prüfen"

                  Könntest du mir dort nochmal auf die Sprünge helfen 8-)

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

                    @cash:

                    bei TIMER_GET im Wertebereich größer als 1.00 s nur prüfen" `
                    TIMER_GET ist ein Datenpunkt. Um außerhalb des Skripts abzufragen, ob der Timer läuft, braucht es einen zusätzlichen Datenpunkt (Typ: boolean, unter javascript.0), der nicht manuell ausgeschaltet wird.

                    function macheWas() {
                       // Einschalten
                       setState('javascript.0.timer1', true, true);
                       setTimeout(function() {
                          // Ausschalten
                          setState('javascript.0.timer1', false, true);
                       }, 25 * 60000);  // 25 Minuten Verzögerung   
                    }
                    

                    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
                    • cashC Offline
                      cashC Offline
                      cash
                      Most Active
                      schrieb am zuletzt editiert von
                      #10

                      Du bist ein Genie ;)

                      Hätte ich natürlich auch selber drauf kommen können. Ich muss mich da noch etwas umgewöhnen an die alternative herangehensweise von Problemen.

                      Nochmals Danke….

                      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

                      903

                      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