Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. Wunschliste Blockly-Elemente

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Wunschliste Blockly-Elemente

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

      @dslraser Datenpunkt erstellen wurde nun erweitert und ist vollkommen Abwärtskompatibel.
      00d24b2a-f56a-4b19-9991-0dbf418deb13-image.png

      Wer die Änderungen Probieren mag kann sie von Github installieren: https://github.com/thewhobox/ioBroker.javascript

      dslraser 2 Replies Last reply Reply Quote 4
      • dslraser
        dslraser Forum Testing Most Active @thewhobox last edited by

        @thewhobox
        werde ich morgen mal probieren, danke Dir.

        1 Reply Last reply Reply Quote 0
        • dslraser
          dslraser Forum Testing Most Active @thewhobox last edited by dslraser

          @thewhobox
          👍 👍 👍

          Bildschirmfoto 2019-03-12 um 09.20.46.png

          Datenpunkte

          Bildschirmfoto 2019-03-12 um 09.20.20.png

          iot/cloud Adapter

          Bildschirmfoto 2019-03-12 um 09.19.57.png

          Blockly Export:

          <xml xmlns="http://www.w3.org/1999/xhtml">
            <block type="create" id="0qiGN9NF-oRvp8*wFQM~" x="-2237" y="-1088">
              <field name="NAME">1.1.1</field>
              <value name="VALUE">
                <block type="text" id="?Hv/Pwoj(:`z7TT7d?U#">
                  <field name="TEXT">true</field>
                </block>
              </value>
              <value name="COMMON">
                <block type="text" id="!:l5@]a6d}y%WV+%8gS~">
                  <field name="TEXT">{ "role" : "button" , "type" : "boolean" , "name" : "A" , "smartName" : { "de" : "AAA Test" , "smartType" : "SWITCH" }}</field>
                </block>
              </value>
              <next>
                <block type="create" id="z(]=c48dVJC-AMnF2K:(">
                  <field name="NAME">1.1.2</field>
                  <value name="VALUE">
                    <block type="text" id="+FnBpU}C?hi*D1DY${$~">
                      <field name="TEXT">true</field>
                    </block>
                  </value>
                  <value name="COMMON">
                    <block type="text" id="%^B9Xeiy8)KJoRB6S(9^">
                      <field name="TEXT">{ "role" : "button" , "type" : "boolean" , "name" : "AA" , "smartName" : { "de" : "AAA Test" , "smartType" : "SWITCH" }}</field>
                    </block>
                  </value>
                  <next>
                    <block type="create" id="Pnft6G@Kaix-G(vD2T^=">
                      <field name="NAME">1.1.3</field>
                      <value name="VALUE">
                        <block type="text" id="n:U40nFEP%W;7gyhA~|T">
                          <field name="TEXT">true</field>
                        </block>
                      </value>
                      <value name="COMMON">
                        <block type="text" id=",dkN7$*iWEkA5dW@[-[t">
                          <field name="TEXT">{ "role" : "button" , "type" : "boolean" , "name" : "AAA" , "smartName" : { "de" : "AAA Test" , "smartType" : "SWITCH" }}</field>
                        </block>
                      </value>
                    </block>
                  </next>
                </block>
              </next>
            </block>
          </xml>
          
          thewhobox 1 Reply Last reply Reply Quote 0
          • thewhobox
            thewhobox @dslraser last edited by

            @dslraser Nice. Freut mich, dass es bei dir auf anhieb funktioniert 🙂

            1 Reply Last reply Reply Quote 1
            • iomountain
              iomountain @thewhobox last edited by

              @thewhobox sagte in Wunschliste Blockly-Elemente:

              @iomountain Selector Blockly ist fertig 🙂 (Gibt alle IDs als Array zurück)
              72f039d4-bf81-4751-8d0f-1aec5a64e7f3-image.png

              👍 👍 👍 👍 MEGA
              funktioniert! Danke Dir!
              Kann man schon sagen wann wird die Änderungen in Serie gehen?

              Für Anfänger wie mich: von Github über die Katze installieren: https://github.com/thewhobox/ioBroker.javascript und dann im Expertenmodus noch einen Upload bei dem Adapter machen.

              thewhobox MyzerAT 2 Replies Last reply Reply Quote 0
              • thewhobox
                thewhobox @iomountain last edited by

                @iomountain Ich habe die Blockly-Elemente noch nicht per Pull-Request eingereicht. Ich will erst ein paar Sammeln und dann zusammen einreichen.
                Wie lange es dann dauert bis er akzeptiert ist und in die latest einfließt kann ich nicht sagen.

                1 Reply Last reply Reply Quote 0
                • MyzerAT
                  MyzerAT @iomountain last edited by

                  @iomountain

                  kannst du mir kurz erklären was diese Blockly macht, pls

                  iomountain 1 Reply Last reply Reply Quote 0
                  • iomountain
                    iomountain @MyzerAT last edited by

                    @MyzerAT sagte in Wunschliste Blockly-Elemente:

                    @iomountain

                    kannst du mir kurz erklären was diese Blockly macht, pls

                    gerne z.B.:
                    186fc184-e824-48e3-ab21-edbd6573c8f4-image.png

                    Listet mir den Bateriestand meiner Zigbee Sensoren

                    dslraser 1 Reply Last reply Reply Quote 2
                    • MyzerAT
                      MyzerAT last edited by

                      ah der schreibt das dann ins log vom iobroker ?

                      iomountain 1 Reply Last reply Reply Quote 0
                      • iomountain
                        iomountain @MyzerAT last edited by

                        @MyzerAT sagte in Wunschliste Blockly-Elemente:

                        ah der schreibt das dann ins log vom iobroker ?

                        Ja

                        1 Reply Last reply Reply Quote 0
                        • dslraser
                          dslraser Forum Testing Most Active @iomountain last edited by

                          @iomountain
                          funktioniert auch bei mir.👌

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

                            Ein Blockly Baustein mit dem ich einen Text umfangreich modifizieren kann, zum Beispiel:
                            Aus einem Text alle 'regex-String' entfernen.
                            Aus einem Text alle 'regex-String' durch ',' ersetzen.
                            regex-String siehe z.B.: https://regex101.com/
                            Dann kann ich wieder mit:
                            b5271f3c-12fc-4c62-a237-d2c782233ba2-image.png
                            weiterarbeiten.

                            1 Reply Last reply Reply Quote 1
                            • siggi85
                              siggi85 last edited by siggi85

                              1. Nutzung von RegEx in den Triggern (On Subscriptions).
                                Damit kann man bspw. einen Trigger für den Batterie Wert aller zigbee Sensoren erstellen. Durch den RegEx sind Sensoren die später hinzukommen automatisch mit dabei und man kann nicht vergessen diese einzubinden. Dynamischer, Flexibler und fehlerunanfälliger. 🙂
                                Ich habe teilweise schon Blocklys gebaut, exportiert und als JS Script laufen lassen, nur damit ich einen RegEx verwenden konnte, bspw. für diese Batterieüberwachung.

                              2. Name des darüber liegen Objektes in Trigger nutzen
                                Wenn ich einen Sensor habe mit Namen "Wohnzimmer Temperatur" und darunter der Temperatur Datenpunkt mit Namen "Temperatur" liegt, dann kann ich in einem Trigger bisher ein Baustein "Name" nutzen in dem dann "Temperatur" steht. Ich würde gene einen Baustein "darüber liegender Name" haben, in dem "Wohnzimmer Temperatur" steht.
                                Vorteil wäre, dass ich nur ein Mal den Sensor benennen muss und danach sämtliche Werte darunter per diesem neuen Baustein ("darüber liegender Name") dem zugehörigen Sensor zugeordnet werden können. (um bspw. Telegramm Nachrichten zu versenden die mir den auslösenden Sensor direkt mitteilen können)

                              thewhobox 1 Reply Last reply Reply Quote 2
                              • thewhobox
                                thewhobox @siggi85 last edited by thewhobox

                                @siggi85

                                1. Ichweiß nicht ob ioBroker überhaupt Regex in den Subscriptions zu lässt (bis auf * glaube ich)
                                  Du könntest auch ein Schedule anlegen und dann mit dem Selector Block alle Battery States holen. Wie von iomountain hier beschrieben.

                                2. Das wäreoft bestimmt erleichternd. Auch wenn man sich alle Battery States holt und dann den Namen dazu ausgeben möchte.
                                  Möglich ist das jetzt aber bestimmt auch. Man muss von der ID nach dem letzten Punkt alles entfernen.
                                  Aber kommt mal auf die Liste.

                                Edit: ok zweiteres geht nicht, da man nicht an den Namen einer ObjectID kommt (zumindest hab ich nix gefunden).
                                Werde es dann in zwei Elemente teilen: getParentId und getObjectFromID

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

                                  @thewhobox sagte:

                                  Ichweiß nicht ob ioBroker überhaupt Regex in den Subscriptions zu lässt

                                  Ja, Regex funktioniert in Subscriptions (s. Doku).

                                  Zu 2.

                                      return getObject(id.substring(0, id.lastIndexOf('.'))).common.name;
                                  
                                  thewhobox 1 Reply Last reply Reply Quote 0
                                  • thewhobox
                                    thewhobox @paul53 last edited by thewhobox

                                    @paul53 Okay danke für die Info mit den Subscriptions. Dachte geht nur der *.
                                    Heißt das müsste ja aber auch so schon funktionieren:
                                    57fe10b3-7562-4297-9a4a-22fcc01f123b-grafik.png

                                    Zu 2. Dass das so geht weiß ich, aber mit Blockly kann man das nicht realisieren, da es kein Blockly für "getObject" gibt. Richtig?

                                    paul53 dslraser 2 Replies Last reply Reply Quote 1
                                    • paul53
                                      paul53 @thewhobox last edited by paul53

                                      @thewhobox sagte:

                                      Heißt das müsste ja aber auch so schon funktionieren:

                                      Nein, das ist noch kein Regex, sondern ein String mit "*".

                                      @thewhobox sagte:

                                      da es kein Blockly für "getObject" gibt. Richtig?

                                      Richtig.

                                      Anmerkung: Blockly ist für Nicht-Programmier gedacht und ist deshalb im Umfang beschränkt. Ich halte es nicht für sinnvoll, so komplexe Funktionen in Blockly zu integrieren. Wer so etwas benötigt, sollte Javascript lernen und die Funktions-Dokumentation zum JS-Adapter lesen !

                                      siggi85 iomountain 2 Replies Last reply Reply Quote 2
                                      • dslraser
                                        dslraser Forum Testing Most Active @thewhobox last edited by dslraser

                                        @thewhobox
                                        @paul53

                                        ich versuche mich gerade am Fensterskript in Blockly. Beim öffnen eines Fensters bekomme ich schon mal alle Fenster mit Ihrem Status (0,1,2) im Log. Allerdings nicht die Namen sondern die ID.
                                        Kann ich das auch anders machen um die Namen zu bekommen ?

                                        Bildschirmfoto 2019-03-13 um 11.50.50.png

                                        Bildschirmfoto 2019-03-13 um 11.49.28.png

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

                                          @dslraser Da getObject() nicht in Blockly vorhanden ist, geht dies nur mit einer eigenen Javascript-Funktion.

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

                                            Danke für den "ID from Selector" Block, den kannte ich noch nicht. Werde ich mal testen.

                                            @paul53 sagte in Wunschliste Blockly-Elemente:

                                            @thewhobox sagte:

                                            Heißt das müsste ja aber auch so schon funktionieren:

                                            Nein, das ist noch kein Regex, sondern ein String mit "*".

                                            @thewhobox sagte:

                                            da es kein Blockly für "getObject" gibt. Richtig?

                                            Richtig.

                                            Anmerkung: Blockly ist für Nicht-Programmier gedacht und ist deshalb im Umfang beschränkt. Ich halte es nicht für sinnvoll, so komplexe Funktionen in Blockly zu integrieren. Wer so etwas benötigt, sollte Javascript lernen und die Funktions-Dokumentation zum JS-Adapter lesen !

                                            Im stimme da schon zu.
                                            Da jedoch ein Device in ioBroker in der Ordnerstruktur fast immer als "Ordner" dargestellt wird, und die Attribute zu dem Device oft direkt darunter liegen (die alle einen eigenen Namen haben wie bspw. "Temperatur"), halte ich den Wert "Namen des übergeordneten Datenpunktes/Ordners" weiterhin für so nützlich, dass ich eine Nutzung in Blockly nicht als zu komplex einstufen würde. 🙂 Ich will damit sagen, dass ich nicht den kompletten Funktionsumfang von getObject brauche, aber diese eine Funktion fände ich schon sehr hilfreich.

                                            paul53 1 Reply Last reply Reply Quote 2
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            714
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            40
                                            268
                                            38399
                                            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