Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [gelöst]Position für Timeout ?

    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]Position für Timeout ?

    This topic has been deleted. Only users with topic management privileges can see it.
    • MartinK.
      MartinK. @BBTown last edited by

      @BBTown Ja, mir geht es nur darum, das über einen Zeitraum von 5 oder 10 Sek geschaut wird, ob sich der Spannungswert im beschriebenen Bereich aufhält, und wenn das 5-10 Sek gegeben ist, soll erst die "steuere" Funktion aktiviert werden.... Ist das so mit deinem ergänzten Timeout möglich ? 😉

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

        @MartinK sagte in Zeile 8:

        Wartezeit für Spannungsbereich

        Der Variablenbezeichner enthält unzulässige Zeichen: Leerzeichen. Siehe Unterschied zu Zeile 1. Ändere den Bezeichner in Wartezeit_fuer_Spannungsbereich.

        MartinK. 1 Reply Last reply Reply Quote 0
        • MartinK.
          MartinK. @BBTown last edited by

          @BBTown sagte in Position für Timeout ?:

          @MartinK
          Wenn ich deine Fragestellung richtig verstanden habe, dann sollte die Lösung so aussehen
          c9dfc818-1f42-42ac-939d-fee4b37bc875-grafik.png

          Das Problem ist, wenn ich den Timeout so einbaue bekomme ich immer wieder den Fehler in dem Skript angezeigt 😉
          error.png

          BBTown 1 Reply Last reply Reply Quote 0
          • BBTown
            BBTown @MartinK. last edited by

            @MartinK
            das kann ich nicht nachvollziehen ...

            und ohne die beiden Timer Einträge kommt kein Fehler?
            Was ist wenn Du die beiden anderen Trigger mal aus dem Script raus nummst, so dass Du dich auf einen Anwendungsfall konzentrieren kannst?

            Macht es einen Unterschied, wenn Du oben im Trigger anstelle von "Update" dort "egal" auswählst? (kann ich mir aber eigentlich nicht vorstellen)

            MartinK. 1 Reply Last reply Reply Quote 0
            • MartinK.
              MartinK. @BBTown last edited by

              @BBTown Auch ohne die beiden unteren Anwendungsfälle erscheint der Fehler, und eine Änderung der Trigger Einstellung auf "egal" macht auch keinen unterschied... 😕 ohne den Timeout läuft das Skript super.... ??

              error4.png

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

                @MartinK
                Was steht im generierten Javascript-Code (Zeile 8 ) ?

                MartinK. 2 Replies Last reply Reply Quote 0
                • MartinK.
                  MartinK. @paul53 last edited by MartinK.

                  @paul53 Leider bin ich noch nicht so der Nerd in Sachen Blockly & Co... 😉 Welcher Javaskript -code (Zeile 8 ) ist denn gemeint??? Der Fehler der im LOG steht in der Zeile 8 nach dem ausführen des Skriptes ?

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

                    @paul53 Da ist der Fehler in Zeile 8 😉

                    err1.png

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

                      @MartinK sagte:

                      Welcher Javaskript -code (Zeile 8 ) ist denn gemeint???

                      Im Blockly-Editor kann man rechts oben (links neben dem Schraubenschlüssel) in die Javascript-Ansicht umschalten, in der der aus Blockly erzeugte JS-Code mit Zeilennummer angezeigt wird. Diesen Code poste bitte ohne die letzte Zeile in Code tags (copy & paste).

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

                        @paul53 Hier ist der Code 😉

                        var Wartezeit_f_C3_BCr_Spannungsbereich;
                        
                        
                        // Shelly Waschmaschine
                        on({id: 'shelly.0.SHPLG-S#04160D#1.Relay0.Power', change: "ne"}, function (obj) {
                          var value = obj.state.val;
                          var oldValue = obj.oldState.val;
                          (function () {if (Wartezeit für Spannungsbereich) {clearTimeout(Wartezeit für Spannungsbereich); Wartezeit für Spannungsbereich = null;}})();
                          // Spannungsbereich  **Waschmaschine läuft!** - ON
                          if (getState("shelly.0.SHPLG-S#04160D#1.Relay0.Power").val > 10) {
                            setState("waschmaschine.0.Waschmaschine-Läuft!"/*waschmaschine.0.Waschmaschine-Läuft!*/, true);
                            setStateDelayed("waschmaschine.0.Waschmaschine_FERTIG!-Schalter"/*Waschmaschine_FERTIG!-Schalter*/, false, 1000, false);
                          }
                          // Spannungsbereich  **Waschmaschine Fertig!** - ON
                          if (getState("shelly.0.SHPLG-S#04160D#1.Relay0.Power").val > 2 && getState("shelly.0.SHPLG-S#04160D#1.Relay0.Power").val < 6) {
                            Wartezeit für Spannungsbereich = setTimeout(function () {
                              setState("waschmaschine.0.Waschmaschine-Läuft!"/*waschmaschine.0.Waschmaschine-Läuft!*/, false);
                              setState("waschmaschine.0.Waschmaschine_FERTIG!-Schalter"/*Waschmaschine_FERTIG!-Schalter*/, true);
                            }, 10000);
                          }
                        });
                        
                        paul53 1 Reply Last reply Reply Quote 0
                        • paul53
                          paul53 @MartinK. last edited by paul53

                          @MartinK sagte in Zeile 8:

                          Wartezeit für Spannungsbereich

                          Der Variablenbezeichner enthält unzulässige Zeichen: Leerzeichen. Siehe Unterschied zu Zeile 1. Ändere den Bezeichner in Wartezeit_fuer_Spannungsbereich.

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

                            @paul53 Alles klar !!! Vielen Dank ! Das war der Fehler ! 🙂

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

                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            663
                            Online

                            31.8k
                            Users

                            80.0k
                            Topics

                            1.3m
                            Posts

                            blockly
                            3
                            16
                            434
                            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