Modul für DWD Open Data

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

Vorheriges Thema - Nächstes Thema

Intruder1956

Hallo Jens,
wir kommen der Sache schon näher  ;) habe nur noch dieses im Log nach einem "shutdown restart"

2018.05.13 20:37:32 3: eval: { DWDOD_AsHtmlH("DWD") }
2018.05.13 20:37:32 1: PERL WARNING: Use of uninitialized value $fcStart in addition (+) at FHEM/DWDODweblink.pm line 666.
2018.05.13 20:37:32 3: eval: { DWDOD_AsHtmlH("DWD") }


Noch eine Frage, wie kann ich die Warnmeldungen sichtbar machen, habe in beiden Modulen die Anleitungen gelesen aber leider nicht kapiert  :)

Gruß Werner
Zotac CI547 32GB RAM 500GB SSD,ESXI 6.5, VM-Fhem5.8, VM-ioBroker, Cul 868Mhz;Cul 433Mhz = Busware, LGW, HM-MOD-RPI-PCB, Uniroll, IT YCR-100 TMT2100,ITR-1500, LD382 mit Wifilight, ESA 2000 + SENSOR WZ SET,FS20 TFK, HM-Sec-SC, HM-CC-RT-DN,PCA301,

jensb

Hallo Werner,

aus deiner Rückmeldung schließe ich, dass mit meinem 2. Vorschlag das von dir gemeldete Problem (ERROR ... Not a HASH reference) aus 55_DWD_OpenData.pm gelöst ist, das sich ja mit jeder Aktualisierung der Wetterwarnungen wiederholte. Werde das so als Update zur Verfügung stellen.

Dein Logging zeigt auch, dass der Weblink beim Neustart eine Fehlermeldung verursacht (WARNING ... Use of uninitialized value). Da es "nur" eine Warnung ist die nur einmal beim Neustart auftritt, ist das vor allem unschön, aber keine wirkliches Problem. Werde mir das demnächst mal vornehmen.

Zitat... wie kann ich die Warnmeldungen sichtbar machen ...
Du willst die Warnmeldungen wahrscheinlich im Weblink sehen. Zunächst einmal muss aber das DWD_OpenData-Modul richtig eingestellt sein. Wenn Warnungen vorliegen (z.B. auf der DWD-Website nachsehen), dann müssen bei dir "a_n_xxxx Readings" vorhanden sein. Dann sollte aber auch der Weblink (Version ab 02.04.18) am dazugehörigen Icon ein Warnsymbol anzeigen (in der Wiki ist ein Screenshot). Auf das Warnsymbol kann man klicken, um die Warninfos zu lesen. Zum Ausprobieren kannst du auch "get alerts" für eine Warnzelle aufrufen, die gerade Warnungen hat.

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

curt

Zitat von: jensb am 13 Mai 2018, 22:06:13
Hallo Werner,
aus deiner Rückmeldung schließe ich, dass ...

Ich bin jetzt zwar nicht Werner - habe aber auch Probleme. Ich sehe keinerlei Readings. Und die theoretischen Grafiken der Vorhersage sind alle n/a.

@jensb
Ich habe daher einen Vorschlag - der zumindest mir das Leben leichter machen würde: Es wäre (mindestens für mich) hilfreich, wenn Du ein komplettes (echtes) Beispiel in das Wiki tun könntest.

Begründung:
Das könnte ich (und andere) nehmen, um erstmal zu sehen, wie das Ganze theoretisch dann bei mir aussehen und funktionieren muss. (Sicher kann man das mit trail und error nach vielen Stunden selbst - aber diesen Teilprozess kann man vielleicht doch abkürzen.)
RPI 4 - Jeelink HomeMatic Z-Wave

dafex

Servus und Danke für das Modul.

@curt Hab auch ein paar Anfangsschwierigkeiten gehabt. Hast du auch die ID aus der dritte Spalte des (Katalog's MOSMIX genommen. Musste auch zwei mal neu starten.

Ja man muss ein bisschen spielen. Ist aber in Ordnung finde ich. Ist ja noch ein junges Modul mit Potential. Da wird sicher noch einiges kommen  ;) .

Danke und Gruaß
Josef

jensb

@curt
Wenn du die Vorbereitungsschritte aus der Wiki erledigt hast, kannst du als "komplettes (echtes) Beispiel" die Beispielkonfiguration für das Modul aus der Wiki nehmen. Das ist zwar zufälligerweise für Berlin, aber funktionell vollständig. Eigentlich braucht man davon sogar nur das "define" und die beiden ersten Attribute.

