eCharts in FHEM (Version 0.0.12.1)

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

Vorheriges Thema - Nächstes Thema

andies

Zitat von: MadMax am 27 Februar 2024, 18:33:04Ich habe nur nicht gefunden wie das beim SVG ausgelesen wird.
Hier werden die Links erzeugt, oder?
# Generate the zoom and scroll images with links if appropriate
sub SVG_zoomLink($$$)
und dann vermute ich, dass die Daten durch die Variable $FW_pos{off} geholt werden.
FHEM 6.1 auf RaspPi3 (Raspbian:  6.1.21-v8+; Perl: v5.32.1)
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

MadMax

Wo die links erzeugt werden habe ich gesehen. Ich werde mir das Morgen nochmal genauer ansehen.
Lenovo M910Q Tiny Debian 12, FHEM 6.3, 2x Siemens Logo 0BA7, Homematic CCU3, Philips HUE, 5x SMA Wechselrichter, BYD HVM, SMA EVCharger, Daikin Wärmepumpe über CAN

Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/MadMax

rudolfkoenig

ZitatDa könnte man zB Daten aus zwei (identischen) Zeitperioden miteinander vergleichen.
Bei der SVG kann man das durch Copy&Paste loesen (rechte Maustaste ueber die jeweilige Legende).
Nur so als Idee, womoeglich inspiriert das.

MadMax

@rudolfkoenig,

könntest du und eventuell unterstützen wie du das mit dem Offset und dem Zoom über den Link gelöst hast?
Ich habe im SVG "$FW_webArgs" gefunden aber ich komme nicht drauf wie die dort den Offset rein bekommst.

Danke.

Gruß
Max
Lenovo M910Q Tiny Debian 12, FHEM 6.3, 2x Siemens Logo 0BA7, Homematic CCU3, Philips HUE, 5x SMA Wechselrichter, BYD HVM, SMA EVCharger, Daikin Wärmepumpe über CAN

Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/MadMax

betateilchen

Wenn ich mich recht erinnere, kommt der Offset kommt nicht aus $FW_webArgs.

Schau mal in SVG_calcOffsets($$) vielleicht bringt Dich das weiter.

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

rudolfkoenig

Zitatkönntest du und eventuell unterstützen wie du das mit dem Offset und dem Zoom über den Link gelöst hast?
Die Funktion SVG_FwFn wird von FHEMWEB beim Erstellen der Seite aufgerufen, da sie als FW_summaryFn bzw. FW_detailFn eingetragen ist.
Hier werden die (bis zu) 4 Knoepfe fuer zoom und offset generiert, die jeweils ein HTML Link beinhalten, mit der aktuellen FHEM-Raum und zusaetzlich der geaenderten Aufloesung bzw. offset in der pos CGI Attribut, was FHEMWEB beim Aufruf (aus historischen Gruenden) in %FW_pos speichert.

Auf diese %FW_pos greift SVG_calcOffset zu, um fuer jede der auf der Seite angezeigten SVGs die from/to Werte zu berechnen.
Diese werden dann an die get Routine des Datenlieferanten uebermittelt.

MadMax

Danke an rudolfkoenig und betateilchen,

ich habe die stelle gefunden ist due in die eCharts mit übernommen.
Das funktioniert sowei.
Du darfst diesen Dateianhang nicht ansehen.

Ich werde jetzt weitere Plots in eChars umstellen und weiter testen.

Gruß
Max
Lenovo M910Q Tiny Debian 12, FHEM 6.3, 2x Siemens Logo 0BA7, Homematic CCU3, Philips HUE, 5x SMA Wechselrichter, BYD HVM, SMA EVCharger, Daikin Wärmepumpe über CAN

Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/MadMax

schwatter

#37
Nabend,

gerade getestet. Das ist schon schön anzuschauen  :)
Vorschlag, das attr plotsize aus FHEMWEB auslesen. Ich z.B habe 3 Instanzen,
und in jeder eine andere Größe definiert.

Gruß schwatter

