FHEM Forum

FHEM - Hausautomations-Systeme => Unterstützende Dienste => Thema gestartet von: onkel am 25 Dezember 2023, 19:11:25

Titel: Strompreisfutures importieren und als SVG anzeigen
Beitrag von: onkel am 25 Dezember 2023, 19:11:25
Hallo
Wie kann ich die Strompreisfutures von folgender Seite: https://apis.smartenergy.at/market/v1/price importieren, in der Datenbank speichern und als SVG anzeigen?
Grundsätzlich kann ich die Daten über JsonMod importieren und auch Speichern aber ich finde dann keinen Weg die Daten(Preise) in SVG darzustellen da die readings alle verschiedene Namen haben.

MfG Georg
Titel: Aw: Strompreisfutures importieren und als SVG anzeigen
Beitrag von: ergerd am 25 Dezember 2023, 21:04:32
Hallo Georg,

wie wird denn gespeichert, DbLog oder FileLog?

MfG Rainer
Titel: Aw: Strompreisfutures importieren und als SVG anzeigen
Beitrag von: rudolfkoenig am 25 Dezember 2023, 23:24:27
#1 in 99_myUtils.pm folgende Funktion anlegen:
sub
parse_smartenergy($)
{
  my ($file) = @_;

  HttpUtils_NonblockingGet({
    url=>"https://apis.smartenergy.at/market/v1/price",
    callback=>sub($$$){
      return Log 1, "parse_smartenergy:$_[1]" if($_[1]);
      my $data = $_[2];
      $data =~ s/^{.*"data":\[//;
      $data =~ s/]}$//;
      $data =~ s/[ \t]//g;
      $data =~ s/{"date":"(....-..-..)T(..:..:..).*?","value":(.*?)},?/$1_$2 smartenergy $3\n/g;
      open(my $fd, ">$file") || return Log 1, "$file:$!";
      print $fd $data;
      close($fd);
      Log 1, "smartenergy: wrote data";
    } });
}

#2 diese Funktion mit einem at regelmaessig aufrufen. Ich habe zum Testen sie so aufgerufen:
define n notify global:INITIALIZED { parse_smartenergy("log/smartenergy.log") }

#3 ein FileLog anlegen, z.Bsp. so:
define f fileLog log/smartenergy.log badregexp readonly

#4 in FHEMWEB ueber f (DetailAnsicht) "Create SVG plot" ein Plot anlegen, Spalte 3 selektieren und "write .gplot file" waehlen.

Ergebnis im Anhang.
Titel: Aw: Strompreisfutures importieren und als SVG anzeigen
Beitrag von: rudolfkoenig am 25 Dezember 2023, 23:31:45
Nachtrag:
Um beide Tage angezeigt zu bekommen setzt man
attr f fixedoffset 1
attr f fixedrange 2days
Titel: Aw: Strompreisfutures importieren und als SVG anzeigen
Beitrag von: onkel am 26 Dezember 2023, 13:58:21
Hallo Rainer
die Daten sollen in DBLog geschrieben werden.

Hallo Rudolf
Vielen Dank für diesen Code und der Anleitung. Auf das wäre ich nie gekommen so etwas selber zu schreiben.
Ich hatte noch einige Probleme es in gang zu kriegen, erst nachdem ich FHEM einmal neu gestartet hatte hat es funktioniert.

Noch einmal Vielen Dank und Schöne Feiertage

MfG
Georg
Titel: Aw: Strompreisfutures importieren und als SVG anzeigen
Beitrag von: rudolfkoenig am 26 Dezember 2023, 14:18:48
Zitaterst nachdem ich FHEM einmal neu gestartet hatte hat es funktioniert.
Sorry, habs vergessen zu erwaehnen.
Die Alternative ist reload 99_myUtils.pm
Titel: Aw: Strompreisfutures importieren und als SVG anzeigen
Beitrag von: satprofi am 13 Februar 2024, 14:05:40
Zitat von: onkel am 25 Dezember 2023, 19:11:25Hallo
Wie kann ich die Strompreisfutures von folgender Seite: https://apis.smartenergy.at/market/v1/price importieren, in der Datenbank speichern und als SVG anzeigen?
Grundsätzlich kann ich die Daten über JsonMod importieren und auch Speichern aber ich finde dann keinen Weg die Daten(Preise) in SVG darzustellen da die readings alle verschiedene Namen haben.

MfG Georg

bekommst du noch daten?