Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Logging Vielfach

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Logging Vielfach

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

      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.
      602_20151231-log-vielfach1.png 602_20151231-log-vielfach2.png
      Vielen Dank schon vorab für die Hilfe.

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

        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.

        1 Reply Last reply Reply Quote 0
        • E
          ErRi last edited by

          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

          1 Reply Last reply Reply Quote 0
          • E
            ErRi last edited by

            @ErRi:

            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.

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

            Support us

            ioBroker
            Community Adapters
            Donate

            1.0k
            Online

            31.7k
            Users

            79.7k
            Topics

            1.3m
            Posts

            2
            4
            876
            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