eCharts in FHEM (Version 0.0.12.4)

Begonnen von andies, 06 Februar 2024, 22:06:15

Vorheriges Thema - Nächstes Thema

andies

Danke an alle, die hier mitmachen - ich bin alles andere als sauer. Es gibt nur ein Problem, für das ich keine echte Lösung habe. Einige hier haben Wünsche, die ich nachverstehen kann, die aber einander teilweise widersprechen oder nicht zusammenpassen. Man kann das "mit Gewalt" in eine Datei pressen, das erfordert aber dann von allen Anpassungen.

Beispielsweise wird (was ich gut finde) aus size besser mobile_size/desktop_size. Wenn das jemand nicht mitbekommt, passt er das nicht an. Also schleppe ich drei sizes mit, damit sich niemand beschwert - das muss aber aufeinander angepasst werden.

Ich bin leider kein Profi so dass ich nicht weiß, wie man mit so etwas umgeht. Deswegen gibt es im allerersten Post eine Version und dann hier hinten zwei weitere, die divergieren. Und das ist auch der Grund, warum ich mit Änderungen zögerlich bin: denn welche Datei soll ich jetzt wie ändern?

Hat jemand hier eine Lösung, die nicht so arbeitsintensiv ist? Wenn ich das richtig sehe, nutzen das Modul nur eine Handvoll Leute. Da liegt es nahe, dass jeder für sich bastelt, oder?
FHEM 6.3 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann

schwatter

Tag,

das kann ich nachvollziehen. Ich sag es mal so. Wenn du meine Änderungen auch benutzt, dann würde ich es an deiner
Stelle einfach einbauen. Noch sind es nicht viele User.
Wenn es für dich aber belanglos ist, dann bleibt es draußen  :)

Gruß schwatter

sfancy

#167
Ich habe auch das eCharts-Modul getestet. Hat schon recht gut funktioniert. Was mir aufgefallen ist, das Logfile wird ziemlich vollgeschrieben mit den Meldungen "User-Agent: ..." und "is_mobile: ...". Das lässt sich auch durch ein
attr eCharts verbose 0
nicht abschalten, da die alte Logfunktion verwendet wurde.

Vielleicht bei Gelegenheit diese vier Zeilen
  Log 1, "User-Agent: $FW_userAgent";  # Gibt den User-Agent in das Log aus

  Log 1, "is_mobile: $is_mobile";  # Gibt den Wert der mobilen Bedingung in das Log aus

      Log 1, "$name not found for plotAsPng()";

      Log 1, "No FHEMWEB device using port $port found for plotAsPng($name)";
ändern nach
  Log3 $name, 3, "User-Agent: $FW_userAgent";  # Gibt den User-Agent in das Log aus

  Log3 $name, 3, "is_mobile: $is_mobile";  # Gibt den Wert der mobilen Bedingung in das Log aus

      Log3 $name, 1, "$name not found for plotAsPng()";

      Log3 $name, 1, "No FHEMWEB device using port $port found for plotAsPng($name)";

schwatter

Morgen,

danke, da fehlte 1 Argument und ein Leerzeichen zu viel. Hab noch 2 andere Stellen ausgemacht und gefixt.
Außerdem habe ich die beiden Erweiterungen von Luc115 aus #160 + #161 hinzugefügt.

@andies
Als Kompromiss könnte ich plotsize_desktop in plotsize umbenennen. Finde ich nicht schön, wäre aber ok.

Gruß schwatter

andies

Ich werde im ersten Post darauf hinweisen, dass es Erweiterungen gibt, die sich hier befinden. Da muss dann jeder einfach schauen, was für ihn passt. Umbenennen ist doof, sehe ich auch so.
FHEM 6.3 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann

andies

Seit einigen Tagen gibt es eCharts 6.0.0, siehe hier. Eine Änderung ist die Legende am Boden einer Grafik, siehe Anhang mit leider etwas unterschiedlichen Daten (in meinem Fall wird die Legende vom Zoom-Schalter überlagert). Ich finde das insgesamt besser als vorher, andere Änderungen betreffen uns, glaube ich, nicht.

Wer das ändern will, muss seine Version in dem Unterordner von www einfach überschreiben (das betrifft, wenn ich das richtig sehe, nur den Unterordner dist). Wenn man mit npm installiert hat (siehe dieser Post), dann muss man folgenden Befehl ausführen
{`npm install echarts@6.0.0 --save`}Es kann aber sein, dass die internen Vorgaben die Installation verhindern. Das liegt vermutlich daran, dass in der package.json-Datei im Verzeichnis /opt/fhem eine ugrade-Sperre eingestellt ist. Das sieht man daran, dass in der Datei package.json folgendes steht:
"echarts": "^5.5.0"und da muss man 6.0.0 eintragen. Danach löscht man die lock-Datei
rm -rf node_modules package-lock.jsonund führt die Neuinstallation aus
npm installDas war es dann. Test durch den Aufruf
{qx(npm ls echarts)}in der FHEM-Befehlszeile, Ausgabe sollte dann sein
fhem@ /opt/fhem
└── echarts@6.0.0
FHEM 6.3 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann

schwatter

#171
Danke für die Info.

Hier ein Update um die Legend frei zu positionieren.
Beispiel:

attr <devicename> gridBottom 130
attr <devicename> position_legend left:center,top:88%

Gruß schwatter