Wenn du dann mit "get forecast" immer noch keine Readings im Device siehst, dann stimmt irgend etwas anderes an der Installation nicht. Dann wird es Zeit für Attribut verbose=5, noch mal "get xxx" auslösen und nachsehen, was im Logfile steht. Wenn dir die Logeinträge zu kryptisch sind, kannst du sie auch hier posten. Hilfreich kann auch der "state" des Device sein. Bei Ablauffehlern steht da nämlich "error xxx". Bei "get alerts" ist es je nach Wetterlage dagegen normal, dass es keine Readings gibt.

Der Weblink kann nur anzeigen was das Device zur Verfügung stellt und mit n/a will der Weblink dem Betrachter klar machen, dass ihm die Vorhersagedaten fehlen, was ja zu klappen scheint.

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

MadMax-FHEM

N/A hatte ich auch, als ich beschlossen hatte die Readings "einzuschränken": Attribut forecastProperties

Als ich alle Readings "zugelassen" hatte ging es...
...wenn allerdings keine Readings (egal welcher Grund) kommen kann (wie bereits ausgeführt) der weblink nat. nichts anzeigen.

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

jensb

Ab Dienstag ca. 08:00 steht ein Update für 55_DWD_OpenData.pm per FHEM Update zur Verfügung, dass den von @Intruder1956 hier gemeldeten Fehler "Not a HASH reference" behebt. Dieser Fehler tritt nicht auf allen Systemen auf und dürfte selbst wenn er auftritt keine relevanten Fehlfunktionen verursachen. Das Update hilft also nicht, wenn z.B. noch Installationsprobleme vorliegen.

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

Skipper

Hallo zusammen,

ich bin sehr froh, dass das Modul jetzt über das FHEM Update verfügbar ist. Ich hatte mir das Modul schon vor einiger Zeit angesehen und wollte es aktivieren, bin aber bisher nicht dazu gekommen. Jetzt habe ich es per Update installiert und will es aktivieren und siehe da ich bekomme folgenden Fehler:
Undefined subroutine &main::timelocal called at ./FHEM/55_DWD_OpenData.pm line 462
Wie kann ich diesen beheben?

Grüße

jensb

Hallo Skipper,

timelocal ist eine Funktion aus dem Perl-Standardmodul Time::Local. Vermutlich verwenden viele ein anderes FHEM-Modul, das Time::Local bereits lädt, so dass vor dir noch keiner gemerkt hat, dass im Modul 55_DWD_OpenData.pm der Aufruf

use Time::Local;

fehlt. Bitte z.B. in Zeile 48 hinzufügen und dann noch mal testen.

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

Skipper

Vielen Dank, das hat geholfen.
Sollte dringend nachgepflegt werden für solche User wie mich ;-)

Kurze Frage noch zu den Daten selber.
Aus dem Wert Nf, NL, NM, NH kann ich da den Bewölkungsgrad ablesen?
Wenn ja, ich würde gerne meine Rolläden wenn für den Tag  ein bestimmter Bewölkungsgrad vorhergesagt ist herunter fahren.
Oder andersherum ausgedrückt, wenn die Sonne scheint und kaum bis keine Wolken da sind soll der Rolladen runter fahren aber nicht wenn es bedeckt ist.
(Rolläden sind natürlich per FHEM steuerbar)
Wie würdet ihr vorgehen?
Mir ist auch wichtig, dass die Daten nicht aus einem Messpunkt kommen sondern die Vorhersage des Tages berücksichtigen.

jensb

#190
Hallo Skipper,

danke für die schnelle Rückmeldung. Wird natürlich nachgepflegt, damit andere nicht an der gleichen Stelle stolpern.

ZitatAus dem Wert Nf, NL, NM, NH kann ich da den Bewölkungsgrad ablesen?
Ja, der Wetterfrosch redet in diesem Zusammenhang von Achteln, wobei 8/8 der vollständigen Bewölkung entspricht.

