Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Werte aus JS auslesen und in Datenpunkte einfügen

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Werte aus JS auslesen und in Datenpunkte einfügen

    This topic has been deleted. Only users with topic management privileges can see it.
    • Codierknecht
      Codierknecht Developer Most Active @fimoknete last edited by

      @fimoknete
      Viel interessanter wäre herauszufinden, wie die Seite an die Daten kommt.
      Da wird ja vermutlich eine Art API dahinterstecken, das man per Request abfragen könnte.

      F 1 Reply Last reply Reply Quote 0
      • F
        fimoknete @Codierknecht last edited by

        @codierknecht im ersten Bild kann man sehen, dass die HTML einen progress txt aus dem Script bekommt. Keine Ahnung wie das funktioniert.
        Kann man nicht irgendwie die Variable aus dem JS von extern mit Blocky order so auslesen?
        Parser geht im iobroker nicht, GUI error.

        Codierknecht 1 Reply Last reply Reply Quote 0
        • Codierknecht
          Codierknecht Developer Most Active @fimoknete last edited by

          @fimoknete
          Das ist nur der Name des CSS-Klasse.
          Um was für ein Gerät handelt es sich?

          F 1 Reply Last reply Reply Quote 0
          • F
            fimoknete @Codierknecht last edited by

            @codierknecht LiFePo4 Batterie

            Codierknecht 1 Reply Last reply Reply Quote 0
            • M
              meloneA @fimoknete last edited by

              @fimoknete said in Werte aus JS auslesen und in Datenpunkte einfügen:

              @melonea Könntest du mir da ein wenig unter die Arme greifen? Hab das noch nie benutzt.

              Du installierst den Adapter, fügst die passende URL und Regex ein. Für die SOC Werte müsste folgendes funktionieren:

              c35a2708>(.*?)%</p>

              F 1 Reply Last reply Reply Quote 0
              • F
                fimoknete @meloneA last edited by

                @melonea Vielen Dank, werde ich mal probieren wenn der iobroker adapter parser wieder läuft. produziert nur einen gui error zur zeit. ich hoffe das wird mal gelöst.

                1 Reply Last reply Reply Quote 0
                • Codierknecht
                  Codierknecht Developer Most Active @fimoknete last edited by

                  @fimoknete sagte in Werte aus JS auslesen und in Datenpunkte einfügen:

                  LiFePo4 Batterie

                  Na wer hätte damit gerechnet?
                  Verrätst Du uns auch den Hersteller?

                  Irgendwie muss das Ding ja auch kommunizieren.
                  Hängt da ein BMS dran, das man ggf. anzapfen könnte?
                  Wie kommen denn die HTML-Dateien auf Deinen Rechner? Vom Hersteller? Ist da JS-Code drin, der irgendwie mit der Batterie kommuniziert?
                  Dann wäre das komplette Script interessant. Aber bitte nicht als Screenshot, sondern in Code-Tags </> oder gleich das ganze Script als Datei anhängen (wenn zu lang).

                  Hat da eine Komponente eine IP, zu der man vielleicht die Kommunikation per WireShark mitschneiden kann?

                  F 1 Reply Last reply Reply Quote 0
                  • F
                    fimoknete @Codierknecht last edited by fimoknete

                    @codierknecht Batterie mit BMS. Hat can und rs485 connectoren. Aktuell hängt es via can-bus und USB am Rechner. Das Monitoring Tool bekommt die Daten via serial schnittstelle com10. Die software wurde mitgeliefert.

                    Den Quelltext hänge ich bei Zeiten mal mit ran. Aktuell habe ich nur die Screenshots. Wenn ich wieder an der Batterie bin, extrahiere ich mal den Quelltext.

                    parser bringt mit kopierten Quelltext der html

                    1970dfa7-682e-4c74-b34e-d572f5689775-image.png

                    in IoBroker aber
                    98864c5d-7a86-4400-aeed-3886e1a9cbf0-image.png

                    Die HTML sieht so aus. "file:///C:/Program%20Files%20(x86)/Batterie2/source/dist/index.html#/"
                    17557109-9790-429a-80f3-09699a0f0cdc-image.png

                    die untersuchte quelle hat aber einen anderen text. wie komme ich an die wirkliche HTML mit dem Text?

                    01ba07cb-a4b0-4fb1-b7cf-8b4a1d040248-image.png

                    692cb67c-af5b-4514-8530-4c33996e4464-image.png

                    1 Reply Last reply Reply Quote 0
                    • Codierknecht
                      Codierknecht Developer Most Active last edited by

                      @fimoknete sagte in Werte aus JS auslesen und in Datenpunkte einfügen:

                      Hat can und rs485 connectoren

                      Das klingt doch irgendwie vielversprechend.
                      Meine PV + Speicher kommt erst im kommenden Jahr. Darum bin da sicher nicht der richtige Ansprechpartner. Aber ich bin ziemlich zuversichtlich, dass da was geht:

                      https://www.google.com/search?q=iobroker+batterie+rs485

                      Hier wird es sicher so einige geben, die Dir da weiterhelfen können.

                      F 1 Reply Last reply Reply Quote 0
                      • F
                        fimoknete @Codierknecht last edited by fimoknete

                        @codierknecht also irgendwie verstehe ich die logik hinter dem ganzen nicht.

                        die html sieht in einem text editor so aus.

                        11f44ca9-da7d-4a88-87b1-70ca53a0285e-image.png

                        kein wunder das der parser nichts findet.

                        wo kommt denn der unterschied zu dem untersuchten quelltext der selben datei her?
                        27bb818a-e361-4a64-adaf-ccb87420ca47-image.png

                        hier kann ich noch Daten aufklappen und die Information abfischen.

                        Codierknecht 1 Reply Last reply Reply Quote 0
                        • Codierknecht
                          Codierknecht Developer Most Active @fimoknete last edited by Codierknecht

                          @fimoknete sagte in Werte aus JS auslesen und in Datenpunkte einfügen:

                          also irgendwie verstehe ich die logik hinter dem ganzen nicht.
                          wo kommt denn der unterschied zu dem untersuchten quelltext der selben datei her?

                          Da wird wohl das JavaScript das DOM erst zur Laufzeit verändern.
                          Wenn der Parser keine JS-Engine mitliefert, wird das nix.

                          Batterie mit BMS

                          Ich frage nochmal nach dem Hersteller. Damit hättest Du wesentlich bessere Chancen, hier Hilfe zu erhalten.

                          https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge
                          Informationen nur scheibchenweise zu liefern ist nicht unbedingt hilfreich.

                          <Edit>
                          Und noch ein Tipp: Denk mal darüber nach, den Titel Deines Post zu ändern.
                          Diejenigen die sich evtl. mit der verwendeten Technik auskennen (dazu müsste man den Hersteller kennen) werden aufgrund des Titels nicht unbedingt den Weg in diesen Thread finden.
                          Ein "Batteriesystem XYZ per CAN/RS485 auslesen" wäre da z.B. etwas verständlicher.

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

                            @fimoknete

                            @Codierknecht hat wahrscheinlich recht. da werden zur Laufzeit Daten nachgeladen und dann direkt ins html eingetragen.

                            Du könntest mal in die Web developer tools deines Browser gehen (F12),
                            auf den Netzwerk-Tab, dann zur Sicherheit mit F5 die Seite neu laden, dann den Suchdialog (mit STRG+F) aufrufen und nach deinem Wert suchen. Beachte, das Fließkommazahlen in javascript mit Punkt notiert werden (also anstatt 123,456 ist das dann 123.456)
                            Als Ergebnis erhälst du wahrscheinlich viele Fundstellen. Die musst du dann einzeln durchschauen um den eigentlichen Übertragungsort zu finden. Dann können wir weiter mit dem parser-adapter schauen.

                            e6cb63f7-6c10-41ef-98cf-f9abe163358b-image.png

                            Im Sceenshot habe ich das mal mit dem Forum und dem aktuellen Thread gemacht. Da werden die Daten auch per JSON übertragen und dann erst im Browser die Seite generiert.

                            F 1 Reply Last reply Reply Quote 0
                            • F
                              fimoknete @OliverIO last edited by fimoknete

                              @oliverio danke, werde ich mal probieren. Ich kenne den Hersteller des BMS aber nicht. Die Batterie ist von Lanni. Ich finde den button nicht zum Titel ändern.

                              Codierknecht 1 Reply Last reply Reply Quote 0
                              • Codierknecht
                                Codierknecht Developer Most Active @fimoknete last edited by

                                @fimoknete sagte in Werte aus JS auslesen und in Datenpunkte einfügen:

                                Ich kenne den Hersteller des BMS aber nicht. Die Batterie ist von Lanni

                                Gibt's da einen Link, oder hast Du das selbst zusammengeklöppelt?

                                F 1 Reply Last reply Reply Quote 0
                                • F
                                  fimoknete @Codierknecht last edited by

                                  @codierknecht Das ist eine Rack mounted BAtterie aus China. Die kam so wie sie ist.

                                  a39690d2-c43a-433a-b777-114344a6266c-image.png

                                  Anleitung sagt zum BMS: Ich rate mal, dass es ein Daren BMS ist. Steht aber nirgends.

                                  a05220e0-2115-41be-9857-7ad954fb8be6-image.png

                                  Es gibt noch ein ModBus protokoll mit den ganze Registern. Ich weis aber nicht, wie ich das auslesen soll. Ich kapiere nicht mal den parity check in dem Manual.
                                  BMS_Protocol_ModBus_V1_0_2_beta1 (1).pdf

                                  Codierknecht Ralla66 2 Replies Last reply Reply Quote 0
                                  • Codierknecht
                                    Codierknecht Developer Most Active @fimoknete last edited by

                                    @fimoknete
                                    Na das ist zumindest schon mal etwas, mit dem vielleicht die ModBus-Experten hier etwas anfangen können.
                                    Frag' mich aber nicht, wer sich da gut auskennt - ich jedenfalls leider nicht.

                                    Vielleicht können da @apollon77, @Bluefox oder @haus-automatisierung weiterhelfen?

                                    1 Reply Last reply Reply Quote 0
                                    • Homoran
                                      Homoran Global Moderator Administrators last edited by

                                      @fimoknete
                                      Wo ist das Problem?

                                      Wie hast du versucht die Batterie zu verdrahten, und wie hast du den Modbusadapter konfiguriert.

                                      Dann brauchst du einen HEX->Dec Rechner und danach müsdte es laufen.

                                      immer erst mit nur einer Adresse beginnen!

                                      F 1 Reply Last reply Reply Quote 0
                                      • F
                                        fimoknete @Homoran last edited by

                                        @homoran Ich hatte ein RS485 auf USB also Comm Ersatz. Wurde auch von IOBroker gefunden. Ich habe das aber nie zum laufen gebracht.

                                        F 1 Reply Last reply Reply Quote 0
                                        • F
                                          fimoknete @fimoknete last edited by

                                          @fimoknete

                                          ccca526c-d438-4325-af64-80f781ffbb33-image.png

                                          ich finde den Wert im serial stream. wie bekomme ich den jetzt in das iobroker?

                                          Homoran 1 Reply Last reply Reply Quote 0
                                          • Homoran
                                            Homoran Global Moderator Administrators @fimoknete last edited by Homoran

                                            @fimoknete sagte in Werte aus JS auslesen und in Datenpunkte einfügen:

                                            ich finde den Wert im serial stream

                                            was ist das?
                                            ist das ein Modbus Tester?

                                            wie hast du den angeschlossen?

                                            ich hab verschiedene pinouts gefunden 😞

                                            war bei der Batterie so etwas dabei?
                                            Screenshot_20231121-170319_Polaris Office.jpg

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.0k
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            8
                                            127
                                            7447
                                            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