schwatter

@MadMax

Ich habe so 10 min nach Nulluhr gemerkt, das mein Fhem nicht erreichbar war.
Ich denke das hängt mit dem Tageswechsel vom Modul zusammen, denn nach dem löschen des definierten Devices ist bis jetzt alles i.O.
Hatte deine letzte Version.
Heute Abend schaue ich, ob etwas im Log zu finden ist.

Gruß schwatter

MadMax

Ok, zu solchen Zeiten schaue ich nicht rein ;D
Wie war die Definition? Eventuell gab es noch keine Daten.
Lenovo M910Q Tiny Debian 12, FHEM 6.3, 2x Siemens Logo 0BA7, Homematic CCU3, Philips HUE, 5x SMA Wechselrichter, BYD HVM, SMA EVCharger, Daikin Wärmepumpe über CAN

Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/MadMax

andies

Zitat von: schwatter am 28 Februar 2024, 22:58:12Vorschlag, das attr plotsize aus FHEMWEB auslesen. Ich z.B habe 3 Instanzen,
und in jeder eine andere Größe definiert.
Das muss einfach gehen. Allerdings wundert mich das, denn in Zeile 383 bei eCharts.pm steht
  my ($w, $h) = split(",", SVG_getplotsize($name));
und damit wird plotsize ja genau so wie bei SVG geholt - in SVG.pm wiederum wird zuerst bei WEB und dann im device gesucht, wenn ich das richtig sehe
sub
SVG_getplotsize($)
{
  my ($d) = @_;
  return $FW_webArgs{plotsize} ?
                $FW_webArgs{plotsize} :
                AttrVal($d,"plotsize", $FW_plotsize ? $FW_plotsize : "800,400");
}
Das müsste also schon so implementiert sein?
FHEM 6.1 auf RaspPi3 (Raspbian:  6.1.21-v8+; Perl: v5.32.1)
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

Nabend,

das steht im Log.

