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 Ausschauen tut das gut. 🙂

      2 Dinge könnte man jedenfalls noch überlegen.

      Die Inject Nodes sollten einmal automatisch triggern. Im Moment schaut es so aus, als ob du 14 mal die Inject-Nodes drückst. Dann wäre es natürlich auch besser wenn sich die Summen automatisch berechnen würden.

      Wenn Du dann mal das fortgeschrittene Stadium erreichst hast, dann liest Du automatisch ein ganzes Verzeichnis ein.

      Aber so ist es doch schon mal ein Erfolgserlebnis. Das andere sollen nur Denkanstösse sein, falls Dir mal wieder die Ideen ausgehen. 😉

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

        @mickym Ich glaube den "fortgeschritten Status" erreiche ich mit meinem 99. Geburtstag🙂

        Bei den Summen hast Du natürlich recht. Momentan wäre mir wichtig die zwei Dateien im aktuellen Jahr automatisch auf Veränderungen zu überwachen, da 2022 nicht fertig ist und sich das ja in jedem Jahr so darstellt.
        Bildschirmfoto_2022-11-10_um_00_01_52.png
        Funktioniert das mit der "watch node"?

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

          @damrak2022 Na das muss ja jetzt nicht sein. Die watch Node funktioniert grundsätzlich auch, wenn sich etwas ändert. Man könnte sie in dem Fall auch als trigger nutzen - aber die einfachere Lösung wäre jetzt, dass die Inject Nodes einmal automatisch triggern - ggf. kannst ja noch einen Button zu aktualisieren machen. - Aber das Verzeichnis zu überwachen, nur weil sich eine Datei vielleicht alle 2 Wochen einmal ändert, halte ich für übertrieben.

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

            @mickym Achso klar, wenn ich die Inject Node auf einmal am Tag stelle, werden ja automatisch die neuen Daten eingelesen, richtig?
            Nein Blödsinn, das geht doch nicht, da die Datei ja auf dem iobroker liegt und dort nicht automatisch aktualisiert wird.

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

              @damrak2022 Na muss nicht einmal am Tag sein. Aber einmal, nachdem der Flow gestartet wurde, sonst musst Du doch alles manuell initialisieren.

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

                @mickym Ja, dann muss ich neu triggern, deswegen die inject auf automatisches triggern stellen, das habe ich verstanden.

                Nein, da hatte ich einen Denkfehler. Die .csv Datei hatte ich aus der Webseite Spritmonitor und die hat mir alle Daten von 2016 bis 2022 angezeigt. Die habe ich dann manuell auseinandergepflückt um die Daten für jedes Jahr zu haben und dann in Dateien hochgeladen. Somit nützt mir die Aktualisierung ja nichts, da die Dateien auf dem iobroker fix sind und sich nicht verändern, es sei denn ch lade eine neue Datei hoch und ersetze die alte.
                Ich müsste eigentlich auf die Datei im Web zugreifen, dann müsste es gehen.

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

                  @damrak2022 Nochmal - mir geht es doch nicht um Deine Dateien und deren Aktualisierung. Was passiert wenn Du jetzt den NodeRed Adapter neu startest?

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

                    @mickym Habe die inject auf automatisch triggern umgestellt.

                    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 Habe die inject auf automatisch triggern umgestellt.

                      Du musst nicht. 😉 - War nur so eine Idee. 😉

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

                        @mickym Nein ist ja richtig.

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

                          @mickym Ich habe mir das mal angeschaut. Wenn ich bei Betankungen 2017 eine Debug dahinterhänge, bekomme ich insgesamt 213 Objekte. Das heißt doch ich müsste die payload [1]Kosten bis payload[213]Kosten addieren um die Gesamtsumme zu erhalten.
                          Dafür müsste ich ein Change Node einsetzen, aber ich scheitere wieder mal an dem Code, welchen ich eingeben müsste.
                          Habe mir auch JSONATA Dokumentation angeschaut, werde aber nicht schlau daraus, wie der Code aussehen müsste.
                          Bildschirm­foto 2022-11-10 um 01.06.31.png
                          Kannst Du mir das erklären?

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

                            @damrak2022 Die eleganteste Lösung ist wohl eine JOIN Node.

                            Kopiere mir mal ein Objekt hier rein. Gibt noch eine andere Lösung ohne zu programmieren - wirst Du trotzdem schwer verstehen. Aber ich probiers mal

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

                              @mickym Nein quick and dirty hört sich nicht gesund an. Bin ich jetzt schon wieder an dem Punkt den ich neulich schon als so schwierig empfand.😪

                              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 Nein quick and dirty hört sich nicht gesund an. Bin ich jetzt schon wieder an dem Punkt den ich neulich schon als so schwierig empfand.😪

                                Kopiere mir mal ein Objekt hier rein. Gibt noch eine andere Lösung ohne zu programmieren - wirst Du trotzdem schwer verstehen. Aber ich probiers mal

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

                                  @mickym

                                  213: object
                                  Datum: "09.01.21"
                                  Km-Stand: 352849
                                  Teil-Km: 127
                                  Spritmenge: "10,43"
                                  Kosten: "15,01"
                                  Währung: "EUR"
                                  Tankart: 2
                                  Reifen: 2
                                  Strecken: 14
                                  Fahrweise: 2
                                  Kraftstoff: 9
                                  Bemerkung: "Viabuy"
                                  Verbrauch: "6,45"
                                  BC-Verbrauch: "8,4"
                                  BC-Spritmenge: 0
                                  BC-Geschwindigkeit: 32
                                  Tankstelle: "Esso"
                                  
                                  mickym 1 Reply Last reply Reply Quote 0
                                  • mickym
                                    mickym Most Active @Damrak2022 last edited by mickym

                                    @damrak2022 Nicht so - Wert kopieren aus dem Debug Fenster und hier in Code Tags - keinen Text.

                                    Das habe ich doch schon oft gezeigt:

                                    copy path.gif

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

                                      @mickym {"Datum":"09.01.21","Km-Stand":352849,"Teil-Km":127,"Spritmenge":"10,43","Kosten":"15,01","Währung":"EUR","Tankart":2,"Reifen":2,"Strecken":14,"Fahrweise":2,"Kraftstoff":9,"Bemerkung":"Viabuy","Verbrauch":"6,45","BC-Verbrauch":"8,4","BC-Spritmenge":0,"BC-Geschwindigkeit":32,"Tankstelle":"Esso"}

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

                                        @mickym

                                        {"Datum":"09.01.21","Km-Stand":352849,"Teil-Km":127,"Spritmenge":"10,43","Kosten":"15,01","Währung":"EUR","Tankart":2,"Reifen":2,"Strecken":14,"Fahrweise":2,"Kraftstoff":9,"Bemerkung":"Viabuy","Verbrauch":"6,45","BC-Verbrauch":"8,4","BC-Spritmenge":0,"BC-Geschwindigkeit":32,"Tankstelle":"Esso"}```
                                        1 Reply Last reply Reply Quote 0
                                        • mickym
                                          mickym Most Active @Damrak2022 last edited by

                                          @damrak2022 sagte in Visualisierung mit Node Red erstellen:

                                          {"Datum":"09.01.21","Km-Stand":352849,"Teil-Km":127,"Spritmenge":"10,43","Kosten":"15,01","Währung":"EUR","Tankart":2,"Reifen":2,"Strecken":14,"Fahrweise":2,"Kraftstoff":9,"Bemerkung":"Viabuy","Verbrauch":"6,45","BC-Verbrauch":"8,4","BC-Spritmenge":0,"BC-Geschwindigkeit":32,"Tankstelle":"Esso"}

                                          Wenn Du es noch in Code-Tags eingebunden hättest, wäre es perfekt - aber OK. Dann kann ich nämlich mit Select all das Objekt mit einem Schlag in die Zwischenablage kopieren. EDIT: Ich habe gesehen, hast es gerade gemacht.

                                          {"Datum":"09.01.21","Km-Stand":352849,"Teil-Km":127,"Spritmenge":"10,43","Kosten":"15,01","Währung":"EUR","Tankart":2,"Reifen":2,"Strecken":14,"Fahrweise":2,"Kraftstoff":9,"Bemerkung":"Viabuy","Verbrauch":"6,45","BC-Verbrauch":"8,4","BC-Spritmenge":0,"BC-Geschwindigkeit":32,"Tankstelle":"Esso"}
                                          
                                          1 Reply Last reply Reply Quote 0
                                          • mickym
                                            mickym Most Active @Damrak2022 last edited by

                                            @damrak2022 So hier ein Lösung mit möglichst geringem Codieraufwand.

                                            Das hängst Du hinter Deine CSV Node - also wo Du das Array mit den Objekten hast. Dieser Flow zählt Dir alle Kosten zusammen:

                                            fd6f917b-34be-485e-ab86-0da7760b5dc2-image.png

                                            [
                                               {
                                                   "id": "c56dd44b18dced4c",
                                                   "type": "split",
                                                   "z": "289f539dcc33814e",
                                                   "name": "",
                                                   "splt": "\\n",
                                                   "spltType": "str",
                                                   "arraySplt": 1,
                                                   "arraySpltType": "len",
                                                   "stream": false,
                                                   "addname": "",
                                                   "x": 1930,
                                                   "y": 4200,
                                                   "wires": [
                                                       [
                                                           "15b2b4fcee6e422f"
                                                       ]
                                                   ]
                                               },
                                               {
                                                   "id": "15b2b4fcee6e422f",
                                                   "type": "change",
                                                   "z": "289f539dcc33814e",
                                                   "name": "",
                                                   "rules": [
                                                       {
                                                           "t": "set",
                                                           "p": "payload",
                                                           "pt": "msg",
                                                           "to": "payload.Kosten",
                                                           "tot": "msg"
                                                       },
                                                       {
                                                           "t": "change",
                                                           "p": "payload",
                                                           "pt": "msg",
                                                           "from": ",",
                                                           "fromt": "str",
                                                           "to": ".",
                                                           "tot": "str"
                                                       },
                                                       {
                                                           "t": "set",
                                                           "p": "payload",
                                                           "pt": "msg",
                                                           "to": "$number(payload)\t",
                                                           "tot": "jsonata"
                                                       }
                                                   ],
                                                   "action": "",
                                                   "property": "",
                                                   "from": "",
                                                   "to": "",
                                                   "reg": false,
                                                   "x": 2110,
                                                   "y": 4200,
                                                   "wires": [
                                                       [
                                                           "316ce7a05af9a60f"
                                                       ]
                                                   ]
                                               },
                                               {
                                                   "id": "5b5fd2c3615fbfaf",
                                                   "type": "debug",
                                                   "z": "289f539dcc33814e",
                                                   "name": "Gesamtkosten",
                                                   "active": true,
                                                   "tosidebar": true,
                                                   "console": false,
                                                   "tostatus": false,
                                                   "complete": "payload",
                                                   "targetType": "msg",
                                                   "statusVal": "",
                                                   "statusType": "auto",
                                                   "x": 2480,
                                                   "y": 4200,
                                                   "wires": []
                                               },
                                               {
                                                   "id": "316ce7a05af9a60f",
                                                   "type": "join",
                                                   "z": "289f539dcc33814e",
                                                   "name": "",
                                                   "mode": "reduce",
                                                   "build": "object",
                                                   "property": "payload",
                                                   "propertyType": "msg",
                                                   "key": "topic",
                                                   "joiner": "\\n",
                                                   "joinerType": "str",
                                                   "accumulate": true,
                                                   "timeout": "",
                                                   "count": "",
                                                   "reduceRight": false,
                                                   "reduceExp": "$A+payload",
                                                   "reduceInit": "0",
                                                   "reduceInitType": "num",
                                                   "reduceFixup": "$formatNumber($A, \"0,00 €\",{ 'decimal-separator':',', 'grouping-separator':'.'    } )",
                                                   "x": 2310,
                                                   "y": 4200,
                                                   "wires": [
                                                       [
                                                           "5b5fd2c3615fbfaf"
                                                       ]
                                                   ]
                                               }
                                            ]
                                            

                                            Damrak2022 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