NEWS
[Vorlage] Heizungsthermostatsteuerung 2.1 - Script
-
Hättest Du die Anleitung gelesen würdest du winen leeren View erstellen und dann ein Widget importieren, dann kommt auch kein Json Fehler. :roll:
-
Hallo Loxxer01
ich wollte dein neues Script v2.2 testen, leider erhalte ich eine Fehlermeldung. DIe Version 2.1 funktioniert problemlos
javascript.0 2018-12-31 10:22:46.353 error at Timer.listOnTimeout (timers.js:290:5) javascript.0 2018-12-31 10:22:46.353 error at tryOnTimeout (timers.js:323:5) javascript.0 2018-12-31 10:22:46.353 error at ontimeout (timers.js:511:34) javascript.0 2018-12-31 10:22:46.353 error at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1794:34) javascript.0 2018-12-31 10:22:46.353 error at Object. <anonymous>(script.js.STEUERUNG_Heizung.Thermostatsteuerung_2_2:521:9) javascript.0 2018-12-31 10:22:46.353 error at LoopRooms (script.js.STEUERUNG_Heizung.Thermostatsteuerung_2_2:936:13) javascript.0 2018-12-31 10:22:46.353 error at LoopDevices (script.js.STEUERUNG_Heizung.Thermostatsteuerung_2_2:987:47) javascript.0 2018-12-31 10:22:46.353 error Error in callback: TypeError: Cannot read property 'common' of null javascript.0 2018-12-31 10:22:46.351 warn Object "javascript.0.Heizung.zwave1.4.SET_TEMPERATURE" does not exist javascript.0 2018-12-31 10:22:46.299 warn at Timer.listOnTimeout (timers.js:290:5) javascript.0 2018-12-31 10:22:46.299 warn at tryOnTimeout (timers.js:323:5) javascript.0 2018-12-31 10:22:46.299 warn at ontimeout (timers.js:511:34) javascript.0 2018-12-31 10:22:46.299 warn at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1794:34) javascript.0 2018-12-31 10:22:46.299 warn at Object. <anonymous>(script.js.STEUERUNG_Heizung.Thermostatsteuerung_2_2:521:9) javascript.0 2018-12-31 10:22:46.298 warn at LoopRooms (script.js.STEUERUNG_Heizung.Thermostatsteuerung_2_2:920:13) javascript.0 2018-12-31 10:22:46.297 warn getState "javascript.0.Anwesenheitssteuerung.Userlist.JemandDa" not found (3) javascript.0 2018-12-31 10:22:44.294 warn at script.js.STEUERUNG_Heizung.Thermostatsteuerung_2_2:417:1 javascript.0 2018-12-31 10:22:44.294 warn at initializeData (script.js.STEUERUNG_Heizung.Thermostatsteuerung_2_2:424:5) javascript.0 2018-12-31 10:22:44.294 warn at getDevices (script.js.STEUERUNG_Heizung.Thermostatsteuerung_2_2:868:20) javascript.0 2018-12-31 10:22:44.293 warn at SensorStatCalc (script.js.STEUERUNG_Heizung.Thermostatsteuerung_2_2:1156:24) javascript.0 2018-12-31 10:22:44.292 warn getState "javascript.0.Heizung.zwave1.isOpen" not found (3) javascript.0 2018-12-31 10:22:44.290 warn at script.js.STEUERUNG_Heizung.Thermostatsteuerung_2_2:417:1 javascript.0 2018-12-31 10:22:44.290 warn at initializeData (script.js.STEUERUNG_Heizung.Thermostatsteuerung_2_2:424:5) javascript.0 2018-12-31 10:22:44.290 warn at getDevices (script.js.STEUERUNG_Heizung.Thermostatsteuerung_2_2:844:177) javascript.0 2018-12-31 10:22:44.289 warn getState "javascript.0.Heizung.zwave1.4.Fenster" not found (3) javascript.0 2018-12-31 10:22:44.288 warn Object "javascript.0.Heizung.zwave1.4.Fenster" does not exist javascript.0 2018-12-31 10:22:44.288 warn at script.js.STEUERUNG_Heizung.Thermostatsteuerung_2_2:417:1 javascript.0 2018-12-31 10:22:44.288 warn at initializeData (script.js.STEUERUNG_Heizung.Thermostatsteuerung_2_2:424:5) javascript.0 2018-12-31 10:22:44.288 warn at getDevices (script.js.STEUERUNG_Heizung.Thermostatsteuerung_2_2:844:177) javascript.0 2018-12-31 10:22:44.280 warn getState "javascript.0.Heizung.zwave1.isOpen" not found (3) javascript.0 2018-12-31 10:22:44.280 warn Object "javascript.0.Heizung.zwave1.isOpen" does not exist javascript.0 2018-12-31 10:22:40.781 warn Object "javascript.0.Heizung.zwave1.4.SET_TEMPERATURE" does not exist</anonymous></anonymous>
-
ich wollte dein neues Script v2.2 testen, leider erhalte ich eine Fehlermeldung. DIe Version 2.1 funktioniert problemlos `
Hi,wo hast du die her ?
Version 2.2 ist ja noch in Entwicklung. Allerdings hatte habe einzelne Versionen zum Testen einzelner funktionen per mail rausgeschickt.
vG Looxer
-
Die habe ich von Github oder ist das gar nicht die v2.2
Gruß
Adrian
Gesendet von iPhone mit Tapatalk Pro
-
Die habe ich von Github oder ist das gar nicht die v2.2
Gesendet von iPhone mit Tapatalk Pro `
aaaahne, das ist nur ein Test. Ich überlege die Source Codes dort abzulegen. Das hat den Vorteil auch alte Versionen halten zu können.
Was ich da abgelegt hatte war nur zum Testen von Github. Werde ich dann mal lieber wieder löschen :lol:
vG Looxer
edit - gelöscht aus Github
-
Ahhh [emoji23]
Und ich dachte das wäre die Neue Version [emoji4]
Gruß und guten Rutsch
Gesendet von iPhone mit Tapatalk Pro
-
Ich steuere mittels eines anderes Scriptes die Anwesenheitserkennung.
Hier steuere ich auch deinen Path:
javascript.0.Heizung.Heizplan.GlobaleParameter.Anwesenheit
Ich habe folgendes in deinem Script so eingetragen:
// Integration zur Anwesenheitsermittlung - var UseAnwesenheitserkennung = true; // wenn true, dann wird die o.g. Anwesenheitsvariable genutzt - Empfehlung erst im zweiten Schritt aktivieren var StateAnwesenheitFunction = JSPath + "Anwesenheitssteuerung.Userlist.JemandDa"; // Wenn UseAnwesenheitserkennung = true, dann muss der Pfad angepasst werden
Oder muss ich hier noch den Pfad zur obigen Variablen eintragen? Diese wird doch schon genutzt?
-
Oder muss ich hier noch den Pfad zur obigen Variablen eintragen? Diese wird doch schon genutzt? `
Hi,javascript.0.Heizung.Heizplan.GlobaleParameter.Anwesenheit
dieser Datenpunkt wird vom Programm intern genutzt und sollte auch im Pfad bleiben. Sonst wird nicht getriggert.
Brauchst hier also nichts zu ändern.
var UseAnwesenheitserkennung = true; var StateAnwesenheitFunction = JSPath + "Anwesenheitssteuerung.Userlist.JemandDa"; // Wenn UseAnwesenheitserkennung = true, dann muss der Pfad angepasst werden
Dies ist der Datenpunkt, den du auch ausserhalb des Heizungspfades legen kannst. Hierauf wird eine subscription gemacht.
Dein Script sollte also diesen bzw deinen angepassten Pfad der Varialbe StateAnwesenheitFunction nutzen.
vG Looer
-
Oder muss ich hier noch den Pfad zur obigen Variablen eintragen? Diese wird doch schon genutzt? `
Hi,javascript.0.Heizung.Heizplan.GlobaleParameter.Anwesenheit
dieser Datenpunkt wird vom Programm intern genutzt und sollte auch im Pfad bleiben. Sonst wird nicht getriggert.
Brauchst hier also nichts zu ändern.
var UseAnwesenheitserkennung = true; var StateAnwesenheitFunction = JSPath + "Anwesenheitssteuerung.Userlist.JemandDa"; // Wenn UseAnwesenheitserkennung = true, dann muss der Pfad angepasst werden
Dies ist der Datenpunkt, den du auch ausserhalb des Heizungspfades legen kannst. Hierauf wird eine subscription gemacht.
Dein Script sollte also diesen bzw deinen angepassten Pfad der Varialbe StateAnwesenheitFunction nutzen.
vG Looer `
Das heißt ich müsste einen Datenpunkt erstellen, den Pfad dann bei````
var StateAnwesenheitFunction = JSPath + "Anwesenheitssteuerung.Userlist.JemandDa"; // Wenn UseAnwesenheitserkennung = true, dann muss der Pfad angepasst werden -
jap, so isses
Gesendet von meinem SM-G965F mit Tapatalk
-
jap, so isses
Gesendet von meinem SM-G965F mit Tapatalk `
Hab das jetzt mal erledigt. Ich werde weiter berichten. Bislang funktioniert es
-
jap, so isses
Gesendet von meinem SM-G965F mit Tapatalk `
Hab das jetzt mal erledigt. Ich werde weiter berichten. Bislang funktioniert es `
Also die Schaltung funktioniert und der Anwesenheitsstatus wird auch abgewählt. Aber ich habe ein Problem, beim alten Script konnte man die "absenkung bei Abwesenheit" einstellen. Die Absenkung wurde dann in deinem Script von der aktuellen Solltemp abgezogen. Dies passiert so nicht mehr. Kann es sein, dass die jetzige eingestellte Abwesenheitstemp direkt an den Regler gesendet wird?
Wenn ja, kann man das wieder ändern?
-
Also die Schaltung funktioniert und der Anwesenheitsstatus wird auch abgewählt. Aber ich habe ein Problem, beim alten Script konnte man die "absenkung bei Abwesenheit" einstellen. Die Absenkung wurde dann in deinem Script von der aktuellen Solltemp abgezogen. Dies passiert so nicht mehr. Kann es sein, dass die jetzige eingestellte Abwesenheitstemp direkt an den Regler gesendet wird?
Wenn ja, kann man das wieder ändern? `
nein, das sollte so nicht sein. Das Script zieht die Absenkung von der SollTemp ab.Welche Version hast du aktuell ?
vG Looxer
-
Also die Schaltung funktioniert und der Anwesenheitsstatus wird auch abgewählt. Aber ich habe ein Problem, beim alten Script konnte man die "absenkung bei Abwesenheit" einstellen. Die Absenkung wurde dann in deinem Script von der aktuellen Solltemp abgezogen. Dies passiert so nicht mehr. Kann es sein, dass die jetzige eingestellte Abwesenheitstemp direkt an den Regler gesendet wird?
Wenn ja, kann man das wieder ändern? `
nein, das sollte so nicht sein. Das Script zieht die Absenkung von der SollTemp ab.Welche Version hast du aktuell ?
vG Looxer `
Ich habe mir schon gedacht, dass das so nicht sein kann.
Meine Version: 2.10 15.12.2018
Ich habe das heute mal simuliert, aber an den Solltemperaturen ändert sich nichts.
Hier mein aktueller View:
-
Ich habe mir schon gedacht, dass das so nicht sein kann.
Meine Version: 2.10 15.12.2018 `
Hi,im view sehe ich, dass du eine absolute Temp (14.5 Grad) eingegeben hast. Bei der Version 2.1 sind aber nur Absenkungsgrade bis 5 Grad möglich.
die absoluten Temps kommen erst mit 2.2. No way, dass das funktioniert mit 2.1
vG Looxer
-
Ich habe mir schon gedacht, dass das so nicht sein kann.
Meine Version: 2.10 15.12.2018 `
Hi,im view sehe ich, dass du eine absolute Temp (14.5 Grad) eingegeben hast. Bei der Version 2.1 sind aber nur Absenkungsgrade bis 5 Grad möglich.
die absoluten Temps kommen erst mit 2.2. No way, dass das funktioniert mit 2.1
vG Looxer `
Ok, ich verstehe. Wenn man dein aktuelles VIEW lädt und verwendet steht dies schon so drin ;). Man kann aber auch nur minimal 12°C im VIEW einstellen.
-
Ok, ich verstehe. Wenn man dein aktuelles VIEW lädt und verwendet steht dies schon so drin ;). Man kann aber auch nur minimal 12°C im VIEW einstellen. `
Ich habe gerade das 3-Profile Widget Set probiert. Da sind es 5 Gradund es scheint, dass ich im 1-Profil Set bereits die full range drinnen hatte. Das funktioniert leider nicht.
Mich wundert nur, dass es jetzt erst hochkommt.
Ich werde das Widget Set korrigierten - Du kannst aber zwischenzeitlich das Widget für die TempAbsenkung aus dem 3-Profile set verwenden.
vG Looxer
-
Ok, ich verstehe. Wenn man dein aktuelles VIEW lädt und verwendet steht dies schon so drin ;). Man kann aber auch nur minimal 12°C im VIEW einstellen. `
Ich habe gerade das 3-Profile Widget Set probiert. Da sind es 5 Gradund es scheint, dass ich im 1-Profil Set bereits die full range drinnen hatte. Das funktioniert leider nicht.
Mich wundert nur, dass es jetzt erst hochkommt.
Ich werde das Widget Set korrigierten - Du kannst aber zwischenzeitlich das Widget für die TempAbsenkung aus dem 3-Profile set verwenden.
vG Looxer `
Ich denke da müsste ich jetzt das ganze Widget umbauen. Kann man das nicht vereinfachen?
In der Art, dass man nur ein paar Zahlen ändert?
LG
-
ch denke da müsste ich jetzt das ganze Widget umbauen. Kann man das nicht vereinfachen?
In der Art, dass man nur ein paar Zahlen ändert? `
du brauchst doch nur das eine Widget auszutauschen. Sache von ein paar Minuten.[{"tpl":"tplJquiSelectList","data":{"oid":"javascript.0.Heizung.Heizplan.Schlafzimmer.Profil-3.ProfilParameter_AbwesenheitAbsenkung","values":"0;1;2;3;4;5;6;7;8;9;10;11;12,13;14;15;16;17;18;19;20","texts":"0;0.5;1.0;1.5;2.0;2.5;3.0;3.5;4.0;4.5;5.0;-0.5;-1.0;-1.5;-2.0;-2.5;-3.0;-3.5;-4.0;-4.5;-5.0","height":"262","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"class":"","open":false,"no_style":false,"g_visibility":true,"visibility-cond":"==","visibility-val":"3","visibility-groups-action":"hide","name":"Solltemperatur","lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"visibility-oid":"javascript.0.Heizung.Heizplan.Schlafzimmer.AktivesRaumProfil"},"style":{"left":"674px","top":"268px","width":"70px","height":"25px","z-index":8,"font-size":"12px","font-weight":"bold"},"widgetSet":"jqui"}]
-
ch denke da müsste ich jetzt das ganze Widget umbauen. Kann man das nicht vereinfachen?
In der Art, dass man nur ein paar Zahlen ändert? `
du brauchst doch nur das eine Widget auszutauschen. Sache von ein paar Minuten.[{"tpl":"tplJquiSelectList","data":{"oid":"javascript.0.Heizung.Heizplan.Schlafzimmer.Profil-3.ProfilParameter_AbwesenheitAbsenkung","values":"0;1;2;3;4;5;6;7;8;9;10;11;12,13;14;15;16;17;18;19;20","texts":"0;0.5;1.0;1.5;2.0;2.5;3.0;3.5;4.0;4.5;5.0;-0.5;-1.0;-1.5;-2.0;-2.5;-3.0;-3.5;-4.0;-4.5;-5.0","height":"262","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"class":"","open":false,"no_style":false,"g_visibility":true,"visibility-cond":"==","visibility-val":"3","visibility-groups-action":"hide","name":"Solltemperatur","lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"visibility-oid":"javascript.0.Heizung.Heizplan.Schlafzimmer.AktivesRaumProfil"},"style":{"left":"674px","top":"268px","width":"70px","height":"25px","z-index":8,"font-size":"12px","font-weight":"bold"},"widgetSet":"jqui"}] ```` `
Du hast natürlich Recht, mein Fehler.
Habe es so eben geändert, aber er will auf einen State schreiben "javascript.0.Heizung.Heizplan.Schlafzimmer.Profil-3.ProfilParameter_AbwesenheitAbsenkung" den es nicht mehr gibt. Hier müsste man auf folgenden State umstellen: "javascript.0.Heizung.Heizplan.Badezimmer.Profil-1.ProfilParameter_AbwesenheitAbsenkung" –> im jeweilig ausgewählten Profil.
Stimmt das soweit?
LG
EDIT:
so eben Versucht, in den oben neuen State "javascript.0.Heizung.Heizplan.Badezimmer.Profil-1.ProfilParameter_AbwesenheitAbsenkung" wird dann nicht geschrieben