Modul für DWD Open Data

Begonnen von jensb, 21 Januar 2018, 14:38:48

Vorheriges Thema - Nächstes Thema

ch.eick

Zitat von: DS_Starter am 19 Februar 2024, 23:24:19Hallo Jens,

nun habe ich noch das Startverhalten angepasst und sofern das Attr forecastDataPrecision auf "high" gesetzt ist, erfolgt der Datenrefresh im Quarter 2, also zwischen xx:30-xx:45. Grund ist, dass der DWD nach meinen Beobachtungen die Daten für MOSMIX_S regelmäßig zwischen 00:15 und xx:30 aktualisiert.

Mit der default Einstellung "low" bleibt die Aktualisierung wie bisher im Quarter 0.

Mit mehreren DWD Devices "high" gibt es ebenfalls kein Problem. Die Timer Einplanung ist um eine rand Zufallssteurung ergänzt die die Wahrscheinlichkeit reduziert dass mehrere Devices gleichzeitig refreshen.
Ich habe mit meinen 4 GB RAM und 4 DWD Devices (3 x high, 1 x low) keine Sorgen.
Hallo Heiko,
wie wäre die Idee bei mehreren DWD Devices zu prüfen, ob der Download bereits getätigt wurde und dann die DWD Stationen heraus zu filtern, damit das nicht jedes Device erneut machen muss.

my5cent
   Christian
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

DS_Starter

#871
Hallo Christian,

Jens/wir verfolgen die Variante bei der zukünftig optionalen Angabe von mehreren Stationen nur einmal den Download durchzuführen, alle Stationen in dem XML zu parsen und die Ergebnisse in separaten "Readingdevices" (es entstehen sehr viele Readings) je Station zusammenzufassen.

Das Ergebnis wäre dann entsprechend deines Hinweises, nur etwas anders gelöst. Jens wird auch noch an der Performance des Parcens schrauben wie er zuvor in #863 schon geschrieben hatte.

Aber diese weiteren Optimierungen werden noch etwas Zeit brauchen, deswegen war die eingebaute Lösung sehr praktikabel um die Weiterentwicklung zügig zum Einsatz bringen zu können, wer mag.

LG,
Heiko
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

mumpitzstuff

#872
https://grantm.github.io/perl-libxml-by-example/large-docs.html

Hier gibts noch ein paar Hinweise wie das Parsen vielleicht schneller gehen könnte bzw. wie man direkt aus einem zip heraus parsen kann.

Und hier sind 2 Wege beschrieben ein Filehandle von einer URL zu erzeugen. Das zweite ist wohl eher ein Download aber vielleicht die einfachere Variante:

https://stackoverflow.com/questions/45933869/perl-open-a-file-from-a-url

DS_Starter

Danke für die Hinweise. Die Links schaue ich mir mal an.

LG
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

xerion

Hallo zusammen,

ich nutze auch schon das neue DWD Modul. Mir ist nur aufgefallen, wenn ich ein "get forecast" manuell triggere. Das ich in FHEM die Reconnect Anzeige bekommen, das FHEM nicht mehr online ist. Aber nur für einen Moment. Konnte das auch schon jemand anderes beobachten?
Wechsel jetzt zu Octopus Energy und bekomme 150,00 € Bonus auf deine Rechnung. Die Anmeldung geht super leicht und schnell, klicke dafür einfach meinen persönlichen Empfehlungslink:
 https://share.octopusenergy.de/loved-heron-220.

DS_Starter

Vermutlich generiert dein Device sehr viele Readings mit! Eventgenerierung. Wenn du die Events auf ein "übersichtliches" Maß reduzierst, wird wahrscheinlich Abhilfe geschaffen sein.
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

xerion

Hm...event-on-change-reading ist auf jeden Fall gesetzt und forecastDays steht auch auf 1.
Also meiner Meinung nach alles auf ein Minimum reduziert.
Wechsel jetzt zu Octopus Energy und bekomme 150,00 € Bonus auf deine Rechnung. Die Anmeldung geht super leicht und schnell, klicke dafür einfach meinen persönlichen Empfehlungslink:
 https://share.octopusenergy.de/loved-heron-220.

DS_Starter

Bei mir kann ich deine Beobachtung definitiv nicht bestätigen. Das ist aber m.M. nach keine vom Modul abhängige Erscheinung, sondern tritt dort auf, wo (zu) viele Daten via long poll verarbeitet werden müssen. Ich glaube! die Meldung hat Rudi im FHEMWEB JavaScript verankert. Bin mir aber unsicher.