Zitat... ich würde gerne meine Rolläden wenn für den Tag  ein bestimmter Bewölkungsgrad vorhergesagt ist herunter fahren. ... Wie würdet ihr vorgehen?
Das hatten wir in ähnlicher Form schon mal weiter vorn in diesem Thread, wobei es da um das Rasenmähen ging. Ich würde es nicht mit dem Bewölkungsgrad steuern wollen, da das für mich nicht aussagekräftig genug ist und mir hier wichtiger ist, was gerade war bzw. ist und nicht was sein wird. Dafür habe ich einen TSL2561 auf dem Dach. Der hat einen Helligkeits- und einen IR-Sensor. Dadurch ist man von der Theorie der Wettervorhersage unabhängig. Die Messwerte kann man z.B. auch über einen Zeitraum integrieren, um aus mehreren  Messpunkten die Gesamtwirkung zu bestimmen. Vor allem hat man damit Helligkeit und Wärme als getrennte Messwerte. Manchmal will man nicht zu viel Licht, aber zumindest im Sommer will man nicht zu viel Wärme.

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

jensb

Ab Mittwoch ca. 08:00 steht ein Update für 55_DWD_OpenData.pm per FHEM Update zur Verfügung, dass den von @Skipper hier gemeldeten Fehler "Undefined subroutine &main::timelocal" behebt. Dieser Fehler tritt abhängig von den aktiven Modulen nur auf einzelnen Systemen auf und verhindert dann das Laden des Moduls durch FHEM.

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

curt

Zitat von: dafex am 14 Mai 2018, 12:41:04
@curt Hab auch ein paar Anfangsschwierigkeiten gehabt. Hast du auch die ID aus der dritte Spalte des (Katalog's MOSMIX genommen. Musste auch zwei mal neu starten.

Danke für den Hinweis. Jetzt tut es, ich habe feine Wölkchen.

Darf ich bitte dumme Fragen stellen?

* ALERTS_IN_CACHE 7
Schön für den Cache. Noch schöner wäre es, wenn ich die irgendwie angezeigt bekäme. Nur wie?

* attr DWD forecastDays 3
Wie weit geht das theoretisch?

* define DWDweblink weblink htmlCode { DWDOD_AsHtmlH("DWD", 4, 0) }
Was kann man damit schönes veranstalten? Also was bedeuten 4 und 0? Gibt es weitere Parameter? Oder gibt es Attribute dazu?

P.S: Das Rasenmäherproblem habe ich auch. Ich gehe mal viele Seiten blättern.
RPI 4 - Jeelink HomeMatic Z-Wave

jensb

@curt
ZitatALERTS_IN_CACHE 7 - Noch schöner wäre es, wenn ich die irgendwie angezeigt bekäme. Nur wie?
Die willst du vermutlich gar nicht sehen - und wenn du sie wirklich sehen willst, musst du nur oft genug "get alerts" aufrufen. Im Cache stehen alle Wetterwarnungen für das gesamte Bundesgebiet. Wenn du alle Warnzellen von ganz Deutschland hintereinander abfragst, wirst du alle 7 Warnungen früher oder später zusammen haben. Bitte beachte, dass manchmal mehrere hundert Warnungen im Cache sind. Den ganzen Cache immer als Readings auszuliefern würde nur viel Overhead generieren und am Ende interessiert sich doch niemand dafür.

Auch wenns schwer fällt - bitte lies noch mal die Wiki und die gesamte englische Modulhilfe durch - da stehen die Antworten auf die anderen Fragen. Beim Weblink musst du dazu - wie es in der Wiki steht - die Datei öffnen und den Text am Ende lesen. Wenn noch Fragen bleiben noch mal melden.

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

curt

Ja, es fällt schwer. Mal abgesehen davon, dass ich mir nicht sicher bin, ob es sinnvoll ist, dass jeder Einzelne stundenlang jede einzelne Fall mitnimmt - es fällt auch so schwer. Am Beispiel:

The function accepts two optional parameters to limit the number of icons to display (1...7, default 4) and to use minimum of ground and minimum temperature instead of the minimum temperature (0/1, default 0).

Vielleicht liegt es an meinem schlechten Englisch oder veralteter Mathematikausbildung: Ich hatte "4,0" übernommen und sehe acht Icons. Das sind schon mal mehr als die sieben in dem empfohlenen Text. Ich schalte testweise auf "7" - und habe 14 Icons. Der zweite Satzteil erschließt sich mir nun überhaupt nicht: Was ist mit "minimum of ground" gemeint? Die Bodentemperatur? Ich bekomme beide bei "1"? Rein von der Textlogik würde ich zwei Werte aber bei "0" bekommen. Hmm. Ratespiel.

Und über commandref will ich nichtmal nachdenken: Wenn man als Neuling da ran muss, ist das eigentlich immer Stochern im Nebel.
RPI 4 - Jeelink HomeMatic Z-Wave