Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Script in Blockly ausführen!

    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

    Script in Blockly ausführen!

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

      @homoran sagte in Script in Blockly ausführen!:

      du willst wirklich, dass dieses Skript in global jedesmal vor allen deinen anderen Skripten (jetzigen und zukünftigen!!) ausgeführt wird?

      Hallo homoran ... hallo @paul53

      Das mit dem Ordner GLOBAL scheint ja ein nicht so geliebtes "Kind" zu sein und es wird/soll mE nach auch nicht weiter publik gemacht werden.

      Frage: gibt es denn keine Importfunktion im ioBroker ?

      Wie wäre dann die Idee, wenn nicht alle GLOBALEN-BLOCKLY oder -JAVA-SKRIPTE automatisch in alle anderen vorhandenen und zukünftigen Skripte zwingend kopiert werden müssen sondern, das das der Anwender selber in der Hand hätte. Durch einen IMPORT-Baustein. In diesem Baustein würde/könnte das GLOBLA-Skript oder GLOBALE-JAVA-SKRIPT dann benannt(gekennzeichnet) werden, das dann in das aktuelle Skript importiert/kopiert werden soll. Diese müssten dann immer natürlich am Anfang (-> siehe Java-Regeln) deklariert werden.

      So könnte man sich im Laufe der Zeit eine Sammlung von Globalen-Funktionen oder Globlen-Variablen anlegen und selber bestimmen, in welche Skripte es kopiert und benutzt werden soll.

      Frage: Vielleicht gibt es so etwas als Blockly schon und ich habe es bisher leider nocht nicht gefungen ?

      cu perry

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

        @perry sagte der Anwender selber in der Hand hätte. Durch einen IMPORT-Baustein.

        Man kann eigene Node-Module erstellen und diese per require() einfügen.

        const myModule = require('../iobroker-data/modules/test.js');
        

        Für Blockly gibt es das nicht.

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

          @paul53 sagte in Script in Blockly ausführen!:

          Für Blockly gibt es das nicht.

          Schade ... DAS ... wäre vielleicht für spätere Weiterentwicklung mM nach eine super Sache ... Schaun wir mal 😊

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

            @perry sagte in Script in Blockly ausführen!:

            Schade ... DAS ... wäre vielleicht für spätere Weiterentwicklung mM nach eine super Sache

            Bitte immer bedenken, dass Blockly für Einsteiger in Javascript gedacht ist/war, auch wenn inzwischen schon eine ganze Menge 'advanced' Blöcke existieren.

            Einige Dinge stehen aber genau deswegen nicht für Blockly-User zur Verfügung, damit es nicht wegen fehlenden Verständnisses ungewollt zu massiven Problemen kommt

            P 1 Reply Last reply Reply Quote 0
            • P
              perry @Homoran last edited by

              @homoran sagte in Script in Blockly ausführen!:

              Bitte immer bedenken, dass Blockly für Einsteiger in Javascript gedacht ist/war

              Hallo homoran,
              ja, das ist mir schon klar ... aber Blockly ist mE nach genial ... denn es geht ja nicht nur um Einsteiger, sondern auch darum deine/meine eigenen Gedanken ... hmm ... sagen wir in 6 Monaten ... noch mal schnell nachzuvollziehen ... und eine breitere Anzahl von Usern für die Smarthome-Idee mit ioBroker zu begeistern. Nicht jeder ist bereit kryptische Sonderzeichen und eine Programmiersprache zu lernen. Das wird dir mit nur Java (oder Node-Modulen) kaum gelingen.
              Darum Blockly weiterzuentwickeln ist mM nach durchaus sinnvoll und zielführend. 👍
              cu perry

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

                @perry sagte in Script in Blockly ausführen!:

                Blockly ist mE nach genial

                gar keine Frage!

                @perry sagte in Script in Blockly ausführen!:

                Nicht jeder ist bereit kryptische Sonderzeichen und eine Programmiersprache zu lernen

                Das sollte man schon sein wenn man Expertenfunktionen verwenden will.
                (nur bei mir selber ist es nicht der fehlende Wille - ich bekomme es einfach nicht auf die Reihe 😢 )

                P 1 Reply Last reply Reply Quote 0
                • P
                  perry @Homoran last edited by perry

                  @homoran sagte in Script in Blockly ausführen!:

                  Das sollte man schon sein wenn man Expertenfunktionen verwenden will.

                  naja ?? ... Expertenfunktionen ?? ... nicht unbedingt, aber da du mich weiter oben im Thread ja schon "angezählt" 😊 hast "... so etwas tut man nicht ..." ist nach einer "schlaflosen" Nacht der Entschluss gereift, so etwas "nicht zu machen".

                  Daher mein Wunsch GLOBAL zu verstehen und dann zu merken, das du Recht hast mit der Aussage "in alle bestehenden und zukünftigen ..." ... UND ... da wäre es ja prima, wenn ich eine Vielzahl von Schaltungen in Funktionen einbetten könnte, die ich dann ZENTRAL (GLOBAL) abspeichere und dann bestimmen könnte, welche Sammlung von Funktionen oder Variablen ich in welche Skripte "reinkopieren" möchte. Das war oder besser gesagt ist mein Anliegen.

                  Mal schauen was paul53 so alles noch macht ... vielleicht ... 😁 ... klappt es ja irgendwann.
                  cu perry

                  Ps: man könnte das Blockly ja evt nur dann einblenden, wenn man sich als "Experte" ausgibt 😁 😁

                  Homoran paul53 2 Replies Last reply Reply Quote 0
                  • Homoran
                    Homoran Global Moderator Administrators @perry last edited by

                    @perry sagte in Script in Blockly ausführen!:

                    Expertenfunktionen ?? ... nicht unbedingt,

                    oh doch 😉
                    das Verzeichnis Global siehst du nur in der Expertenansicht!

                    @perry sagte in Script in Blockly ausführen!:

                    Ps: man könnte das Blockly ja evt nur dann einblenden, wenn man sich als "Experte" ausgibt

                    s.o.

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

                      @perry sagte: Expertenfunktionen ?? ... nicht unbedingt,

                      Die Integration von eigenen Node-Modulen ist sehr wohl eine Expertenfunktion und nichts für den normalen Blockly-Nutzer.

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

                        @paul53 Grundsätzlich komme ich von beruflich von Assembler, Embedded C oder auch VB, bzw. VB.NET, daher würde ich mich bzgl. Programmieren nicht als unerfahren definieren. Dennoch fehlt mir leider die Zeit / Prio mich tiefer in eine neue Sprache einzuarbeiten. Da ist Blockly schon recht hilfreich und ich verwende es gerne. Was ich allerdings schmerzlich vermisse ist die Möglichkeit mit Blockly Funktionen zu deklarieren, welche ich mehrfach in verschiedenen Skripten verwenden kann. Gibt es da tatsächlich gar keine Möglichkeit (mit Blockly)?

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

                          @markus-2 sagte: Embedded C

                          Dann sollte Javascript nicht schwer fallen.

                          @markus-2 sagte in Script in Blockly ausführen!:

                          Möglichkeit mit Blockly Funktionen zu deklarieren, welche ich mehrfach in verschiedenen Skripten verwenden kann. Gibt es da tatsächlich gar keine Möglichkeit (mit Blockly)?

                          Man kann auch Blockly-Skripte mit globalen Funktionen unter der Gruppe "global" erstellen. Man kommt an diese Funktionen allerdings nur über eine JS-Funktion mit Ergebnis ran, da Blockly selbst keine externen Funktionsbezeichner erlaubt.

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

                            @paul53 Nachdem was ich oben gelesen habe bin ich etwas verunsichert. Ich habe verstanden, dass Skripte unter Global IMMER vor der Ausführung anderer Skripte ausgeführt werden. Ganz klar ist mir dennoch nicht, ob das nur für das Aufstarten des Adapter gilt oder auch bei jedem Trigger eines Ereignisses.

                            R paul53 2 Replies Last reply Reply Quote 0
                            • R
                              RkcCorian @RkcCorian last edited by

                              @markus-2 Ahh, evtl. löst dass mein Problem. Die Funktionen sind dann in einem Skript unter Global aber ohne Trigger passiert erstmal nichts. Daher kann ich "gefahrlos" Blockly-Funktionen dort definieren, solange ich sie nicht dort aufrufe. Ist das korrekt?!

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

                                @markus-2 sagte: dass Skripte unter Global IMMER vor der Ausführung anderer Skripte ausgeführt werden.

                                Skripte unter "global" werden vor dem Kompilieren in jedes andere (nicht globale) Skript kopiert und dann dort ausgeführt. Trigger gehören deshalb nicht in ein globales Skript.

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

                                  @markus-2 sagte: Daher kann ich "gefahrlos" Blockly-Funktionen dort definieren, solange ich sie nicht dort aufrufe.

                                  Ja, globale Funktionen müssen in Blockly aus einer JS-Funktion mit Ergebnis aufgerufen werden.

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

                                    @paul53 Super, vielen Dank! Hast Du hierfür ein Beispiel-Code? Falls nicht geht ich mal auf Suche.

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

                                      @markus-2 sagte: Hast Du hierfür ein Beispiel-Code?

                                      Nein, ich verwende Javascript.

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

                                        @paul53 Danke trotzdem! 🙂

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

                                        Support us

                                        ioBroker
                                        Community Adapters
                                        Donate

                                        828
                                        Online

                                        31.8k
                                        Users

                                        79.9k
                                        Topics

                                        1.3m
                                        Posts

                                        7
                                        40
                                        4446
                                        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