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.
    • 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
                                    • jrbwh
                                      jrbwh @Delphinis last edited by

                                      @delphinis Läuft der Browser auf dem gleichen System wie ioBroker? Wenn nicht, bitte localhost durch den Namen des ioBroker-Rechners ersetzen.
                                      Falls ja: Bitte überprüfe, ob beide Instanzen, also felxcharts.0 und web.0, aktiv sind. Wenn ja, stelle beide auf Log-Level debug um und schau, was web.0 protokolliert. Bei einem Neustart sollten diese Meldungen auftauchen:

                                      2024-10-05 08:55:54.421 - debug: web.0 (18006) Activating extensions
                                      2024-10-05 08:55:54.426 - info: web.0 (18006) Connecting extension "flexcharts/lib/web.js"
                                      2024-10-05 08:55:54.428 - info: web.0 (18006) Install extension on /flexcharts
                                      
                                      D 1 Reply Last reply Reply Quote 0
                                      • D
                                        Delphinis @jrbwh last edited by Delphinis

                                        @jrbwh
                                        der Browser läuft auf dem gleichen System wie iob.
                                        Also die web.0 läuft, während dem flexcharts gar nicht gestartet werden kann (keine Konfiguration, kein start-Knopf). ich sehe nur:
                                        4219f007-ccb0-426e-998e-16a9469c7821-grafik.png
                                        Was heisst aktiv? Wie kann ich flexcharts aktivieren?

                                        ich sehe folgende Meldungen:

                                        web.0	2024-10-05 17:29:41.251	info	Install extension on /flexcharts
                                        web.0	2024-10-05 17:29:41.250	info	Connecting extension "flexcharts/lib/web.js"
                                        web.0	2024-10-05 17:29:41.250	debug	Activating extensions 
                                        

                                        aber auch:

                                        4711
                                        
                                        Log-Größe: 185.2 KB
                                        Zeit
                                        	
                                        cloud.0	2024-10-05 17:33:55.493	info	Connection changed: disconnect
                                        cloud.0	2024-10-05 17:33:55.493	error	Unknown api-key
                                        cloud.0	2024-10-05 17:33:54.502	info	Trying to connect as system.user.admin to cloud
                                        cloud.0	2024-10-05 17:33:25.141	info	Connection changed: disconnect
                                        cloud.0	2024-10-05 17:33:25.140	error	Unknown api-key
                                        cloud.0	2024-10-05 17:33:24.492	info	Trying to connect as system.user.admin to cloud
                                        cloud.0	2024-10-05 17:32:55.094	info	Connection changed: disconnect
                                        cloud.0	2024-10-05 17:32:55.093	error	Unknown api-key
                                        cloud.0	2024-10-05 17:32:54.492	info	Trying to connect as system.user.admin to cloud
                                        cloud.0	2024-10-05 17:32:25.381	info	Connection changed: disconnect
                                        cloud.0	2024-10-05 17:32:25.380	error	Unknown api-key
                                        cloud.0	2024-10-05 17:32:24.486	info	Trying to connect as system.user.admin to cloud
                                        cloud.0	2024-10-05 17:31:55.815	info	Connection changed: disconnect
                                        cloud.0	2024-10-05 17:31:55.814	error	Unknown api-key
                                        cloud.0	2024-10-05 17:31:54.471	info	Trying to connect as system.user.admin to cloud
                                        cloud.0	2024-10-05 17:31:25.559	info	Connection changed: disconnect
                                        cloud.0	2024-10-05 17:31:25.558	error	Unknown api-key
                                        cloud.0	2024-10-05 17:31:24.471	info	Trying to connect as system.user.admin to cloud
                                        cloud.0	2024-10-05 17:30:55.210	info	Connection changed: disconnect
                                        cloud.0	2024-10-05 17:30:55.209	error	Unknown api-key
                                        cloud.0	2024-10-05 17:30:54.459	info	Trying to connect as system.user.admin to cloud
                                        web.0	2024-10-05 17:30:29.157	debug	{"errno":-4058,"code":"ENOENT","syscall":"open","path":"C:\\ioBroker\\node_modules\\iobroker.flexcharts\\lib\\www\\404.html"}
                                        web.0	2024-10-05 17:30:29.157	debug	View 404-page ...
                                        web.0	2024-10-05 17:30:29.157	debug	File not found!
                                        web.0	2024-10-05 17:30:29.156	debug	query = {"source":"state","id":"0_userdata.0.flexcharts.chart1"}
                                        web.0	2024-10-05 17:30:29.156	debug	filePath = C:\ioBroker\node_modules\iobroker.flexcharts\lib/www/echarts.html
                                        web.0	2024-10-05 17:30:29.156	debug	Request for /echarts.html?source=state&id=0_userdata.0.flexcharts.chart1 
                                        

                                        Es heisst ja, der Pfad sei falsch.
                                        Bei mir gibt es folgendes Verzeichnis:

                                        C:\ioBroker\node_modules\iobroker.flexcharts
                                        

                                        aber dort ist sowohl lib als auch www drin. Aber unter lib ist kein www.

                                        49d7d2b2-a119-47c7-91e8-1754b7c1eb6d-grafik.png

                                        allerdings gibt es unter www die Datei 404.html, die ist aber vom1.10.2024?!

                                        Vielleicht ist da beim filepath das Problem. Da sind slashes und backslashes gemixt. (Habe Windows)
                                        Hier noch das Verzeichnis von ...iobroker.flexcharts\www:
                                        6e974df5-cf3f-462f-910f-acc87a45ab5a-grafik.png

                                        und da noch den Inhalt von echarts.html:

                                        <!DOCTYPE html>
                                        <html>
                                          <head>
                                            <meta charset="utf-8" />
                                            <title>ECharts</title>
                                            <!-- Include the ECharts file you just downloaded -->
                                            <script src="echarts.js"></script>
                                          </head>
                                          <body>
                                            <!-- Prepare a DOM with a defined width and height for ECharts -->
                                            <div id="main" ></div>
                                            <script>
                                              var jsopts = { solution: 42 };
                                              var myChart = echarts.init(document.getElementById('main'),null,{
                                                width: window.innerWidth-10,
                                                height: window.innerHeight-20,
                                              });
                                        
                                              window.addEventListener('resize', function() {
                                                myChart.resize({
                                                  width: window.innerWidth-10,
                                                  height: window.innerHeight-20,
                                                });
                                              });
                                        
                                              myChart.setOption(jsopts);
                                            </script>
                                          </body>
                                        </html>
                                        
                                        jrbwh mcm1957 3 Replies Last reply Reply Quote 0
                                        • jrbwh
                                          jrbwh @Delphinis last edited by

                                          @delphinis Ja, das Problem dürfte der Pfad unter Windows sein. Ich habe tatschlich nur unter Linux getestet.
                                          Ok, muss mir erstmal ioBroker unter Windows installieren und mir das dann anschauen. Kann jetzt ein wenig dauern. Sorry.

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

                                            @delphinis Jetzt müsste es auch unter Windows funktionieren (V0.1.3).

                                            Sollte morgen im Beta-Repo verfügbar sein oder gleich updaten über den Adapter-npm-Dialog.

                                            L D 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            674
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

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