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.
    • Damrak2022
      Damrak2022 @mickym last edited by

      @mickym Ich werde gleich ins Bett gehen, aber mir ist noch was aufgefallen.
      Von den 3 angezeigten Tankstellen, haben die ersten beiden definitiv noch geschlossen. Also wundert es mich das ich hier einen Preis angezeigt bekomme. Das liegt aber wahrscheinlich an Tankerkönig
      Die restlichen 7 werden mir garnicht, bzw. kein Preis angezeigt, obwohl davon 6 definitiv geöffnet sind.
      Vielleicht hast Du da ja eine Idee zu?
      Bildschirmfoto 2022-09-18 um 05.41.50.png Bildschirmfoto 2022-09-18 um 05.40.57.png Bildschirmfoto 2022-09-18 um 05.40.37.png

      Ansonsten erstmal einen schönen Sonntag für Dich.

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

        @damrak2022 Na du musst für den Vergleich schon genau den Wert aus Straße in die Switch Node kopieren- das heißt auch Groß- und Kleinschreibung, Punkte etc. Dann macht es keinen Sinn in einer Switch Node 3 mal Moerfelder Landstraße zu schreiben. Wie soll die Switch Node das bitte unterscheiden können. Das darf halt nur ein Ausgang sein und dann musst du halt doch eine Und Verknüpfung machen, indem Du eine 2. Switch Node hinten dran hängst und dort nach der Eigenschaft.payload.houseNumber unterscheidest. Mit geschlossen hat das ggf nichts mehr zu tun, weil wir das ja nicht rausfiltern. Immer und immer wieder schau Dir mit debug nodes an, ob und was aus den Ausgängen rauskommt. Und wenn nichts rauskommt, dann schau, ob es vor einer Nachricht so ein Objekt gegeben hat. Du bist letztlich auf Dich alleine gestell sowas zu untersuchen.

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

          @mickym Ich wage es nochmal eine Frage zu stellen:

          Wie bekomme ich in meiner JSONata eine Währung (€) zu einem Payload hinzugefügt ?

          Screenshot 2022-09-18 085329.png

          Muss ich das Payload vorher abändern oder geht das auch in der JSONata?

          Merci

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

            @djmarc75 einfach dahinter

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

              @mickym Das wars - vielen Dank !

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