Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Vorlage] Heizungsthermostatsteuerung 2.1 - Script

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    [Vorlage] Heizungsthermostatsteuerung 2.1 - Script

    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      schauaufdich last edited by

      @apollon77:

      Das sind "Index-IDs" und muss wohl so sein damit das mit der VIS View funktioniert.

      14 heisst "der 14. Eintrag der VIS-Selection" 🙂

      Willst Du an der VIS View vorbei einen Wert setzen oder warum fragst Du? `

      Danke für die rasche Antwort, nein ich will es nur verstehen :roll:

      Eine weitere Frage: ich habe , iCal auf false gesetzt bekomme aber trotzdem folgende Meldung : Abwesenheit Absenkung durch iCal Event und die Temperatur wird reduziert.

      "var UseEventsGlobalParameter = false;

      var UseEventsGlobalProfilSelect = false; /

      var UseEventsRaumProfilSelect = false; "

      1 Reply Last reply Reply Quote 0
      • S
        swordfisch last edited by

        habe immer noch eine ganze Menge Fehler

        ! javascript.0 2018-01-11 17:03:29.398 info script.js.common.Heizungssteuerung: Heizungsscript verarbeitung Trigger für Raum Wohnzimmer durchgelaufen
        ! javascript.0 2018-01-11 17:03:29.392 warn at Object. (script.js.common.Heizungssteuerung:468:9)
        ! javascript.0 2018-01-11 17:03:29.392 warn at LoopRooms (script.js.common.Heizungssteuerung:763:13)
        ! javascript.0 2018-01-11 17:03:29.391 warn at LoopDevices (script.js.common.Heizungssteuerung:865:13)
        ! javascript.0 2018-01-11 17:03:29.391 warn at ExecuteTempDetermination (script.js.common.Heizungssteuerung:1386:25)
        ! javascript.0 2018-01-11 17:03:29.391 warn at SelectSwitchTime (script.js.common.Heizungssteuerung:1460:15)
        ! javascript.0 2018-01-11 17:03:29.391 warn at DetermineSchedule (script.js.common.Heizungssteuerung:1574:30)
        ! javascript.0 2018-01-11 17:03:29.391 warn State "feiertage.0.morgen.boolean" not found
        ! javascript.0 2018-01-11 17:03:29.389 warn at Object. (script.js.common.Heizungssteuerung:468:9)
        ! javascript.0 2018-01-11 17:03:29.389 warn at LoopRooms (script.js.common.Heizungssteuerung:763:13)
        ! javascript.0 2018-01-11 17:03:29.388 warn at LoopDevices (script.js.common.Heizungssteuerung:863:18)
        ! javascript.0 2018-01-11 17:03:29.388 warn at ManAdjustments (script.js.common.Heizungssteuerung:1037:65)
        ! javascript.0 2018-01-11 17:03:29.388 warn at SelectSwitchTime (script.js.common.Heizungssteuerung:1535:19)
        ! javascript.0 2018-01-11 17:03:29.388 warn at DetermineSchedule (script.js.common.Heizungssteuerung:1574:30)
        ! javascript.0 2018-01-11 17:03:29.388 warn State "feiertage.0.morgen.boolean" not found
        ! javascript.0 2018-01-11 17:03:29.387 warn at Object. (script.js.common.Heizungssteuerung:468:9)
        ! javascript.0 2018-01-11 17:03:29.387 warn at LoopRooms (script.js.common.Heizungssteuerung:763:13)
        ! javascript.0 2018-01-11 17:03:29.387 warn at LoopDevices (script.js.common.Heizungssteuerung:863:18)
        ! javascript.0 2018-01-11 17:03:29.387 warn at ManAdjustments (script.js.common.Heizungssteuerung:1037:65)
        ! javascript.0 2018-01-11 17:03:29.387 warn at SelectSwitchTime (script.js.common.Heizungssteuerung:1460:15)
        ! javascript.0 2018-01-11 17:03:29.387 warn at DetermineSchedule (script.js.common.Heizungssteuerung:1574:30)
        ! javascript.0 2018-01-11 17:03:29.386 warn State "feiertage.0.morgen.boolean" not found
        ! javascript.0 2018-01-11 17:03:29.386 warn at Object. (script.js.common.Heizungssteuerung:468:9)
        ! javascript.0 2018-01-11 17:03:29.386 warn at LoopRooms (script.js.common.Heizungssteuerung:763:13)
        ! javascript.0 2018-01-11 17:03:29.386 warn at LoopDevices (script.js.common.Heizungssteuerung:863:18)
        ! javascript.0 2018-01-11 17:03:29.386 warn at ManAdjustments (script.js.common.Heizungssteuerung:1036:65)
        ! javascript.0 2018-01-11 17:03:29.385 warn at SelectSwitchTime (script.js.common.Heizungssteuerung:1535:19)
        ! javascript.0 2018-01-11 17:03:29.385 warn at DetermineSchedule (script.js.common.Heizungssteuerung:1574:30)
        ! javascript.0 2018-01-11 17:03:29.385 warn State "feiertage.0.morgen.boolean" not found
        ! javascript.0 2018-01-11 17:03:29.384 warn at Object. (script.js.common.Heizungssteuerung:468:9)
        ! javascript.0 2018-01-11 17:03:29.384 warn at LoopRooms (script.js.common.Heizungssteuerung:763:13)
        ! javascript.0 2018-01-11 17:03:29.384 warn at LoopDevices (script.js.common.Heizungssteuerung:863:18)
        ! javascript.0 2018-01-11 17:03:29.383 warn at ManAdjustments (script.js.common.Heizungssteuerung:1036:65)
        ! javascript.0 2018-01-11 17:03:29.383 warn at SelectSwitchTime (script.js.common.Heizungssteuerung:1460:15)
        ! javascript.0 2018-01-11 17:03:29.383 warn at DetermineSchedule (script.js.common.Heizungssteuerung:1574:30)
        ! javascript.0 2018-01-11 17:03:29.383 warn State "feiertage.0.morgen.boolean" not found
        ! javascript.0 2018-01-11 17:03:29.382 warn at Object. (script.js.common.Heizungssteuerung:468:9)
        ! javascript.0 2018-01-11 17:03:29.382 warn at LoopRooms (script.js.common.Heizungssteuerung:763:13)
        ! javascript.0 2018-01-11 17:03:29.382 warn at LoopDevices (script.js.common.Heizungssteuerung:863:18)
        ! javascript.0 2018-01-11 17:03:29.382 warn at ManAdjustments (script.js.common.Heizungssteuerung:1035:68)
        ! javascript.0 2018-01-11 17:03:29.382 warn at SelectSwitchTime (script.js.common.Heizungssteuerung:1460:15)
        ! javascript.0 2018-01-11 17:03:29.381 warn at DetermineSchedule (script.js.common.Heizungssteuerung:1574:30)
        ! javascript.0 2018-01-11 17:03:29.381 warn State "feiertage.0.morgen.boolean" not found
        ! javascript.0 2018-01-11 17:03:29.380 warn at Object. (script.js.common.Heizungssteuerung:468:9)
        ! javascript.0 2018-01-11 17:03:29.380 warn at LoopRooms (script.js.common.Heizungssteuerung:763:13)
        ! javascript.0 2018-01-11 17:03:29.380 warn at LoopDevices (script.js.common.Heizungssteuerung:863:18)
        ! javascript.0 2018-01-11 17:03:29.377 warn at ManAdjustments (script.js.common.Heizungssteuerung:1034:68)
        ! javascript.0 2018-01-11 17:03:29.377 warn at SelectSwitchTime (script.js.common.Heizungssteuerung:1460:15)
        ! javascript.0 2018-01-11 17:03:29.377 warn at DetermineSchedule (script.js.common.Heizungssteuerung:1574:30)
        ! javascript.0 2018-01-11 17:03:29.376 warn State "feiertage.0.morgen.boolean" not found
        ! javascript.0 2018-01-11 17:03:12.892 info script.js.common.Heizungssteuerung: Heizungsscript verarbeitung Trigger für Raum Wohnzimmer durchgelaufen

        kann mir jemand helfen?

        grüße swordfisch

        1 Reply Last reply Reply Quote 0
        • apollon77
          apollon77 last edited by

          Da hast Du wohl entweder in den EInstellungen vom Thermostatskript von looxer01 eingeschaltet das der "Feiertagskalender" berücksichtigt werden soll, aber hast den Adapter "feiertage" nicht installiert.

          "feiertage.0.morgen.boolean" not found
          

          Sagt genau das er einen State versucht zu lesen den es bei Dir nicht gibt. Also ENtweder Adapter installieren und konfigurieren oder im Skript das wieder ausschalten.

          1 Reply Last reply Reply Quote 0
          • S
            swordfisch last edited by

            @apollon77:

            Da hast Du wohl entweder in den EInstellungen vom Thermostatskript von looxer01 eingeschaltet das der "Feiertagskalender" berücksichtigt werden soll, aber hast den Adapter "feiertage" nicht installiert.

            "feiertage.0.morgen.boolean" not found
            

            Sagt genau das er einen State versucht zu lesen den es bei Dir nicht gibt. Also ENtweder Adapter installieren und konfigurieren oder im Skript das wieder ausschalten. `

            Vielen Vielen Danke hatte ich irgendwie beim Einrichten nicht geshen das der aktiviert war hab den adapter einfach installiert und nun läuft es ohne Fehlermeldungen

            1 Reply Last reply Reply Quote 0
            • L
              looxer01 last edited by

              @booehmemaik:

              Siehe Bild Esszimmer und Schlafzimmer sind beide auf 18 Grad gegangen.

              Es sieht für mich auch so aus, wie das die Initialisierung vom Esszimmer nicht vollständig ist. `

              Hi,

              sorry für die späte Antwort. Bin zur Zeit viel unterwegs und daher kaum mal am System.

              Das Log sieht eigentlich gut aus. Allerdings passt der View nicht ganz dazu.

              Und im Esszimmer hast du sogar NaN an Stellen wo es überhaupt gar nicht auftreten kann.

              Daher vermute ich mal, dass irgendwas schiefgelaufen ist als du den View erstellt hast.

              z.B. falsche Datenpunkte. Kannst du das mal überprüfen ?

              Falls alles schief geht, dann kann ich auch gerne mal per Teamviewer reinschauen.

              vG Looxer

              1 Reply Last reply Reply Quote 0
              • B
                booehmemaik last edited by

                @looxer01:

                @booehmemaik:

                Falls alles schief geht, dann kann ich auch gerne mal per Teamviewer reinschauen.

                vG Looxer

                Dein Hinweis war gut, ich hab mir die Räume und die Views nochmal angesehen. Ich hatte beim umbenennen in den views einen Tippfehler. Das führte zu den NaN ausgaben. Beide Räume Schlafzimmer und Esszimmer hat solch einen Fehler. Damit hat er die Profile wohl nicht gefunden und irgendwelche Werte errechnet.

                So ich beobachte mal.

                Danke

                1 Reply Last reply Reply Quote 0
                • L
                  looxer01 last edited by

                  Hi,

                  ich habe eine Frage zur Nutzung von Profilen erhalten. Dazu möchte ich -zusätzlich zur Doku- ein paar Erklärungen abgeben.

                  -Was sind Profile

                  Profile enthalten entsprechend die geplanten Zeitabschnitte und Profilparameter. Für jeden Raum können bis zu 9 Profile angelegt werden.

                  Damit können unterschiedlichste Pläne und Steuerungen je Raum realisiert werden, z.B. um in den Profilen z.B. Schichtarbeit abzubilden.

                  Also in Fällen wo der Rhytmus unterschiedlich ist, je nach Situation.

                  - Erzeugung der Datenpunkte.

                  Es müssen also eine Reihe von Datenpunkte erzeugt werden, um die Zeitabschnitte getrennt voneinander zu verwalten. Im Script ist zunächst mal die Variable auf "Maximale Anzahl Profile" auf "1" gesetzt. Somit wird für jeden Raum auch nur ein Profil angelegt. Die meisten Daten liegen in den Profilen. Es sollten also nicht ohne Grund mehr Profile angelegt werden als gebraucht. Wenn aber ein weiteres Profil je Raum angelegt werden soll, dann empfiehlt sich die Variable "Maximale Anzahl Profile" um 1 zu erhöhen. Nach Erzeugen der Datenpunkte, was etwas Zeit benötigt, stehen diese dann zur Verfügung.

                  - Pflegen der Profildaten

                  Das Aenderun der Profildaten kann nur durch die Definition von profilbezogenen VIEWS gemacht werden. Leider kann ich in VIS nicht auf alternative Datenpunkte umschalten. Die Verwendung von Profil-1 für Raum1 braucht also einen View und die Verwendung von Profil-2 für Raum1 braucht also einen zusätzlichen View.

                  Hinweis:

                  Der View von Profil-2 Raum1 kann erzeugt werden indem der View von Profil-1 Raum1 exportiert wird und anschliessend im Editor ein Suchen/Ersetzen gemacht wird durch Suche Profil-1 und Ersetze durch Profil-2. Einbinden des neuen Views (import) in VIS - fertig

                  - Aktivieren von Profilen

                  Manuelles Aktivieren

                  Profile können aktiviert werden in dem manuell ein Profil in einer View auf aktiv gesetzt wird. Wenn z.B. im View von Profil-1 Raum1 das Profil-2 aktiviert wird, dann blendet sich der Zeitplan aus. Um den Zeitplan von Profil-2 Raum1 zu sehen, muss auf den anderen View gegangen werden.

                  Geplantes Akvitieren

                  Über ein ICAL event kann ein Profil zeitbezogen eingeschaltet werden. Wenn ICAL mit dem Google Kalender verbunden ist, dann kann also über den Kalender ein Profil oder können alle Profile umgeschaltet werden

                  Einstellung:

                  var UseEventG_Profil     = "Global_Profil_<profilnummer>";       // Events mit denen das Profil umgeschaltet werden kann -  muss in ICAL angelegt werden wenn UseEventP_Profil = true ist
                  var UseEventR_Profil     = "<raumname>_Profil_<profilnummer>";   // Events mit denen das Raumprofil umgeschaltet werden kann -  muss in ICAL angelegt werden wenn UseEventsRaumProfilSelect = true ist</profilnummer></raumname></profilnummer> 
                  

                  Wenn also im Google Kalender Raum1_Profil_2 eingegeben wird, dann wird das Profil-2 zum angegebenen Zeitpunkt (Start des Events) aktiviert. Es wird aber nicht mehr zurückgeschaltet. Hierzu braucht es ein neues Event: z.B. Raum1_Profil_1

                  Ich hoffe das klärt einige Fragen.

                  vG

                  Looxer

                  1 Reply Last reply Reply Quote 0
                  • S
                    swordfisch last edited by

                    Hat schon jemand Xiaomi Fenstersensoren mit dem Script geutzt?

                    grüße swordfisch

                    1 Reply Last reply Reply Quote 0
                    • U
                      UweS last edited by

                      Hallo, ich versuche mich jetzt, nachdem das Skript super läuft, an einer Anwesenheitserkennung dazu habe vorab ein paar Fragen.

                      1: Wenn ich im VIS auf abwesend schalte, dann schalten sich bei mir alle Räume die ich im Skript habe , auf abwesend. Kann ich das auch Raumgesteuert machen?

                      2: Wenn ich mit der Anwesenheitserkennung soweit bin, wie kann ich den Status ins VIS übernehmen?

                      Danke

                      1 Reply Last reply Reply Quote 0
                      • U
                        UweS last edited by

                        Sorry doppelt gepostet

                        Hallo, ich versuche mich jetzt, nachdem das Skript super läuft, an einer Anwesenheitserkennung dazu habe vorab ein paar Fragen.

                        1: Wenn ich im VIS auf abwesend schalte, dann schalten sich bei mir alle Räume die ich im Skript habe , auf abwesend. Kann ich das auch Raumgesteuert machen?

                        2: Wenn ich mit der Anwesenheitserkennung soweit bin, wie kann ich den Status ins VIS übernehmen?

                        Danke

                        1 Reply Last reply Reply Quote 0
                        • S
                          schauaufdich last edited by

                          @UweS:

                          Sorry doppelt gepostet

                          Hallo, ich versuche mich jetzt, nachdem das Skript super läuft, an einer Anwesenheitserkennung dazu habe vorab ein paar Fragen.

                          1: Wenn ich im VIS auf abwesend schalte, dann schalten sich bei mir alle Räume die ich im Skript habe , auf abwesend. Kann ich das auch Raumgesteuert machen?

                          2: Wenn ich mit der Anwesenheitserkennung soweit bin, wie kann ich den Status ins VIS übernehmen?

                          Danke `
                          Zu 2: Ich habe die Abwesenheitserkennung auf der CCU2. Mit einem kleinen Zusatzscript setzt ich, wenn sich der Status ändert, das Häckchen Anwesend im View.

                          Lg

                          Gesendet von iPhone mit Tapatalk

                          1 Reply Last reply Reply Quote 0
                          • L
                            looxer01 last edited by

                            @UweS:

                            1: Wenn ich im VIS auf abwesend schalte, dann schalten sich bei mir alle Räume die ich im Skript habe , auf abwesend. Kann ich das auch Raumgesteuert machen?

                            2: Wenn ich mit der Anwesenheitserkennung soweit bin, wie kann ich den Status ins VIS übernehmen? `

                            Hi,

                            zu 1. du kannst in den Profilparametern bei "Abwesenheit Absenkung" eine "0" eintragen. Damit hat die Abwesenheit keine Wirkung im Raum.

                            zu 2. kannst du in den Script-Einstellungen einstellen. Du brauchst halt einen Datenpunkt, der die An/Abwesenheit darstellt. Meine Empfehlung ist, dass du deine Anwesenheitserkennung zunächst mal installierst -wie auch immer du das vor hast, da es ja unterschiedlichste Wege gibt.

                            Solltest du TR064 (Fritzbox) nutzen, dann habe ich ein Script, ebenso für Unifi und schauaufdich hat ja dann wohl was mit der CCU. Auf jeden Fall kriegst du das hin.

                            vG Looxer

                            1 Reply Last reply Reply Quote 0
                            • L
                              looxer01 last edited by

                              @swordfisch:

                              Hat schon jemand Xiaomi Fenstersensoren mit dem Script geutzt? `

                              Du kannst das simpel im vorhinein testen in dem du einen Datenpunkt manuell als boolean anlegst.

                              Den kannst du dann im Script als Sensor (NichtHM) einbinden. (natürlich für einen Raum mit einem HM-Thermostat)

                              Durch manuelles setzen auf true/false sollte das Thermostat entsprechend reagieren. (Absenktemp)

                              Wenn das gut für dich funktioniert, dann kannst du auch davon ausgehen, dass die Xiaomis funktionieren.

                              Natürlich vorausgesetzt, dass du die entsprechenden Datenpunkte für Xiaomi bekommst. Das hat aber nichts mit dem script zu tun.

                              vG Looxer

                              1 Reply Last reply Reply Quote 0
                              • S
                                swordfisch last edited by

                                @looxer01:

                                @swordfisch:

                                Hat schon jemand Xiaomi Fenstersensoren mit dem Script geutzt? `

                                Du kannst das simpel im vorhinein testen in dem du einen Datenpunkt manuell als boolean anlegst.

                                Den kannst du dann im Script als Sensor (NichtHM) einbinden. (natürlich für einen Raum mit einem HM-Thermostat)

                                Durch manuelles setzen auf true/false sollte das Thermostat entsprechend reagieren. (Absenktemp)

                                Wenn das gut für dich funktioniert, dann kannst du auch davon ausgehen, dass die Xiaomis funktionieren.

                                Natürlich vorausgesetzt, dass du die entsprechenden Datenpunkte für Xiaomi bekommst. Das hat aber nichts mit dem script zu tun.

                                vG Looxer `

                                Datenpunkte sind vorhanden

                                ! 3690_xiaomi_sensor.jpg

                                Habe irgendwie auch das Problem das in meinem View immer wieder eine manuell gesetzte Temperatur 17° erscheint wo ich mir noch nicht sicher bin wo die her kommt

                                ! 3690_17.jpg

                                grüße Fabian

                                1 Reply Last reply Reply Quote 0
                                • L
                                  looxer01 last edited by

                                  @swordfisch:

                                  Habe irgendwie auch das Problem das in meinem View immer wieder eine manuell gesetzte Temperatur 17° erscheint wo ich mir noch nicht sicher bin wo die her kommt `
                                  Hi,

                                  ich will ja nicht ausschliessen, dass da noch ein Fehler ist. Allerdings ohne weitergehende Infos ist es schwer was zu sagen.

                                  Es gibt Quellen dazu:

                                  1. die Datenpunkte der Raeume/Profile die betroffen sind

                                  das beste wäre ein download: Admin–Objekte: markieren des Raum/Profil und dann ICON download object list. als txt-Datei mir senden

                                  2. die Logs ( im Script - debug auf true und dann das log mir senden mit dem Zeitpunkt wo es passiert. (siehst du an der Gültigkeit der manuellen temp.

                                  Damit es nicht kalt wird kannst du die Dauer der Gültigkeit auf -1 setzen, dann werden alle manuellen temps ignoriert.

                                  Ich gehe darüber hinaus davon aus, dass dein Thermostat auf MANU steht.

                                  vG Looxer

                                  1 Reply Last reply Reply Quote 0
                                  • S
                                    swordfisch last edited by

                                    Bei mir war das Problem das der Wandthermostat bzw nicht alle Kanäle dem Raum sowie auch der Gruppe Heizung zu geordnet waren dadurch sprach das script immer den HKT an und der WT überschrieb immer wieder die Temperaturen mit seinem Programm aus der Homematic nach der Anpassug in der Gruppen und Räume in der Homematic und im IOBroker lief es dann und meine mysteriösen 17Grad waren verschwunden.

                                    Jetzt verusche ich noch Xiaomi Fensterkontakte zu integrieren

                                    und bin darauf gestoßen das im Viz ja der zustand angezeigt wird dies aber mit einem fenstersensor direkt verknüpft ist wäre es nicht besser das über eine variable laufen zu lassen so das man mehrere Fenster sensoren pro raum haben könnte oder geht das jetzt auch?

                                    grüße swordfisch

                                    1 Reply Last reply Reply Quote 0
                                    • L
                                      looxer01 last edited by

                                      @swordfisch:

                                      so das man mehrere Fenster sensoren pro raum haben könnte oder geht das jetzt auch? `

                                      Hi,

                                      guter Punkt. Habe ich nicht implementiert aber ich habe den aktuellen Öffnungsstatus des Raumes in einer internen Tabelle. Den bräuchte ich nur in den Rauminformationen zu speichern.

                                      Schaue ich mir am nächsten WE an. Wenn alles gut geht, dann kann ich dann auch eine neue Version posten.

                                      vG Looxer

                                      1 Reply Last reply Reply Quote 0
                                      • apollon77
                                        apollon77 last edited by

                                        Doch doch … das Skript sucht alle Sensoren pro Raum und Subscribed zu allen. Sobald eins auf geht senkt er ab. Also das klappt bei mir 🙂

                                        1 Reply Last reply Reply Quote 0
                                        • L
                                          looxer01 last edited by

                                          @apollon77:

                                          Sobald eins auf geht senkt er ab `
                                          jap, klar.

                                          aber in der View gibt es einen Fensterstatus und der bezieht sich auf genau einen Sensor.

                                          Es können aber auch mehrere Sensoren im Spiel sein. Damit wird der Raumstatus in der View nicht richtig angezeigt.

                                          Das könnte ich im Script relativ einfach durch einen Raumstatus lösen. –> Wenn irgendein Sensor des Raumes geöffnet - dann setze status true

                                          vG Looxer

                                          1 Reply Last reply Reply Quote 0
                                          • S
                                            swordfisch last edited by

                                            das habe ich bei mir schon mit einem blockly script gelöst aber wenn es ins script integriert wird macht es das natürlich einfacher

                                            meine xiaomi sensoren ins script zu integrieren ist mir noch nicht gelungen

                                            ! objekt des sensors
                                            3690_xiaomi_sensor.jpg
                                            ! Zeile aus dem script
                                            ! NoneHMSenorTab[3] = ['initial', 'mihome.0.devices', 'magnet_158d0001dacff7', 'state', false, false];

                                            vlt kann mir ja wer sagen wo der fehler ist

                                            grüße swordfisch

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.0k
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            climate heating javascript template
                                            115
                                            1127
                                            306494
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo