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. Schedule - Licht an bei fester Zeit

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    486

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

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

Schedule - Licht an bei fester Zeit

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

    Hallo zusammen,

    eigentlich ist das doch ziemlich simpel, aber irgendwie zweifel ich langsam an mir selbst.

    Ich will einfach nur bei einer gewissen Uhrzeit einen Schalter (Licht) aktivieren.

    // Ab 7.30 Uhr am Wochenende
    schedule("30 7 * * 6-7", function () { setState("hm-rpc.0.NEQ182xxx.1.STATE", true) });
    

    hab ich irgendwo einen Gedankenfehler oder seh ich ein Komma vor lauter Semikolons nicht?

    Der reine setState-Befehl funktioniert, nur halt nicht in Kombi mit schedule…

    Gruß Michael

    edit: Problem gelöst, nach einem Neustart geht alles :roll:

    1 Antwort Letzte Antwort
    0
    • D Offline
      D Offline
      dna909
      schrieb am zuletzt editiert von
      #2

      Probier mal so:

      // Ab 7.30 Uhr am Wochenende
      
      function Licht (){ 
          setState("hm-rpc.0.NEQ182xxx.1.STATE", true); 
      
      }
      
      schedule("30 7 * * 0,6", function () {
          Licht();
          });
      

      mfg

      dna909

      Intel NUC7PJYH mit Proxmox, Odroid U2, CCU2, Philips Hue, ESP8266, Xiaomi Robot, Google Chromecast Audio, Instar 6012HD, Bosch HNG6764S6

      1 Antwort Letzte Antwort
      0
      • AlCalzoneA Offline
        AlCalzoneA Offline
        AlCalzone
        Developer
        schrieb am zuletzt editiert von
        #3

        @dna909:

        schedule("30 7 * * 0,6", function () {
            Licht();
            });
        ```` `  
        

        geht auch kürzer (beachte die fehlenden Klammern hinter "Licht"):

        schedule("30 7 * * 0,6", Licht);
        

        Aber das extrahieren in ne eigene Funktion sollte keinen Unterschied machen.

        Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

        1 Antwort Letzte Antwort
        0
        • D Offline
          D Offline
          dna909
          schrieb am zuletzt editiert von
          #4

          Viele Wege führen nach Rom :)

          Intel NUC7PJYH mit Proxmox, Odroid U2, CCU2, Philips Hue, ESP8266, Xiaomi Robot, Google Chromecast Audio, Instar 6012HD, Bosch HNG6764S6

          1 Antwort Letzte Antwort
          0
          • L Offline
            L Offline
            looxer01
            schrieb am zuletzt editiert von
            #5

            @dna909:

            Viele Wege führen nach Rom `
            das ist wohl wahr. Auch ohne Programmierung ueber den Adapter:

            • Calendar schedule Adapter benutzt Kalender für Planung
            1 Antwort Letzte Antwort
            0
            • T Offline
              T Offline
              tempestas
              schrieb am zuletzt editiert von
              #6

              @AlCalzone:

              @dna909:

              schedule("30 7 * * 0,6", function () {
                  Licht();
                  });
              ```` `  
              

              geht auch kürzer (beachte die fehlenden Klammern hinter "Licht"):

              schedule("30 7 * * 0,6", Licht);
              

              Aber das extrahieren in ne eigene Funktion sollte keinen Unterschied machen. `

              Könntest du mich erleuchten, wann (und warum) ich die Klammern weglasse? Das habe ich noch nicht verstanden

              <size="85">ioBroker | 21 Adapter | Ubuntu Server | intel NUC | Homematic CCU2 | Hue | Osram Lightify| Sonos | 2x Instar Cam | Samsung Tab A 2016 im Holzrahmen| 3x Echo dot | 1x Echo | Neato Botvac D5</size>

              1 Antwort Letzte Antwort
              0
              • AlCalzoneA Offline
                AlCalzoneA Offline
                AlCalzone
                Developer
                schrieb am zuletzt editiert von
                #7

                Schedule (und setTimeout, setInterval) erwarten als zweiten Parameter eine Funktion, die verzögert aufgerufen werden soll. Das kannst du jetzt entweder inline machen mit

                function() { ... }
                

                oder du kannst eine Referenz auf eine Funktion übergeben. Die Referenz ist einfach der Name einer Funktion ohne ().

                Mit dem Konstrukt

                function () {
                    Licht();
                }
                

                erzeugst du eine Funktion, deren einzige Aufgabe es ist, die Funktion "Licht" aufzurufen. Also

                schedule
                |--> anonyme Funktion
                      |--> Licht
                
                

                Übergibst du schedule als zweiten Parameter den Verweis auf die Licht-Funktion, sieht die Aufrufliste so aus:

                schedule
                |--> Licht
                
                

                –-

                Zur Syntax:

                function test() { return 5; }
                var result1 = test(); // enthält 5, den Rückgabewert der Funktion test
                var result2 = test; // enthält die Funktion test
                var result3 = result2(); // enthält 5, den Rückgabewert der Funktion test bzw. jetzt auch result2
                
                

                Das geht, weil in JavaScript Funktionen einfach Variablen sind, die durch Hinzufügen der Klammern ausgeführt werden können.

                Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

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

                  Das drucke ich mir gleich aus, vielen Dank!

                  Ich kriege zwar inzwischen das eine oder das andere hin, aber ich fürchte, häufig ist da doch eher Glück im Spiel :lol: :lol:

                  <size="85">ioBroker | 21 Adapter | Ubuntu Server | intel NUC | Homematic CCU2 | Hue | Osram Lightify| Sonos | 2x Instar Cam | Samsung Tab A 2016 im Holzrahmen| 3x Echo dot | 1x Echo | Neato Botvac D5</size>

                  1 Antwort Letzte Antwort
                  0
                  • B Offline
                    B Offline
                    belze
                    schrieb am zuletzt editiert von
                    #9

                    von mir auch nochmal einen Dank an alle…

                    So hab ich auch wieder etwas dazu gelernt :D

                    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

                    770

                    Online

                    32.5k

                    Benutzer

                    81.8k

                    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