Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Vorlage] Heizungsthermostatsteuerung - 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 - Script

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

      @PicNic:

      aber scheinbar ist da noch etwas anderes im Argen … `

      Hi PicNic,

      dann muessen wir mal sehen an welcher stelle der Ausstieg ist. Ich habe ein paar log-einträge hinzugefügt.

      Kannst du die Routine nochmal austauschen und den Ausschnitt des logs senden.

      vielen Dank

      Looxer

      //-----------------------------------------------------------------------------------------------------
      // Funktion SensorStatCalc Setzt den Sensorsatus um in true oder false fuer Geraete die mehr Status zur Verfuegung stellen
      //-----------------------------------------------------------------------------------------------------
      function SensorStatCalc (id,devtype) {
      var SensorStatus = getState(id).val;   
      
      log( "aktuelle Sensor-ID ist " + id + " Status des sensors ist "+ SensorStatus)
      log("device type ist " + devtype)
      
      if(SensorStatus === true || SensorStatus === false ) {
          return SensorStatus;
      }
      
      log("Sensorstatus war nicht true oder false ")
      
      // Sensor    HM-Sec-RHS ist ein Fenster Kipp Sensor mit Status 0 = geschlossen 1 = gekippt 2 = geoeffnet
      if(devtype === "HM-Sec-RHS" ) {
          if(SensorStatus > 0 ) {
              return true;         // Sensor geoeffnet
            } else {
              return false;        // Sensor geschlossen
          }    // endif es ist ein HM-Sec-RHS
      }
      
      // jetzt checken ob der NoneHM Sensor geschlossen oder geöffnet ist
      if(devtype === "NoneHM") {
      log("devtype ist NoneHM")
          for (var x in NoneHMSenorTab ) {
              if (id === NoneHMSenorTab[x][1]+"."+NoneHMSenorTab[x][2]+"."+NoneHMSenorTab[x][3]) {
      log ("id-vergleich ist "+ NoneHMSenorTab[x][1]+"."+NoneHMSenorTab[x][2]+"."+NoneHMSenorTab[x][3]) 
      
                 if(SensorStatus ==  NoneHMSenorTab[x][4] ) {  
                      return false;
                 } else {
                      return true;
                 }
              }
          }
      } // Ende NoneHM check
      
      log("Routine SensorStatCalc: Sensorstatus fuer Sensor " + id + " nicht ermittelbar - Logik nicht implementiert","info");
      return false;  // fall back wenn keine Bedingung zutrifft = nicht implementierte Logik
      
      } // endfunction
      
      
      1 Reply Last reply Reply Quote 0
      • P
        PicNic last edited by

        Hi Looxer,

        vielen Dank. Sehr gern! … hier die Logs:

        ! Start:

        javascript.0	2017-11-19 11:01:43.609	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: registered 1 subscription and 1 schedule
        javascript.0	2017-11-19 11:01:43.607	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine GetDevices Devices initialisiert
        javascript.0	2017-11-19 11:01:43.607	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Liste der gefundenen Räume Dusche
        javascript.0	2017-11-19 11:01:43.607	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Liste der gefundenen Räume eq3
        javascript.0	2017-11-19 11:01:43.607	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Liste der gefundenen Räume Plots
        javascript.0	2017-11-19 11:01:43.607	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Liste der gefundenen Räume RSSI
        javascript.0	2017-11-19 11:01:43.607	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Liste der gefundenen Räume Kalender
        javascript.0	2017-11-19 11:01:43.607	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Liste der gefundenen Räume Keller
        javascript.0	2017-11-19 11:01:43.607	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Liste der gefundenen Räume Entwicklung
        javascript.0	2017-11-19 11:01:43.607	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Liste der gefundenen Räume Haus
        javascript.0	2017-11-19 11:01:43.606	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Liste der gefundenen Räume Garage
        javascript.0	2017-11-19 11:01:43.606	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Liste der gefundenen Räume HMS
        javascript.0	2017-11-19 11:01:43.606	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Liste der gefundenen Räume CUL_HM
        javascript.0	2017-11-19 11:01:43.606	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Liste der gefundenen Räume Log
        javascript.0	2017-11-19 11:01:43.606	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Liste der gefundenen Räume Wohnzimmer
        javascript.0	2017-11-19 11:01:43.606	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Liste der gefundenen Räume Wetter
        javascript.0	2017-11-19 11:01:43.606	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Liste der gefundenen Räume Unsorted
        javascript.0	2017-11-19 11:01:43.606	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Liste der gefundenen Räume Homebridge
        javascript.0	2017-11-19 11:01:43.606	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Liste der gefundenen Räume Arbeitszimmer
        javascript.0	2017-11-19 11:01:43.606	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Liste der gefundenen Räume System
        javascript.0	2017-11-19 11:01:43.606	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine GetDevices NoneHM Sensoren: Dusche,fhem.0.OG_DU_TF.state,NoneHM,OG_DU_TF state,fhem.0,state,OG_DU_TF state,false,closed,false
        javascript.0	2017-11-19 11:01:43.605	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine getdevice fuer NoneHMSenorTab Dusche
        javascript.0	2017-11-19 11:01:43.500	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine getdevice fuer Dusche
        javascript.0	2017-11-19 11:01:43.498	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine getdevice fuer Dusche
        javascript.0	2017-11-19 11:01:43.493	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine getdevice fuer Arbeitszimmer
        javascript.0	2017-11-19 11:01:43.487	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Gibt es ein zugeordnetes Gerät für den Raum Dusche wird jetzt ueberprueft
        javascript.0	2017-11-19 11:01:43.481	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Gibt es ein zugeordnetes Gerät für den Raum eq3 wird jetzt ueberprueft
        javascript.0	2017-11-19 11:01:43.476	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Gibt es ein zugeordnetes Gerät für den Raum Plots wird jetzt ueberprueft
        javascript.0	2017-11-19 11:01:43.470	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Gibt es ein zugeordnetes Gerät für den Raum RSSI wird jetzt ueberprueft
        javascript.0	2017-11-19 11:01:43.465	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Gibt es ein zugeordnetes Gerät für den Raum Kalender wird jetzt ueberprueft
        javascript.0	2017-11-19 11:01:43.459	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Gibt es ein zugeordnetes Gerät für den Raum Keller wird jetzt ueberprueft
        javascript.0	2017-11-19 11:01:43.453	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Gibt es ein zugeordnetes Gerät für den Raum Entwicklung wird jetzt ueberprueft
        javascript.0	2017-11-19 11:01:43.447	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Gibt es ein zugeordnetes Gerät für den Raum Haus wird jetzt ueberprueft
        javascript.0	2017-11-19 11:01:43.441	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Gibt es ein zugeordnetes Gerät für den Raum Garage wird jetzt ueberprueft
        javascript.0	2017-11-19 11:01:43.435	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Gibt es ein zugeordnetes Gerät für den Raum HMS wird jetzt ueberprueft
        javascript.0	2017-11-19 11:01:43.420	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Gibt es ein zugeordnetes Gerät für den Raum CUL_HM wird jetzt ueberprueft
        javascript.0	2017-11-19 11:01:43.411	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Gibt es ein zugeordnetes Gerät für den Raum Log wird jetzt ueberprueft
        javascript.0	2017-11-19 11:01:43.390	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Gibt es ein zugeordnetes Gerät für den Raum Wohnzimmer wird jetzt ueberprueft
        javascript.0	2017-11-19 11:01:43.380	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Gibt es ein zugeordnetes Gerät für den Raum Wetter wird jetzt ueberprueft
        javascript.0	2017-11-19 11:01:43.352	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Gibt es ein zugeordnetes Gerät für den Raum Unsorted wird jetzt ueberprueft
        javascript.0	2017-11-19 11:01:43.345	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Gibt es ein zugeordnetes Gerät für den Raum Homebridge wird jetzt ueberprueft
        javascript.0	2017-11-19 11:01:43.337	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Gibt es ein zugeordnetes Gerät für den Raum Arbeitszimmer wird jetzt ueberprueft
        javascript.0	2017-11-19 11:01:43.330	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Gibt es ein zugeordnetes Gerät für den Raum System wird jetzt ueberprueft
        javascript.0	2017-11-19 11:01:43.285	info	Start javascript script.js.common.Test.Heizungsthermostatsteuerung_2_0
        >! ````
        >! Normaler Lauf:
        

        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Heizungsscript verarbeitung durchgelaufen
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0:
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine LoopRooms Ende Abarbeitung fuer Raum Dusche
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ExecuteTempDetermination: raum DuscheSolltemp nach overrule: 19 Findung
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ExecuteTempDetermination: raum DuscheSolltemp nach Switchtime: 19 Findung Sa_18:00:00
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine SelectSwichTime: Schedule verwendet Sa Timeslot ist 18:00:00 Solltemp ist 19 RaumProfil ist: 1
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine DetermineSchedule: Heute ist = So Tag fuer den Schedule ist = Sa
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: aktuelle Millisekunden 1511085720000
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ManAdjustments: DelayTime fuer Raum Dusche ist 0
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine LoopDevices: Sensorstatus fuer raum Dusche ist false
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ExecuteTempDetermination: raum DuscheSolltemp nach overrule: 19 Findung
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ExecuteTempDetermination: raum DuscheSolltemp nach Switchtime: 19 Findung Sa_18:00:00
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine SelectSwichTime: Schedule verwendet Sa Timeslot ist 18:00:00 Solltemp ist 19 RaumProfil ist: 1
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine DetermineSchedule: Heute ist = So Tag fuer den Schedule ist = Sa
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: aktuelle Millisekunden 1511085720000
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ManAdjustments: DelayTime fuer Raum Dusche ist 0
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine LoopDevices: Sensorstatus fuer raum Dusche ist false
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine LoopRooms Starte Abarbeitung fuer Raum Dusche
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ChckRoom - Dem Raum Dusche ist ein Gerät zugeordnet
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0:
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine LoopRooms Ende Abarbeitung fuer Raum Arbeitszimmer
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: 6b.FallManuelle Temperatur noch aktuell - warten bis 2017/11/19 12:00:00 - Temperatur ist 20
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: aktuelle Millisekunden 1511085720000
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ManAdjustments: DelayTime fuer Raum Arbeitszimmer ist 0
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine LoopDevices: Sensorstatus fuer raum Arbeitszimmer ist false
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine LoopRooms Starte Abarbeitung fuer Raum Arbeitszimmer
        javascript.0 2017-11-19 11:02:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ChckRoom - Dem Raum Arbeitszimmer ist ein Gerät zugeordnet

        ! ````
        ! Sensor geöffnet:

        javascript.0	2017-11-19 11:05:00.615	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Heizungsscript verarbeitung durchgelaufen
        javascript.0	2017-11-19 11:05:00.615	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0:
        javascript.0	2017-11-19 11:05:00.615	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine LoopRooms Ende Abarbeitung fuer Raum Dusche
        javascript.0	2017-11-19 11:05:00.615	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ExecuteTempDetermination: raum DuscheSolltemp nach overrule: 19 Findung
        javascript.0	2017-11-19 11:05:00.615	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ExecuteTempDetermination: raum DuscheSolltemp nach Switchtime: 19 Findung Sa_18:00:00
        javascript.0	2017-11-19 11:05:00.615	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine SelectSwichTime: Schedule verwendet Sa Timeslot ist 18:00:00 Solltemp ist 19 RaumProfil ist: 1
        javascript.0	2017-11-19 11:05:00.615	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine DetermineSchedule: Heute ist = So Tag fuer den Schedule ist = Sa
        javascript.0	2017-11-19 11:05:00.615	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: aktuelle Millisekunden 1511085900000
        javascript.0	2017-11-19 11:05:00.615	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ManAdjustments: DelayTime fuer Raum Dusche ist 0
        javascript.0	2017-11-19 11:05:00.615	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine LoopDevices: Sensorstatus fuer raum Dusche ist false
        javascript.0	2017-11-19 11:05:00.615	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ExecuteTempDetermination: raum DuscheSolltemp nach overrule: 19 Findung
        javascript.0	2017-11-19 11:05:00.615	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ExecuteTempDetermination: raum DuscheSolltemp nach Switchtime: 19 Findung Sa_18:00:00
        javascript.0	2017-11-19 11:05:00.615	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine SelectSwichTime: Schedule verwendet Sa Timeslot ist 18:00:00 Solltemp ist 19 RaumProfil ist: 1
        javascript.0	2017-11-19 11:05:00.615	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine DetermineSchedule: Heute ist = So Tag fuer den Schedule ist = Sa
        javascript.0	2017-11-19 11:05:00.615	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: aktuelle Millisekunden 1511085900000
        javascript.0	2017-11-19 11:05:00.615	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ManAdjustments: DelayTime fuer Raum Dusche ist 0
        javascript.0	2017-11-19 11:05:00.615	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine LoopDevices: Sensorstatus fuer raum Dusche ist false
        javascript.0	2017-11-19 11:05:00.615	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine LoopRooms Starte Abarbeitung fuer Raum Dusche
        javascript.0	2017-11-19 11:05:00.615	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ChckRoom - Dem Raum Dusche ist ein Gerät zugeordnet
        javascript.0	2017-11-19 11:05:00.615	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0:
        javascript.0	2017-11-19 11:05:00.615	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine LoopRooms Ende Abarbeitung fuer Raum Arbeitszimmer
        javascript.0	2017-11-19 11:05:00.615	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: 6b.FallManuelle Temperatur noch aktuell - warten bis 2017/11/19 12:00:00 - Temperatur ist 20
        javascript.0	2017-11-19 11:05:00.615	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: aktuelle Millisekunden 1511085900000
        javascript.0	2017-11-19 11:05:00.615	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ManAdjustments: DelayTime fuer Raum Arbeitszimmer ist 0
        javascript.0	2017-11-19 11:05:00.615	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine LoopDevices: Sensorstatus fuer raum Arbeitszimmer ist false
        javascript.0	2017-11-19 11:05:00.614	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine LoopRooms Starte Abarbeitung fuer Raum Arbeitszimmer
        javascript.0	2017-11-19 11:05:00.614	info	script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ChckRoom - Dem Raum Arbeitszimmer ist ein Gerät zugeordnet
        >! ````
        >! und wieder geschlossen:
        

        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Heizungsscript verarbeitung durchgelaufen
        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0:
        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine LoopRooms Ende Abarbeitung fuer Raum Dusche
        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ExecuteTempDetermination: raum DuscheSolltemp nach overrule: 19 Findung
        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ExecuteTempDetermination: raum DuscheSolltemp nach Switchtime: 19 Findung Sa_18:00:00
        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine SelectSwichTime: Schedule verwendet Sa Timeslot ist 18:00:00 Solltemp ist 19 RaumProfil ist: 1
        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine DetermineSchedule: Heute ist = So Tag fuer den Schedule ist = Sa
        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: aktuelle Millisekunden 1511085960000
        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ManAdjustments: DelayTime fuer Raum Dusche ist 0
        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine LoopDevices: Sensorstatus fuer raum Dusche ist false
        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ExecuteTempDetermination: raum DuscheSolltemp nach overrule: 19 Findung
        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ExecuteTempDetermination: raum DuscheSolltemp nach Switchtime: 19 Findung Sa_18:00:00
        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine SelectSwichTime: Schedule verwendet Sa Timeslot ist 18:00:00 Solltemp ist 19 RaumProfil ist: 1
        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine DetermineSchedule: Heute ist = So Tag fuer den Schedule ist = Sa
        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: aktuelle Millisekunden 1511085960000
        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ManAdjustments: DelayTime fuer Raum Dusche ist 0
        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine LoopDevices: Sensorstatus fuer raum Dusche ist false
        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine LoopRooms Starte Abarbeitung fuer Raum Dusche
        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ChckRoom - Dem Raum Dusche ist ein Gerät zugeordnet
        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0:
        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine LoopRooms Ende Abarbeitung fuer Raum Arbeitszimmer
        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: 6b.FallManuelle Temperatur noch aktuell - warten bis 2017/11/19 12:00:00 - Temperatur ist 20
        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: aktuelle Millisekunden 1511085960000
        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ManAdjustments: DelayTime fuer Raum Arbeitszimmer ist 0
        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine LoopDevices: Sensorstatus fuer raum Arbeitszimmer ist false
        javascript.0 2017-11-19 11:06:00.622 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine LoopRooms Starte Abarbeitung fuer Raum Arbeitszimmer
        javascript.0 2017-11-19 11:06:00.621 info script.js.common.Test.Heizungsthermostatsteuerung_2_0: Routine ChckRoom - Dem Raum Arbeitszimmer ist ein Gerät zugeordnet

        ! ````

        Viele Grüße

        PicNic

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

          sorry, ich habe vergessen zu erwähnen, dass du den Verschluss erst öffnen und dann schliessen solltest.

          und nur dieser Ablauf ist für die logs relevant.

          oder hast du das gemacht und die Routine wird gar nicht angesteuert ? dann würde was mit der subsription nicht stimmen.

          vG Looxer

          1 Reply Last reply Reply Quote 0
          • P
            PicNic last edited by

            Hallo Looxer,

            ich habe es genau so gemacht.

            Das Skript geändert und bei geschlossenem Sensor gestartet.

            Anschließend den Sensor einmal geöffnet und dann wieder geschlossen.

            In dieser Reihenfolge sind auch die Auszüge des Logs in meinem vorherigen Post …

            War das korrekt so?

            Viele Grüße

            PicNic

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

              wenn ich das log lese, dann sehe ich, dass das log von 11:05:00 hist - also genau zur Laufzeit des schedules.

              Wenn du das Fenster öffnest fällt das normalerweise nicht gleichzeitig mit dem schedule zusammen.

              Also sagst du, dass es keinen log-Eintrag gibt von dem Zeitpunkt an dem du das Fenster öffnest und schliesst ?

              vG Looxer

              EDIT:

              falls das so ist, dann kannst du überprüfen ob die subscription gebucht ist.

              Hierzu habe ich mal dieses kleine Tool geschrieben. Es speichert die subscriptions in eine externe csv Datei.

              lass es mal laufen und schaue dir das Ergebnis mit excel an. Die subscription muss für den Datenpunkt des Sensors gebucht sein.

              305_subscriptions.txt

              und falls die subscriptions nicht gebucht ist, dann mache bitte folgende Anpassungen

              Originalcode

                      on({id: SensorList[y][1]}, function(obj)    { 
                          if (obj.state.ack === false) {
                              SensorChange(obj.id); 
                          } // End ack
                      });    // ende on id
              
              

              neuer Code

                      on({id: SensorList[y][1]}, function(obj)    { 
              //            if (obj.state.ack === false) {
                              SensorChange(obj.id); 
               //           } // End ack
                      });    // ende on id
              
              
              1 Reply Last reply Reply Quote 0
              • P
                PicNic last edited by

                @looxer01:

                und falls die subscriptions nicht gebucht ist, dann mache bitte folgende Anpassungen

                Originalcode

                        on({id: SensorList[y][1]}, function(obj)    { 
                            if (obj.state.ack === false) {
                                SensorChange(obj.id); 
                            } // End ack
                        });    // ende on id
                
                

                neuer Code

                        on({id: SensorList[y][1]}, function(obj)    { 
                //            if (obj.state.ack === false) {
                                SensorChange(obj.id); 
                 //           } // End ack
                        });    // ende on id
                
                ```` `  
                

                das hat es offensichtlich gebracht … du hast eine PN 🙂

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

                  Danke für die Rückmeldung.

                  Es waren tatsächlich zwei Probleme mit den nicht HM-Sensoren.

                  Die Subscriptions wurden bei Adapterverwendung nicht gebucht

                  und auch das Coding für Fälle anderen Ausprägungen für offen und geschlossen als true und false fehlte noch.

                  Aber schön, dass es jetzt funktioniert.

                  Die Aenderungen wird in der nächsten Version enthalten sein.

                  vG Looxer

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

                    Hallo,

                    die neue ScriptVersion legt nach leichten Anpassungen die entsprechenden Datenpunkte von meinen HMIP Geräten an. Musste noch ein paar HMIP Wandthermostate hinzufügen, da es hier je nach Ausführung ,mit Display usw. verschiedene Typen gibt.

                    Das einzigste was bis jetzt noch nicht geht ist das automatische umschalten auf Manuell, ist jetzt kein großes Problem aber es ist insofern seltsam als das das Script im entsprechenden Datenpunkt des Gerätes (Control Mode) die 1 setzt aber das Gerät es nicht übernimmt, wenn ich es von Hand dort eingebe schaltet das Gerät sofort auf Manuell?!

                    Aber ansonsten sieht das schon gut aus, hab auch schon eine entsprechende Anwesenheitserkennung über dein TR064 Script eingebunden was auch sehr gut funktioniert

                    Vielen Dank noch mal für die tolle Arbeit Looxer

                    1 Reply Last reply Reply Quote 0
                    • P
                      PicNic last edited by

                      @looxer01:

                      Aber schön, dass es jetzt funktioniert.

                      Die Aenderungen wird in der nächsten Version enthalten sein.

                      vG Looxer `

                      Vielen Dank 🙂

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

                        @Sylabil:

                        nach leichten Anpassungen die entsprechenden Datenpunkte von meinen HMIP Geräten an. Musste noch ein paar HMIP Wandthermostate hinzufügen, da es hier je nach Ausführung ,mit Display usw. verschiedene Typen gibt. `

                        Hi,

                        super, dass es funktioniert.

                        Eine Bitte: könntest du mir die Konfiguration deiner IP Geräte senden ?

                        Die würde ich gerne dann allgemein hinzufügen.

                        vielen Dank

                        Looxer

                        1 Reply Last reply Reply Quote 0
                        • R
                          RamSauer last edited by

                          Hallo Looxer!!

                          Sehr, sehr schöne Arbeit! Ganz großes Lob! Habe den Beitrag erst jetzt entdeckt und werde es die nächsten Tage bei mir einrichten.

                          Frage:

                          Ich verwende zur Fensterüberwachung den HM Wired 12fach-Kontaktsensor für Schaltzustandserkennung (HMW-Sen-SC-12-DR). Gehe ich recht in der Annahme, dass es reicht, bei den

                          // Typen-Tabelle der Verschlusssensoren fuer Homematic Geräte

                          im Script einfach folgende Zeile zu ergänzen?

                          SensorTypeTab[6] = ['hm-rpc.2.',  'HMW-Sen-SC-12-DR'  , 'Schließerkontakt HMW' ,     'HMW',  '1.STATE' ,        false,         false,                 false];
                          

                          Natürlich mit der entsprechenden hm-rpc Instanz für die Wired Produkte.

                          Oder muss ich das eventuell für jeden der 12 Eingänge machen?

                          
                          SensorTypeTab[6] = ['hm-rpc.2.',  'HMW-Sen-SC-12-DR'  , 'Schließerkontakt HMW' ,     'HMW',  '1.STATE' ,        false,         false,                 false];
                          SensorTypeTab[7] = ['hm-rpc.2.',  'HMW-Sen-SC-12-DR'  , 'Schließerkontakt HMW' ,     'HMW',  '2.STATE' ,        false,         false,                 false];
                          SensorTypeTab[8] = ['hm-rpc.2.',  'HMW-Sen-SC-12-DR'  , 'Schließerkontakt HMW' ,     'HMW',  '3.STATE' ,        false,         false,                 false];
                          SensorTypeTab[9] = ['hm-rpc.2.',  'HMW-Sen-SC-12-DR'  , 'Schließerkontakt HMW' ,     'HMW',  '4.STATE' ,        false,         false,                 false];
                          SensorTypeTab[10] = ['hm-rpc.2.',  'HMW-Sen-SC-12-DR'  , 'Schließerkontakt HMW' ,     'HMW',  '5.STATE' ,        false,         false,                 false];
                          
                          ... 
                          
                          

                          Danke für die Antwort!

                          Gruß

                          Markus

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

                            Hi,
                            @RamSauer:

                            m Script einfach folgende Zeile zu ergänzen? `

                            so sollte es sein. Damit werden alle Geräte eingelesen, wenn sie dem entsprechenden Gewerk zugeorndet sind.

                            Nur bei Nicht-HM Sensoren müssen alle Datenpunkte eingegeben werden. Bei HM wird automatisch anhand des Types eingelesen.

                            Eine Bitte. Wenn das so funktioniert, dann sag mir bitte Bescheid, dann nehme ich diesen Type mit auf.

                            Ansonsten schauen wir dann drüber damit diese Sensoren auf funktionieren. Es sollte aber auf jeden Fall funktionieren, wenn die Sensoren true and false annehmen für geschlossen/geöffnet. Ansonsten brauchts ggf noch einen Fix. Ist aber halb so wild.

                            vG Looxer

                            1 Reply Last reply Reply Quote 0
                            • R
                              RamSauer last edited by

                              @looxer01:

                              Eine Bitte. Wenn das so funktioniert, dann sag mir bitte Bescheid, dann nehme ich diesen Type mit auf.

                              Ansonsten schauen wir dann drüber damit diese Sensoren auf funktionieren. Es sollte aber auf jeden Fall funktionieren, wenn die Sensoren true and false annehmen für geschlossen/geöffnet. Ansonsten brauchts ggf noch einen Fix. Ist aber halb so wild.

                              vG Looxer `

                              Ich werde berichten!!!

                              Danke!

                              1 Reply Last reply Reply Quote 0
                              • M
                                mrMuppet last edited by

                                Ich hab mal wieder den Fehler, dass anscheinend irgendwelche Datentypen sich verstellen:````
                                javascript.0 2017-12-01 21:00:05.721 warn at Object. (script.js.working.Heizungsther_0_81_2:466:25)
                                javascript.0 2017-12-01 21:00:05.721 warn at ThermostatChange (script.js.working.Heizungsther_0_81_2:775:22)
                                javascript.0 2017-12-01 21:00:05.721 warn at ManAdjustments (script.js.working.Heizungsther_0_81_2:952:5)
                                javascript.0 2017-12-01 21:00:05.717 warn Wrong type of javascript.0.Heizung.Heizplan.Schlafzimmer.View_Manually_Adjusted: "number". Please fix, while deprecated and will not work in next versions.

                                
                                irgend eine Idee?
                                1 Reply Last reply Reply Quote 0
                                • L
                                  looxer01 last edited by

                                  @mrMuppet:

                                  irgend eine Idee? `
                                  Ich glaube nicht, dass sich was verstellt. vermutlich gibt es noch Räume, die nicht auf number umgestellt waren.

                                  Check das bitte mal für alle Räume. Das Object …..View_Manually_Adjusted muss für alle Räume auf number stehen.

                                  vG Looxer

                                  1 Reply Last reply Reply Quote 0
                                  • M
                                    mrMuppet last edited by

                                    @looxer01:

                                    Ich glaube nicht, dass sich was verstellt. vermutlich gibt es noch Räume, die nicht auf number umgestellt waren.

                                    Check das bitte mal für alle Räume. Das Object …..View_Manually_Adjusted muss für alle Räume auf number stehen. `
                                    Ja, das wars! Ein Raum stand noch auf Logikwert. Aber wie ist es zu dieser Einstellung gekommen? Die Datenpunkte hat doch alle dein Skript angelegt… ?

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

                                      @mrMuppet:

                                      Ja, das wars! Ein Raum stand noch auf Logikwert. Aber wie ist es zu dieser Einstellung gekommen? Die Datenpunkte hat doch alle dein Skript angelegt… ? `

                                      korrekt, allerdings hatte das Script zu einer früheren Version einen Fehler.

                                      Wenn du also das Script mit einer frühreren Version laufen lassen hast, dann wurden dann schon ein paar Datenpunkte mit falschen Datentypen angelegt.

                                      vG Looxer

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

                                        Hi,

                                        habe Dein super Script auch seit ca. 1 Woche laufen - Danke dafür.

                                        Heute ist mir was aufgefallen (was ich aber nochmal überprüfen möchte):

                                        Ich habe im Kalender "Urlaub_anwesend" hinterlegt - allerdings über 2 Tage (also über Mitternacht hinweg).

                                        Die Einbindung via iCal funktioniert, aber um Mitternacht wurden wieder die normalen Abläufe und Absenkungen verwendet.

                                        Erst als ich den Kalendereintrag gesplittet und auf die beiden Tage verteilt habe, lief es wie gewünscht.

                                        Ich werde das heute Abend / Nacht nochmal probieren - vielleicht habe ich auch nur einen Fehler gemacht.

                                        Gruß,

                                        Eric

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

                                          Ich glaube dazu gibt schon ein issue beim iCal Adapter …

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

                                            @eric2905:

                                            Die Einbindung via iCal funktioniert, aber um Mitternacht wurden wieder die normalen Abläufe und Absenkungen verwendet. `

                                            die Frage ist was bei den Events bei den ICAL Datenpunkten passiert.

                                            Die subscriptions gehen ja darauf und checken, ob ein Event auf true oder false steht.

                                            Protokoliere doch mal die Aenderungen auf dem ICAL Event was da über Nacht passiert.

                                            Es wird demnächst eine überarbeitete Version geben 😉

                                            Allerdings gibt es an dieser Stelle keine Änderung.

                                            vG Looxer

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            963
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            34
                                            313
                                            74513
                                            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