Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Integrieren in javascript

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.1k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    933

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

Integrieren in javascript

Geplant Angeheftet Gesperrt Verschoben JavaScript
12 Beiträge 5 Kommentatoren 643 Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • S Offline
    S Offline
    sgtpinback
    schrieb am zuletzt editiert von
    #1

    Hallo,

    ich hab folgendes Problem:
    Ich habe einen Stromzähler den ich aus dem js Adapter aufrufe und daraus einen Leistungswert berechne.
    Den Wert speichere ich dann wieder.
    Für die history data verwende ich den SQL Adapter.

    Das funktioniert auch alles und ich kann mir den Verlauf in ECharts ansehen.

    Jetzt möchte ich die Daten aber vor der Anzeige bearbeiten.
    Also z.B. das Integral berechnen, um die kWh anzuzeigen.
    D.h. ich möchte, dass ECharts nicht die Daten aus der Datenbank nimmt sondern die Daten von meinem JS Script.
    Das Script soll sich die Daten aus dem SQL Adapter holen und dann bearbeitet an ECharts weitergeben.

    Ich habe zwar bisher erreicht, dass ich die Daten zur Laufzeit erfasse, umrechne und dann is SQL abspeichere. Das kann ich mir in E-Charts auch anzeigen lassen.
    Das hat aber den Nachteil, wenn ich mir später überlege, ich müsste die Daten anders bearbeiten, dann geht das nicht mehr.
    D.h. das ist keine Lösung für mich.

    paul53P OliverIOO 2 Antworten Letzte Antwort
    0
    • BananaJoeB Online
      BananaJoeB Online
      BananaJoe
      Most Active
      schrieb am zuletzt editiert von
      #2

      @sgtpinback naja, man könnte nativ auf die SQL-Datenpunkt zugreifen und auch darin schreiben. Oder besser über den SQL-Adapter: https://forum.iobroker.net/topic/4014/zugriff-auf-eigene-mysql-datenbank/8?_=1641740276875

      Du müsstest halt alle Datenpunkte einlesen und an anderer Stelle (Datenpunkt mit aktiviertem SQL) wieder neu schreiben (mit dem passenden Zeitstempeln)

      Die Datenpunkte zur Laufzeit zu manipulieren wäre - wie ich meine - aus Performancegründen sehr schlecht. Könnten ja ein paar tausend Daten sein.

      Ich habe gerade noch mal beim Adapter geschaut: https://github.com/ioBroker/ioBroker.sql
      Unten in den Beispielen ist aufgeführt wie du per SendTo abfragst und auch Daten setzen kannst.

      ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

      S 1 Antwort Letzte Antwort
      0
      • S sgtpinback

        Hallo,

        ich hab folgendes Problem:
        Ich habe einen Stromzähler den ich aus dem js Adapter aufrufe und daraus einen Leistungswert berechne.
        Den Wert speichere ich dann wieder.
        Für die history data verwende ich den SQL Adapter.

        Das funktioniert auch alles und ich kann mir den Verlauf in ECharts ansehen.

        Jetzt möchte ich die Daten aber vor der Anzeige bearbeiten.
        Also z.B. das Integral berechnen, um die kWh anzuzeigen.
        D.h. ich möchte, dass ECharts nicht die Daten aus der Datenbank nimmt sondern die Daten von meinem JS Script.
        Das Script soll sich die Daten aus dem SQL Adapter holen und dann bearbeitet an ECharts weitergeben.

        Ich habe zwar bisher erreicht, dass ich die Daten zur Laufzeit erfasse, umrechne und dann is SQL abspeichere. Das kann ich mir in E-Charts auch anzeigen lassen.
        Das hat aber den Nachteil, wenn ich mir später überlege, ich müsste die Daten anders bearbeiten, dann geht das nicht mehr.
        D.h. das ist keine Lösung für mich.

        paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von paul53
        #3

        @sgtpinback sagte: Ich habe einen Stromzähler ... einen Leistungswert berechne.

        Welche Daten liefert der Zähler an ioBroker?

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        S 1 Antwort Letzte Antwort
        0
        • S sgtpinback

          Hallo,

          ich hab folgendes Problem:
          Ich habe einen Stromzähler den ich aus dem js Adapter aufrufe und daraus einen Leistungswert berechne.
          Den Wert speichere ich dann wieder.
          Für die history data verwende ich den SQL Adapter.

          Das funktioniert auch alles und ich kann mir den Verlauf in ECharts ansehen.

          Jetzt möchte ich die Daten aber vor der Anzeige bearbeiten.
          Also z.B. das Integral berechnen, um die kWh anzuzeigen.
          D.h. ich möchte, dass ECharts nicht die Daten aus der Datenbank nimmt sondern die Daten von meinem JS Script.
          Das Script soll sich die Daten aus dem SQL Adapter holen und dann bearbeitet an ECharts weitergeben.

          Ich habe zwar bisher erreicht, dass ich die Daten zur Laufzeit erfasse, umrechne und dann is SQL abspeichere. Das kann ich mir in E-Charts auch anzeigen lassen.
          Das hat aber den Nachteil, wenn ich mir später überlege, ich müsste die Daten anders bearbeiten, dann geht das nicht mehr.
          D.h. das ist keine Lösung für mich.

          OliverIOO Offline
          OliverIOO Offline
          OliverIO
          schrieb am zuletzt editiert von
          #4

          @sgtpinback
          man kann in sql ebenfalls berechnen.
          so könntest die Daten original abspeichern und bei der abfrage direkt durch die Datenbank berechnen lassen.

          Was für eine Datenbank ist es,
          wie lautet die formel?

          hier beispielsweise die referenz zu mysql/heidi
          https://dev.mysql.com/doc/refman/8.0/en/functions.html

          Meine Adapter und Widgets
          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
          Links im Profil

          S 1 Antwort Letzte Antwort
          0
          • OliverIOO OliverIO

            @sgtpinback
            man kann in sql ebenfalls berechnen.
            so könntest die Daten original abspeichern und bei der abfrage direkt durch die Datenbank berechnen lassen.

            Was für eine Datenbank ist es,
            wie lautet die formel?

            hier beispielsweise die referenz zu mysql/heidi
            https://dev.mysql.com/doc/refman/8.0/en/functions.html

            S Offline
            S Offline
            sgtpinback
            schrieb am zuletzt editiert von
            #5

            @oliverio said in Integrieren in javascript:

            https://dev.mysql.com/doc/refman/8.0/en/functions.html

            Selbst wenn das ginge. Wie krieg ich die Daten aus der Datenbank. Es ist doch eher so, dass ich einen Datenpunkt habe und dann in iobroker daran eine Datenbank ankopple, damit die Daten mit Zeitstempel in eine DB geschrieben werden. D.h. iobroker.sql muss die Daten ja irgendwie "advertisen" damit E-Charts die überhaupt akzeptiert.

            OliverIOO 1 Antwort Letzte Antwort
            0
            • paul53P paul53

              @sgtpinback sagte: Ich habe einen Stromzähler ... einen Leistungswert berechne.

              Welche Daten liefert der Zähler an ioBroker?

              S Offline
              S Offline
              sgtpinback
              schrieb am zuletzt editiert von
              #6

              @paul53 Ich ermittle einfach nur die Zeit zwischen 2 Impulsen. Die schreibe in einen Wert und der wird dann an die DB gekoppelt. Das ist aber nicht das Problem hier.

              paul53P 1 Antwort Letzte Antwort
              0
              • BananaJoeB BananaJoe

                @sgtpinback naja, man könnte nativ auf die SQL-Datenpunkt zugreifen und auch darin schreiben. Oder besser über den SQL-Adapter: https://forum.iobroker.net/topic/4014/zugriff-auf-eigene-mysql-datenbank/8?_=1641740276875

                Du müsstest halt alle Datenpunkte einlesen und an anderer Stelle (Datenpunkt mit aktiviertem SQL) wieder neu schreiben (mit dem passenden Zeitstempeln)

                Die Datenpunkte zur Laufzeit zu manipulieren wäre - wie ich meine - aus Performancegründen sehr schlecht. Könnten ja ein paar tausend Daten sein.

                Ich habe gerade noch mal beim Adapter geschaut: https://github.com/ioBroker/ioBroker.sql
                Unten in den Beispielen ist aufgeführt wie du per SendTo abfragst und auch Daten setzen kannst.

                S Offline
                S Offline
                sgtpinback
                schrieb am zuletzt editiert von
                #7

                @bananajoe Das könnte ein Weg sein. Allerdings frage ich mich, wie E-charts dann darauf zugreifen kann. Bzw. wie kann ich die Daten in die sqlite DB so schreiben, dass iobroker.sql sie dann auch an E-Charts weitergeben kann.

                1 Antwort Letzte Antwort
                0
                • S sgtpinback

                  @paul53 Ich ermittle einfach nur die Zeit zwischen 2 Impulsen. Die schreibe in einen Wert und der wird dann an die DB gekoppelt. Das ist aber nicht das Problem hier.

                  paul53P Offline
                  paul53P Offline
                  paul53
                  schrieb am zuletzt editiert von
                  #8

                  @sgtpinback sagte: Ich ermittle einfach nur die Zeit zwischen 2 Impulsen.

                  Wenn die Impulse an ioBroker gesendet werden, kann man diese auch zählen und muss nicht den Umweg der Integration über die Leistungswerte gehen.

                  Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                  Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                  S 1 Antwort Letzte Antwort
                  0
                  • S sgtpinback

                    @oliverio said in Integrieren in javascript:

                    https://dev.mysql.com/doc/refman/8.0/en/functions.html

                    Selbst wenn das ginge. Wie krieg ich die Daten aus der Datenbank. Es ist doch eher so, dass ich einen Datenpunkt habe und dann in iobroker daran eine Datenbank ankopple, damit die Daten mit Zeitstempel in eine DB geschrieben werden. D.h. iobroker.sql muss die Daten ja irgendwie "advertisen" damit E-Charts die überhaupt akzeptiert.

                    OliverIOO Offline
                    OliverIOO Offline
                    OliverIO
                    schrieb am zuletzt editiert von OliverIO
                    #9

                    @sgtpinback

                    äh, ja, sorry denkfehler.
                    ich dachte man schiebt dem e-charts-adapter einfach nur ne andere abfrage unter.
                    das würde besipielsweise in der influx oberfläche gehen.

                    alternativ würde ich dann für jeden datenpunkt einen weiteren datenpunkt einrichten. dann ein skript, welches jeden wert der geschrieben wird umrechnet und in den anderen datenpunkt schreibt.
                    so hast du alle originaldaten, sowie die umgerechneten werte.

                    wenn du bereits in der DB befindlichen Daten umrechnen möchtest, dann die Werte per SQL umrechnen, das passiert ja nur einmal.

                    Meine Adapter und Widgets
                    TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                    Links im Profil

                    S 1 Antwort Letzte Antwort
                    0
                    • OliverIOO OliverIO

                      @sgtpinback

                      äh, ja, sorry denkfehler.
                      ich dachte man schiebt dem e-charts-adapter einfach nur ne andere abfrage unter.
                      das würde besipielsweise in der influx oberfläche gehen.

                      alternativ würde ich dann für jeden datenpunkt einen weiteren datenpunkt einrichten. dann ein skript, welches jeden wert der geschrieben wird umrechnet und in den anderen datenpunkt schreibt.
                      so hast du alle originaldaten, sowie die umgerechneten werte.

                      wenn du bereits in der DB befindlichen Daten umrechnen möchtest, dann die Werte per SQL umrechnen, das passiert ja nur einmal.

                      S Offline
                      S Offline
                      sgtpinback
                      schrieb am zuletzt editiert von
                      #10

                      @oliverio OK, ich guck mir mal die influx Oberfläche an.

                      1 Antwort Letzte Antwort
                      0
                      • paul53P paul53

                        @sgtpinback sagte: Ich ermittle einfach nur die Zeit zwischen 2 Impulsen.

                        Wenn die Impulse an ioBroker gesendet werden, kann man diese auch zählen und muss nicht den Umweg der Integration über die Leistungswerte gehen.

                        S Offline
                        S Offline
                        sgtpinback
                        schrieb am zuletzt editiert von
                        #11

                        @paul53 Mein Problem ist, dass ich die Werte nicht zur Laufzeit berechnen will, sondern später. D.h. wenn ich nach einem Jahr feststelle, die Form der Anzeige gefällt mir nicht, dass ich dan einfach eine andere Formel angeben kann und alle alten Werte werden neu berechnet und angezeigt.

                        HomoranH 1 Antwort Letzte Antwort
                        0
                        • S sgtpinback

                          @paul53 Mein Problem ist, dass ich die Werte nicht zur Laufzeit berechnen will, sondern später. D.h. wenn ich nach einem Jahr feststelle, die Form der Anzeige gefällt mir nicht, dass ich dan einfach eine andere Formel angeben kann und alle alten Werte werden neu berechnet und angezeigt.

                          HomoranH Nicht stören
                          HomoranH Nicht stören
                          Homoran
                          Global Moderator Administrators
                          schrieb am zuletzt editiert von
                          #12

                          @sgtpinback sagte in Integrieren in javascript:

                          wenn ich nach einem Jahr feststelle, die Form der Anzeige gefällt mir nicht

                          Ich lese hier schon länger oberflächlich mit.
                          Einerseits glaube ich zu verstehen was du willst und kann auch den Wunsch nachvollziehen.
                          Andererseits habe ich mit dieser Idee so meine Probleme.

                          Historisierte Daten sind für mich ein Audit-Trail, da kann ich nicht nach einem Jahr sagen: das gefällt mir aber nicht.
                          Zum Weiteren fällt mir auch gar nicht ein worum es da gehen sollte.
                          Die Temperatur von Heiligabend 2019 um 13:42 ist gegeben, was willst du da ändern?
                          Ebenso die Jahressumme der Regenmenge oder des Stromverbrauchs.

                          kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                          1 Antwort Letzte Antwort
                          0
                          Antworten
                          • In einem neuen Thema antworten
                          Anmelden zum Antworten
                          • Älteste zuerst
                          • Neuste zuerst
                          • Meiste Stimmen


                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          759

                          Online

                          32.6k

                          Benutzer

                          82.2k

                          Themen

                          1.3m

                          Beiträge
                          Community
                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                          ioBroker Community 2014-2025
                          logo
                          • Anmelden

                          • Du hast noch kein Konto? Registrieren

                          • Anmelden oder registrieren, um zu suchen
                          • Erster Beitrag
                            Letzter Beitrag
                          0
                          • Home
                          • Aktuell
                          • Tags
                          • Ungelesen 0
                          • Kategorien
                          • Unreplied
                          • Beliebt
                          • GitHub
                          • Docu
                          • Hilfe