Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. Visualisierung mit Node Red erstellen

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    Visualisierung mit Node Red erstellen

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

      @damrak2022 Na wenn Du die Tankstellen Namen nicht im Klartext hast - dann machen wir das so - dass wir alle Datenpunkte in NodeRed einlesen -

      Ich würde das nur gerne vorabtesten.

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

        @mickym Die Datei ist mit 5120kb zu groß

        Hier habe ich Sie ja benannt:
        Bildschirmfoto 2022-09-06 um 01.41.30.png

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

          @damrak2022 Die Datenpunkte bleiben ja konstant - wir machen das morgen zusammen. Sind ja nur 4 Datenpunkte - 2 mal den Namen und 2 mal den Preis. Ok?

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

            @mickym Ich habe Dir ja die Idas der 6 Tankstellen geschickt. Dann bis morgen und eine angenehme Nacht für Dich.

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

              @damrak2022 sagte in Visualisierung mit Node Red erstellen:

              @mickym Ich habe Dir ja die Idas der 6 Tankstellen geschickt. Dann bis morgen und eine angenehme Nacht für Dich.

              Ja wenn die konstant bleiben - dann schau ich mal was ich machen kann.

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

                @damrak2022 So der Flow ist fertig - musst halt nur noch die iobroker-In Node bzw. JSON Node dran hängen - ich habe halt nur die Daten über die Inject Node selektiert:

                d19e05e6-02b9-4490-a813-b07ce2b2493e-image.png

                Die für Dich interessanten Tankstellen, selektierst Du in dem Du die Übersetzungstabelle nur die für Dich relevanten Tankstellen einpflegst. Es werden ausserdem alle geschlossenen Tankstellen herausgefiltert, da diese ja eh keine Preise liefern.

                In der Übersetzungstabelle alle - habe ich mal alle Tankstellen eingepflegt, die Du unten dargestellt hast.
                Ergebnis sieht so aus:

                4cfbc7c9-ae0d-453a-a55c-23d83f943c3f-image.png

                [
                    {
                        "id": "2dfbb2b81239ceb7",
                        "type": "inject",
                        "z": "53d8621916dd6725",
                        "name": "",
                        "props": [
                            {
                                "p": "payload"
                            }
                        ],
                        "repeat": "",
                        "crontab": "",
                        "once": false,
                        "onceDelay": 0.1,
                        "topic": "",
                        "payload": "{\"ok\":true,\"license\":\"CC BY 4.0 - https://creativecommons.tankerkoenig.de\",\"data\":\"MTS-K\",\"prices\":{\"a568458f-57f0-4e11-a099-aca55ec3b799\":{\"status\":\"closed\"},\"eb61cb0c-f9b6-4100-83f5-1accfe5759af\":{\"status\":\"open\",\"e5\":2.089,\"e10\":2.029,\"diesel\":2.209},\"05164f2f-4edc-4a03-9ec3-4898d05fbc9c\":{\"status\":\"closed\"},\"30d45fe3-08f4-40cd-82b0-b2c4f872b270\":{\"status\":\"closed\"},\"5d73b461-5646-4b7b-a98d-aa866b87fdd3\":{\"status\":\"open\",\"e5\":2.129,\"e10\":2.069,\"diesel\":2.209},\"7cb7ee38-945d-48df-89be-eb9a20fdcc52\":{\"status\":\"open\",\"e5\":2.099,\"e10\":2.039,\"diesel\":2.209},\"48cbfeb3-dfd2-4442-8911-97e13ce2e871\":{\"status\":\"closed\"}}}",
                        "payloadType": "json",
                        "x": 130,
                        "y": 2200,
                        "wires": [
                            [
                                "ee850b4b9132ebdf"
                            ]
                        ]
                    },
                    {
                        "id": "ee850b4b9132ebdf",
                        "type": "change",
                        "z": "53d8621916dd6725",
                        "name": "",
                        "rules": [
                            {
                                "t": "set",
                                "p": "payload",
                                "pt": "msg",
                                "to": "payload.prices",
                                "tot": "msg"
                            }
                        ],
                        "action": "",
                        "property": "",
                        "from": "",
                        "to": "",
                        "reg": false,
                        "x": 310,
                        "y": 2200,
                        "wires": [
                            [
                                "164d39fefa0fae81"
                            ]
                        ]
                    },
                    {
                        "id": "164d39fefa0fae81",
                        "type": "split",
                        "z": "53d8621916dd6725",
                        "name": "",
                        "splt": "\\n",
                        "spltType": "str",
                        "arraySplt": 1,
                        "arraySpltType": "len",
                        "stream": false,
                        "addname": "topic",
                        "x": 490,
                        "y": 2200,
                        "wires": [
                            [
                                "8c5c8371f2e53d1e"
                            ]
                        ]
                    },
                    {
                        "id": "8c5c8371f2e53d1e",
                        "type": "change",
                        "z": "53d8621916dd6725",
                        "name": "Übersetzungstabelle (nur interessante)",
                        "rules": [
                            {
                                "t": "set",
                                "p": "translation_table",
                                "pt": "msg",
                                "to": "[{\"id\":\"5d73b461-5646-4b7b-a98d-aa866b87fdd3\",\"Tankstelle\":\"Aral, Siemensstraße\"},{\"id\":\"eb61cb0c-f9b6-4100-83f5-1accfe5759af\",\"Tankstelle\":\"Shell, Kennedyallee\"}]",
                                "tot": "json"
                            }
                        ],
                        "action": "",
                        "property": "",
                        "from": "",
                        "to": "",
                        "reg": false,
                        "x": 730,
                        "y": 2200,
                        "wires": [
                            [
                                "9ae864ecb6d662b1"
                            ]
                        ]
                    },
                    {
                        "id": "9ae864ecb6d662b1",
                        "type": "change",
                        "z": "53d8621916dd6725",
                        "name": "ID übersetzen",
                        "rules": [
                            {
                                "t": "set",
                                "p": "payload.name",
                                "pt": "msg",
                                "to": "translation_table[id=$$.topic] ? translation_table[id=$$.topic].Tankstelle : \"unbekannte ID\"",
                                "tot": "jsonata"
                            },
                            {
                                "t": "delete",
                                "p": "translation_table",
                                "pt": "msg"
                            }
                        ],
                        "action": "",
                        "property": "",
                        "from": "",
                        "to": "",
                        "reg": false,
                        "x": 1000,
                        "y": 2200,
                        "wires": [
                            [
                                "a2d9e76e78407836"
                            ]
                        ]
                    },
                    {
                        "id": "f3e148a2dbfd4105",
                        "type": "join",
                        "z": "53d8621916dd6725",
                        "name": "",
                        "mode": "custom",
                        "build": "array",
                        "property": "payload",
                        "propertyType": "msg",
                        "key": "payload.name",
                        "joiner": "\\n",
                        "joinerType": "str",
                        "accumulate": false,
                        "timeout": "1",
                        "count": "",
                        "reduceRight": false,
                        "reduceExp": "",
                        "reduceInit": "",
                        "reduceInitType": "",
                        "reduceFixup": "",
                        "x": 1890,
                        "y": 2200,
                        "wires": [
                            [
                                "c18568e641d6f22a"
                            ]
                        ]
                    },
                    {
                        "id": "6ec60bf72df05237",
                        "type": "switch",
                        "z": "53d8621916dd6725",
                        "name": "Nur wenn Tankstelle offen",
                        "property": "payload.status",
                        "propertyType": "msg",
                        "rules": [
                            {
                                "t": "eq",
                                "v": "open",
                                "vt": "str"
                            }
                        ],
                        "checkall": "true",
                        "repair": false,
                        "outputs": 1,
                        "x": 1470,
                        "y": 2200,
                        "wires": [
                            [
                                "93dc4829579bf1f9"
                            ]
                        ]
                    },
                    {
                        "id": "a2d9e76e78407836",
                        "type": "switch",
                        "z": "53d8621916dd6725",
                        "name": "Keine unbekannte ID",
                        "property": "payload.name",
                        "propertyType": "msg",
                        "rules": [
                            {
                                "t": "neq",
                                "v": "unbekannte ID",
                                "vt": "str"
                            }
                        ],
                        "checkall": "true",
                        "repair": false,
                        "outputs": 1,
                        "x": 1220,
                        "y": 2200,
                        "wires": [
                            [
                                "6ec60bf72df05237"
                            ]
                        ]
                    },
                    {
                        "id": "c18568e641d6f22a",
                        "type": "ui_table",
                        "z": "53d8621916dd6725",
                        "group": "cce10362a261a42e",
                        "name": "",
                        "order": 1,
                        "width": 0,
                        "height": 0,
                        "columns": [
                            {
                                "field": "name",
                                "title": "Tankstelle",
                                "width": "",
                                "align": "left",
                                "formatter": "plaintext",
                                "formatterParams": {
                                    "target": "_blank"
                                }
                            },
                            {
                                "field": "e5",
                                "title": "Super E5",
                                "width": "",
                                "align": "center",
                                "formatter": "plaintext",
                                "formatterParams": {
                                    "target": "_blank"
                                }
                            }
                        ],
                        "outputs": 0,
                        "cts": false,
                        "x": 2030,
                        "y": 2200,
                        "wires": []
                    },
                    {
                        "id": "a3b6de1ce40ec227",
                        "type": "change",
                        "z": "53d8621916dd6725",
                        "name": "Übersetzungstabelle (alle)",
                        "rules": [
                            {
                                "t": "set",
                                "p": "translation_table",
                                "pt": "msg",
                                "to": "[{\"id\":\"5d73b461-5646-4b7b-a98d-aa866b87fdd3\",\"Tankstelle\":\"Aral, Siemensstraße\"},{\"id\":\"7cb7ee38-945d-48df-89be-eb9a20fdcc52\",\"Tankstelle\":\"Esso, Stresemannallee\"},{\"id\":\"05164f2f-4edc-4a03-9ec3-4898d05fbc9c\",\"Tankstelle\":\"Total, Goldsteinstraße\"},{\"id\":\"a568458f-57f0-4e11-a099-aca55ec3b799\",\"Tankstelle\":\"Aral, Lyoner Straße\"},{\"id\":\"eb61cb0c-f9b6-4100-83f5-1accfe5759af\",\"Tankstelle\":\"Shell, Kennedyallee\"},{\"id\":\"48cbfeb3-dfd2-4442-8911-97e13ce2e871\",\"Tankstelle\":\"Shell, Mörfelder Landstraße 377\"}]",
                                "tot": "json"
                            }
                        ],
                        "action": "",
                        "property": "",
                        "from": "",
                        "to": "",
                        "reg": false,
                        "x": 710,
                        "y": 2260,
                        "wires": [
                            []
                        ]
                    },
                    {
                        "id": "93dc4829579bf1f9",
                        "type": "change",
                        "z": "53d8621916dd6725",
                        "name": "formatiere Preise",
                        "rules": [
                            {
                                "t": "set",
                                "p": "payload.e5",
                                "pt": "msg",
                                "to": "payload.e5 & \" €\"",
                                "tot": "jsonata"
                            },
                            {
                                "t": "set",
                                "p": "payload.e10",
                                "pt": "msg",
                                "to": "payload.e10  & \" €\"",
                                "tot": "jsonata"
                            },
                            {
                                "t": "set",
                                "p": "payload.diesel",
                                "pt": "msg",
                                "to": "payload.diesel  & \" €\"",
                                "tot": "jsonata"
                            }
                        ],
                        "action": "",
                        "property": "",
                        "from": "",
                        "to": "",
                        "reg": false,
                        "x": 1710,
                        "y": 2200,
                        "wires": [
                            [
                                "f3e148a2dbfd4105"
                            ]
                        ]
                    },
                    {
                        "id": "cce10362a261a42e",
                        "type": "ui_group",
                        "name": "Table Node Demo",
                        "tab": "379a501f.53b59",
                        "order": 3,
                        "disp": true,
                        "width": "6",
                        "collapse": false,
                        "className": ""
                    },
                    {
                        "id": "379a501f.53b59",
                        "type": "ui_tab",
                        "name": "ui-table command",
                        "icon": "fa-table",
                        "disabled": false,
                        "hidden": false
                    }
                ]
                

                Ich empfehle Dir halt mal hinter jede Node mal eine Debug Node zu hängen, um zu lernen was jede Node macht.

                Damrak2022 2 Replies Last reply Reply Quote 0
                • Damrak2022
                  Damrak2022 @mickym last edited by

                  @mickym Vielen, vielen Dank, ich bekomm es gerade nicht hin, aber jetzt mache ich erstmal was anderes und dann wenn ich fit bin, werde ich mir das nochmal in Ruhe zu Gemüte führen.
                  Im Notfall melde ich mich.

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

                    @mickym Ich habe Deine Rat mit der Debug Node befolgt, aber so ganz schlau bin ich nicht geworden.
                    Jetzt habe ich in der Node - Übersetzungstabelle nur interessante alle Tankstellen eingepflegt.
                    Bildschirmfoto 2022-09-06 um 21.05.27.png
                    Bei Table habe ich noch nichts verändert, denn ich steh immer noch auf der Leitung

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

                      @damrak2022 An der Table musst ja nichts mehr einpflegen. Also dann erzähle mal wo Du noch Fragen hast und fang am Besten von links an. 😉

                      Am Besten Du postest das/die Objekte bevor sie in eine Node gehen und dann was danach rauskommt.

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

                        @mickym Na im Dashboard sieht es so aus
                        Bildschirmfoto 2022-09-06 um 21.16.51.png
                        Mich irritiert das obere Feld, Das kann doch eigentlich weg, oder?
                        Und mir werden gerade nur 3 Tankstellen angezeigt, weil die anderen zu sind, Okay das ist auch klar.
                        Und die inject Node müsste ich durch eine iobroker in ersetzen und da den json Datenpunkt hinterlegen. Dann wäre ja doch alles korrekt

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

                          @damrak2022 Na da hast halt oben noch ein TableNode - die irgendwo rumhängt.

                          11bb317f-b1c3-4755-b7ce-ab3c232e4844-image.png

                          Lösch halt mal eine und wenn es die Table im Flow ist machst Du das mit CTRL + Z wieder rückgängig. Wenn nicht dann ist diese Dummy Node einfach weg.

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

                            @mickym Ah, okay danke. Jetzt geht alles

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

                              @damrak2022 Die Frage ist nicht ob alles geht - da war ich mir eigentlich sicher - wichtiger ist, dass du verstehst - damit Du das in Zukunft ohne mich machen kannst.

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

                                @mickym Ich komme in kleinen Schritten voran

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

                                  @damrak2022 Gut dann weisst Du also wie die Übersetzung funktioniert und was in JSONATA precate Queries sind.

                                  https://docs.jsonata.org/predicate

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

                                    @mickym Ich lese das gerade und versuche es zu verstehen

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

                                      @damrak2022 Also ich merke schon - Du tust noch schwer, es mit eigenen Worten zu erklären. Ich werde es einmal versuchen - aber das nächste mal - werde ich das nicht mehr machen. Wie gesagt, es geht mir nicht darum hier auf Anforderungen fertige Lösungen vorzustellen. Ich bin nämlich selbst noch oft am Rumprobieren, weil das JSONATA nicht so einfach ist - zumindest bei den fortgeschritteneren Tasks.

                                      So schauen wir uns also die einzelnen Nodes an - hier mal der gesamte Flow -

                                      d47dd99f-7a78-47e5-ae02-87b794bf82e8-image.png

                                      Das heißt wenn wir uns die 1 Change Node setze msg.payload anschauen - müssen wir sehen was geht in die Node rein bzw. kommt aus der Inject Node raus debug 19 - und was kommt raus - debug 20:

                                      1. Change Node setze msg. payload:
                                        In die Node kommt also die payload mit einem Objekt (s. debug 19) und den 4 Eigenschaften: ok, license, data,prices

                                      6c799cff-2720-40bc-a4a7-0d9fe32e895f-image.png

                                      da uns nur die Eigenschaft prices interessiert schmeissen wir die anderen Eigenschaften weg und setzen die neue payload nur noch auf das Objekt prices:

                                      da13a277-4e8f-4c44-9b13-b9fe6549a1d9-image.png

                                      Das heißt raus aus dieser Change Node kommt nur noch das Object prices - siehe debug 20:

                                      3dcacd99-d18c-46cc-ac8e-ea5c13f80d02-image.png

                                      Deswegen gibt es hier keine Eigenschaft mehr prices mehr, sondern die ganze Eigenschaft payload des Nachrichtenobjektes enthält das objekt prices.

                                      1. Dieses Objekt (s. debug 20) geht nun in die split Node. Diese zerlegt nun jede Objekteigenschaft in einzelne Nachrichten, so dass diese einzeln bearbeitet werden können.

                                      Die debug Node - enthält nun alle Eigenschaften als eigene Nachrichtenobjekte - wobei die Objekteigenschaft in topic kopiert wird, der Wert dieser Objekteigenschaften in die payload. - Zusammengehörige Inhalte wurde farblich zusammengehörig markiert:

                                      e1ebed62-fb5a-41db-a37e-a72bbef884fb-image.png

                                      1. So ich hab mal die debug Nodes 21 und 22 zur Ausgabe des kompletten Nachrichten Objektes umgestellt.

                                      b1af5f05-ad7a-4279-8565-3607592df950-image.png

                                      Im Prinzip wird die payload der Einzelnnachrichten durch die Übersetzungstabelle nicht geändert, sondern nur dem Nachrichtenobjekt hinzugefügt.

                                      Die einzelnen Nachrichten bekommen also die gesamte Übersetzungstabelle mit in das Nachrichtenobjekt zusätzlich als Eigenschaft mit.

                                      c994a2f5-1908-49a3-b59f-d427efce4a72-image.png

                                      Das heißt dem Nachrichtenobjekt wird nur eine Eigenschaft hinzugefügt. (s. debug Node 22).

                                      Schauen wir also mal das Nachrichtenobjekt der debug Node 22 genauer an - bevor die in diese in der ID übersetzen Node verarbeitet wird.

                                      fd42d65f-37dc-46c8-a765-2ebeeac058c7-image.png

                                      Die eigentliche ID befindet sich also in der topic Eigenschaft des Nachrichtenobjektes und diese wird nun als Wert in der Eigenschaft id einer Liste von Objekten gesucht.

                                      1. ID übersetzen
                                        Die Abfrage in JSONATA mit den precate Queries ist nämlich mit einem Einzeiler ziemlich genial:

                                      ac0b4be5-e70e-4986-b751-1bab1196ed43-image.png

                                      Das Ergebnis dieser Query - wird in einer neuen Eigenschaft des payload objektes mit Namen name gespeichert.

                                      Wir haben ja gesehen, das die translation wie folgt aufgebaut ist:

                                      cb0de36e-24de-4553-a416-243626d48f2a-image.png

                                      Die precate Query - kann somit 2 Dinge auf einmal - schauen wir erst mal den gesamten Einzeiler an:

                                      translation_table[id=$$.topic] ? translation_table[id=$$.topic].Tankstelle : "unbekannte ID"
                                      

                                      Über das $$.topic .- sagen wir JSONATA suche - von der Wurzel des Nachrichtenobjektes die aktuelle topic Eigenschaft.

                                      Die eigentliche precate Query ist nun:

                                      translation_table[id=$$.topic]
                                      

                                      findet diese Abfrage also ein Objekt dessen id der aktuellen msg.topic Eigenschaft entspricht, wird das eigentliche Objekt zurückgegeben bzw. ist das wahr - und somit wird dieses Objekt nochmal abgefragt und es soll nun anstelle ID der Wert der Eigenschaft Tankstelle zurückgegeben werden.

                                      translation_table[id=$$.topic].Tankstelle
                                      

                                      wir das Objekt hingegen nicht gefunden, da es kein Objekt mit der id Eigenschaft ergibt die gleich dem msg.topic ist, dann soll "unbekannte ID" zurückgegeben werden.

                                      Anschließend löschen wir wieder die translation_table aus dem Nachrichtenobjekt, da wir es nicht mehr brauchen.

                                      1. Wenn wir uns also den Output der ID übersetzen node anschauen - siehe debug 23 - dann sehen wir immer noch für jedes Objekt eine Einzelnachricht mit einer neuen Eigenschaft name im payload Objekt.

                                      bc39861e-56ab-4296-ac2f-f96f2801d8dc-image.png

                                      für die Nachrichten, deren msg.topic Eigenschaften in der Translation gefunden wurde - enthält die Eigenschaft name den Wert der Tankstelle aus der Übersetzungstabellen, ansonsten eben unbekannte ID

                                      1. Nun filtern wir alle unbekannten IDs mit der switch Node raus - lassen also nur die durch des payload.name NICHT "unbekannte ID" ist.

                                      1c56f286-36ee-4928-89f9-767790cf1731-image.png

                                      Schauen wir uns alle Nachrichten an - dann enthält die debug Node 23 noch alle Nachrichten - debug Node 24 nur noch die, deren name nicht unbekannte ID heisst.
                                      6002c9e6-2896-4fd0-99ef-203a4581be73-image.png

                                      1. Entsprechend werden nun die geschlossenen Tankstellen herausgefiltert, die den status geschlossen haben da diese eh keine Preise enthalten.

                                      bac3e617-d3fe-4aa7-8146-08f6ca1ed17a-image.png

                                      1. Jetzt machen wir noch die Währung an die Preise.

                                      a821b4e5-4c91-4301-966d-e306f3a147ef-image.png

                                      Stringverkettungen macht man auch im JSONATA

                                      2f73e6ea-f54c-4ad9-9b17-7b65d007df97-image.png

                                      Hier wieder wie es in die Node formatiere Preise eingeht (debug 25) und wie es rauskommt (debug 26)
                                      41ff6612-a11c-4425-96f3-63db0aa05272-image.png

                                      1. Die JOIN Node macht nun aus den Einzelnachrichten (debug #26) wieder ein Array (debug #27) - weil dies von der Table Node so erwartet wird - also eine Liste mit Objekten.

                                      Da wir aufgrund der Filterung nicht wissen, wir groß das Array sein wird - habe ich mal gesagt - mach ein Array nach 1 Sekunde - bei größeren Arrays - aber unbekannter Anzahl - warte ich also lieber länger.

                                      Aus den Einzelnachricht wird also wieder eine mit einem Array/Liste aus Einzelobjekten.

                                      134ec9b7-73e1-4dba-956b-b203909f2904-image.png

                                      Die debug Node #26 enthält noch die Einzelnachrichten und die JOIN Node fasst alle innerhalb einer Sekunde eintreffenden Nachrichten in einer - und in diesem Fall in einem Array zusammen.

                                      5bd167ea-459b-47a9-a96a-7a5d3c7d8810-image.png

                                      1. Die Table Node ist dann Standard und erhält den Inhalt entsprechend debug #27;

                                      a42bb7d1-82b4-4c57-872d-18c6d97c15e1-image.png

                                      So das wars - so ich hoffe Du kannst das nächstes Mal alleine. Und falls noch Fragen sind - dann bitte mit Angabe zur Step- Nummer.

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

                                        @mickym Ich habe mir den Flow von Dir jetzt mal auf einem neuen Flow als Übungsflow exakt so angelegt, damit ich das zusammen mit Deiner sehr ausführlichen Anleitung - danke dafür - beim nächsten Mal hoffentlich so nachvollziehen kann.

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

                                          @damrak2022 sagte in Visualisierung mit Node Red erstellen:

                                          @mickym Ich habe mir den Flow von Dir jetzt mal auf einem neuen Flow als Übungsflow exakt so angelegt, damit ich das zusammen mit Deiner sehr ausführlichen Anleitung - danke dafür - beim nächsten Mal hoffentlich so nachvollziehen kann.

                                          👍

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

                                            @mickym Habe ich das hier zu kompliziert gemacht, oder ist das so okay?
                                            Wie bekomme ich unten den Text weg und wie kann ich hinter die Zahlen das "%" Zeichen setzen?

                                            Bildschirmfoto_2022-09-07_um_23_37_21.png
                                            Bildschirmfoto 2022-09-07 um 23.37.40.png

                                            Meine Einstellungen sind so gesetzt:
                                            Bildschirmfoto 2022-09-07 um 23.46.14.png

                                            1. Frage von mir ist wie ich bei den Dashboards wieder die Übersicht reinbekomme, die ich idiotischweise gelöscht habe. Du hast zwar geschrieben, ie müsse noch irgendwo sein, aber ich habe sie nicht gefunden, da ich mir gerne so eine Startseite bauen würde, welche mich auf die einzelnen Bereiche verlinkt.
                                            mickym 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.0k
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            4
                                            4845
                                            1967512
                                            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