Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [GELÖST] Skript ruft Skript auf (Blockly)

    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] Skript ruft Skript auf (Blockly)

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

      Hallo zusammen,

      ich habe zu dem Thema leider nichts gefunden, denke aber dass es möglich sein sollte 🙂

      Ich habe ein Skript zur Steuerung meiner Rollläden. Eine verschachtelte Abfrage entscheidet je nach Wochentag und Sonnenaufgang wann die Rollläden gesteuert werden.

      Derzeit gebe ich in jedem Zweig jeden einzelnen Rollladen an. Die Blöcke sind somit immer gleich und das Skript ist unnötig groß…

      Kann ich den Teil mit hoch und runter fahren in ein separates Skript machen und vom Hauptskript aufrufen?

      Eine Möglichkeit wäre im Hauptskript eine Variable zu schalten, die das zweite Skript triggert. Das finde ich jedoch nicht so elegant gelöst

      Gruß

      Bastian

      1 Reply Last reply Reply Quote 0
      • M
        meicker last edited by

        Hallo Bastian,

        warum istallierst Du nicht den Szenen Adapter und erstellst mit dem Script Zustände die Du dann als Trigger in Szenen verwendest ?

        Viele grüße,

        marc

        1 Reply Last reply Reply Quote 0
        • B
          bastian last edited by

          Danke für den Hinweis, aber das kommt mehr oder weniger meinem Workaround mit der Trigger-Variablen gleich.

          Hinzu kommt dass bei manchen Rollläden geprüft wird ob das dazugehörige Fenster(Tür) geöffnet ist. Damit sich niemand unfreiwillig aussperrt 😉 Das ist in Verbindung mit dem Szenen Adapter dann wiederum schwierig.

          1 Reply Last reply Reply Quote 0
          • B
            bastian last edited by

            Eine Möglichkeit wäre ein Skript in JavaScript zu schreiben und es im Global-Ordner abzulegen.

            Wie kann ich das mit Blockly aufrufen?

            1 Reply Last reply Reply Quote 0
            • M
              meicker last edited by

              Du kannst mit Blocky einen Zusatand erzeugen und benennen mit global.xxxxx Dann erscheint der Zustand in GLOBAL wenn Du ihn auch mit Daten aktualisierst zeigt er die gewünschten daten an.

              Für die Prüfung kannst Du eine variable mit einem Zustand machen. 0 = geschlossen 1 = geklappt 2 = geöffnet. Die Scripte für die Rolladen fährst du entsprechend nur wenn der Zustand 0 oder 1 ist, bzw <> 2 🙂

              Für Szenen legst Du einfach eine eigene Szene mit der Balkontüre an …

              1 Reply Last reply Reply Quote 0
              • B
                bastian last edited by

                @meicker:

                Du kannst mit Blocky einen Zusatand erzeugen und benennen mit global.xxxxx Dann erscheint der Zustand in GLOBAL wenn Du ihn auch mit Daten aktualisierst zeigt er die gewünschten daten an.

                Für die Prüfung kannst Du eine variable mit einem Zustand machen. 0 = geschlossen 1 = geklappt 2 = geöffnet. Die Scripte für die Rolladen fährst du entsprechend nur wenn der Zustand 0 oder 1 ist, bzw <> 2 🙂

                Für Szenen legst Du einfach eine eigene Szene mit der Balkontüre an … `

                Das mit der Balkontür funktioniert bereits ohne Probleme.

                Mir geht es nur darum das ich nicht in jedem Abzweig meine X-Rollläden aufführen muss.

                Es sieht aktuell so aus als würde kein Weg an einem sauberen Javascript vorbei führen, das alles komplett macht…

                1 Reply Last reply Reply Quote 0
                • B
                  bastian last edited by

                  Ich habe eine Lösung mit Blockly gefunden.

                  Folgende Ausgangssituation:

                  Der Block mit der Ansteuerung der Rollladen kommt mehrfach vor.
                  5625_ursprung.jpg

                  Man klickt rechts oberhalb vom Fenster auf den Button "Code anzeigen" und kann sich dort den sich wiederholen Part rauskopieren.

                  Nun fügt man einen Funktion-Block hinzu, gibt ihm einen Namen in meinen Fall "Rollladen" und fühlt in mit dem Code.
                  5625_funktionsblock.jpg

                  Im Anschluss gibt es im Reiter der Funktion-Blöcken einen neuen Block der genau die Funktion enthält die man vorher als Code eingegeben hat.
                  5625_funktion.jpg

                  Genau was ich wollte 🙂

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

                  Support us

                  ioBroker
                  Community Adapters
                  Donate

                  769
                  Online

                  31.7k
                  Users

                  79.9k
                  Topics

                  1.3m
                  Posts

                  2
                  7
                  1412
                  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