Mein FHEMWEB Device steht auf longpoll=websocket.
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

xerion

Komisch. Ich beobachte das Mal. longpoll ist bei mir auch so gesetzt
Wechsel jetzt zu Octopus Energy und bekomme 150,00 € Bonus auf deine Rechnung. Die Anmeldung geht super leicht und schnell, klicke dafür einfach meinen persönlichen Empfehlungslink:
 https://share.octopusenergy.de/loved-heron-220.

DS_Starter

Moin Jens,

in meinem contrib habe ich die Version des DWD_OpenData Moduls mit einem Attribut "timeout" ergänzt.
Damit kann man sich bei Bedarf diesen Parameter anpassen.
Ein User des SolarForecast Moduls war darauf gestoßen weil seine Internetverbindung zu langsam ist um das große File in der Zeit herunterzuladen.

Das ist sicherlich auch für andere User hilfreich. Habe den default auf 60 gesetzt.

Hattest du schon Gelegenheit dir den Reader/SAX-Parser für MOSMIX_S anzuschauen?

Grüße,
Heiko
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

erwin

Erstmal ein großes DANKE für die beiden Module DWD und SolarForecast !!!

Etwas ist mir heute kurz nach Mitternacht aufgefallen - mit dem DWD-Modul aus dem contrib:
es gibt KEINE readings fc0_0... mehr, fc0_1 - fc1_23 sehr wohl...

(attachment gekürzt...)

l.g. erwin
FHEM aktuell auf RaspberryPI Mdl 1-4
Maintainer: 00_KNXIO.pm 10_KNX.pm
User: CUNO2 (868 SLOWRF) - HMS100xx, FS20, FHT, 1-Wire  - 2401(iButton), 18x20, 2406, 2413 (AVR), 2450,..,MQTT2, KNX, SONOFF, mySENSORS,....
Hardware:  Busware ROT, Weinzierl IP731, 1-Wire GW,...

DS_Starter

Hallo erwin,

doch die gibt es.
Schau morgen nochmal. Ist bestimmt nur eine vorübergehende Erscheinung.

LG,
Heiko
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

jensb

@DS_Starter

Bin mit meinem aktuellen Projekt ein Stück weiter, mit Bluetooth ohne Änderung am Sender durch Wände zu gehen. Dadurch kann ich mich wieder um andere Sachen kümmern.

Werde auf deiner letzten Version aufsetzten. Als erstes ist das Download-Timing dran. Der DWD kann die Bereitstellung der Daten immer wieder ändern. Also macht es wie angedacht Sinn, öfter zu prüfen und nur bei Änderung neue Daten anzufordern. Das effizientere Parsen wird daher noch etwas warten müssen.

Werde meine Version wahrscheinlich auch erst über contrib bereit stellen.

Grüße,
Jens
FHEM 6.1 - RPi 4 Raspbian 12 + PiTFT - OPi Zero Armbian 5.35
EnOcean - (W)LAN/Firmata: BMP180, TSL2561, SHT21, Heatronic 3, OBIS - WLAN/ESP8266: Gardena 1251, Zirkulationspumpe - RTL433: Oregon - Bluetooth - MQTT
Contributions: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/jensb

DS_Starter

Hallo Jens,

danke. Das passt denke ich. Die neue Version mit MOSMIX_S wird schon von einigen Usern erfolgreich eingesetzt und die V ist bereits jetzt ein Mehrwert für unsere Anwendung. Macht sich wirklich gut.  :)

Grüße,
Heiko

Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

jensb

Hallo Heiko,

die Blumen für die Initiative MOSMIX S gebühren dir.  ;D

Bin mit dem 2. Review fertig. Habe ein paar Details "optimiert". Relevante Funktionsänderungen gibt es noch keine. Die neue Version findet sich hier:

https://svn.fhem.de/trac/browser/trunk/fhem/contrib/jensb

Bitte alle weiteren Änderungen basierend auf dieser Version vorschlagen.

Hinweis für Anwender: Aus Attribut timeout ist downloadTimeout geworden.

Grüße,
Jens
FHEM 6.1 - RPi 4 Raspbian 12 + PiTFT - OPi Zero Armbian 5.35
EnOcean - (W)LAN/Firmata: BMP180, TSL2561, SHT21, Heatronic 3, OBIS - WLAN/ESP8266: Gardena 1251, Zirkulationspumpe - RTL433: Oregon - Bluetooth - MQTT
Contributions: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/jensb