NEWS
Logging Vielfach
-
Hallo, bin recht neu hier und versuche gerade meine Rolladensteuerung von der CCU2 auf iobroker umzuziehen. Ich habe nur geringe Programmierkenntnisse, versuche die Beispielscripte für meinen Bedarf anzupassen. Ich habe nun das Rolladenscript swoweit, dass es i.d.R. funktioniert, nur in der Log-Datei werden einige Zeilen/Befehle zigfach ausgegeben. Bis zum ERROR: You are sending too fast. Habe das Script schon aufgrund Beitrag hier im Forum von "setTimeout" auf "setStateDelayed" geändert, aber es ist das gleiche Ergebnis. Vermutlich habe irgendwo einen Fehler eingebaut.
Vielen Dank schon vorab für die Hilfe. -
Das interessante wäre, wie du die Funktion aufrufst.
Wenn hier ein Trigger auf Update drinn sein sollte,
Dann triggerte so lange das Rollo läuft.
Also: Skript in Zwischenablage und hier als Code einfügen.
-
Hallo, ja das wird auf update getriggert.
Es gibt aber auch einen Rolladen der mit schedule genau um 8 Uhr getriggert wird, bei dem ist aber das gleiche Logging. :?
createState('Rolladen.Standard_auf',true); //true = Rolladen auf createState('Rolladen.Wz01_70_ab',false); //true = Rolladen Wz01 auf 70% ab createState('Rolladen.Wz01_0_ab',false); //true = Rolladen Wz01 auf 0% ab var lvRoKue01; var lvRoEz01; var lvRoWz03; var lvRoWz02; var lvRoWz01; var lvRoSz01; var logging = true; // (true;false) Logausgabe zentral schalten schedule("*/3 * * * *", function () { if (logging) log("-01- Will be triggered every 3 minutes!"); //============================================================= //Allgemeine Variable setzen //============================================================= //Var Standardzeit werktags für Rolladen offen! var V_Ro_Std_open_time = isTimeInRange('06:30:00', '22:45:00'); if (logging) log("-02- -->V_Ro_Std_open_time :"+V_Ro_Std_open_time,"info"); //Var Standardzeit weekend für Rolladen offen! var V_Ro_Std_open_time_We = isTimeInRange('07:30:00', '22:45:00'); if (logging) log("-03- -->V_Ro_Std_open_time_weekend :"+V_Ro_Std_open_time_We,"info"); //Var Standardzeit für Rolladen schließen! var V_Ro_Std_close_time = isTimeInRange('17:00:00', '02:45:00'); if (logging) log("-04- -->V_Ro_Std_close_time :"+V_Ro_Std_close_time,"info"); //Var Standard Sonnenstand für Rolladen offen! var V_Ro_Std_open_Sun = false; if (getState("javascript.0.Sonnenstand.Elevation").val >= -5.5){ V_Ro_Std_open_Sun = true; } if (logging) log("-05- -->V_Ro_Std_open_Sun :"+V_Ro_Std_open_Sun,"info"); //Var Werktag setzen! var V_Werktag = false; if (!isWeekend() && getState("hm-rega.0.1685"/*Feiertag_heute*/).val === false) { V_Werktag = true; } if (logging) log("-06- -->V_Werktag : "+V_Werktag,"info"); setState("javascript.0.HM_Status.Werktag",V_Werktag,true); //========================================================================================================================= //Stati der Rolläden setzen //========================================================================================================================= //Var Rolladen_Standard_auf // automatik true und werktag true und Uhrzeit >=6:30 und Sonne Elevation >= -6° var V_Standard_auf = false; if (V_Ro_Std_open_Sun && V_Ro_Std_open_time && V_Werktag && getState("javascript.0.HM_Status.Ro_Automatik").val === true){ V_Standard_auf = true; if (logging) log("-07.0- -->Rolladen_Standard_auf ist :"+V_Standard_auf,"info"); setState("javascript.0.Rolladen.Standard_auf",V_Standard_auf,true); } if (logging) log("-07.1- -->Rolladen_Standard_auf ist :"+V_Standard_auf,"info"); //Var Rolladen_Standard_auf weekend // automatik true und werktag true und Uhrzeit >=6:30 und Sonne Elevation >= -6° var V_Standard_auf_We = false; if (V_Ro_Std_open_Sun && V_Ro_Std_open_time_We && !V_Werktag && getState("javascript.0.HM_Status.Ro_Automatik").val === true){ V_Standard_auf_We = true; if (logging) log("-08.0- -->Rolladen_Standard_auf ist :"+V_Standard_auf_We,"info"); setState("javascript.0.Rolladen.Standard_auf",V_Standard_auf_We,true); } if (logging) log("-08.1- -->Rolladen_Standard_auf_We ist :"+V_Standard_auf_We,"info"); //Var Rolladen_Standard_ab // automatik true und Sonne Elevation <= -6° nach 17 Uhr var V_Standard_ab = true; if (!V_Ro_Std_open_Sun && V_Ro_Std_close_time && getState("javascript.0.HM_Status.Ro_Automatik").val === true) { V_Standard_ab = false; //false if (logging) log("-09.0- -->Rolladen_Standard_ab(auf) ist :"+V_Standard_ab,"info"); setState("javascript.0.Rolladen.Standard_auf",V_Standard_ab,true); } if (logging) log("-09.1- -->Rolladen_Standard_ab(auf) ist :"+V_Standard_ab,"info"); //Var Rolladen_Wz01_70 ab wenn anwesend // automatik true und Sonne Elevation <= -6° nach 17 Uhr anwesend "javascript.0.HM_Status.Ro_Wintergarten"/*HM_Status.Ro_Wintergarten*/ var V_Wz01_70_ab = false; if (!V_Ro_Std_open_Sun && isTimeInRange('17:00:00', '23:45:00') && getState("javascript.0.HM_Status.Ro_Automatik").val === true && getState("javascript.0.HM_Status.Anwesend").val === true && getState("javascript.0.HM_Status.Ro_Wintergarten").val === false) { V_Wz01_70_ab = true; //True if (logging) log("-10.0- -->Rolladen_V_Wz01_70_ab ist :"+V_Wz01_70_ab,"info"); } setState("javascript.0.Rolladen.Wz01_70_ab",V_Wz01_70_ab,true); if (logging) log("-10.1--->Rolladen_V_Wz01__70_ab ist :"+V_Wz01_70_ab,"info"); //Var Rolladen_Wz01_0 ab wenn nicht anwesend // automatik true und Sonne Elevation <= -6° nach 17 Uhr !anwesend "javascript.0.HM_Status.Ro_Wintergarten"/*HM_Status.Ro_Wintergarten*/ var V_Wz01_0_ab = false; if (!V_Ro_Std_open_Sun && isTimeInRange('17:00:00', '23:45:00') && getState("javascript.0.HM_Status.Ro_Automatik").val === true && getState("javascript.0.HM_Status.Anwesend").val === false && getState("javascript.0.HM_Status.Ro_Wintergarten").val === false) { V_Wz01_0_ab = true; if (logging) log("-11.0--->Rolladen_V_Wz01_0_ab ist :"+V_Wz01_0_ab,"info"); } setState("javascript.0.Rolladen.Wz01_0_ab",V_Wz01_0_ab,true); if (logging) log("-11.1--->Rolladen_V_Wz01_0_ab ist :"+V_Wz01_0_ab,"info"); //Var Rolladen_Wz01Nacht ab_ 23:45 // automatik true und !"javascript.0.HM_Status.Ro_Wintergarten"/*HM_Status.Ro_Wintergarten*/ var V_Wz01_Nacht_ab = false; schedule({hour: 23, minute: 45}, function () { if (getState("javascript.0.HM_Status.Ro_Automatik").val && !getState("javascript.0.HM_Status.Ro_Wintergarten").val) { V_Wz01_Nacht_ab = true; //true if (logging) log("-12.0--->Rolladen_V_Wz01_Nacht_ab ist : "+V_Wz01_Nacht_ab,"info"); Rolladen_Wz01_Nacht_ab(); }}); //Var_Rolladen_Schlafzimmer_auf um 8 Uhr schedule({hour: 8, minute: 0}, function () { if (getState("javascript.0.HM_Status.Ro_Automatik").val) { if (logging) log("-13.0--->Rolladen.Schlafzimmer_auf","info"); Rolladen_Schlafzimmer_auf(); }}); // Rolladen_Std_hoch(); bei Änderung on ("javascript.0.Rolladen.Standard_auf", function (obj) { if (getState("javascript.0.Rolladen.Standard_auf").val) { lvRoKue01 = 100; lvRoEz01 = 100; lvRoWz03 = 100; lvRoWz02 = 100; lvRoWz01 = 100; lvRoSz01 = 100; Rolladen_Std_hoch(); } else if (!getState("javascript.0.Rolladen.Standard_auf").val) { lvRoKue01 = 0; lvRoEz01 = 0; lvRoWz03 = 0; lvRoWz02 = 0; lvRoSz01 = 0; Rolladen_Std_ab(); }}); // Rolladen_Wz01_ab(70); bei Änderung on ("javascript.0.Rolladen.Wz01_70_ab", function (obj) { if (getState("javascript.0.Rolladen.Wz01_70_ab").val) { Rolladen_Wz01_ab(70); }}); // Rolladen_Wz01_ab(0); bei Änderung on ("javascript.0.Rolladen.Wz01_0_ab", function (obj) { if (getState("javascript.0.Rolladen.Wz01_0_ab").val) { Rolladen_Wz01_ab(0); }}); // ----------------------------------------------- // Aktionen: // ----------------------------------------------- function Rolladen_Std_hoch() { // Ausführen if (logging) log("-14.0--->Rolladen_Std_hoch() :","info"); setStateDelayed("hm-rpc.0.LEQ1027058.1.LEVEL", lvRoWz01,15000); setStateDelayed("hm-rpc.0.LEQ1027791.1.LEVEL", lvRoWz02,30000); setStateDelayed("hm-rpc.0.JEQ0116914.1.LEVEL", lvRoWz03,45000); setStateDelayed("hm-rpc.0.LEQ1027801.1.LEVEL", lvRoEz01,60000); setStateDelayed("hm-rpc.0.LEQ1027806.1.LEVEL", lvRoKue01,75000); } function Rolladen_Std_ab() { // Ausführen if (logging) log("-15.0--->Rolladen_Std_ab() ausführen_Pfad :","info"); /* ausgeklammert für neuen Versuch mit setStateDelayed setState("hm-rpc.0.LEQ1032902.1.LEVEL", lvRoSz01); // setTimeout(function () { setState("hm-rpc.0.LEQ1027058.1.LEVEL", lvRoWz01); },10000); setTimeout(function () { setState("hm-rpc.0.LEQ1027791.1.LEVEL", lvRoWz02); },20000); setTimeout(function () { setState("hm-rpc.0.JEQ0116914.1.LEVEL", lvRoWz03); },35000); setTimeout(function () { setState("hm-rpc.0.LEQ1027801.1.LEVEL", lvRoEz01); },50000); setTimeout(function () { setState("hm-rpc.0.LEQ1027806.1.LEVEL", lvRoKue01); },65000); } */ setStateDelayed("hm-rpc.0.LEQ1032902.1.LEVEL", lvRoSz01,500); setStateDelayed("hm-rpc.0.LEQ1027791.1.LEVEL", lvRoWz02,20000); setStateDelayed("hm-rpc.0.JEQ0116914.1.LEVEL", lvRoWz03,35000); setStateDelayed("hm-rpc.0.LEQ1027801.1.LEVEL", lvRoEz01,50000); setStateDelayed("hm-rpc.0.LEQ1027806.1.LEVEL", lvRoKue01,65000); } function Rolladen_Wz01_ab(lv_Wz01) { if (logging) log("-16.0-Funktion_Rolladen_Wohnzimmer01_ab"); // Status setzen (Standard) lvRoWz01 = lv_Wz01; // Ausführen if (logging) log("-16.1-Funktion_Rolladen_Wohnzimmer01_ab + Level",lvRoWz01); setStateDelayed("hm-rpc.0.LEQ1027058.1.LEVEL", lvRoWz01,80000); } function Rolladen_Schlafzimmer_auf() { if (logging) log("-17.0-Funktion_Rolladen_Schlafzimmer_auf"); // Status setzen (Standard) lvRoSz01 = 100; // Ausführen setState("hm-rpc.0.LEQ1032902.1.LEVEL", lvRoSz01); } function Rolladen_Wz01_Nacht_ab() { if (logging) log("-17.3-Funktion_Rolladen_Wz01_Nacht_ab"); // Status setzen (Standard) lvRoWz01 = 0; // Ausführen setStateDelayed("hm-rpc.0.LEQ1027058.1.LEVEL", lvRoWz01,500); } if (logging) log("-18.0----> Script <-V_Rolladen.Standard_auf_ab-> Ende ","info"); });
Vielen Dank schon mal für die Antworten.
Viele Grüße
Erhard
-
Hallo, bin recht neu hier und versuche gerade meine Rolladensteuerung von der CCU2 auf iobroker umzuziehen. Ich habe nur geringe Programmierkenntnisse, versuche die Beispielscripte für meinen Bedarf anzupassen. Ich habe nun das Rolladenscript swoweit, dass es i.d.R. funktioniert, nur in der Log-Datei werden einige Zeilen/Befehle zigfach ausgegeben. Bis zum ERROR: You are sending too fast. Habe das Script schon aufgrund Beitrag hier im Forum von "setTimeout" auf "setStateDelayed" geändert, aber es ist das gleiche Ergebnis. Vermutlich habe irgendwo einen Fehler eingebaut.
filename="20151231-Log-vielfach1.png" index="1">~~ filename="20151231-Log-vielfach2.png" index="0">~~
Vielen Dank schon vorab für die Hilfe. `Hallo, ich habe inzwischen meine Rolladensteuerung umgestellt auf Szenen. SetTimeout und setStateDelayed benutze ich hierfür nicht mehr.
Somit ist dieses Problem für mich gelöst, wobei ich immer noch nicht weiß was da falsch war.