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] Trigger Problem/Verständnisproblem Blockly Skript Lichtsteuerung

    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

    [gelöst] Trigger Problem/Verständnisproblem Blockly Skript Lichtsteuerung

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

      Hi,
      ich habe folgendes Problem wo ich nicht verstehe wie oder wieso es nicht klappt wie ich möchte.
      Ich beschreibe erstmal was ich gerne hätte:
      Ich habe einen Reciever (VU Plus), von welchem ich die Zustände im IOBroker habe (also standby aktiv oder nicht....).
      Damit möchte ich eine Lampe (Yeelight) und eine Steckdose (Tasmota geflashte Gosund SP1) steuern und zwar folgendermassen:
      Wenn Uhrzeit zw. 19 Uhr und 4 Uhr (per Astro Dämmerung oder sowas ginge auch) und Reciever eingeschaltet, dann soll Lampe eingeschaltet werden.
      Wenn Reciever wieder ausgeschaltet, dann halt wieder ausschalten mit Verzögerung.....

      Soweit so gut, das hab ich auch hinbekommen und es klappt, aaaaber:
      Schalte ich den Reciever jetzt VOR 19 Uhr ein, geht logischerweise die Lampe ab 19 Uhr nicht an, da ja das Skript nicht mehr ausgeführt wird, da ichs im Moment so habe das der Trigger die änderung von Objekt VU Standby ist.
      Ok, das verstehe ich soweit auch, warum dass dann nicht klappt.

      Jetzt habe ich das gleiche Skript nochmal probiert mit Trigger Zeit zwischen 19 und 4 Uhr jede Sekunde von Jeder Minute von Jeder Stunde also (* * * 19-4 * * *) so,
      jedoch passiert dann gar nichts mehr und genau da ist mein Problem, denn ich verstehe nicht wieso.
      So müsste er doch (etwas overkill wahrsch. das jede Sekunde zu machen), jede Sekunde das Skript durchlaufen und wenn dann Reciever = an, lampe an usw...
      Es passiert dann aber gar nichts mehr.
      Ich sehe auch kein Output unter dem Skript, daher kA was da nicht geht, es kommt aber auch kein WARN oder Error..

      Hier mal das Skript welches geht,
      das was nicht geht ist eigentl. das gleiche nur der Trigger getauscht mit Zeitplan wie beschrieben.!Skript.jpg

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

        Wäre es nicht am einfachsten Du machst ein eigenes Script und triggerst auf 19:00h
        Wenn VU ist eingeschaltet, dann Licht an, sonst nicht

        Dann hast Du den Fall, VU ist vor 19:00h eingeschaltet abgefangen.
        Nach 19:00h greift dein ursprungsscript

        1 Reply Last reply Reply Quote 0
        • W
          W0RSCHD last edited by

          achso du meinst nochmal ein extra Skript um das abzufangen? Ja das währe wohl am einfachsten, würde ich auch hinbekommen, ich dachte nur das geht evtl. alles in einem Skript um das Übersichtlicher zu behalten und ich lerne noch was dabei, deswegen hab ich mal hier nachgefragt und erhoffe mir eine Lösung 🙂

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

            @W0RSCHD es sind ja zwei unterschiedliche Trigger und man sollte keine 2 Trigger in einem Script haben.

            Ausserdem mag ich es einfach , wenn es denn geht 😉

            paul53 1 Reply Last reply Reply Quote 0
            • W
              W0RSCHD last edited by

              Einfacher wäre doch wenn es nur 1 Skript gäbe, wo er einfach ab 19 Uhr anfängt abzufrangen Standby true oder false und dann halt dementsprechend Steuert.
              So wäre ja quasi alles abgefangen.
              Ich hatte das ja so probiert mit jede Sekunde (erhöhrt wahrsch. die Last extrem auf dem RPI), was aber letzten Endes nichts gebracht hat, da gar nichts passiert ist dann und nichts geschaltet wurde. Und ich verstehe nicht wieso das nicht geklappt hat, darum auch meine Frage hier.

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

                @W0RSCHD nein, warum sollst Du das System mit unsinnigen permamementen Abfragen im Sekundentakt belasten, wenn Du das ganze mit einer einzigen Abfrage um 19:00h abfangen könntest?

                Als Nebeneffekt - vor allem falls Du kein JavaScript Experte bist - ist es doch auch nach Jahren viel einfacher zu erkennen was ein Script überhaupt ausführen soll wenn es nur eine gezielte Aufgabe erfüllt, als wenn Du ein kompliziertes Werk vor dir hast, welches alle Eventualitäten in einem komplexem Script abfängt.

                [Nachtrag]
                Keiner zwingt Dich meinen Vorschlag anzunehmen 😉

                1 Reply Last reply Reply Quote 0
                • W
                  W0RSCHD last edited by

                  Hehe, dein Vorschlag ist schon gut keine Frage, ich werde das wahrsch. auch so umsetzen. Mir war auch klar das ich mit der Sekündlichen Abfrage die Last auf dem IOBroker deutlich erhöhe und das recht unnötig, da hast du auch recht, ich wollte aber verstehen wieso dies so nicht funktioniert hat, bzw. was ich da Falsch gemacht habe. Deine Lösung ist effektiv die Lastärmere und wahrsch. auch effektivere.

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

                    @BBTown sagte:

                    man sollte keine 2 Trigger in einem Script haben.

                    Wie kommst Du darauf ? In einem Skript können beliebig viele Trigger verwendet werden. Nur geschachtelte Tigger (Trigger im Triggerbaustein) sollte man vermeiden.

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

                      @paul53 ja, da habe ich mich unglücklich ausgedrückt - Du kannst Sie losgelöst von einander anordnen, aber findest Du dass dies die Übersichtlichkeit für Anfänger steigert gegenüber einem separatem Script?

                      1 Reply Last reply Reply Quote 0
                      • W
                        W0RSCHD last edited by

                        @BBTown du meinst quasi das 2. Skript so

                        Skript2.jpg

                        richtig?

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

                          @W0RSCHD beinahe ... den "falsch" Bereich brauchst Du doch nicht ... wenn der VU aus ist passiert doch um 19:00h nichts

                          1 Reply Last reply Reply Quote 0
                          • W
                            W0RSCHD last edited by W0RSCHD

                            stimmt, das war ein logikfehler meinerseits ^^

                            Könnte ich die beiden Trigger im selben Skript nacheinander anhängen oder arbeitet er die dann nicht ab also den 2. nicht wenn der erste nicht gelaufen ist?
                            Oder Funktionieren die trotzdem unabhängig voneinander?
                            Also würde das auch funktionieren wenn ich den Zeitplan Trigger im ersten Skript hinter/unter den andren Trigger hänge?

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

                              @W0RSCHD
                              das ist genau das was @paul53 gemeint hat, ja, das geht

                              1 Reply Last reply Reply Quote 0
                              • W
                                W0RSCHD last edited by

                                ah super, ok das ist top! Danke euch beiden 🙂

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

                                  @W0RSCHD schreibts Du dann noch ein [gelöst] vor deinem Post? 🙂

                                  1 Reply Last reply Reply Quote 0
                                  • W
                                    W0RSCHD last edited by

                                    mach ich 🙂

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

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    896
                                    Online

                                    31.9k
                                    Users

                                    80.2k
                                    Topics

                                    1.3m
                                    Posts

                                    blockly scenes
                                    3
                                    16
                                    893
                                    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