Navigation

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

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Blockly

    This topic has been deleted. Only users with topic management privileges can see it.
    • Homoran
      Homoran Global Moderator Administrators last edited by

      Erst einmal vielen Dank an Bluefox für diese Funktion.

      Damit wird ioBroker auch für nicht-js-programmierer (mich eingeschlossen) wesentlich besser nutzbar.

      Für alle, die es noch nicht kennen:

      Der JavaScript Adapter enthält jetzt beim Anlegen eines neuen Scripts neben den Auswahlmöglichkeiten dieses in JavaScript oder coffeescript anzulegen, den Menüpunkt Blockly.

      Wählt man diesen aus, steht eine grafische Oberfläche zur Verfügung mit der die wichtigsten Befehle per Drag und Drop wie in einem Puzzle zu einem kompletten Skript zusammengeführt werden können.

      Nachdem diese Funktion jetzt fertig ist, möchte ich hiermit den Thread aus dem Tester Forum herausholen.

      Gruß

      Rainer

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

        Jetzt spiele ich selber erstmalig mit blockly herum und habe nach den ersten ganz einfachen Skripten, die fast auf Anhieb funktionierten, ein etwas komplexeres erstellen wollen.

        Auf der CCU hätte ich dies in zwei Programme und eine sysvar zerlegt und hatte gehofft, dies hier in einem Skript hinzubekommen.

        Ziel:

        Ich möchte im Badezimmer die elektrische Zusatzheizung in einem bestimmten Temperaturbereich regeln.
        144_iobroker_blockly_thermostat.jpg

        Doch damit nicht genug 😉

        Diese Aktion soll nach drücken auf einen Taster starten, und nach erneutem Drücken enden:
        144_iobroker_blockly_heizung_toggle.jpg
        Dieser Teil funktioniert.

        Aber wie Koppel ich diese zwei?

        So jedenfalls nicht.
        144_iobroker_blockly_heizung_kpl.jpg

        Gruß

        Rainer

        PS ich hoffe über Blockly auch das normale JavaScript zu lernen. Nach jeder Änderung sehe ich mir den Code an und versuche diesen nachzuvollziehen. Nochmals danke für Blockly!!

        1 Reply Last reply Reply Quote 0
        • S
          Solear last edited by

          Mache mal den äußeren Rahmen, ganz oben statt auf IST WAHR auf BEI VERÄNDERUNG oder IST AKTUALISIERT oder sowas ähnliches.

          Das ist ja ein Taster, kein Schalter.

          Da steht auch PRESS LONG, das ist so gewollt, ja? Statt PRESS SHORT.

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

            Press Long ist gewollt, das ist nicht der Grund.

            Press_Long funktioniert, die Heizung läuft an, regelt aber nicht im gewünschten Bereich.

            Gruß

            Rainer

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

              Hallo alle zusammen.

              Ich habe http://www.iobroker.net/?page_id=5319&lang=de mal auf die Schnelle den Anfang einer Doku zusammengeklöppelt.

              Layout ist noch verbesserungswürdig. Ich muss mir noch überlegen, ob wir für Blockly nicht wie bei vis einen eigenen Menüpunkt benutzen werden. Schließlich fehlt (ebenso wie die Widgets) noch die Beschreibung der Funktion und Bedienung der einzelnen Blöcke.

              Ebenso fehlen zu jeder Kategorie noch kurze Zweizeiler.

              Hinweise und Unterstützung sind wie immer sehr Willkommen.

              Gruß

              Rainer

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

                @Homoran:

                Jetzt spiele ich selber erstmalig mit blockly herum und habe nach den ersten ganz einfachen Skripten, die fast auf Anhieb funktionierten, ein etwas komplexeres erstellen wollen.

                Auf der CCU hätte ich dies in zwei Programme und eine sysvar zerlegt und hatte gehofft, dies hier in einem Skript hinzubekommen.

                Ziel:

                Ich möchte im Badezimmer die elektrische Zusatzheizung in einem bestimmten Temperaturbereich regeln. `
                Hallo Homoran

                Ohne Zustandsvariable sehe ich da keine Möglichkeit.

                Ich habe da mal etwas auf die Schnelle gebastelt.

                Meine Zustandsvariable ist lokal angelegt (boolHeizung)

                Wenn es so läuft wie ich es mir gedacht habe, kann man die Heizung (bis 22 Uhr) über die Taste ein/aus schalten.

                NICHT GETESTET!!!

                Ich hoffe Du kommst mit meinen Kommentaren klar.
                147_beispiel_zusatzheizung.png

                Grüße

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

                  @Homoran:

                  Hallo alle zusammen.

                  Ich habe http://www.iobroker.net/?page_id=5319&lang=de mal auf die Schnelle den Anfang einer Doku zusammengeklöppelt.

                  Layout ist noch verbesserungswürdig. Ich muss mir noch überlegen, ob wir für Blockly nicht wie bei vis einen eigenen Menüpunkt benutzen werden. Schließlich fehlt (ebenso wie die Widgets) noch die Beschreibung der Funktion und Bedienung der einzelnen Blöcke.

                  Ebenso fehlen zu jeder Kategorie noch kurze Zweizeiler.

                  Hinweise und Unterstützung sind wie immer sehr Willkommen.

                  Gruß

                  Rainer `

                  Fragt sich nur wie?

                  Ich habe keine Ahnung von GitHub usw.

                  Grüße

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

                    Danke erst einmal, werde ich dann heute abend testen.
                    @rantanplan:

                    Ohne Zustandsvariable sehe ich da keine Möglichkeit. ` 😢

                    ok, nächste Frage:

                    kann man mit Blockly auch Variablen anlegen, am besten nur if not exists?

                    @rantanplan:

                    Ich hoffe Du kommst mit meinen Kommentaren klar. `
                    natürlich, warum nicht 😉

                    Danke

                    Rainer

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

                      @rantanplan:

                      Fragt sich nur wie? `
                      kommt auf den Umfang an.

                      Tippfehler u.ä. hier im Forum oder per PN

                      größere Dinge (was stellst du dir da vor?) ebenfalls als (unformatierten) Text und Bilder ebenfalls per PN.

                      @rantanplan:

                      Ich habe keine Ahnung von GitHub usw. `
                      musst du auch nicht.

                      BTW

                      bin ab Freitag für ein paar Tage nicht am PC - hoffentlich aber über Handy mit euch verbunden.

                      Gruß

                      Rainer

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

                        @Homoran:

                        Danke erst einmal, werde ich dann heute abend testen.

                        ok, nächste Frage:

                        kann man mit Blockly auch Variablen anlegen, am besten nur if not exists? `

                        Man hat die Möglichkeit lokale, also nur in dem Script, gültige Variablen anzulegen.

                        Dies ist sehr einfach und sehr komfortabel umgesetzt.

                        Ziehe einfach aus dem Bereich "Variablen" den Baustein "setze [value] auf" in Dein Script.

                        Klicke auf den Pfeil neben [value] und wähle "Neue Variable…" aus.

                        Vergebe in dem folgenden Dialog einen Namen und fertig.

                        Nun erscheint in dem Bereich "Variablen" Deine Variable und Du kannst sie in Deinem Script benutzen.

                        Wenn Du ALLE Bausteine Deiner Variaben aus dem Blockly löscht, verschwindet die Variable auch wieder.

                        Grüße

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

                          Aaah! Danke!

                          Habe jetzt gerade ein Object angelegt - war dann wohl nicht nötig :idea:

                          Aber zwei weiter Fragen habe ich noch.

                          1.) In dem Skript steht:

                            BoolHeizung = !BoolHeizung;
                          
                          

                          ich hätte da "setze BoolHeizung auf false" genommen. Wo ist da der Unterschied?

                          2.) Die Zeit bis 22:00 hatte ich nur zur Sicherheit genommen. Sollte eigentlich für zwei Stunden laufen (dachte dafür ist der Timeout). Wenn das nicht klappte sollte das Skript dann spätestens um 22:00 den Heizlüfter ausstellen.

                          Gruß

                          Rainer

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

                            Da fällt mir ein, dass Bluefox auch schon mit einer Beschreibung für Blockly angefangen hat.

                            https://github.com/ioBroker/ioBroker.ja … ckly_en.md

                            Grüße

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

                              @rantanplan:

                              Da fällt mir ein, dass Bluefox auch schon mit einer Beschreibung für Blockly angefangen hat. `
                              Wieso hatte ich das gestern nicht gefunden, hätte ich ja nur kopieren und übersetzen müssen.

                              EDIT:

                              habe https://github.com/Homoran/ioBroker.javascript/blob/master/doc/blockly_de.md mal angefangen Bluefox' super Doku zu übersetzen.

                              @Bluefox: kann man das ohne allzugroßen Aufwand in HTML umwandeln? oder soll ich auf der Website "nur" einen Link dorthin machen?

                              Danke

                              Rainer

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

                                @Homoran:

                                Aaah! Danke!

                                Habe jetzt gerade ein Object angelegt - war dann wohl nicht nötig :idea:

                                Aber zwei weiter Fragen habe ich noch.

                                1.) In dem Skript steht:

                                  BoolHeizung = !BoolHeizung;
                                  
                                

                                ich hätte da "setze BoolHeizung auf false" genommen. Wo ist da der Unterschied?

                                2.) Die Zeit bis 22:00 hatte ich nur zur Sicherheit genommen. Sollte eigentlich für zwei Stunden laufen (dachte dafür ist der Timeout). Wenn das nicht klappte sollte das Skript dann spätestens um 22:00 den Heizlüfter ausstellen.

                                Gruß

                                Rainer `

                                zu 1)

                                Das ist als Ein/Aus-Schalter gedacht.

                                Wenn Du nach Tastendruck die Variable immer auf FALSE setzt, läuf das Script ja nie an.

                                Es würde auch so gehen:

                                Falls Variable = unwahr

                                mache Variable = wahr

                                sonst

                                mache Variable = unwahr

                                Wenn nur zwischen WAHR und UNWAHR hin und hergeschaltet werden soll, geht das einfacher mit "NICHT" (NOT).

                                Beim 1. Tastendruck wird aus UNWAHR -> WAHR

                                Beim 2. Tastendruck wird aus WAHR -> UNWAHR usw.

                                Zu 2)

                                Ein Timer zum Ausschalten ist nicht notwendig.

                                Entweder Du schaltest die Heizung wieder über die Taste aus (s.o.)

                                oder die Temperatur ist erreicht

                                oder (fallst Du vergessen hast die Heizung über die Taste auszuschalten) geht sie um 22 Uhr automatisch aus.

                                Ich weis nicht wie schnell "wiederhole solange" ausgeführt wird.

                                Und ob dadurch die Performance des ganzen Systems runtergezogen wird.

                                Da würde eventuell ein Timer als Pause Sinn machen.

                                Grüße

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

                                  @Homoran:

                                  @rantanplan:

                                  Da fällt mir ein, dass Bluefox auch schon mit einer Beschreibung für Blockly angefangen hat. `
                                  Wieso hatte ich das gestern nicht gefunden, hätte ich ja nur kopieren und übersetzen müssen.

                                  EDIT:

                                  habe https://github.com/Homoran/ioBroker.javascript/blob/master/doc/blockly_de.md mal angefangen Bluefox' super Doku zu übersetzen.

                                  @Bluefox: kann man das ohne allzugroßen Aufwand in HTML umwandeln? oder soll ich auf der Website "nur" einen Link dorthin machen?

                                  Danke

                                  Rainer `

                                  Ich würde die Scriptauszüge weg lassen.

                                  1. Interessiert das keinen "Blockly" Anfänger und verwirrt nur.

                                  2. Sollte man auch die "Blockly" Bilder übersetzen und dann passt das wieder nicht mit der Scriptdarstellung überein.

                                  Also bei den Bildchen und Übersetzung könnte ich helfen.

                                  Ich habe am Donnerstag einen Abgabetermin. Danach habe ich hoffendlich etwas mehr Zeit.

                                  Grüße

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

                                    @rantanplan:

                                    Ich würde die Scriptauszüge weg lassen. `
                                    meinst du die "xml=…."? sehe ich auch so.

                                    @rantanplan:

                                    Sollte man auch die "Blockly" Bilder übersetzen `
                                    einverstanden, aber das ist eine Riesenarbeit. Ich weiss gar nicht, wann Bluefox das alles gemacht hat!

                                    Die Bilder befinden sich https://github.com/Homoran/ioBroker.javascript/tree/master/doc/img und müssten ALLE nochmal neu gemacht werden mit einem …de... im Namen

                                    @rantanplan:

                                    Also bei den Bildchen und Übersetzung könnte ich helfen. `
                                    Das wäre super.

                                    @rantanplan:

                                    Ich habe am Donnerstag einen Abgabetermin. Danach habe ich hoffendlich etwas mehr Zeit. `
                                    Ich komme Freitag früh unters Messer.

                                    Gruß

                                    Rainer

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

                                      @Homoran:

                                      @rantanplan:

                                      Sollte man auch die "Blockly" Bilder übersetzen `
                                      einverstanden, aber das ist eine Riesenarbeit. Ich weiss gar nicht, wann Bluefox das alles gemacht hat!

                                      Die Bilder befinden sich https://github.com/Homoran/ioBroker.javascript/tree/master/doc/img und müssten ALLE nochmal neu gemacht werden mit einem …de... im Namen `

                                      Wenn schon, denn schon. 😄
                                      @Homoran:

                                      Ich weiss gar nicht, wann Bluefox das alles gemacht hat! `
                                      Ich habe den Verdacht, das Bluefox sich zwischendurch mehrfach klont. :lol:

                                      Grüße

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

                                        @Homoran:

                                        @rantanplan:

                                        Ich würde die Scriptauszüge weg lassen. `
                                        meinst du die "xml=…."? sehe ich auch so.

                                        @rantanplan:

                                        Sollte man auch die "Blockly" Bilder übersetzen `
                                        einverstanden, aber das ist eine Riesenarbeit. Ich weiss gar nicht, wann Bluefox das alles gemacht hat!

                                        Die Bilder befinden sich https://github.com/Homoran/ioBroker.javascript/tree/master/doc/img und müssten ALLE nochmal neu gemacht werden mit einem …de... im Namen

                                        @rantanplan:

                                        Also bei den Bildchen und Übersetzung könnte ich helfen. `
                                        Das wäre super.

                                        @rantanplan:

                                        Ich habe am Donnerstag einen Abgabetermin. Danach habe ich hoffendlich etwas mehr Zeit. `
                                        Ich komme Freitag früh unters Messer.

                                        Gruß

                                        Rainer `
                                        Die Idee mit dem XML Auszügen ist so, dass man die nur in der deutschen Version einmal importieren muss und dann hat man übersetztes Bild. Und ein Screenshot ist schon fast fertig.

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

                                          @Bluefox:

                                          Die Idee mit dem XML Auszügen ist so, dass man die nur in der deutschen Version einmal importieren muss und dann hat man übersetztes Bild. Und ein Screenshot ist schon fast fertig. `

                                          Habe ich gerade ausprobiert. Klappt.

                                          Eventuelle Komentare übersetzen, Screenshot und fertig.

                                          Werde mich ab Freitag mal dransetzten.

                                          Grüße

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

                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          908
                                          Online

                                          31.7k
                                          Users

                                          79.7k
                                          Topics

                                          1.3m
                                          Posts

                                          4
                                          19
                                          1865
                                          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