2024.02.28 22:47:45 1: PERL WARNING: given is experimental at ./FHEM/98_eCharts.pm line 441.
2024.02.28 22:47:45 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 442.
2024.02.28 22:47:45 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 449.
2024.02.28 22:47:45 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 454.
2024.02.28 22:47:45 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 459.
2024.02.28 22:47:45 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 464.
2024.02.28 22:47:45 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 467.
2024.02.28 22:47:45 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 471.
2024.02.28 22:47:45 1: PERL WARNING: "my" variable $data masks earlier declaration in same scope at ./FHEM/98_eCharts.pm line 781.
2024.02.28 22:47:45 1: PERL WARNING: Prototype mismatch: sub main::eCharts_plotAsPng (@) vs none at ./FHEM/98_eCharts.pm line 790.
2024.02.28 23:01:10 1: PERL WARNING: Use of uninitialized value $attr_value in concatenation (.) or string at ./FHEM/98_eCharts.pm line 267.
Can't use an undefined value as an ARRAY reference at ./FHEM/98_eCharts.pm line 508.
2024.02.29 00:03:34 1: PERL WARNING: given is experimental at ./FHEM/98_eCharts.pm line 441, <$fh> line 5543.
2024.02.29 00:03:34 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 442, <$fh> line 5543.
2024.02.29 00:03:34 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 449, <$fh> line 5543.
2024.02.29 00:03:34 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 454, <$fh> line 5543.
2024.02.29 00:03:34 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 459, <$fh> line 5543.
2024.02.29 00:03:34 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 464, <$fh> line 5543.
2024.02.29 00:03:34 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 467, <$fh> line 5543.
2024.02.29 00:03:34 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 471, <$fh> line 5543.
2024.02.29 00:03:34 1: PERL WARNING: "my" variable $data masks earlier declaration in same scope at ./FHEM/98_eCharts.pm line 781, <$fh> line 5543.
2024.02.29 00:03:34 1: PERL WARNING: Prototype mismatch: sub main::eCharts_plotAsPng (@) vs none at ./FHEM/98_eCharts.pm line 790, <$fh> line 5543.
Can't use an undefined value as an ARRAY reference at ./FHEM/98_eCharts.pm line 508.
2024.02.29 00:06:22 1: PERL WARNING: given is experimental at ./FHEM/98_eCharts.pm line 441, <$fh> line 5543.
2024.02.29 00:06:22 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 442, <$fh> line 5543.
2024.02.29 00:06:22 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 449, <$fh> line 5543.
2024.02.29 00:06:22 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 454, <$fh> line 5543.
2024.02.29 00:06:22 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 459, <$fh> line 5543.
2024.02.29 00:06:22 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 464, <$fh> line 5543.
2024.02.29 00:06:22 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 467, <$fh> line 5543.
2024.02.29 00:06:22 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 471, <$fh> line 5543.
2024.02.29 00:06:22 1: PERL WARNING: "my" variable $data masks earlier declaration in same scope at ./FHEM/98_eCharts.pm line 781, <$fh> line 5543.
2024.02.29 00:06:22 1: PERL WARNING: Prototype mismatch: sub main::eCharts_plotAsPng (@) vs none at ./FHEM/98_eCharts.pm line 790, <$fh> line 5543.
Can't use an undefined value as an ARRAY reference at ./FHEM/98_eCharts.pm line 508.
2024.02.29 00:08:02 1: PERL WARNING: given is experimental at ./FHEM/98_eCharts.pm line 441, <$fh> line 5543.
2024.02.29 00:08:02 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 442, <$fh> line 5543.
2024.02.29 00:08:02 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 449, <$fh> line 5543.
2024.02.29 00:08:02 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 454, <$fh> line 5543.
2024.02.29 00:08:02 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 459, <$fh> line 5543.
2024.02.29 00:08:02 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 464, <$fh> line 5543.
2024.02.29 00:08:02 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 467, <$fh> line 5543.
2024.02.29 00:08:02 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 471, <$fh> line 5543.
2024.02.29 00:08:02 1: PERL WARNING: "my" variable $data masks earlier declaration in same scope at ./FHEM/98_eCharts.pm line 781, <$fh> line 5543.
2024.02.29 00:08:02 1: PERL WARNING: Prototype mismatch: sub main::eCharts_plotAsPng (@) vs none at ./FHEM/98_eCharts.pm line 790, <$fh> line 5543.
Can't use an undefined value as an ARRAY reference at ./FHEM/98_eCharts.pm line 508.
2024.02.29 00:11:18 1: PERL WARNING: given is experimental at ./FHEM/98_eCharts.pm line 441, <$fh> line 5543.
2024.02.29 00:11:18 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 442, <$fh> line 5543.
2024.02.29 00:11:18 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 449, <$fh> line 5543.
2024.02.29 00:11:18 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 454, <$fh> line 5543.
2024.02.29 00:11:18 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 459, <$fh> line 5543.
2024.02.29 00:11:18 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 464, <$fh> line 5543.
2024.02.29 00:11:18 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 467, <$fh> line 5543.
2024.02.29 00:11:18 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 471, <$fh> line 5543.
2024.02.29 00:11:18 1: PERL WARNING: "my" variable $data masks earlier declaration in same scope at ./FHEM/98_eCharts.pm line 781, <$fh> line 5543.
2024.02.29 00:11:18 1: PERL WARNING: Prototype mismatch: sub main::eCharts_plotAsPng (@) vs none at ./FHEM/98_eCharts.pm line 790, <$fh> line 5543.
Can't use an undefined value as an ARRAY reference at ./FHEM/98_eCharts.pm line 508.
2024.02.29 00:15:06 1: PERL WARNING: given is experimental at ./FHEM/98_eCharts.pm line 441, <$fh> line 5543.
2024.02.29 00:15:06 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 442, <$fh> line 5543.
2024.02.29 00:15:06 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 449, <$fh> line 5543.
2024.02.29 00:15:06 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 454, <$fh> line 5543.
2024.02.29 00:15:06 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 459, <$fh> line 5543.
2024.02.29 00:15:06 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 464, <$fh> line 5543.
2024.02.29 00:15:06 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 467, <$fh> line 5543.
2024.02.29 00:15:06 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 471, <$fh> line 5543.
2024.02.29 00:15:06 1: PERL WARNING: "my" variable $data masks earlier declaration in same scope at ./FHEM/98_eCharts.pm line 781, <$fh> line 5543.
2024.02.29 00:15:06 1: PERL WARNING: Prototype mismatch: sub main::eCharts_plotAsPng (@) vs none at ./FHEM/98_eCharts.pm line 790, <$fh> line 5543.
Can't use an undefined value as an ARRAY reference at ./FHEM/98_eCharts.pm line 508.
2024.02.29 00:17:12 1: PERL WARNING: given is experimental at ./FHEM/98_eCharts.pm line 441, <$fh> line 5543.
2024.02.29 00:17:12 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 442, <$fh> line 5543.
2024.02.29 00:17:12 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 449, <$fh> line 5543.
2024.02.29 00:17:12 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 454, <$fh> line 5543.
2024.02.29 00:17:12 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 459, <$fh> line 5543.
2024.02.29 00:17:12 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 464, <$fh> line 5543.
2024.02.29 00:17:12 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 467, <$fh> line 5543.
2024.02.29 00:17:12 1: PERL WARNING: when is experimental at ./FHEM/98_eCharts.pm line 471, <$fh> line 5543.
2024.02.29 00:17:12 1: PERL WARNING: "my" variable $data masks earlier declaration in same scope at ./FHEM/98_eCharts.pm line 781, <$fh> line 5543.
2024.02.29 00:17:12 1: PERL WARNING: Prototype mismatch: sub main::eCharts_plotAsPng (@) vs none at ./FHEM/98_eCharts.pm line 790, <$fh> line 5543.
Can't use an undefined value as an ARRAY reference at ./FHEM/98_eCharts.pm line 508.


