Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. [gelöst] Tageszähler

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    SOLVED [gelöst] Tageszähler

    This topic has been deleted. Only users with topic management privileges can see it.
    • bahnuhr
      bahnuhr Forum Testing Most Active last edited by

      https://forum.iobroker.net/topic/8203/beispiel-skript-errechnet-tage-bis-termin

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

        Ergebnis ist 0
        Was ist denn da falsch !?

        on({id: "Aqua_Control.0.System.Test"/*Test*/, change: "ne"}, function (obj) {
          var value = obj.state.val;
          var oldValue = obj.oldState.val;
          if (getState("Aqua_Control.0.System.Test").val == true) {
            setState("alexa2.0.Echo-Devices.G090LV0371040175.Commands.speak"/*speak*/, (String(Math.floor(86400000 / ((new Date().getTime()) - getDateObject('2019-07-28').getTime()))) + ''));
          }
        });
        
        paul53 1 Reply Last reply Reply Quote 0
        • Aphofis
          Aphofis last edited by

          Warum sind deine Blöcke eigentlich immer untereinander!? Meine sind immer nebeneinander, kann man das irgendwie umstellen?

          1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @Aphofis last edited by

            @Aphofis sagte in Tageszähler:

            Was ist denn da falsch !?

            Nicht 86400000 / Zeitdifferenz, sondern so wie im Blockly zu sehen: Zeitdifferenz / 86400000.

            @Aphofis sagte in Tageszähler:

            kann man das irgendwie umstellen?

            Mauszeiger über dem Block - rechte Maustaste - externe Eingänge auswählen

            Aphofis 1 Reply Last reply Reply Quote 1
            • Aphofis
              Aphofis @paul53 last edited by Aphofis

              @paul53
              Ja jetzt versteht man die Bausteine auch besser wenn sie übereinander sind!
              So ist es viel Besser!
              Danke

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

                Hab den Zähler eingebaut und er funktioniert! Vielen Dank @paul53

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

                  @paul53
                  noch ein kleiner Nachtrag !?
                  Kann man auch ein Datum im Format 01.02.2019 das in einem Datenpunkt steht als gemischt
                  als Ausgangsdatum nehmen und dann das Aktuelle Datum und die vergangenen Tage zählen und ausgeben lassen !?
                  Ich hab es versucht es wird immer NaN angeben.

                  paul53 1 Reply Last reply Reply Quote 0
                  • paul53
                    paul53 @Aphofis last edited by

                    @Aphofis sagte:

                    ein Datum im Format 01.02.2019 das in einem Datenpunkt

                    Blockly_temp.JPG

                    Aphofis 1 Reply Last reply Reply Quote 1
                    • Aphofis
                      Aphofis @paul53 last edited by Aphofis

                      @paul53
                      Das schon mal sehr geil !?
                      Jedes mal wie Weihnachten, man stellt dir eine Frage und kurze Zeit später.
                      Hast Du eine Steuerug gebastelt.
                      Ist es so möglich, Alexa diesen Datums Datenpunkt & Den Rollenverbrauch aktuallisierungen zu lassen per sprachbefehl!?

                      In dieser Form !?

                      var Vliesrollen_L_C3_A4nge;
                      
                      
                      Vliesrollen_L_C3_A4nge = getState("Aqua_Control.0.Vliesfilter.Vlies_Rollenlänge").val;
                      on({id: 'Aqua_Control.0.Vliesfilter.Vliesfilter_Vlies_&_Datum_Reset', change: "ne"}, function (obj) {
                        var value = obj.state.val;
                        var oldValue = obj.oldState.val;
                        if (getState("Aqua_Control.0.Vliesfilter.Vliesfilter_Vlies_&_Datum_Reset").val == true) {
                          // Datums Reset
                          setState("Aqua_Control.0.Vliesfilter.Vliesrolle_eingesetzt"/*Vliesrolle_eingesetzt*/, formatDate(new Date(), "DD.MM.YYYY"), true);
                          // 100 Meter Reset
                          setState("Aqua_Control.0.Vliesfilter.Vliesrolle"/*Vliesrolle*/, Vliesrollen_L_C3_A4nge, true);
                          setStateDelayed("Aqua_Control.0.Vliesfilter.Vliesfilter_Vlies_&_Datum_Reset"/*Vliesfilter_Vlies_&_Datum_Reset*/, false, 10000, false);
                        }
                      });
                      

                      Alexa Sprachsteuerung auf dem Datenpunkt
                      IMG_5887.jpg

                      Datenpunkte:

                      Bildschirmfoto 2019-09-22 um 07.01.40.png

                      paul53 1 Reply Last reply Reply Quote 0
                      • paul53
                        paul53 @Aphofis last edited by

                        @Aphofis sagte:

                        Alexa diesen Datums Datenpunkt & Den Rollenverbrauch aktuallisierungen zu lassen per sprachbefehl!?

                        Mit Alexa kenne ich mich nicht aus.

                        @Aphofis sagte in [gelöst] Tageszähler:

                        In dieser Form !?

                        Die Variable Vliesrollen_Länge sollte innerhalb des Triggers auf den Wert des entsprechenden Datenpunktes gesetzt werden, da sie sonst praktisch eine Konstante ist. Die Verzögerung im letzten Befehl ist nicht erforderlich.

                        Aphofis 1 Reply Last reply Reply Quote 0
                        • Aphofis
                          Aphofis @paul53 last edited by

                          @paul53
                          Du meinst so?
                          Das ist gut zu wissen, das keine Zeitverzögerung da rein muss!
                          Ich habe einige Steuerungen die auch sehr umfangreich aber simpel sind, wo mehrere Geräte gesteuert werden sollen und Steuerungen ein oder ausgeschaltet werden müssen. da habe ich sowas auch drin. Vielleicht, müssen die ja garnicht sein. Nur kommt es manchmal zu fehl schaltungen.

                          var Vliesrollen_Laenge;
                          
                          
                          Vliesrollen_Laenge = getState("Aqua_Control.0.Vliesfilter.Vlies_Rollenlänge").val;
                          on({id: 'Aqua_Control.0.Vliesfilter.Vliesfilter_Vlies_&_Datum_Reset', change: "ne"}, function (obj) {
                            var value = obj.state.val;
                            var oldValue = obj.oldState.val;
                            if (getState("Aqua_Control.0.Vliesfilter.Vliesfilter_Vlies_&_Datum_Reset").val == true) {
                              Vliesrollen_Laenge = Vliesrollen_Laenge;
                              // Datums Reset
                              setState("Aqua_Control.0.Vliesfilter.Vliesrolle_eingesetzt"/*Vliesrolle_eingesetzt*/, formatDate(new Date(), "DD.MM.YYYY"), true);
                              // 100 Meter Reset
                              setState("Aqua_Control.0.Vliesfilter.Vliesrolle"/*Vliesrolle*/, Vliesrollen_Laenge, true);
                              setState("alexa2.0.Echo-Devices.G090LV0371040175.Commands.speak"/*speak*/, ('Ich habe,, das Vliesfilter Datum und den Vliesrollenverbrauch,, zurückgesetzt'));
                              sendTo("telegram.0", "send", {
                                  text: (['Vliesfilter Datum und Vliesrollenverbrauch','\n','wurden auf das heutige Datum und ',getState("Aqua_Control.0.Vliesfilter.Vlies_Rollenlänge").val / 100,'Meter Rolle zurückgesetzt'].join(''))
                              });
                              console.log("telegram: " + (['Vliesfilter Datum und Vliesrollenverbrauch','\n','wurden auf das heutige Datum und ',getState("Aqua_Control.0.Vliesfilter.Vlies_Rollenlänge").val / 100,'Meter Rolle zurückgesetzt'].join('')));
                              setState("Aqua_Control.0.Vliesfilter.Vliesfilter_Vlies_&_Datum_Reset"/*Vliesfilter_Vlies_&_Datum_Reset*/, false);
                            }
                          });
                          
                          paul53 1 Reply Last reply Reply Quote 0
                          • paul53
                            paul53 @Aphofis last edited by

                            @Aphofis sagte:

                            Du meinst so?

                            Nein, die ehemalige Zeile 4 muss in die neue Zeile 9.
                            setze Vliesrollen_Laenge auf Wert von Objekt Vlies_Rollenlänge

                            Aphofis 1 Reply Last reply Reply Quote 0
                            • Aphofis
                              Aphofis @paul53 last edited by

                              @paul53
                              Korregt ?

                              var Vliesrollen_Laenge;
                              
                              
                              Vliesrollen_Laenge = getState("Aqua_Control.0.Vliesfilter.Vlies_Rollenlänge").val;
                              on({id: 'Aqua_Control.0.Vliesfilter.Vliesfilter_Vlies_&_Datum_Reset', change: "ne"}, function (obj) {
                                var value = obj.state.val;
                                var oldValue = obj.oldState.val;
                                if (getState("Aqua_Control.0.Vliesfilter.Vliesfilter_Vlies_&_Datum_Reset").val == true) {
                                  Vliesrollen_Laenge = getState("Aqua_Control.0.Vliesfilter.Vlies_Rollenlänge").val;
                                  // Datums Reset
                                  setState("Aqua_Control.0.Vliesfilter.Vliesrolle_eingesetzt"/*Vliesrolle_eingesetzt*/, formatDate(new Date(), "DD.MM.YYYY"), true);
                                  // 100 Meter Reset
                                  setState("Aqua_Control.0.Vliesfilter.Vliesrolle"/*Vliesrolle*/, Vliesrollen_Laenge, true);
                                  setState("alexa2.0.Echo-Devices.G090LV0371040175.Commands.speak"/*speak*/, ('Ich habe,, das Vliesfilter Datum und den Vliesrollenverbrauch,, zurückgesetzt'));
                                  sendTo("telegram.0", "send", {
                                      text: (['Vliesfilter Datum und Vliesrollenverbrauch','\n','wurden auf das heutige Datum und ',getState("Aqua_Control.0.Vliesfilter.Vlies_Rollenlänge").val / 100,'Meter Rolle zurückgesetzt'].join(''))
                                  });
                                  console.log("telegram: " + (['Vliesfilter Datum und Vliesrollenverbrauch','\n','wurden auf das heutige Datum und ',getState("Aqua_Control.0.Vliesfilter.Vlies_Rollenlänge").val / 100,'Meter Rolle zurückgesetzt'].join('')));
                                  setState("Aqua_Control.0.Vliesfilter.Vliesfilter_Vlies_&_Datum_Reset"/*Vliesfilter_Vlies_&_Datum_Reset*/, false);
                                }
                              });
                              
                              
                              paul53 1 Reply Last reply Reply Quote 0
                              • paul53
                                paul53 @Aphofis last edited by

                                @Aphofis
                                Korrekt.

                                Aphofis 1 Reply Last reply Reply Quote 0
                                • Aphofis
                                  Aphofis @paul53 last edited by

                                  @paul53
                                  Dann kanns ja los gehen.
                                  Hatte die Sprachsteuerung mal getestet Datenpunkte werden korregt gesetzt.
                                  Prima 👍 👍 👍
                                  Vielen Dank

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

                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  735
                                  Online

                                  31.9k
                                  Users

                                  80.3k
                                  Topics

                                  1.3m
                                  Posts

                                  blockly
                                  3
                                  17
                                  1334
                                  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