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 mickym

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

      @mickym Das wars - vielen Dank !

      Wenn Du es ganz chic haben möchtest, kannst Du den Preis auch noch runden, als String umwandeln und die Zahl mit Komma und immer mit 2 Nachkommastellen darstellen 😉

      5dffe7fc-eada-4e88-a5ba-61070605005e-image.png

      DJMarc75 1 Reply Last reply Reply Quote 0
      • 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

                                    996
                                    Online

                                    31.7k
                                    Users

                                    79.8k
                                    Topics

                                    1.3m
                                    Posts

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