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.
    • 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.0k
                                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