Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Timer mit Input / Zeitsteuerung Blockly

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    14
    1
    223

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    580

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    1.8k

Timer mit Input / Zeitsteuerung Blockly

Geplant Angeheftet Gesperrt Verschoben Blockly
14 Beiträge 2 Kommentatoren 2.6k Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • S Snupy

    Hallo

    ich stehe auf dem Schlauch und habe mein Problem schon mit diesem Beitrag hier zu lösen versucht, leider gelingt mir dies nicht :(

    Ich habe das widget ctrl-input datetime verwendet um eine Eingabe der Zeit zu realisieren.

    ctrl Input Datetime.jpg
    Des weiteren hab ich zusätzliche Datenpunkte unter 0_userdata.0 erzeugt

    iobroker.JPG

    im Blockly habe ich folgendes script erstellt

    Timer_Input_Blockly.jpg

    leider funktioniert das aber nicht wie gewollt ... bzw. funktioniert es einmal, nämlich dann wenn ich erst die Zeit im Widget eintrage und erst danach das blockly script starte !
    Wenn ich jetzt erneut eine Start und Endzeit eintrage bekomme ich diese zwar korrekt unter objects->Timer_Input angezeigt aber im Blockly script kommt es zu Fehlermeldungen

    fehler_blockly.JPG

    zum testen hängt da am ende erstmal ein esp8266 mini ...

    was mache ich falsch ? wo liegt mein Denkfehler ?

    paul53P Offline
    paul53P Offline
    paul53
    schrieb am zuletzt editiert von paul53
    #2

    @snupy sagte: bzw. funktioniert es einmal

    Wenn die Start- und Stoppzeit im Format "YYYY-MM-DD hh:mm:ss" vorliegt, sollte es so funktionieren (Beispiel für Startzeit):

    Bild_2021-04-13_185559.png

    Man muss auf die Änderung der Startzeit triggern und dabei den laufenden Zeitplan stoppen.
    Für Monatsdatum und Monat kann man auch den Stern stehen lassen, wenn nur die Uhrzeit gebraucht wird. Dann funktioniert es auch mit dem Format "hh:mm:ss".

    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

    S 2 Antworten Letzte Antwort
    0
    • paul53P paul53

      @snupy sagte: bzw. funktioniert es einmal

      Wenn die Start- und Stoppzeit im Format "YYYY-MM-DD hh:mm:ss" vorliegt, sollte es so funktionieren (Beispiel für Startzeit):

      Bild_2021-04-13_185559.png

      Man muss auf die Änderung der Startzeit triggern und dabei den laufenden Zeitplan stoppen.
      Für Monatsdatum und Monat kann man auch den Stern stehen lassen, wenn nur die Uhrzeit gebraucht wird. Dann funktioniert es auch mit dem Format "hh:mm:ss".

      S Offline
      S Offline
      Snupy
      schrieb am zuletzt editiert von
      #3

      @paul53 funktioniert leider nicht ...

      so ich habe es jetzt so gelöst und das scheint gut zu funktionieren, das ganze soll meine 4 Sprenkler Ventile im Garten steueren die aktuell noch mit Blynk laufen.

      Ich habe das schon eingangs bezeichnete widget für den Input der Zeit genutzt.
      Gleichzeitig habe ich jetzt noch einen Schalter mit eingebaut um den Timer ein oder auszuschalten bzw. um zu verhindern das der esp mini über den timer geschalten werden kann.

      vis2.jpg

      Dazu habe ich die Datenpunkte wie im Bild ersichtlich erstellt

      Datenpunkte.JPG

      Das Blockly sieht jetzt so aus

      Timer_Input_mit-_On_Off.jpg

      Ich lade das Blockly dafür als .txt mit hoch ... Blockly_Timer_mit_Input_und_On_Off.txt

      S 1 Antwort Letzte Antwort
      0
      • S Snupy

        @paul53 funktioniert leider nicht ...

        so ich habe es jetzt so gelöst und das scheint gut zu funktionieren, das ganze soll meine 4 Sprenkler Ventile im Garten steueren die aktuell noch mit Blynk laufen.

        Ich habe das schon eingangs bezeichnete widget für den Input der Zeit genutzt.
        Gleichzeitig habe ich jetzt noch einen Schalter mit eingebaut um den Timer ein oder auszuschalten bzw. um zu verhindern das der esp mini über den timer geschalten werden kann.

        vis2.jpg

        Dazu habe ich die Datenpunkte wie im Bild ersichtlich erstellt

        Datenpunkte.JPG

        Das Blockly sieht jetzt so aus

        Timer_Input_mit-_On_Off.jpg

        Ich lade das Blockly dafür als .txt mit hoch ... Blockly_Timer_mit_Input_und_On_Off.txt

        S Offline
        S Offline
        Snupy
        schrieb am zuletzt editiert von Snupy
        #4

        gelöscht ;)

        1 Antwort Letzte Antwort
        0
        • paul53P paul53

          @snupy sagte: bzw. funktioniert es einmal

          Wenn die Start- und Stoppzeit im Format "YYYY-MM-DD hh:mm:ss" vorliegt, sollte es so funktionieren (Beispiel für Startzeit):

          Bild_2021-04-13_185559.png

          Man muss auf die Änderung der Startzeit triggern und dabei den laufenden Zeitplan stoppen.
          Für Monatsdatum und Monat kann man auch den Stern stehen lassen, wenn nur die Uhrzeit gebraucht wird. Dann funktioniert es auch mit dem Format "hh:mm:ss".

          S Offline
          S Offline
          Snupy
          schrieb am zuletzt editiert von
          #5

          @paul53

          ich habe dein blockly heute nochmal probiert komme da aber auf keinen grünen zweig ...
          hast du das mal getestet ? ich bekomme jede mange rote errors ;) vielleicht kannst du mir ja nochmal auf die Sprünge helfen !

          paul53P 1 Antwort Letzte Antwort
          0
          • S Snupy

            @paul53

            ich habe dein blockly heute nochmal probiert komme da aber auf keinen grünen zweig ...
            hast du das mal getestet ? ich bekomme jede mange rote errors ;) vielleicht kannst du mir ja nochmal auf die Sprünge helfen !

            paul53P Offline
            paul53P Offline
            paul53
            schrieb am zuletzt editiert von paul53
            #6

            @snupy sagte: hast du das mal getestet ?

            Ja, gerade: Habe Startzeit auf "2021-04-15 17:03:00" gesetzt und dann das Skript gestartet, gleich nach 17:03:00 bei laufendem Skript die Startzeit auf 17:04:00 geändert.

            Blockly_temp.JPG

            <xml xmlns="https://developers.google.com/blockly/xml">
             <variables>
               <variable id="0/dnk[:V}C~?v.v@.]n%">startzeit</variable>
               <variable type="cron" id="schedule1">schedule1</variable>
             </variables>
             <block type="procedures_callnoreturn" id="EyKkr2b9:=(hJ+Q`ixHf" x="87" y="-87">
               <mutation name="start"></mutation>
               <next>
                 <block type="comment" id="eian95Go_0Q2*G=BLO*z">
                   <field name="COMMENT">Startzeit</field>
                   <next>
                     <block type="on_ext" id="_jkCnUMqcOR*1l1EYej9">
                       <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                       <field name="CONDITION">ne</field>
                       <field name="ACK_CONDITION"></field>
                       <value name="OID0">
                         <shadow type="field_oid" id=",Y%6conFs}])9o#*MZ+[">
                           <field name="oid">0_userdata.0.Timer_Input.Startzeit</field>
                         </shadow>
                       </value>
                       <statement name="STATEMENT">
                         <block type="schedule_clear" id="5kA8XHik3Nb;i(naWmKs">
                           <field name="NAME">schedule1</field>
                           <next>
                             <block type="procedures_callnoreturn" id="afgs_zQh@`O^EmKMLp;i">
                               <mutation name="start"></mutation>
                             </block>
                           </next>
                         </block>
                       </statement>
                     </block>
                   </next>
                 </block>
               </next>
             </block>
             <block type="procedures_defnoreturn" id="ZEBjs1GLZIW-n|m;7$lg" x="262" y="12">
               <field name="NAME">start</field>
               <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
               <statement name="STACK">
                 <block type="variables_set" id="9n|FtG`?YyK*uOV{{8KL">
                   <field name="VAR" id="0/dnk[:V}C~?v.v@.]n%">startzeit</field>
                   <value name="VALUE">
                     <block type="convert_from_date" id="`7xWyT/UN!,wdF}yUl]j">
                       <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                       <field name="OPTION">object</field>
                       <value name="VALUE">
                         <block type="get_value" id="{ZexKrQmTZs@I]DFZE9C">
                           <field name="ATTR">val</field>
                           <field name="OID">0_userdata.0.Timer_Input.Startzeit</field>
                         </block>
                       </value>
                     </block>
                   </value>
                   <next>
                     <block type="schedule_create" id="?[E=a-%a_l*087J%;^C7">
                       <field name="NAME">schedule1</field>
                       <value name="SCHEDULE">
                         <shadow type="field_cron" id=",_qaV`ld5JrZ8B/-N_I;">
                           <field name="CRON">* * * * *</field>
                         </shadow>
                         <block type="cron_builder" id="S)/Ek8/wPO)`h;yHE*R/">
                           <mutation xmlns="http://www.w3.org/1999/xhtml" seconds="false" as_line="false"></mutation>
                           <field name="LINE">FALSE</field>
                           <field name="WITH_SECONDS">FALSE</field>
                           <value name="DOW">
                             <shadow type="text" id="72[2Nn4WLE-4^ZUcUi6K">
                               <field name="TEXT">*</field>
                             </shadow>
                           </value>
                           <value name="MONTHS">
                             <shadow type="text" id="S.roWs^?9:=9%.cm-l{k">
                               <field name="TEXT">*</field>
                             </shadow>
                           </value>
                           <value name="DAYS">
                             <shadow type="text" id=";XvfK#,o|@dCDcR2zYht">
                               <field name="TEXT">*</field>
                             </shadow>
                           </value>
                           <value name="HOURS">
                             <shadow type="text" id="{%h[4.!lN{Xg4Y}R!Cip">
                               <field name="TEXT">*</field>
                             </shadow>
                             <block type="convert_from_date" id="$)qn%v{T#W[@U6e%6~6$">
                               <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                               <field name="OPTION">h</field>
                               <value name="VALUE">
                                 <block type="variables_get" id="j7Rc[KqyM(LhuE8*Il!=">
                                   <field name="VAR" id="0/dnk[:V}C~?v.v@.]n%">startzeit</field>
                                 </block>
                               </value>
                             </block>
                           </value>
                           <value name="MINUTES">
                             <shadow type="text" id="cHIYW2y;Xt{Q@+2#To]g">
                               <field name="TEXT">*</field>
                             </shadow>
                             <block type="convert_from_date" id="V}5Lzxq?bnhKoxW$h4tg">
                               <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                               <field name="OPTION">m</field>
                               <value name="VALUE">
                                 <block type="variables_get" id="6)65ojQ`)Axe)Vw;_rs@">
                                   <field name="VAR" id="0/dnk[:V}C~?v.v@.]n%">startzeit</field>
                                 </block>
                               </value>
                             </block>
                           </value>
                         </block>
                       </value>
                       <statement name="STATEMENT">
                         <block type="debug" id=".g^a?WR}*(`-8Y%,=5,0">
                           <field name="Severity">log</field>
                           <value name="TEXT">
                             <shadow type="text" id="Ci8KvvD-]PLt$j01^3uM">
                               <field name="TEXT">Aktion zur Startzeit</field>
                             </shadow>
                           </value>
                         </block>
                       </statement>
                     </block>
                   </next>
                 </block>
               </statement>
             </block>
            </xml>
            

            EDIT: Später auf Zeiten "17:21:00" und "17:23:00" (ohne Datum) geändert: Funktioniert.

            Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
            Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

            S 1 Antwort Letzte Antwort
            0
            • paul53P paul53

              @snupy sagte: hast du das mal getestet ?

              Ja, gerade: Habe Startzeit auf "2021-04-15 17:03:00" gesetzt und dann das Skript gestartet, gleich nach 17:03:00 bei laufendem Skript die Startzeit auf 17:04:00 geändert.

              Blockly_temp.JPG

              <xml xmlns="https://developers.google.com/blockly/xml">
               <variables>
                 <variable id="0/dnk[:V}C~?v.v@.]n%">startzeit</variable>
                 <variable type="cron" id="schedule1">schedule1</variable>
               </variables>
               <block type="procedures_callnoreturn" id="EyKkr2b9:=(hJ+Q`ixHf" x="87" y="-87">
                 <mutation name="start"></mutation>
                 <next>
                   <block type="comment" id="eian95Go_0Q2*G=BLO*z">
                     <field name="COMMENT">Startzeit</field>
                     <next>
                       <block type="on_ext" id="_jkCnUMqcOR*1l1EYej9">
                         <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                         <field name="CONDITION">ne</field>
                         <field name="ACK_CONDITION"></field>
                         <value name="OID0">
                           <shadow type="field_oid" id=",Y%6conFs}])9o#*MZ+[">
                             <field name="oid">0_userdata.0.Timer_Input.Startzeit</field>
                           </shadow>
                         </value>
                         <statement name="STATEMENT">
                           <block type="schedule_clear" id="5kA8XHik3Nb;i(naWmKs">
                             <field name="NAME">schedule1</field>
                             <next>
                               <block type="procedures_callnoreturn" id="afgs_zQh@`O^EmKMLp;i">
                                 <mutation name="start"></mutation>
                               </block>
                             </next>
                           </block>
                         </statement>
                       </block>
                     </next>
                   </block>
                 </next>
               </block>
               <block type="procedures_defnoreturn" id="ZEBjs1GLZIW-n|m;7$lg" x="262" y="12">
                 <field name="NAME">start</field>
                 <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                 <statement name="STACK">
                   <block type="variables_set" id="9n|FtG`?YyK*uOV{{8KL">
                     <field name="VAR" id="0/dnk[:V}C~?v.v@.]n%">startzeit</field>
                     <value name="VALUE">
                       <block type="convert_from_date" id="`7xWyT/UN!,wdF}yUl]j">
                         <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                         <field name="OPTION">object</field>
                         <value name="VALUE">
                           <block type="get_value" id="{ZexKrQmTZs@I]DFZE9C">
                             <field name="ATTR">val</field>
                             <field name="OID">0_userdata.0.Timer_Input.Startzeit</field>
                           </block>
                         </value>
                       </block>
                     </value>
                     <next>
                       <block type="schedule_create" id="?[E=a-%a_l*087J%;^C7">
                         <field name="NAME">schedule1</field>
                         <value name="SCHEDULE">
                           <shadow type="field_cron" id=",_qaV`ld5JrZ8B/-N_I;">
                             <field name="CRON">* * * * *</field>
                           </shadow>
                           <block type="cron_builder" id="S)/Ek8/wPO)`h;yHE*R/">
                             <mutation xmlns="http://www.w3.org/1999/xhtml" seconds="false" as_line="false"></mutation>
                             <field name="LINE">FALSE</field>
                             <field name="WITH_SECONDS">FALSE</field>
                             <value name="DOW">
                               <shadow type="text" id="72[2Nn4WLE-4^ZUcUi6K">
                                 <field name="TEXT">*</field>
                               </shadow>
                             </value>
                             <value name="MONTHS">
                               <shadow type="text" id="S.roWs^?9:=9%.cm-l{k">
                                 <field name="TEXT">*</field>
                               </shadow>
                             </value>
                             <value name="DAYS">
                               <shadow type="text" id=";XvfK#,o|@dCDcR2zYht">
                                 <field name="TEXT">*</field>
                               </shadow>
                             </value>
                             <value name="HOURS">
                               <shadow type="text" id="{%h[4.!lN{Xg4Y}R!Cip">
                                 <field name="TEXT">*</field>
                               </shadow>
                               <block type="convert_from_date" id="$)qn%v{T#W[@U6e%6~6$">
                                 <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                 <field name="OPTION">h</field>
                                 <value name="VALUE">
                                   <block type="variables_get" id="j7Rc[KqyM(LhuE8*Il!=">
                                     <field name="VAR" id="0/dnk[:V}C~?v.v@.]n%">startzeit</field>
                                   </block>
                                 </value>
                               </block>
                             </value>
                             <value name="MINUTES">
                               <shadow type="text" id="cHIYW2y;Xt{Q@+2#To]g">
                                 <field name="TEXT">*</field>
                               </shadow>
                               <block type="convert_from_date" id="V}5Lzxq?bnhKoxW$h4tg">
                                 <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                 <field name="OPTION">m</field>
                                 <value name="VALUE">
                                   <block type="variables_get" id="6)65ojQ`)Axe)Vw;_rs@">
                                     <field name="VAR" id="0/dnk[:V}C~?v.v@.]n%">startzeit</field>
                                   </block>
                                 </value>
                               </block>
                             </value>
                           </block>
                         </value>
                         <statement name="STATEMENT">
                           <block type="debug" id=".g^a?WR}*(`-8Y%,=5,0">
                             <field name="Severity">log</field>
                             <value name="TEXT">
                               <shadow type="text" id="Ci8KvvD-]PLt$j01^3uM">
                                 <field name="TEXT">Aktion zur Startzeit</field>
                               </shadow>
                             </value>
                           </block>
                         </statement>
                       </block>
                     </next>
                   </block>
                 </statement>
               </block>
              </xml>
              

              EDIT: Später auf Zeiten "17:21:00" und "17:23:00" (ohne Datum) geändert: Funktioniert.

              S Offline
              S Offline
              Snupy
              schrieb am zuletzt editiert von
              #7

              @paul53

              @paul53

              vermutlich bin ich echt zu blöd ... das script bringt bei mir sofort error ... habe extra nochmal nen neuen Datenpunkt unter 0_userdata.0.Timer_Input.Timer_Input_Startzeit angelegt
              irgendwo muß ich da ja was falsch machen :(

              Blockly error.JPG

              paul53P 1 Antwort Letzte Antwort
              0
              • S Snupy

                @paul53

                @paul53

                vermutlich bin ich echt zu blöd ... das script bringt bei mir sofort error ... habe extra nochmal nen neuen Datenpunkt unter 0_userdata.0.Timer_Input.Timer_Input_Startzeit angelegt
                irgendwo muß ich da ja was falsch machen :(

                Blockly error.JPG

                paul53P Offline
                paul53P Offline
                paul53
                schrieb am zuletzt editiert von paul53
                #8

                @snupy sagte: irgendwo muß ich da ja was falsch machen

                Poste mal den erzeugten Javascript-Code ohne die letzte Zeile in Code tags.
                Welche zusätzlichen Informationen liefert der Tab "Log"?

                @snupy sagte in Timer mit Input / Zeitsteuerung Blockly:

                habe extra nochmal nen neuen Datenpunkt unter 0_userdata.0.Timer_Input.Timer_Input_Startzeit angelegt

                Weshalb? Der von mir angelegte DP entsprach genau Deiner Struktur (Nur der Name war anders).

                Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                S 1 Antwort Letzte Antwort
                0
                • paul53P paul53

                  @snupy sagte: irgendwo muß ich da ja was falsch machen

                  Poste mal den erzeugten Javascript-Code ohne die letzte Zeile in Code tags.
                  Welche zusätzlichen Informationen liefert der Tab "Log"?

                  @snupy sagte in Timer mit Input / Zeitsteuerung Blockly:

                  habe extra nochmal nen neuen Datenpunkt unter 0_userdata.0.Timer_Input.Timer_Input_Startzeit angelegt

                  Weshalb? Der von mir angelegte DP entsprach genau Deiner Struktur (Nur der Name war anders).

                  S Offline
                  S Offline
                  Snupy
                  schrieb am zuletzt editiert von Snupy
                  #9

                  @paul53

                  blockly_timer.JPG

                  habe zwischenzeitlich mal die Endzeit mit eingefügt ...
                  wo finde ich den Tab "Log" der zusätzliche Informationen liefert ? ;) .... du meinst den hier ....

                  log.JPG

                  var startzeit, endzeit, schedule1, schedule2;
                  
                  // Beschreibe diese Funktion …
                  function start() {
                    startzeit = getDateObject(getState("0_userdata.0.Timer_Input.Timer_Input_Startzeit").val).getTime();
                    schedule1 = schedule((getDateObject(startzeit).getMinutes()).trim() + ' ' + getDateObject(startzeit).getHours().trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + '*'.trim(), function () {
                      console.log('Aktion zur Startzeit');
                      setState("sonoff.0.DVES_D3CA1E.POWER"/*DVES_D3CA1E POWER*/, true);
                    });
                  }
                  
                  // Beschreibe diese Funktion …
                  function start2() {
                    endzeit = getDateObject(getState("0_userdata.0.Timer_Input.Timer_Input_Endzeit").val).getTime();
                    schedule2 = schedule((getDateObject(endzeit).getMinutes()).trim() + ' ' + getDateObject(endzeit).getHours().trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + '*'.trim(), function () {
                      console.log('Aktion zur Endzeit');
                      setState("sonoff.0.DVES_D3CA1E.POWER"/*DVES_D3CA1E POWER*/, false);
                    });
                  }
                  
                  
                  start();
                  on({id: '0_userdata.0.Timer_Input.Timer_Input_Startzeit', change: "ne"}, function (obj) {
                    var value = obj.state.val;
                    var oldValue = obj.oldState.val;
                    (function () {if (schedule1) {clearSchedule(schedule1); schedule1 = null;}})();
                    start();
                  });
                  
                  start2();
                  on({id: '0_userdata.0.Timer_Input.Timer_Input_Endzeit', change: "ne"}, function (obj) {
                    var value = obj.state.val;
                    var oldValue = obj.oldState.val;
                    (function () {if (schedule2) {clearSchedule(schedule2); schedule2 = null;}})();
                    start2();
                  });
                  paul53P 1 Antwort Letzte Antwort
                  0
                  • S Snupy

                    @paul53

                    blockly_timer.JPG

                    habe zwischenzeitlich mal die Endzeit mit eingefügt ...
                    wo finde ich den Tab "Log" der zusätzliche Informationen liefert ? ;) .... du meinst den hier ....

                    log.JPG

                    var startzeit, endzeit, schedule1, schedule2;
                    
                    // Beschreibe diese Funktion …
                    function start() {
                      startzeit = getDateObject(getState("0_userdata.0.Timer_Input.Timer_Input_Startzeit").val).getTime();
                      schedule1 = schedule((getDateObject(startzeit).getMinutes()).trim() + ' ' + getDateObject(startzeit).getHours().trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + '*'.trim(), function () {
                        console.log('Aktion zur Startzeit');
                        setState("sonoff.0.DVES_D3CA1E.POWER"/*DVES_D3CA1E POWER*/, true);
                      });
                    }
                    
                    // Beschreibe diese Funktion …
                    function start2() {
                      endzeit = getDateObject(getState("0_userdata.0.Timer_Input.Timer_Input_Endzeit").val).getTime();
                      schedule2 = schedule((getDateObject(endzeit).getMinutes()).trim() + ' ' + getDateObject(endzeit).getHours().trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + '*'.trim(), function () {
                        console.log('Aktion zur Endzeit');
                        setState("sonoff.0.DVES_D3CA1E.POWER"/*DVES_D3CA1E POWER*/, false);
                      });
                    }
                    
                    
                    start();
                    on({id: '0_userdata.0.Timer_Input.Timer_Input_Startzeit', change: "ne"}, function (obj) {
                      var value = obj.state.val;
                      var oldValue = obj.oldState.val;
                      (function () {if (schedule1) {clearSchedule(schedule1); schedule1 = null;}})();
                      start();
                    });
                    
                    start2();
                    on({id: '0_userdata.0.Timer_Input.Timer_Input_Endzeit', change: "ne"}, function (obj) {
                      var value = obj.state.val;
                      var oldValue = obj.oldState.val;
                      (function () {if (schedule2) {clearSchedule(schedule2); schedule2 = null;}})();
                      start2();
                    });
                    paul53P Offline
                    paul53P Offline
                    paul53
                    schrieb am zuletzt editiert von paul53
                    #10

                    @snupy
                    Bei mir enthält die angemeckerte Zeile 6 vor .trim() noch ein .toString()

                      schedule1 = schedule((getDateObject(startzeit).getMinutes()).toString().trim() + ' ' + getDateObject(startzeit).getHours().toString().trim() + ' ' + '*'.toString().trim() + ' ' + '*'.toString().trim() + ' ' + '*'.toString().trim(), async function () {
                    

                    Welche Version des javascript-Adapters? Meine: 5.0.5

                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                    S 1 Antwort Letzte Antwort
                    0
                    • paul53P paul53

                      @snupy
                      Bei mir enthält die angemeckerte Zeile 6 vor .trim() noch ein .toString()

                        schedule1 = schedule((getDateObject(startzeit).getMinutes()).toString().trim() + ' ' + getDateObject(startzeit).getHours().toString().trim() + ' ' + '*'.toString().trim() + ' ' + '*'.toString().trim() + ' ' + '*'.toString().trim(), async function () {
                      

                      Welche Version des javascript-Adapters? Meine: 5.0.5

                      S Offline
                      S Offline
                      Snupy
                      schrieb am zuletzt editiert von
                      #11

                      @paul53

                      habe zwei raspis einen 3+ als Backup und einen 4'er ... auf beiden läuft / lief js 4.8.4
                      auf dem 4'er habe ich gerade js geupdatet auf 5.0.14 ... ergebniss ... nüscht ... geht nicht

                      1 Antwort Letzte Antwort
                      0
                      • S Offline
                        S Offline
                        Snupy
                        schrieb am zuletzt editiert von
                        #12

                        so extra zurück auf 5.0.5 ... raspi neustart ... nüscht

                        javascript.0 2021-04-15 23:17:38.889 error (2508) at Script.runInContext (vm.js:131:20)
                        javascript.0 2021-04-15 23:17:38.888 error (2508) at script.js.Timer_Test:39:3
                        javascript.0 2021-04-15 23:17:38.888 error (2508) at script.js.Timer_Test:22:1
                        javascript.0 2021-04-15 23:17:38.888 error (2508) at start (script.js.Timer_Test:6:64)
                        javascript.0 2021-04-15 23:17:38.887 error (2508) script.js.Timer_Test: TypeError: getDateObject(...).getMinutes(...).trim is not a function

                        var startzeit, endzeit, schedule1, schedule2;
                        
                        // Beschreibe diese Funktion …
                        function start() {
                          startzeit = getDateObject(getState("0_userdata.0.Timer_Input.Timer_Input_Startzeit").val).getTime();
                          schedule1 = schedule((getDateObject(startzeit).getMinutes()).trim() + ' ' + getDateObject(startzeit).getHours().trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + '*'.trim(), function () {
                            console.log('Aktion zur Startzeit');
                            setState("sonoff.0.DVES_D3CA1E.POWER"/*DVES_D3CA1E POWER*/, true);
                          });
                        }
                        
                        // Beschreibe diese Funktion …
                        function start2() {
                          endzeit = getDateObject(getState("0_userdata.0.Timer_Input.Timer_Input_Endzeit").val).getTime();
                          schedule2 = schedule((getDateObject(endzeit).getMinutes()).trim() + ' ' + getDateObject(endzeit).getHours().trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + '*'.trim(), function () {
                            console.log('Aktion zur Endzeit');
                            setState("sonoff.0.DVES_D3CA1E.POWER"/*DVES_D3CA1E POWER*/, false);
                          });
                        }
                        
                        
                        start();
                        on({id: '0_userdata.0.Timer_Input.Timer_Input_Startzeit', change: "ne"}, function (obj) {
                          var value = obj.state.val;
                          var oldValue = obj.oldState.val;
                          (function () {if (schedule1) {clearSchedule(schedule1); schedule1 = null;}})();
                          start();
                        });
                        
                        start2();
                        on({id: '0_userdata.0.Timer_Input.Timer_Input_Endzeit', change: "ne"}, function (obj) {
                          var value = obj.state.val;
                          var oldValue = obj.oldState.val;
                          (function () {if (schedule2) {clearSchedule(schedule2); schedule2 = null;}})();
                          start2();
                        });
                        
                        
                        paul53P 1 Antwort Letzte Antwort
                        0
                        • S Snupy

                          so extra zurück auf 5.0.5 ... raspi neustart ... nüscht

                          javascript.0 2021-04-15 23:17:38.889 error (2508) at Script.runInContext (vm.js:131:20)
                          javascript.0 2021-04-15 23:17:38.888 error (2508) at script.js.Timer_Test:39:3
                          javascript.0 2021-04-15 23:17:38.888 error (2508) at script.js.Timer_Test:22:1
                          javascript.0 2021-04-15 23:17:38.888 error (2508) at start (script.js.Timer_Test:6:64)
                          javascript.0 2021-04-15 23:17:38.887 error (2508) script.js.Timer_Test: TypeError: getDateObject(...).getMinutes(...).trim is not a function

                          var startzeit, endzeit, schedule1, schedule2;
                          
                          // Beschreibe diese Funktion …
                          function start() {
                            startzeit = getDateObject(getState("0_userdata.0.Timer_Input.Timer_Input_Startzeit").val).getTime();
                            schedule1 = schedule((getDateObject(startzeit).getMinutes()).trim() + ' ' + getDateObject(startzeit).getHours().trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + '*'.trim(), function () {
                              console.log('Aktion zur Startzeit');
                              setState("sonoff.0.DVES_D3CA1E.POWER"/*DVES_D3CA1E POWER*/, true);
                            });
                          }
                          
                          // Beschreibe diese Funktion …
                          function start2() {
                            endzeit = getDateObject(getState("0_userdata.0.Timer_Input.Timer_Input_Endzeit").val).getTime();
                            schedule2 = schedule((getDateObject(endzeit).getMinutes()).trim() + ' ' + getDateObject(endzeit).getHours().trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + '*'.trim(), function () {
                              console.log('Aktion zur Endzeit');
                              setState("sonoff.0.DVES_D3CA1E.POWER"/*DVES_D3CA1E POWER*/, false);
                            });
                          }
                          
                          
                          start();
                          on({id: '0_userdata.0.Timer_Input.Timer_Input_Startzeit', change: "ne"}, function (obj) {
                            var value = obj.state.val;
                            var oldValue = obj.oldState.val;
                            (function () {if (schedule1) {clearSchedule(schedule1); schedule1 = null;}})();
                            start();
                          });
                          
                          start2();
                          on({id: '0_userdata.0.Timer_Input.Timer_Input_Endzeit', change: "ne"}, function (obj) {
                            var value = obj.state.val;
                            var oldValue = obj.oldState.val;
                            (function () {if (schedule2) {clearSchedule(schedule2); schedule2 = null;}})();
                            start2();
                          });
                          
                          
                          paul53P Offline
                          paul53P Offline
                          paul53
                          schrieb am zuletzt editiert von paul53
                          #13

                          @snupy
                          Vielleicht muss der Block "CRON" gelöscht und neu eingefügt werden?

                          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                          S 1 Antwort Letzte Antwort
                          0
                          • paul53P paul53

                            @snupy
                            Vielleicht muss der Block "CRON" gelöscht und neu eingefügt werden?

                            S Offline
                            S Offline
                            Snupy
                            schrieb am zuletzt editiert von
                            #14

                            @paul53

                            :clap: :+1:

                            du bist ein Held ! mach dir ein Bier auf oder was auch immer !!!

                            1 Antwort Letzte Antwort
                            0
                            Antworten
                            • In einem neuen Thema antworten
                            Anmelden zum Antworten
                            • Älteste zuerst
                            • Neuste zuerst
                            • Meiste Stimmen


                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            513

                            Online

                            32.5k

                            Benutzer

                            81.9k

                            Themen

                            1.3m

                            Beiträge
                            Community
                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                            ioBroker Community 2014-2025
                            logo
                            • Anmelden

                            • Du hast noch kein Konto? Registrieren

                            • Anmelden oder registrieren, um zu suchen
                            • Erster Beitrag
                              Letzter Beitrag
                            0
                            • Home
                            • Aktuell
                            • Tags
                            • Ungelesen 0
                            • Kategorien
                            • Unreplied
                            • Beliebt
                            • GitHub
                            • Docu
                            • Hilfe