Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. Heizungssteuerung zeitabhängig

NEWS

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    5
    1
    160

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    8
    1
    183

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    879

Heizungssteuerung zeitabhängig

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
7 Beiträge 4 Kommentatoren 1.5k 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.
  • H Offline
    H Offline
    HKF8770
    schrieb am zuletzt editiert von
    #1

    Möchte in einem Skript abfragen ob eine Variable einen Wert 1 hat und dies dem angegebenen Zeitfenster entspricht.

    Leider funktioniert es nicht, denke mal getState(Ka).val === 1 passt nicht aber komm nicht weiter. Hat einer ne Idee?

    //schreibe den Wert in die variable Ka
    
    var Ka = getState("javascript.1.Heizung.Temperaturkategorie").val;
    log("---> Temperaturkategorie " + Ka,"info");
    
    //frage ab ob der Wert Ka dem Wert 1 entspricht und im Zeitfenster liegt
    
    if (getState(Ka).val === 1 && isTimeInRange('21:00:00', '24:00:00')) 
            setState('javascript.1.Heizung.Willy_Soll"/*Heizung.Willy_Soll*/', willye);
            log("---> Willy Soll gesetzt (21-24 Uhr) auf " + willyg + " ° Grad","info"); 
    

    Freddy

    1 Antwort Letzte Antwort
    0
    • B Offline
      B Offline
      Beatz
      schrieb am zuletzt editiert von
      #2

      Du hast die getState Abfrage doppelt. Und benutzt ein Gleichheitszeichen zu viel. Verwende:

      If (Ka == 1 && isTimeInRange(…))

      Gesendet von meinem Nexus 5 mit Tapatalk

      1 Antwort Letzte Antwort
      0
      • BluefoxB Offline
        BluefoxB Offline
        Bluefox
        schrieb am zuletzt editiert von
        #3
        //schreibe den Wert in die variable Ka
        
        var Ka = getState("javascript.1.Heizung.Temperaturkategorie").val;
        log("---> Temperaturkategorie " + Ka);
        
        //frage ab ob der Wert Ka dem Wert 1 entspricht und im Zeitfenster liegt
        
        if (Ka == 1 && isTimeInRange('21:00:00', '24:00:00')) 
                setState('javascript.1.Heizung.Willy_Soll'/*Heizung.Willy_Soll*/, willye);
                log("---> Willy Soll gesetzt (21-24 Uhr) auf " + willyg + " ° Grad","info");
        ...
        
        

        –----------------

        Fehler:

        getState(Ka).val === 1

        Muss

        Ka == 1

        Mann kann auch Ka === 1 lassen, wenn du sicher bist, dass Ka den Typ "number" hat.

        –---------------

        Fehler:

        setState('javascript.1.Heizung.Willy_Soll"/Heizung.Willy_Soll/', willye);

        Muss

        setState('javascript.1.Heizung.Willy_Soll'/Heizung.Willy_Soll/, willye);

        Es wird versucht die Variable 'javascript.1.Heizung.Willy_Soll"/Heizung.Willy_Soll/' zu setzen, du willst aber vermutlich 'javascript.1.Heizung.Willy_Soll'

        1 Antwort Letzte Antwort
        0
        • blauholstenB Offline
          blauholstenB Offline
          blauholsten
          Developer
          schrieb am zuletzt editiert von
          #4

          Dem kann ich nur zu stimmen.

          Eine Anfänger Frage… Macht es einen unterschied, ob man' oder " benutzt? Ich denke nicht. Oder?

          Entwickler vom: - Viessman Adapter
          - Alarm Adapter

          1 Antwort Letzte Antwort
          0
          • BluefoxB Offline
            BluefoxB Offline
            Bluefox
            schrieb am zuletzt editiert von
            #5

            @blauholsten:

            Dem kann ich nur zu stimmen.

            Eine Anfänger Frage… Macht es einen unterschied, ob man' oder " benutzt? Ich denke nicht. Oder? `
            Kein Unterschied.

            1 Antwort Letzte Antwort
            0
            • H Offline
              H Offline
              HKF8770
              schrieb am zuletzt editiert von
              #6

              Danke für die Infos.

              hab nun folgende Problem:

              Mein Skript sieht so aus

               if (isTimeInRange('21:00:00', '24:00:00'));
                          setState('javascript.1.Heizung.Willy_Soll', willyg);
                          log("---> Willy Soll gesetzt (21-24 Uhr) auf " + willyg + " ° Grad","info"); 
              

              Ich erhalte aber im Log den folgenden Fehler. IsTime gane sei nicht definiert, Was mach ich da falsch?

              javascript.1	2015-10-16 23:01:00	error	uncaught exception: isTimeInRange is not defined
              

              Nehme ich die If Bedinung raus dann gehts.

                 setState('javascript.1.Heizung.Willy_Soll', willyg);
                          log("---> Willy Soll gesetzt (21-24 Uhr) auf " + willyg + " ° Grad","info"); 
              

              Sprich so wie ich es verstehe kann er die Zeitraumsangabe von bis nicht lesen - zuordnen.

              Freddy

              1 Antwort Letzte Antwort
              0
              • blauholstenB Offline
                blauholstenB Offline
                blauholsten
                Developer
                schrieb am zuletzt editiert von
                #7

                Ich denke du hast isTimeInRange nicht als variable bzw Funktion deklarierte.

                Schau dir das an…http://forum.iobroker.de/viewtopic.php? ... imeinrange

                Entwickler vom: - Viessman Adapter
                - Alarm Adapter

                1 Antwort Letzte Antwort
                0

                Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                Registrieren Anmelden
                Antworten
                • In einem neuen Thema antworten
                Anmelden zum Antworten
                • Älteste zuerst
                • Neuste zuerst
                • Meiste Stimmen


                Support us

                ioBroker
                Community Adapters
                Donate

                438

                Online

                32.8k

                Benutzer

                82.7k

                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