Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Test Adapter flexcharts - Stapeldiagramme und mehr

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Test Adapter flexcharts - Stapeldiagramme und mehr

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      MCU @jrbwh last edited by

      @jrbwh
      Kannst du einen Fehler bzgl. Port abfangen? In meinem Fall ist es der cameras-Adapter, der nutzt auch 8200.
      Oder evtl. direkt einen anderen Port verwenden?
      7aa0dde0-d6f4-4d8f-99e9-82949d774327-image.png

      error: flexcharts.0 (458177) Exception-Code: EADDRINUSE: listen EADDRINUSE: address already in use :::8200
      
      jrbwh 1 Reply Last reply Reply Quote 0
      • jrbwh
        jrbwh @MCU last edited by

        @mcu Danke für den Hinweis. Nein, habe ich nicht abgefangen. Werde ich einbauen.

        Den Default ändere ich dann auch gleich. Gibt es eine Liste der bereits verwendeten Ports?

        M 1 Reply Last reply Reply Quote 0
        • M
          MCU @jrbwh last edited by

          @jrbwh
          https://mcuiobroker.gitbook.io/iobroker-tipps/tipps/allgemein/iobroker/ubersicht-ports

          jrbwh 2 Replies Last reply Reply Quote 0
          • jrbwh
            jrbwh @MCU last edited by

            @mcu Super. Danke!

            1 Reply Last reply Reply Quote 0
            • jrbwh
              jrbwh @MCU last edited by

              @mcu Habe den Default-Port jetzt auf 3100 geändert. Da grafana auf 3000 liegt, scheint mir das passend.
              Mein Versuch, einen Port-Konflikt abzufangen, funktioniert aber bisher nicht. Ich habe den Start des http-Servers in ein try-catch gepackt, trotzdem stürzt der Adapter im Konfliktfall ab und meldet für die Zeile von this.webServer.listen diesen Fehler: uncaught exception: listen EADDRINUSE: address already in use. Der Code sieht so aus:

              		try {
              			this.webServer.listen({port: this.config.port}, () => {
              				this.log.info(`Server started on localhost:${this.config.port}`);
              				this.setState('info.connection', true, true);
              			});
              		} catch (e) {
              			this.log.error(`Start of http server failed on localhost:${this.config.port} - err=${e.message}`);
              			this.setState('info.connection', false, true);
              		}
              

              Verstehe ich nicht. Wie hast Du das gelöst?

              L 1 Reply Last reply Reply Quote 0
              • L
                Lucky_ESA Developer Most Active @jrbwh last edited by

                @jrbwh Nimm die Funktion.

                const check_port = await this.getPortAsync(this.config.port);
                

                Ist der Prot belegt gibt check_port den nächsten freien wieder.

                Gruß//Lucky

                jrbwh 1 Reply Last reply Reply Quote 0
                • jrbwh
                  jrbwh @Lucky_ESA last edited by

                  @lucky_esa Wow, kaum macht man es richtig, funktioniert's.

                  Vielen Dank für die super schnelle Hilfe!

                  1 Reply Last reply Reply Quote 0
                  • D
                    darkiop Most Active @jrbwh last edited by

                    @jrbwh sagte in Test Adapter flexcharts 0.0.1 - Stapeldiagramme und mehr:

                    An einem Skript für z.B. täglich gespeicherte Daten bin ich dran. Wie sieht denn Dein Datenformat konkret aus?

                    Ich bin leider immer noch nicht dazugekommen mich damit zu beschäftigen ... 😉 Aber der Winter ist ja lange 😄

                    Hier mal ein einfaches Beispiel wofür ich deine Charts verwenden würde:

                    160df428-d88c-4023-845d-08a329ef21cc-image.png

                    Die 3 Werte werden täglich um 23:59 ermittelt und in eine MariaDB mit dem SQL-Adapter geschrieben. Für das Chart stelle ich mir ein Balkendiagram mit den 3 Werten pro Tag und vielleicht 7 Tage zurück vor. In etwa so, nur eben xAxis.data ausgehende vom heutigen Tag -7d.

                    option = {
                      xAxis: {
                        type: 'category',
                        data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
                      },
                      yAxis: {
                        type: 'value'
                      },
                      series: [
                        {
                          data: [120, 200, 150, 80, 70, 110, 130],
                          type: 'bar'
                        },
                        {
                          data: [120, 200, 150, 80, 70, 110, 130],
                          type: 'bar'
                        },
                        {
                          data: [120, 200, 150, 80, 70, 110, 130],
                          type: 'bar'
                        }
                      ]
                    };
                    
                    jrbwh 1 Reply Last reply Reply Quote 0
                    • jrbwh
                      jrbwh @darkiop last edited by

                      @darkiop Das sollte mit dem Skript-Template direkt möglich sein, wie in meinem Post vom 31. Aug. 2024, 11:54 beschrieben. Folgendes musst Du anpassen:
                      "instanceHistory": Deine History-Instanz eintragen
                      "yAxis": Die 2te y-Achse entfernen
                      "mySeries.daily": Für die ersten 3 Zeilen Deine Datenpunkte eintragen, alles "stack_a" zuordnen (sofern es ein Stapeldiagramm mit einem Balken werden soll). Die restlichen Zeilen löschen.
                      "mySeries.monthly" und "mySeries.yearly": Alle Zeilen löschen, also nur [] übrig lassen
                      Aufrufen mit " ...params={"period":"daily", "start":7}

                      D 1 Reply Last reply Reply Quote 0
                      • L
                        legro @jrbwh last edited by legro

                        @jrbwh

                        Mir fehlte der direkte Link zur Installation. Dieser ist hier zu finden.

                        jrbwh 1 Reply Last reply Reply Quote 0
                        • jrbwh
                          jrbwh @legro last edited by

                          @legro Danke für den Hinweis. Habe den Link in der Beschreibung ergänzt.

                          L 1 Reply Last reply Reply Quote 0
                          • D
                            darkiop Most Active @jrbwh last edited by

                            @jrbwh Ja, kann ich bestätigen ... mit etwas selber code lesen hätt ich das auch hinbekommen ... aber wie gesagt, die Prios haben sich gerade verändert. Danke dir - ich werd mal schauen wie ich die Charts nutzen kann.

                            Hast du auch vorgesehen den Dark-Mode der echarts zu implementieren?

                            jrbwh 1 Reply Last reply Reply Quote 0
                            • jrbwh
                              jrbwh @darkiop last edited by

                              @darkiop Dark Mode war noch nicht drin. Habe ich eben mit V0.0.4 ergänzt. Aktivieren mit &darkmode im HTML-Aufruf.

                              1 Reply Last reply Reply Quote 0
                              • L
                                legro @jrbwh last edited by

                                @jrbwh

                                Ich bin verwirrt: Der von mir oben eingestellte Link zeigt nicht mehr auf die Installationsseite. Wo ist die Installationsanweisung abgeblieben?

                                jrbwh 1 Reply Last reply Reply Quote 0
                                • jrbwh
                                  jrbwh @legro last edited by

                                  @legro Ich habe die Installationsanleitung nach dem Hinweis von Martin rausgenommen.

                                  Du kannst den Adapter aber einfach per npm installieren:

                                  cd /opt/iobroker
                                  npm i iobroker.flexcharts
                                  

                                  Dann in der Adapter-Ansicht eine Instanz ergänzen.

                                  D 1 Reply Last reply Reply Quote 0
                                  • D
                                    Delphinis @jrbwh last edited by

                                    @jrbwh
                                    Hallo,
                                    bin sehr an diesem Adapter interessiert. Machst du da noch einen offiziellen Adapter draus?

                                    jrbwh 1 Reply Last reply Reply Quote 0
                                    • jrbwh
                                      jrbwh @Delphinis last edited by

                                      @delphinis Ja, da ist der Plan. Das Review zur Aufnahme ins Beta-Repo läuft, siehe PR.

                                      Du kannst den Adapter aber sofort über npm installieren:

                                      cd /opt/iobroker
                                      npm i iobroker.flexcharts
                                      
                                      D 1 Reply Last reply Reply Quote 0
                                      • D
                                        Delphinis @jrbwh last edited by

                                        @jrbwh
                                        Danke, aber dann warte ich lieber den offiziellen Adapter ab 🙂 .

                                        jrbwh 1 Reply Last reply Reply Quote 0
                                        • jrbwh
                                          jrbwh @Delphinis last edited by

                                          @delphinis Der adapter ist jetzt im Beta-Repo verfügbar. Funktioniert jetzt als Web-Extension, d.h. der Web-Adapter (web.0) muss installiert sein und flexcharts ist dann unter Port 8082 erreichbar. Außerdem muss ein flexcharts in der Adresse vorangestellt werden, also z.B.

                                          http://localhost:8082/flexcharts/echarts.html?source=state&id=flexcharts.0.info.chart1
                                          

                                          Das Readme ist entsprechend angepasst.

                                          Freue mich auf Deine Rückmeldung.

                                          D 1 Reply Last reply Reply Quote 1
                                          • D
                                            Delphinis @jrbwh last edited by Delphinis

                                            @jrbwh
                                            Danke für die Meldung. Ich hab's natürlich sofort ausprobiert. Aber ich bekomme nur eine weisse Seite.
                                            Was ich gemacht hab:

                                            1. Beta im iob eingetragen
                                            2. Adapter installiert:
                                              832109ef-0705-4194-bb7b-15c6ad0c5e9d-grafik.png
                                            3. Datenpunkt "0_userdata.0.flexcharts.chart1" erzeugt und mit dem Beispiel von https://echarts.apache.org/examples/en/editor.html?c=line-simple befüllt.
                                            4. Neuer Browsertab mit URL =
                                              http://localhost:8082/flexcharts/echarts.html?source=state&id=0_userdata.0.flexcharts.chart1

                                            Es kommt zwar keine Fehlermeldung oder so aber nur eine weisse Seite.

                                            web.0 läuft natürlich

                                            Diese URL ist ein bisschen widersprüchlich, da hier oben in der Beschreibung mit
                                            http://localhost:8200/echarts.html?source=state&id= anfängt. Hab ich natürlich auch ausprobiert, aber da lädt keine Seite...

                                            Hab ich was vergessen?

                                            http://localhost:8082/flexcharts/echarts.html?source=state&id=flexcharts.0.info.chart1 läuft übrigens auch nicht, obwohl der Datenpunkt da und befüllt ist.

                                            Browser Firefox 131.0

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            724
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            chart charts diagramme echarts visualisierung visualization
                                            18
                                            231
                                            20887
                                            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