Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Node-Red
    5. Stromverbrauch in Euro umrechnen - Node Red

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Stromverbrauch in Euro umrechnen - Node Red

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

      @mickym super.
      Kann ich diese Payload schon vor dem Split so abändern oder funktioniert dies erst danach (und auch nach der switch-node) in der jeweiligen change-node ?

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

        @djmarc75 Heißt das Du willst das Array zum Schluß erhalten? Also wieder beibehalten?

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

          @mickym Soll quasi schon so formatiert in der jeweiligen change-node drin stehen da ich ja eigentlich nur an den 2 Nachkommastellen interessiert bin :
          Screenshot 2022-09-18 104116.png

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

            @djmarc75 Verstehe ich nicht ganz. Ist Dein JSONATA nicht in den hinteren Change Nodes - warum trägst Du es dahinten nicht ein?

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

              @mickym ja da ist das jeweilige JSONata drin. Ich meinte ob ich den Payload payload.prices.e5 nicht schon in der ersten Change-Node so umwandeln kann um mir das nachträgliche Eintragen zu sparen.

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

                @djmarc75 Ja - dann bist Du schon in den höheren Sphären. 😉

                Du kannst das machen - wenn Du JSONATA aus dem FF beherrschst:

                Hab ich auch gerade wieder erst ausprobieren müssen.

                c1a1d04b-b9e9-425b-9290-63d6a539860a-image.png

                payload.{
                   "brand": brand,
                   "e5":$formatNumber(
                       prices.e5,
                       "#0,00 €",
                       {'decimal-separator':','}
                   )
                }
                

                Ansonsten - mit split Node - in Einzelteile zerlegen, manipulieren, join und dann wieder splitten. Gerade für den Anfang ist das Aufspalten auch immer die beste Möglichkeit, Werte in einem Array zu ändern.

                ad18db91-866f-4f59-880b-ea24e0bfda5c-image.png

                So habe ich Dir beide Möglichkeiten dargestellt - hier zum Import:

                [
                    {
                        "id": "fe2bba87400381f0",
                        "type": "inject",
                        "z": "02dece3d313bbbd7",
                        "name": "",
                        "props": [
                            {
                                "p": "payload"
                            }
                        ],
                        "repeat": "",
                        "crontab": "",
                        "once": false,
                        "onceDelay": 0.1,
                        "topic": "",
                        "payload": "[{\"brand\":\"Aral\",\"prices\":{\"e5\":2.1}},{\"brand\":\"Shell\",\"prices\":{\"e5\":2.089}}]",
                        "payloadType": "json",
                        "x": 150,
                        "y": 2240,
                        "wires": [
                            [
                                "0838ada3281752a1",
                                "45c2544fa78bb0a2"
                            ]
                        ]
                    },
                    {
                        "id": "dd0940e403be1f45",
                        "type": "change",
                        "z": "02dece3d313bbbd7",
                        "name": "",
                        "rules": [
                            {
                                "t": "set",
                                "p": "payload",
                                "pt": "msg",
                                "to": "payload.{\t \"brand\" :brand,   \"e5\":$formatNumber(prices.e5, \"#0,00 €\",{'decimal-separator':','})\t}",
                                "tot": "jsonata"
                            }
                        ],
                        "action": "",
                        "property": "",
                        "from": "",
                        "to": "",
                        "reg": false,
                        "x": 550,
                        "y": 2240,
                        "wires": [
                            [
                                "72b01843bd65453f"
                            ]
                        ]
                    },
                    {
                        "id": "0838ada3281752a1",
                        "type": "split",
                        "z": "02dece3d313bbbd7",
                        "name": "",
                        "splt": "\\n",
                        "spltType": "str",
                        "arraySplt": 1,
                        "arraySpltType": "len",
                        "stream": false,
                        "addname": "",
                        "x": 310,
                        "y": 2240,
                        "wires": [
                            [
                                "dd0940e403be1f45"
                            ]
                        ]
                    },
                    {
                        "id": "72b01843bd65453f",
                        "type": "join",
                        "z": "02dece3d313bbbd7",
                        "name": "",
                        "mode": "auto",
                        "build": "object",
                        "property": "payload",
                        "propertyType": "msg",
                        "key": "topic",
                        "joiner": "\\n",
                        "joinerType": "str",
                        "accumulate": "false",
                        "timeout": "",
                        "count": "",
                        "reduceRight": false,
                        "x": 750,
                        "y": 2240,
                        "wires": [
                            [
                                "28622a3c245ce6c4"
                            ]
                        ]
                    },
                    {
                        "id": "45c2544fa78bb0a2",
                        "type": "change",
                        "z": "02dece3d313bbbd7",
                        "name": "",
                        "rules": [
                            {
                                "t": "set",
                                "p": "payload",
                                "pt": "msg",
                                "to": "payload.{\"brand\": brand,    \"e5\":$formatNumber(prices.e5, \"#0,00 €\",{'decimal-separator':','})\t}",
                                "tot": "jsonata"
                            }
                        ],
                        "action": "",
                        "property": "",
                        "from": "",
                        "to": "",
                        "reg": false,
                        "x": 350,
                        "y": 2300,
                        "wires": [
                            [
                                "06da132b660fe596"
                            ]
                        ]
                    },
                    {
                        "id": "06da132b660fe596",
                        "type": "debug",
                        "z": "02dece3d313bbbd7",
                        "name": "debug 41",
                        "active": true,
                        "tosidebar": true,
                        "console": false,
                        "tostatus": false,
                        "complete": "false",
                        "statusVal": "",
                        "statusType": "auto",
                        "x": 540,
                        "y": 2300,
                        "wires": []
                    },
                    {
                        "id": "28622a3c245ce6c4",
                        "type": "debug",
                        "z": "02dece3d313bbbd7",
                        "name": "debug 42",
                        "active": true,
                        "tosidebar": true,
                        "console": false,
                        "tostatus": false,
                        "complete": "false",
                        "statusVal": "",
                        "statusType": "auto",
                        "x": 900,
                        "y": 2240,
                        "wires": []
                    }
                ]
                

                Je kürzer Du es halt machst - kannst Du viel in JSONATA oder in function Nodes programmieren, aber es geht halt etwas der Sinn von NodeRed verloren - funktional den Flow darzustellen. Ich meine letztlich kannst Du einen ganzen Flow in einer function Node komplett mit JS programmieren.

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

                  @mickym sagte in Stromverbrauch in Euro umrechnen - Node Red:

                  wenn Du JSONATA aus dem FF beherrschst:

                  Bin noch weit entfernt davon aber tatsächlich hatte ich schonmal den gleichen Ansatz 😎

                  Habe mich aber trotzdem für das Einfügen in die jeweilige Change-Node entschieden !

                  Scheint dann doch einfacher zu sein 😂

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

                    @djmarc75 Ja in der JSONATA Doku kannst du den JSONATA Excersier aufrufen und da muss ich dann auch immer rumprobieren bis es klappt.

                    Das Teil ist gleichzeitig genial, wie kryptisch. 😉 - kannst Du übrigens auch in Blockly 🙄
                    645a8a60-482c-48b5-a768-1351a35e2c6e-image.png
                    verwenden. 😉

                    5a03c49e-1a70-46f3-bdf5-6671b6f62e2b-image.png

                    DJMarc75 1 Reply Last reply Reply Quote 1
                    • DJMarc75
                      DJMarc75 @mickym last edited by

                      @mickym Das ist ja mal echt super zum Testen. Gleich mal ein Bookmark gesetzt 👍
                      Kann ja nicht schaden !

                      DJMarc75 1 Reply Last reply Reply Quote 0
                      • DJMarc75
                        DJMarc75 @DJMarc75 last edited by

                        @djmarc75 NodeRed birgt immer mehr geile Tools in sich, wobei ich aber trotzdem keine Dashboards verwende sondern da mehr auf VIS baue. Aber den GPS-Flow hab ich in der VIS als iframe integriert weil man in VIS solche komplexen Worldmaps nicht erstellen kann:
                        Screenshot 2022-09-18 112812.png

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

                          @djmarc75 Na das ist ja das was ich gesagt habe - und auch @Damrak2022 angeboten habe, das man als Logikmaschine NodeRed nutzen kann - sowohl Teile über das iFrame einbinden kann, aber natürlich über die in meinen Augen sehr gute Integration in den iobroker - auch weiterhin VIS oder andere iobroker Tools und Adapter weiterverwenden kann. Also gibt keinen Zwang das Dashboard zu nutzen. Letztlich kann man auch über eigens erstellte Datenpunkte unter 0_userdata.0 in beiden Richtungen triggern NR => Blockly und umgekehrt und man kann es halt auch Nutzen, wenn mal kein geeigneter Adapter im iobroker vorhanden ist oder dieser fehlerhaft arbeitet. 😉 NR ist genauso wie iobroker und Blockly auf JS aufgebaut, insofern kannst Du auch die ganzen Objekte wieder in den iobroker zurückspeichern und mit anderen Tools weiter verarbeiten.

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

                            @djmarc75 Schaut ja Klasse aus - fast wie im Navi. 😉 und beim Draufklicken gibt es dann die Preise. 😉

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

                              @mickym sagte in Stromverbrauch in Euro umrechnen - Node Red:

                              die ganzen Objekte wieder in den iobroker zurückspeichern und mit anderen Tools weiter verarbeiten

                              So mach ich das seit ein paar Wochen - z.B. Snmp (wobei der Adapter jetzt schon besser läuft) und eMail-Auswertungen:
                              Node-Red wertet eingehende aus und schickt diese an iob um die Ergebnisse dann zu visualisieren.

                              @mickym sagte in Stromverbrauch in Euro umrechnen - Node Red:

                              und beim Draufklicken gibt es dann die Preise

                              Jawoll und die Adresse. Die Tankstellenbilder einzufügen hat mich vorhin aber tatsächlich fast ne Stunde gekostet.
                              Da musste ich hier genauer lesen - mit Erfolg...

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

                                @djmarc75 sagte in Stromverbrauch in Euro umrechnen - Node Red:

                                Jawoll und die Adresse. Die Tankstellenbilder einzufügen hat mich vorhin aber tatsächlich fast ne Stunde gekostet.
                                Da musste ich hier genauer lesen - mit Erfolg...

                                Manchmal sind gerade die Dinge, die einen herausfordern, ja das was Spaß macht.

                                Ich versuche mich gerade ein bisschen tiefer mit InfluxDb auseinander zu setzen. 😉

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

                                  @mickym sagte in Stromverbrauch in Euro umrechnen - Node Red:

                                  Manchmal sind gerade die Dinge, die einen herausfordern, ja das was Spaß macht.

                                  Absolut ... UND wenn von Erfolg gekrönt dann kann man auch mal bissle angeben 😂 😂 😂

                                  @mickym sagte in Stromverbrauch in Euro umrechnen - Node Red:

                                  InfluxDb

                                  steh ich noch ganz am Anfang aber da warte ich noch ab um ins Detail zu gehen.
                                  Hab ja Zeit und Geduld 🤓

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

                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  1.1k
                                  Online

                                  31.7k
                                  Users

                                  79.7k
                                  Topics

                                  1.3m
                                  Posts

                                  4
                                  262
                                  19601
                                  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