Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. iobroker, MQTT und Shelly - Was geht wie?

    NEWS

    • ioBroker goes Matter ... Matter Adapter in Stable

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    iobroker, MQTT und Shelly - Was geht wie?

    This topic has been deleted. Only users with topic management privileges can see it.
    • mickym
      mickym Most Active @Laser last edited by

      @laser Gerne - und wenn Du in NodeRed - oder mit JSONs oder Objekten Schwierigkeiten hast, stehe ich gerne für Auskünfte bereit, wenn ich es selbst weiß.

      L 1 Reply Last reply Reply Quote 1
      • L
        Laser @mickym last edited by Laser

        Mein Shelly 2.5 schaltet nachts, etwa 2 Uhr, den Kanal 0 aus. Kann das ein Problem mit der Zeit sein? 14 Uhr soll er ausschalten.

        mickym 1 Reply Last reply Reply Quote 0
        • mickym
          mickym Most Active @Laser last edited by mickym

          @laser Ich habe keine Ahnung mit was Du schaltest. Das hat ja mit MQTT erst mal nichts zu tun, sondern mit Deiner Logikmaschine mit der Du schaltest.

          Wenn das der Scheduler im Shelly selbst ist, dann musst Du halt schauen, dass der Shelly die richtige Zeit hat, wenn Du puzzelst, dann ist da halt was verkehrt, aber da können Dir die Puzzlefreunde besser helfen. Ich bin bekanntlich kein Verfechter dieser Puzzleteilchen. 😉

          L 1 Reply Last reply Reply Quote 1
          • L
            Laser @mickym last edited by

            @mickym Ich schalte über MQTT. Umweg über einen Alias.
            Ist ja irre! Ein Scheduler war drin!

            mickym 1 Reply Last reply Reply Quote 0
            • mickym
              mickym Most Active @Laser last edited by

              @laser sagte in iobroker, MQTT und Shelly - Was geht wie?:

              @mickym Ich schalte über MQTT. Umweg über einen Alias.
              Ist ja irre! Ein Scheduler war drin!

              Na dann hast Du ja den Fehler gefunden. Aber wie gesagt auch wenn Du über MQTT oder einen Alias schaltest, ist der Trigger ja entweder eine Logikmaschine oder ein Trigger im Shelly selbst. Sprich über welchen Weg Du schaltest ist erst mal unwichtig, wichtig was ja den Trigger zu finden und das hast Du ja nun getan.

              L 1 Reply Last reply Reply Quote 1
              • L
                Laser @mickym last edited by Laser

                @mickym Da ist eigentlich nur ein Script, welches den Shelly schaltet. Und weil 14 Uhr im Programm und 2 Uhr schaltet die Kiste, dachte ich irgendwie an 24/12 Stunden Problem. Ein Witz, daß der Scheduler ausgerechnet auf 2 Uhr stand.

                mickym 1 Reply Last reply Reply Quote 0
                • mickym
                  mickym Most Active @Laser last edited by

                  @laser Na ja wie gesagt, vielleicht hat das auch was mit dem Shelly Adapter zu tun gehabt (den ich nicht kenne), dass Du über diesen Adapter auch intern den Scheduler ansteuern kannst. Soweit ich weiß, hattest Du doch den Shelly mal mit dem Adapter angesteuert.

                  L 1 Reply Last reply Reply Quote 0
                  • L
                    Laser @mickym last edited by Laser

                    @mickym Schwer zu sagen, wie der Scheduler da rein kam. Ich dachte eigentlich, der Shelly war neu. Der Shelly- Adapter ist schon gut. So wie alle Adapter, wenn Sie gepflegt werden. IO Broker lebt doch von den Adaptern. Man kann nicht immer im Urschleim anfangen. Da löst man nie anspruchsvolle Aufgaben, weil die Zeit irgendwann nicht mehr reicht.

                    mickym 1 Reply Last reply Reply Quote 0
                    • mickym
                      mickym Most Active @Laser last edited by mickym

                      @laser Klar sind Adapter gut, aber sie bringen halt grundsätzlich eine zustätzliche Fehlerquelle mit und interpretieren halt die Dinge, die sie kennen. Sobald was neu ist, muss ein Entwickler wieder dran.
                      Ich nutze ja auch Adapter, die Dinge oder APIs toll verkapseln (ein hervorragender Adapter ist zum Beispiel der mercedes-me Adapter, den ich hier mal besonders lobend herausstellen will, weil hier das mit der Authentifizierung nicht einfach ist und bei Problemen quasi noch am gleichen Tag vom Entwickler eine Lösung bereitgestellt wird). Aber alles was mqtt spricht betreibe ich lieber direkt, da braucht es in meinen Augen keine Adapter. mqtt ist ein allgemeines Protokoll und leicht lesbar. Man muss sich also nur mit den topics etc. auskennen und die Basis von JSON und das ist wirklich kein Hexenwerk.
                      Teilweise ist das ja auch alles historisch gewachsen. Und über die Aliasfunktion, die ja nun richtig komfortabel ist, kann man auch selbst viele Dinge quasi "standardisieren".

                      Aber lasser wir lieber die Diskussion, ich hab mir hier mit meiner Meinung schon genug Ärger zugezogen.

                      Jeder hat halt so seine Meinung und das ist auch gut so. Ich bin ja wie gesagt auch kein Puzzlefreund und finde die "roten Knoten" viel mächtiger, wenn man nicht herkömmlich codieren will.

                      HAL 1 Reply Last reply Reply Quote 0
                      • HAL
                        HAL @mickym last edited by

                        @mickym Hallo mickym, ich stehe genau vor dem von Dir geschilderten Problem. Für meine neue WP habe ich einen neuen 3Phasen Shelly Energiezähler installiert. Aber dieses Gerät wird (noch) nicht vom Shelly Adapter unterstützt. Einen HW request habe ich in Github gestellt, aber KA wann der eingebaut wird.

                        Mit dem Mqtt Server kann ich die json Daten sehen. Jetzt habe ich einige Daten und überlege, wie ich die in verschiedenen DP bekomme.
                        Vielleicht kannst Du mir erklären, wie ich die Leistungsdaten ( z.B. Gesamtleistung war gerade 2,8kw = total_act_power":2865.999, und wenn möglich je Phase) in DP bekomme?

                        Hier die json:

                        {"src":"shellypro3em63-..........."shellypro3em63-........./events","method":"NotifyStatus","params":{"ts":............,"em:0":{"id":0,"a_act_power":-932.3,"a_aprt_power":2434.9,"a_current":10.391,"a_freq":50.0,"a_pf":0.38,"a_voltage":234.5,"b_act_power":2215.8,"b_aprt_power":2462.7,"b_current":10.524,"b_freq":50.0,"b_pf":0.90,"b_voltage":234.1,"c_act_power":1582.4,"c_aprt_power":2779.7,"c_current":11.904,"c_freq":50.0,"c_pf":0.57,"c_voltage":233.5,"n_current":null,"total_act_power":2865.999,"total_aprt_power":7677.312,"total_current":32.819}}}
                        
                        
                        mickym 1 Reply Last reply Reply Quote 0
                        • mickym
                          mickym Most Active @HAL last edited by mickym

                          @hal Nun du kannst Dir entweder Aliase erstellen, für die Datenpunkte, die Dich interessieren:
                          https://forum.iobroker.net/post/980575

                          Oder Du nutzt Deine Logikmaschine. Wenn Du NodeRed nutzt, habe ich auch einen Flow der Dir alles in einzelne Datenpunkte zerlegt, aber das braucht man in der Regel nicht.

                          Also nachdem Dein Objekt ein Doppelpunkt enthält und auch deine Daten nicht sauber sind, habe ich das hier mal mit einem Alias für Dich nachgebaut:

                          Also wenn Dein Datenpunkt diesen JSON enthält:

                          {
                            "method": "NotifyStatus",
                            "params": {
                              "em:0": {
                                "id": 0,
                                "a_act_power": -932.3,
                                "a_aprt_power": 2434.9,
                                "a_current": 10.391,
                                "a_freq": 50,
                                "a_pf": 0.38,
                                "a_voltage": 234.5,
                                "b_act_power": 2215.8,
                                "b_aprt_power": 2462.7,
                                "b_current": 10.524,
                                "b_freq": 50,
                                "b_pf": 0.9,
                                "b_voltage": 234.1,
                                "c_act_power": 1582.4,
                                "c_aprt_power": 2779.7,
                                "c_current": 11.904,
                                "c_freq": 50,
                                "c_pf": 0.57,
                                "c_voltage": 233.5,
                                "n_current": null,
                                "total_act_power": 2865.999,
                                "total_aprt_power": 7677.312,
                                "total_current": 32.819
                              }
                            }
                          }
                          

                          4ecee489-d47e-4885-b924-e234b4304047-image.png

                          Dann ist da ein Doppelpunkt bei dem em:0 drin - und den musst Du dann in Deiner Konverierungsfunktion, wie folgt schreiben:

                          JSON.parse(val).params['em:0'].total_act_power
                          

                          a56899d4-b52c-4357-a9c0-9a167d512be0-image.png

                          35dcb417-8768-4e22-9468-250729f4528f-image.png

                          Dann erhälst du im Alias auch Deinen Wert einzeln.

                          HAL 3 Replies Last reply Reply Quote 0
                          • HAL
                            HAL @mickym last edited by HAL

                            @mickym boah super DANKE, ich schaue mir das später richtig an und versuche das so umzusetzen.

                            Hat geklappt , nochmals DANKE !

                            1 Reply Last reply Reply Quote 0
                            • HAL
                              HAL @mickym last edited by

                              @mickym noch eine Frage, der Wert wird normal angezeigt, im log steht aber :

                              Invalid read function for "alias.0.WP_Leistung": "JSON.parse(val).params['em:0'].total_act_power" => Cannot read properties of undefined (reading 'total_act_power')
                              

                              Muss ich da noch etwas definieren ?

                              mickym 2 Replies Last reply Reply Quote 0
                              • mickym
                                mickym Most Active @HAL last edited by

                                @hal Nein - ausser es kommt zu diesem Zeitpunkt ein Wert rein, der nicht das ganze Objekt enthält. Ich weiß aber auch nicht, wie man das unterdrückt.

                                1 Reply Last reply Reply Quote 0
                                • mickym
                                  mickym Most Active @HAL last edited by

                                  @hal wenn es zu sehr nervt, dann nimm deine Logikmaschine und schreib Dir selbst einen Datenpunkt unter 0_userdata.0

                                  HAL 1 Reply Last reply Reply Quote 0
                                  • HAL
                                    HAL @mickym last edited by

                                    @mickym Alles klar, Danke

                                    1 Reply Last reply Reply Quote 0
                                    • HAL
                                      HAL @mickym last edited by HAL

                                      @mickym
                                      Hallo mickym, leider wird mein log jetzt massive von den Alias Fehlern vollgeschrieben und ich muß einen anderen Weg finden. Mit Blockly habe ich es versucht, bin aber auch nicht erfolgreich gewesen:
                                      Boklyjpg.jpg

                                      Du hast von einem NoteRed Flow geschrieben, der die einzelnen DP erzeugt. Kannst Du mir den zur Verfügung stellen ?

                                      mickym 2 Replies Last reply Reply Quote 0
                                      • mickym
                                        mickym Most Active @HAL last edited by

                                        @hal sagte in iobroker, MQTT und Shelly - Was geht wie?:

                                        Du hast von einem NoteRed Flow geschrieben, der die einzelnen DP erzeugt. Kannst Du mir den zur Verfügung stellen ?

                                        Klar - Du musst den nur importieren:

                                        https://forum.iobroker.net/topic/43856/json-oder-javascript-objekt-in-iobroker-datenpunkte-zerlegen

                                        Ich habs gerade auch nochmal getestet, funktioniert ohne Fehler:

                                        Kannst auch direkt importieren:

                                        [
                                            {
                                                "id": "6e802f1553b18149",
                                                "type": "subflow",
                                                "name": "JSON or Obj to IOBroker",
                                                "info": "# Creates an IOBroker tree\n\nThis node creates an IOBroker tree out of an Java-Object or JSON String.\n\nThe object tree will be created under 0_userdata.0\nIn addition to the JSON-String or Java Object as `msg.payload` it is necessary to specify a `msg.top` properity in addition to the msg-Object.\n\nThe object tree will be created under 0_userdata.0\n\nExisting `msg.topic` entries will be deleted.\nAn iobroker-out node has to be appended to this subflow node. It is not part of the subflow itself. No topic should be specified in the iobroker out node.\n\nIs `msg.top` property isn't defined, the `top` property of the subflow-node is used. \n\nIn the properties of the subflow node a new property `keepTopic` has been added. Default is _false_ to keep the current behaviour. If set to _true_ then the originial topic will be placed between the `top` property of the subflow node and the property of the analyzed JSON object.\n\n**Attention:**\nIf msg.top and top is empty, all msg.topics (msg.topic) will be directly prefixed with 0_userdata.0. . \n\n**Update 13.09.2022:**\nSpaces in topics of objects are no longer replaced with underscores in objects. No differences between all data types.\n\n# Erstellt einen Objektbaum im ioBroker\n\nDiese Node erstellt einen Objektbaum im ioBroker aus einem JAVA Objekt bzw. einem JSON String. \n\nDer Baum wird in jedem Fall unter 0_userdata.0 erstellt und zwar unter dem Topic der in` msg.top` mitgegeben wurde. In der `msg.payload` befindet sich dann der JSON String oder das entsprechende Objekt.\n\nExistierende `msg.topic `Einträge werden gelöscht.\nEin entsprechende iobroker-out Node muss an den Flow angehängt werden. Sie ist nicht Bestandteil des Subflows. In dieser iobroker-out Node darf kein Topic angegeben werden. \n\nFalls msg.top nicht definiert wurde, wird der `top`-Wert der Subflow-Node verwendet.\n\nIn den Eigenschaften der Subflow-Node wurde ein neuer Parameter `keepTopic` hinzugefügt. Standardwert ist _false_, um das bisherige Verhalten beizubehalten. Setzt man die Eigenschaft auf _true_, dann wird das originale Topic zwischen der `top` Eigenschaft der Subflow-Node und Eigenschaft des analysierten JSON Objektes eingefügt.\n\n**Achtung:**\nWenn top und msg.top leer ist, werden alle msg.topics (msg.topic) direkt unter dem Präfix 0_userdata.0., angelegt bzw. ausgegeben. \n\n**Update 13.09.2022:**\nLeerzeichen werden in Topics von Objekten nicht mehr durch Unterstriche ersetzt. Es gibt keine Unterschiede mehr zwischen den Datentypen.",
                                                "category": "",
                                                "in": [
                                                    {
                                                        "x": 60,
                                                        "y": 160,
                                                        "wires": [
                                                            {
                                                                "id": "554b8c663bcb46c2"
                                                            }
                                                        ]
                                                    }
                                                ],
                                                "out": [
                                                    {
                                                        "x": 2620,
                                                        "y": 280,
                                                        "wires": [
                                                            {
                                                                "id": "0962842ebd23e0d7",
                                                                "port": 0
                                                            }
                                                        ]
                                                    }
                                                ],
                                                "env": [
                                                    {
                                                        "name": "top",
                                                        "type": "str",
                                                        "value": "objRoot"
                                                    },
                                                    {
                                                        "name": "keepTopic",
                                                        "type": "bool",
                                                        "value": "false"
                                                    }
                                                ],
                                                "meta": {},
                                                "color": "#E2D96E",
                                                "icon": "node-red/batch.svg"
                                            },
                                            {
                                                "id": "3e11e8338f694832",
                                                "type": "split",
                                                "z": "6e802f1553b18149",
                                                "name": "split object",
                                                "splt": "\\n",
                                                "spltType": "str",
                                                "arraySplt": 1,
                                                "arraySpltType": "len",
                                                "stream": false,
                                                "addname": "key",
                                                "x": 1370,
                                                "y": 160,
                                                "wires": [
                                                    [
                                                        "0562a4249c8b856b"
                                                    ]
                                                ]
                                            },
                                            {
                                                "id": "0562a4249c8b856b",
                                                "type": "change",
                                                "z": "6e802f1553b18149",
                                                "name": "add key to topic",
                                                "rules": [
                                                    {
                                                        "t": "set",
                                                        "p": "stateName",
                                                        "pt": "msg",
                                                        "to": "key",
                                                        "tot": "msg"
                                                    },
                                                    {
                                                        "t": "change",
                                                        "p": "key",
                                                        "pt": "msg",
                                                        "from": ".",
                                                        "fromt": "str",
                                                        "to": "_",
                                                        "tot": "str"
                                                    },
                                                    {
                                                        "t": "set",
                                                        "p": "topic",
                                                        "pt": "msg",
                                                        "to": "topic  & '.' & key",
                                                        "tot": "jsonata"
                                                    }
                                                ],
                                                "action": "",
                                                "property": "",
                                                "from": "",
                                                "to": "",
                                                "reg": false,
                                                "x": 1560,
                                                "y": 160,
                                                "wires": [
                                                    [
                                                        "ddc90985bef0fafa"
                                                    ]
                                                ]
                                            },
                                            {
                                                "id": "ddc90985bef0fafa",
                                                "type": "switch",
                                                "z": "6e802f1553b18149",
                                                "name": "is type?",
                                                "property": "payload",
                                                "propertyType": "msg",
                                                "rules": [
                                                    {
                                                        "t": "istype",
                                                        "v": "array",
                                                        "vt": "array"
                                                    },
                                                    {
                                                        "t": "istype",
                                                        "v": "object",
                                                        "vt": "object"
                                                    },
                                                    {
                                                        "t": "else"
                                                    }
                                                ],
                                                "checkall": "true",
                                                "repair": false,
                                                "outputs": 3,
                                                "x": 1740,
                                                "y": 160,
                                                "wires": [
                                                    [
                                                        "bfce19b206660fbe"
                                                    ],
                                                    [
                                                        "3e11e8338f694832"
                                                    ],
                                                    [
                                                        "1a8c03d866b85b12"
                                                    ]
                                                ]
                                            },
                                            {
                                                "id": "bfce19b206660fbe",
                                                "type": "split",
                                                "z": "6e802f1553b18149",
                                                "name": "split array",
                                                "splt": "\\n",
                                                "spltType": "str",
                                                "arraySplt": 1,
                                                "arraySpltType": "len",
                                                "stream": false,
                                                "addname": "",
                                                "x": 780,
                                                "y": 280,
                                                "wires": [
                                                    [
                                                        "e89927810c6d75ec"
                                                    ]
                                                ]
                                            },
                                            {
                                                "id": "e89927810c6d75ec",
                                                "type": "change",
                                                "z": "6e802f1553b18149",
                                                "name": "add index to topic",
                                                "rules": [
                                                    {
                                                        "t": "set",
                                                        "p": "topic",
                                                        "pt": "msg",
                                                        "to": "topic  & '.' & parts.index",
                                                        "tot": "jsonata"
                                                    }
                                                ],
                                                "action": "",
                                                "property": "",
                                                "from": "",
                                                "to": "",
                                                "reg": false,
                                                "x": 970,
                                                "y": 280,
                                                "wires": [
                                                    [
                                                        "a4d1a5d04564dc77"
                                                    ]
                                                ]
                                            },
                                            {
                                                "id": "f5d52c6a57d08904",
                                                "type": "change",
                                                "z": "6e802f1553b18149",
                                                "name": "finalize msg.topic",
                                                "rules": [
                                                    {
                                                        "t": "set",
                                                        "p": "top",
                                                        "pt": "msg",
                                                        "to": "'0_userdata.0.' & top",
                                                        "tot": "jsonata"
                                                    },
                                                    {
                                                        "t": "set",
                                                        "p": "topic",
                                                        "pt": "msg",
                                                        "to": "top & '.' & topic",
                                                        "tot": "jsonata"
                                                    }
                                                ],
                                                "action": "",
                                                "property": "",
                                                "from": "",
                                                "to": "",
                                                "reg": false,
                                                "x": 2170,
                                                "y": 240,
                                                "wires": [
                                                    [
                                                        "0962842ebd23e0d7"
                                                    ]
                                                ]
                                            },
                                            {
                                                "id": "1a8c03d866b85b12",
                                                "type": "switch",
                                                "z": "6e802f1553b18149",
                                                "name": "is msg.top != null",
                                                "property": "top",
                                                "propertyType": "msg",
                                                "rules": [
                                                    {
                                                        "t": "nnull"
                                                    },
                                                    {
                                                        "t": "null"
                                                    }
                                                ],
                                                "checkall": "true",
                                                "repair": false,
                                                "outputs": 2,
                                                "x": 1950,
                                                "y": 280,
                                                "wires": [
                                                    [
                                                        "f5d52c6a57d08904"
                                                    ],
                                                    [
                                                        "74c895ce724750de"
                                                    ]
                                                ]
                                            },
                                            {
                                                "id": "e023fe88445ce43e",
                                                "type": "change",
                                                "z": "6e802f1553b18149",
                                                "name": "",
                                                "rules": [
                                                    {
                                                        "t": "delete",
                                                        "p": "topic",
                                                        "pt": "msg"
                                                    }
                                                ],
                                                "action": "",
                                                "property": "",
                                                "from": "",
                                                "to": "",
                                                "reg": false,
                                                "x": 350,
                                                "y": 200,
                                                "wires": [
                                                    [
                                                        "3649300b4c233b10"
                                                    ]
                                                ]
                                            },
                                            {
                                                "id": "3649300b4c233b10",
                                                "type": "switch",
                                                "z": "6e802f1553b18149",
                                                "name": "is type?",
                                                "property": "payload",
                                                "propertyType": "msg",
                                                "rules": [
                                                    {
                                                        "t": "istype",
                                                        "v": "json",
                                                        "vt": "json"
                                                    },
                                                    {
                                                        "t": "istype",
                                                        "v": "array",
                                                        "vt": "array"
                                                    },
                                                    {
                                                        "t": "istype",
                                                        "v": "object",
                                                        "vt": "object"
                                                    },
                                                    {
                                                        "t": "else"
                                                    }
                                                ],
                                                "checkall": "true",
                                                "repair": false,
                                                "outputs": 4,
                                                "x": 600,
                                                "y": 160,
                                                "wires": [
                                                    [
                                                        "fc7913a8524badb7"
                                                    ],
                                                    [
                                                        "bfce19b206660fbe"
                                                    ],
                                                    [
                                                        "3e11e8338f694832"
                                                    ],
                                                    [
                                                        "9ac3cc3681e8b6c6"
                                                    ]
                                                ]
                                            },
                                            {
                                                "id": "1b8480cd2df7ba3f",
                                                "type": "comment",
                                                "z": "6e802f1553b18149",
                                                "name": "Array",
                                                "info": "",
                                                "x": 600,
                                                "y": 280,
                                                "wires": []
                                            },
                                            {
                                                "id": "b3541807672be040",
                                                "type": "comment",
                                                "z": "6e802f1553b18149",
                                                "name": "object",
                                                "info": "",
                                                "x": 1340,
                                                "y": 100,
                                                "wires": []
                                            },
                                            {
                                                "id": "a4d1a5d04564dc77",
                                                "type": "switch",
                                                "z": "6e802f1553b18149",
                                                "name": "is type?",
                                                "property": "payload",
                                                "propertyType": "msg",
                                                "rules": [
                                                    {
                                                        "t": "istype",
                                                        "v": "object",
                                                        "vt": "object"
                                                    },
                                                    {
                                                        "t": "istype",
                                                        "v": "array",
                                                        "vt": "array"
                                                    },
                                                    {
                                                        "t": "else"
                                                    }
                                                ],
                                                "checkall": "true",
                                                "repair": false,
                                                "outputs": 3,
                                                "x": 1160,
                                                "y": 280,
                                                "wires": [
                                                    [
                                                        "3e11e8338f694832"
                                                    ],
                                                    [
                                                        "bfce19b206660fbe"
                                                    ],
                                                    [
                                                        "a096a93bb82b7a93"
                                                    ]
                                                ]
                                            },
                                            {
                                                "id": "74c895ce724750de",
                                                "type": "change",
                                                "z": "6e802f1553b18149",
                                                "name": "finalize msg.topic",
                                                "rules": [
                                                    {
                                                        "t": "set",
                                                        "p": "top",
                                                        "pt": "msg",
                                                        "to": "top",
                                                        "tot": "env"
                                                    },
                                                    {
                                                        "t": "set",
                                                        "p": "top",
                                                        "pt": "msg",
                                                        "to": "'0_userdata.0.' & top",
                                                        "tot": "jsonata"
                                                    },
                                                    {
                                                        "t": "set",
                                                        "p": "topic",
                                                        "pt": "msg",
                                                        "to": "top & '.' & topic",
                                                        "tot": "jsonata"
                                                    }
                                                ],
                                                "action": "",
                                                "property": "",
                                                "from": "",
                                                "to": "",
                                                "reg": false,
                                                "x": 2170,
                                                "y": 320,
                                                "wires": [
                                                    [
                                                        "0962842ebd23e0d7"
                                                    ]
                                                ]
                                            },
                                            {
                                                "id": "554b8c663bcb46c2",
                                                "type": "switch",
                                                "z": "6e802f1553b18149",
                                                "name": "",
                                                "property": "keepTopic",
                                                "propertyType": "env",
                                                "rules": [
                                                    {
                                                        "t": "true"
                                                    },
                                                    {
                                                        "t": "false"
                                                    }
                                                ],
                                                "checkall": "true",
                                                "repair": false,
                                                "outputs": 2,
                                                "x": 170,
                                                "y": 160,
                                                "wires": [
                                                    [
                                                        "e30ba9f0483285e4"
                                                    ],
                                                    [
                                                        "e023fe88445ce43e"
                                                    ]
                                                ]
                                            },
                                            {
                                                "id": "e30ba9f0483285e4",
                                                "type": "change",
                                                "z": "6e802f1553b18149",
                                                "name": "",
                                                "rules": [
                                                    {
                                                        "t": "change",
                                                        "p": "topic",
                                                        "pt": "msg",
                                                        "from": "/",
                                                        "fromt": "str",
                                                        "to": ".",
                                                        "tot": "str"
                                                    }
                                                ],
                                                "action": "",
                                                "property": "",
                                                "from": "",
                                                "to": "",
                                                "reg": false,
                                                "x": 350,
                                                "y": 120,
                                                "wires": [
                                                    [
                                                        "3649300b4c233b10"
                                                    ]
                                                ]
                                            },
                                            {
                                                "id": "0962842ebd23e0d7",
                                                "type": "change",
                                                "z": "6e802f1553b18149",
                                                "name": "translate invalid chars in topic",
                                                "rules": [
                                                    {
                                                        "t": "change",
                                                        "p": "topic",
                                                        "pt": "msg",
                                                        "from": "..",
                                                        "fromt": "str",
                                                        "to": ".",
                                                        "tot": "str"
                                                    },
                                                    {
                                                        "t": "change",
                                                        "p": "topic",
                                                        "pt": "msg",
                                                        "from": "€",
                                                        "fromt": "str",
                                                        "to": "EUR",
                                                        "tot": "str"
                                                    }
                                                ],
                                                "action": "",
                                                "property": "",
                                                "from": "",
                                                "to": "",
                                                "reg": false,
                                                "x": 2430,
                                                "y": 280,
                                                "wires": [
                                                    []
                                                ]
                                            },
                                            {
                                                "id": "9ac3cc3681e8b6c6",
                                                "type": "change",
                                                "z": "6e802f1553b18149",
                                                "name": "set topic, if empty",
                                                "rules": [
                                                    {
                                                        "t": "set",
                                                        "p": "topic",
                                                        "pt": "msg",
                                                        "to": "topic ? topic : $type(payload)\t",
                                                        "tot": "jsonata"
                                                    }
                                                ],
                                                "action": "",
                                                "property": "",
                                                "from": "",
                                                "to": "",
                                                "reg": false,
                                                "x": 950,
                                                "y": 200,
                                                "wires": [
                                                    [
                                                        "a096a93bb82b7a93"
                                                    ]
                                                ]
                                            },
                                            {
                                                "id": "fc7913a8524badb7",
                                                "type": "json",
                                                "z": "6e802f1553b18149",
                                                "name": "",
                                                "property": "payload",
                                                "action": "obj",
                                                "pretty": false,
                                                "x": 750,
                                                "y": 100,
                                                "wires": [
                                                    [
                                                        "d9e7bdd4c48a8aa1"
                                                    ]
                                                ]
                                            },
                                            {
                                                "id": "d9e7bdd4c48a8aa1",
                                                "type": "switch",
                                                "z": "6e802f1553b18149",
                                                "name": "is type?",
                                                "property": "payload",
                                                "propertyType": "msg",
                                                "rules": [
                                                    {
                                                        "t": "istype",
                                                        "v": "array",
                                                        "vt": "array"
                                                    },
                                                    {
                                                        "t": "istype",
                                                        "v": "object",
                                                        "vt": "object"
                                                    },
                                                    {
                                                        "t": "else"
                                                    }
                                                ],
                                                "checkall": "true",
                                                "repair": false,
                                                "outputs": 3,
                                                "x": 900,
                                                "y": 100,
                                                "wires": [
                                                    [
                                                        "1520be42bcc2145e"
                                                    ],
                                                    [
                                                        "1520be42bcc2145e"
                                                    ],
                                                    [
                                                        "9ac3cc3681e8b6c6"
                                                    ]
                                                ]
                                            },
                                            {
                                                "id": "a096a93bb82b7a93",
                                                "type": "junction",
                                                "z": "6e802f1553b18149",
                                                "x": 1380,
                                                "y": 280,
                                                "wires": [
                                                    [
                                                        "1a8c03d866b85b12"
                                                    ]
                                                ]
                                            },
                                            {
                                                "id": "1520be42bcc2145e",
                                                "type": "junction",
                                                "z": "6e802f1553b18149",
                                                "x": 480,
                                                "y": 20,
                                                "wires": [
                                                    [
                                                        "3649300b4c233b10"
                                                    ]
                                                ]
                                            },
                                            {
                                                "id": "4a1fba5709312379",
                                                "type": "subflow:6e802f1553b18149",
                                                "z": "5c4848b5cbcb4807",
                                                "name": "Test/Hal",
                                                "env": [
                                                    {
                                                        "name": "top",
                                                        "value": "Test/Hal",
                                                        "type": "str"
                                                    }
                                                ],
                                                "x": 400,
                                                "y": 1300,
                                                "wires": [
                                                    [
                                                        "eb1515c7b9a541a9"
                                                    ]
                                                ]
                                            },
                                            {
                                                "id": "817aae019569267c",
                                                "type": "ioBroker in",
                                                "z": "5c4848b5cbcb4807",
                                                "name": "JSON",
                                                "attrname": "payload",
                                                "topic": "0_userdata.0.Test.JSON",
                                                "payloadType": "value",
                                                "onlyack": "",
                                                "func": "all",
                                                "gap": "",
                                                "fireOnStart": "false",
                                                "outFormat": "MQTT",
                                                "x": 210,
                                                "y": 1300,
                                                "wires": [
                                                    [
                                                        "4a1fba5709312379"
                                                    ]
                                                ]
                                            },
                                            {
                                                "id": "eb1515c7b9a541a9",
                                                "type": "ioBroker out",
                                                "z": "5c4848b5cbcb4807",
                                                "name": "",
                                                "topic": "",
                                                "ack": "true",
                                                "autoCreate": "true",
                                                "stateName": "",
                                                "role": "",
                                                "payloadType": "",
                                                "readonly": "",
                                                "stateUnit": "",
                                                "stateMin": "",
                                                "stateMax": "",
                                                "x": 620,
                                                "y": 1300,
                                                "wires": []
                                            }
                                        ]
                                        

                                        386ad48e-13b7-43ea-88d1-570edb18e46e-image.png

                                        Du musst nur im Node-Red Adapter das Erstellen von Fremdobjekten zulassen:

                                        Diese Node erzeugt Dir dann folgenden Ast aus einzelnen Datenpunkten:

                                        18cbfd51-2c60-4c75-b70a-5f51bf8f616f-image.png

                                        1 Reply Last reply Reply Quote 0
                                        • mickym
                                          mickym Most Active @HAL last edited by mickym

                                          @hal Ich habs aber gerade auch nochmal im Blockly für Dich probiert und so funktioniert es meines Erachtens:
                                          Du musst Dich halt den Pfad lang schlängeln:

                                          c2e3b2ad-7a28-460d-994b-6b0a45c09998-image.png

                                          Hier der Import:

                                          <block xmlns="https://developers.google.com/blockly/xml" type="on_ext" id="E*czRNU^;|WT7M_=cYae" x="-1737" y="463">
                                           <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                           <field name="CONDITION">any</field>
                                           <field name="ACK_CONDITION"></field>
                                           <value name="OID0">
                                             <shadow type="field_oid" id="X0ITe}G?iHN{Mlk}rS51">
                                               <field name="oid">0_userdata.0.Test.JSON</field>
                                             </shadow>
                                           </value>
                                           <statement name="STATEMENT">
                                             <block type="debug" id="r#l.6_r`,`t3OLRi1P,@">
                                               <field name="Severity">info</field>
                                               <value name="TEXT">
                                                 <shadow type="text" id="YwBItJ!/xQm)vr;=rqmL">
                                                   <field name="TEXT">test</field>
                                                 </shadow>
                                                 <block type="on_source" id="EzQCd/P7Fcp%CGF%RAt[">
                                                   <field name="ATTR">state.val</field>
                                                 </block>
                                               </value>
                                               <next>
                                                 <block type="debug" id=".}fMRI6e#r17$M-q-{Rh">
                                                   <field name="Severity">info</field>
                                                   <value name="TEXT">
                                                     <shadow type="text" id="Yf0zcAkAxF8-SyEKK^cK">
                                                       <field name="TEXT">test</field>
                                                     </shadow>
                                                     <block type="get_attr" id="b-D}:xxh56c@uB{]#:CD">
                                                       <value name="PATH">
                                                         <shadow type="text" id="weFzz)3j7+x!nyA.-rUT">
                                                           <field name="TEXT">params.em:0.total_act_power</field>
                                                         </shadow>
                                                       </value>
                                                       <value name="OBJECT">
                                                         <shadow type="get_object" id="+ppRPt.ZepjN7en4JsF}">
                                                           <field name="OID">0_userdata.0.Test.JSON</field>
                                                         </shadow>
                                                         <block type="on_source" id="r^`9Q86YJ}0+,!SlQ)x{">
                                                           <field name="ATTR">state.val</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </next>
                                             </block>
                                           </statement>
                                          </block>
                                          

                                          Aber wie gesagt, wenn Du meinen NodeRed Flow nehmen und wenn Du den ganzen Shelly triggerst und keepTopic gleich true verwendest, wird Dir auch der ganze Baum zerlegt.

                                          HAL 1 Reply Last reply Reply Quote 0
                                          • HAL
                                            HAL @mickym last edited by

                                            9@mickym Jetzt habe ich die Qual der Wahl 😉
                                            Sowohl RedNote als auch Blockly funktionert .
                                            DANKE .

                                            mickym 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            660
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            10
                                            167
                                            28704
                                            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