Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Mehrere Scripte in einem?

    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

    Mehrere Scripte in einem?

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

      Hallo zusammen,

      Ich sehe hier im Forums immer wieder Scripte, in denen mehrere Programme in einem Blockly stehen (z. Bsp. Das Bild unten). Ist das nur für die Screenshots für's Forums so aufbereitet oder kann man das tatsächlich so machen? Bisher mache ich immer für jede Kleinigkeit ein eigenes Script. Wenn das so geht, gibt es irgendwelche Bedingungen oder kann man hunderte Scripte zusammenpacken?

      9c8d3c81-4c56-4dfe-8f3a-01dac42b7f87-image.png

      crunchip Asgothian 2 Replies Last reply Reply Quote 0
      • crunchip
        crunchip Forum Testing Most Active @UHU01 last edited by crunchip

        @uhu01 das wie in deinem screen gezeigt sind ja in dem Sinn nicht mehrere scripte, sondern eins, bestehend aus mehreren Bausteinen die ineinander zusammen gehören. Es können natürlich mehrere Trigger in einem Script vorhanden sein.

        @uhu01 sagte in Mehrere Scripte in einem?:

        Wenn das so geht, gibt es irgendwelche Bedingungen oder kann man hunderte Scripte zusammenpacken?

        natürlich kannst du mehrere Dinge in ein Script packen, es sollte aber auch "zusammengehören".
        desweiteren, wenn du das Script stoppst, beendest du halt alles, was in dem Script läuft.
        Trigger in Trigger geht nicht, das ist eine Bedingung

        1 Reply Last reply Reply Quote 0
        • Asgothian
          Asgothian Developer @UHU01 last edited by

          @uhu01 sagte in Mehrere Scripte in einem?:

          Bisher mache ich immer für jede Kleinigkeit ein eigenes Script. Wenn das so geht, gibt es irgendwelche Bedingungen oder kann man hunderte Scripte zusammenpacken?

          Ich denke der Frage liegt ein Missverständnis zu Grunde. Per Definition ist der Inhalt den du in einem Blockly hast ein Skript. In dem Skript in deinem Beispiel sind in diesem einen Skript zwei von einander vollständig unabhängige Abläufe definiert.
          Ein Skript kann beliebig viele voneinander unabhängige Abläufe enthalten. Dabei ist erst einmal nicht relevant ob die unabhängigen Abläufe im Blockly optisch voneinander getrennt oder einfach hintereinander weg verkettet sind.

          Es ist auch zulässig Blöcke die eigentlich verkettet werden sollen (wie die beiden Trigger Bausteine in Deinem Beispiel) unverkettet nebeneinander darzustellen.
          Allerdings ist in dieser Situation die Reihenfolge der Ausführung aus dem Blockly nicht zu erkennen, weswegen davon eigentlich abgeraten wird.

          Ansonsten stellt sich die Frage der Übersichtlichkeit. Ein einzelnes Blockly mit sehr vielen Blöcken kann schnell unübersichtlich werden - wieder unabhängig davon ob die darin definierten Abläufe voneinander getrennt dargestellt werden oder nicht.

          Es macht also Sinn die Abläufe nach Gruppen zusammengefasst in Skripte zu stecken.

          An Regeln gibt es eigentlich nur 3:

          • Variablen die in einem Blockly definiert sind sind per Definition im gesamten Skript verfügbar, nicht nur in dem Ablauf für den sie definiert wurden.
          • Die Funktionen "Ausführen Timeout" und "Ausführen Intervall" nutzen globale (im gesamten Skript eindeutige Variablen um einen Zugriff auf das Intervall / den Timeout zu erhalten. Es ist wichtig darauf zu achten das diese Variablen eindeutig sind, ansonsten kann es passieren das Timeouts oder Intervalle mehrfach laufen und nicht beendet werden können.
          • Es macht (in 99% der Fälle) keinen Sinn mehrere Trigger ineinander zu schachteln. Das gilt sowohl für die Trigger nach dem Muster "Falls Objekt" als auch für jegliche Art von "Zeit" oder "Cron" trigger.
          B UHU01 2 Replies Last reply Reply Quote 1
          • B
            bommel_030 @Asgothian last edited by

            @asgothian
            Wenn ich hier mal ranhängen darf. Ich habe in jedem Raum eine Zigbee-Lampe und einen Shelly Switch. Jetzt habe ich pro Raum ein Blockly-Skript das nicht mehr macht als wenn Lichtschalter an, dann Lampe an, wenn Schalter aus, dann Lampe aus.
            Wenn ich deine Antwort richtig verstehe ist es kein Problem statt für jeden Raum ein einzelnes Skript ein großes "Lichtskript" zu erstellen. Da stehen dann quasi die Blocklyabläufe hintereinander weg.
            Nachteil hierbei ist dann nur, dass ich einzelne Räume nicht einfach deaktivieren kann (halt nur auskommentieren), habe dann aber der (für mich) besseren Übersicht nur ein Lichtskript.
            Von der "Performance" her ist das beides dann gleichwertig?

            Asgothian UHU01 2 Replies Last reply Reply Quote 1
            • Asgothian
              Asgothian Developer @bommel_030 last edited by

              @bommel_030 Ja.

              1 Reply Last reply Reply Quote 2
              • UHU01
                UHU01 @bommel_030 last edited by

                @bommel_030 Das war auch genau mein GeDanke!

                1 Reply Last reply Reply Quote 0
                • UHU01
                  UHU01 @Asgothian last edited by

                  @asgothian
                  Danke für die ausführliche Erklärung!

                  Aber da ich dem Braten noch nicht ganz traue: Sowas kann ich also problemlos machen?

                  9B5E4129-4421-49B1-A586-32F74EE0077A.png

                  Homoran 1 Reply Last reply Reply Quote 0
                  • Homoran
                    Homoran Global Moderator Administrators @UHU01 last edited by

                    @uhu01 sagte in Mehrere Scripte in einem?:

                    Sowas kann ich also problemlos machen?

                    wenn sich hinter den gleichen Bezeichnern etwas verschiedenes verbirgt, ja!

                    UHU01 1 Reply Last reply Reply Quote 1
                    • UHU01
                      UHU01 @Homoran last edited by

                      @homoran
                      Ok Danke! (und ja. Sind die 4 Eingänge eines Shelly i4)

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

                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      750
                      Online

                      31.9k
                      Users

                      80.1k
                      Topics

                      1.3m
                      Posts

                      5
                      9
                      692
                      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