Angelegt ist der eChart so

defmod myChart eCharts FileLog_HmIP_FALMOT_C12:SVG_FileLog_HmIP_FALMOT_C12_1:CURRENT
attr myChart plotsize 300,500
attr myChart room 01.Heizung_UG

Im Anhang der Log vom HmIP_FALMOT_C12. Einen Abriss erkenne ich nicht, aber größere Abstände.
Genauer, es geht um die Level-Readings im Log. Diese zeigen mir die Öffnungsgrad der Stellventile an.
Das es dann keine Daten gab, wäre plausibel.

event-on-change or ähnliches habe ich nicht gesetzt. Vielleicht addLog verwenden. Dann wäre es kein Thema mehr für hier.
SVG_Filelog kommt damit klar. Vielleicht könnt ihr das abfangen.


Gruß schwatter

schwatter

@andies

Bei mir schaut das so aus. Wenn ich die Größe nicht definiere.


Gruß schwatter


MadMax

Zeigt dein Plot nur den aktuellen Tag an? Also von 0Uhr bis jetzt?
Lenovo M910Q Tiny Debian 12, FHEM 6.3, 2x Siemens Logo 0BA7, Homematic CCU3, Philips HUE, 5x SMA Wechselrichter, BYD HVM, SMA EVCharger, Daikin Wärmepumpe über CAN

Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/MadMax

MadMax

Zitat von: MadMax am 29 Februar 2024, 18:24:46Zeigt dein Plot nur den aktuellen Tag an? Also von 0Uhr bis jetzt?
Ja, muss so sein du hast ja nicht endplotnow gesetzt damit beginnst du 0uhr.
Dann kommt der Fehler wenn es keine Daten in dem Zeitraum gibt.
Lenovo M910Q Tiny Debian 12, FHEM 6.3, 2x Siemens Logo 0BA7, Homematic CCU3, Philips HUE, 5x SMA Wechselrichter, BYD HVM, SMA EVCharger, Daikin Wärmepumpe über CAN

Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/MadMax