Modul für DWD Open Data

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

Vorheriges Thema - Nächstes Thema

curt

Hallo @jensb

ganz übler Stockfehler meinerseits:


diff fhem.cfg.2018-09-29h fhem.cfg

< attr DWDweblink room 00 Test Wettervorhersage
> attr DWD_Weblink room 00 Test Wettervorhersage


Danke für Deine Geduld.
RPI 4 - Jeelink HomeMatic Z-Wave

Bruchflieger

Guten Morgen,

ich bin neu hier...  ;)
Ich habe die Plugins vom Github am Sonntag geladen und auch per updatefunktion nochmal drüber rödeln lassen.
Dann hab ich die Config-datei um den Code von Curt ergänzt, und nun auch die Weblinks im Raum wetter angezeigt (bis eben waren sie bei unsortiert).
Aber die Icons sind leer und nur Fragezeichen als Daten.
Die Readings zu den Plugins haben nur den Eintrag state intitialized.
Ich nehme an, ich muss da noch irgendwas zusätzlich konfigurieren oder ich habe die falsche Wetterstation ausgewählt?
AlertArea = 815091160
forecastStation =99809 (Kemberg)

Grüße Daniel.
Grüße Daniel.

frank

forecaststation für kemberg-radis ist N671.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

curt

Zitat von: Bruchflieger am 02 Oktober 2018, 10:44:56
ich bin neu hier...  ;)

Mal schauen ...

Zitat von: Bruchflieger am 02 Oktober 2018, 10:44:56
Dann hab ich die Config-datei um den Code von Curt ergänzt, und nun auch die Weblinks im Raum wetter angezeigt (bis eben waren sie bei unsortiert).

Wenn Du wirklich meine Config übernommen hast: Dann gehe mal in den Wetterraum, dann klick mal bitte auf "DWD_Weblink_Generator", neue Seite kommt. Da ins untere Drittel. Zeilenbeginn "attr" suchen. Auf "room" umstellen, sofern nicht voreingestellt. Dann in das offene Textfeld klicken, Auswahlliste erscheint. Du kannst nun andere Räume mit aufnehmen oder nur in anderen Raum verschieben. ACHTUNG: DANACH auf "attr (links) klicken und dann noch (links oben) auf "Save config" (mit rotem Fragezeichen) klicken. Das verschwindet - Änderung gespeichert.

Ein Schritt zurück: Ganz unten steht da "Probably associated with - DWD_Weblink", da drauf klicken. DORT kannst Du den eigentlichen Weblink in einen anderen Raum tun. (attr klicken danach speichern nie vergessen!)

Zitat von: Bruchflieger am 02 Oktober 2018, 10:44:56
forecastStation =99809 (Kemberg)

Ich habe nicht geschaut, mein Vorredner wird aber recht haben. Hinweis: Mir war aufgefallen, dass manche Stationen in meiner Nähe nicht stabil laufen. Und manche haben nicht alle Werte vorrätig.

Grüße einmal über die Elbe ...
RPI 4 - Jeelink HomeMatic Z-Wave

Bruchflieger

#274
Hallo,

Danke für die Hinweise - mit der neuen Station und etwas Warten hat's dann funktioniert und im richtigen Raum hab ichs  ja schon einsortiert bekommen. - hab ja nicht 100% gleich einkopiert, sondern schon entsprechend angepasst... und nun gibt's im Objekt DWD auch drölfundneunzig readings und die Icons sind bunt - mal abgesehen dass mir die Bildchen selbst mir nicht so zusagen... (heute Regen und morgen stärker bewölkt... ;) )

Mal eine weitere Frage - ich hab die 99_utils.pm nicht angefasst, bekomme aber im log solche Meldungen:

2018.10.02 13:45:34 1: PERL WARNING: Use of uninitialized value $a[1] in subtraction (-) at ./FHEM/99_Utils.pm line 21.
2018.10.02 13:45:34 1: PERL WARNING: Argument "?" isn't numeric in subtraction (-) at ./FHEM/99_Utils.pm line 21.
2018.10.02 13:45:34 1: PERL WARNING: Use of uninitialized value in subroutine entry at ./FHEM/99_Utils.pm line 21.
2018.10.02 13:45:34 1: PERL WARNING: Use of uninitialized value $epoch in addition (+) at ./FHEM/99_DWD_OpenData_Weblink.pm line 758.
2018.10.02 13:45:34 1: PERL WARNING: Use of uninitialized value $cloudCover in multiplication (*) at ./FHEM/99_DWD_OpenData_Weblink.pm line 864.
2018.10.02 13:45:34 1: PERL WARNING: Argument "?" isn't numeric in numeric gt (>) at ./FHEM/99_DWD_OpenData_Weblink.pm line 976.
2018.10.02 13:45:34 1: PERL WARNING: Use of uninitialized value $fcStart in addition (+) at ./FHEM/99_DWD_OpenData_Weblink.pm line 1060.


bzw. das hier:

2018.10.02 19:37:19 1: PERL WARNING: Use of uninitialized value in subroutine entry at ./FHEM/99_Utils.pm line 21.
2018.10.02 19:37:19 1: PERL WARNING: Use of uninitialized value $fcStart in addition (+) at ./FHEM/99_DWD_OpenData_Weblink.pm line 1060.
2018.10.02 19:39:50 1: PERL WARNING: Argument "%" isn't numeric in numeric gt (>) at ./FHEM/98_SVG.pm line 1556.
2018.10.02 19:39:50 1: PERL WARNING: Argument "%" isn't numeric in subtraction (-) at ./FHEM/98_SVG.pm line 2106.


Zeile 21 in der 99_utils.pm:
   return mktime($a[5],$a[4],$a[3],$a[2],$a[1]-1,$a[0]-1900,0,0,-1);


Die Datei beginnt dabei so:
##############################################
# $Id: 99_Utils.pm 15713 2017-12-28 11:01:02Z rudolfkoenig $
package main;

use strict;
use warnings;

sub
Utils_Initialize($$)
{
  my ($hash) = @_;
}

sub
time_str2num($)
{
  my ($str) = @_;
  my @a;
  if($str) {
    @a = split("[T: -]", $str);
    return mktime($a[5],$a[4],$a[3],$a[2],$a[1]-1,$a[0]-1900,0,0,-1);
  } else {
    my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time);
    return mktime($sec, $min, $hour, $mday, $mon, $year, 0, 0, -1);
  }
}

Grüße Daniel.

jensb

@Bruchflieger

Die Fehlermeldungen werden vom Weblink verursacht, denn der reagiert so auf fehlende Daten vom OpenData-Modul, insbesondere wenn die "_date" und "_time"-Readings nicht vorhanden sind oder keine lesbaren Zeitangaben enthalten. Das würde allerdings nur zu der "?"-Situation passen die du hattest, bevor du endlich "drölfundneunzig" Readings zu sehen bekommen hast.

Wenn die Fehlermeldungen aber immer wieder kommen, wenn du z.B. mit einem Browser die Seite mit dem Weblink aufrufst, der Weblink aber für alle Platzhalter korrekte Daten hat, dann stimmt da etwas anderes nicht.

Am Standard-Modul 99_utils.pm sollte man nichts ändern. Eigene Erweiterung kann man aber in 99_myUtils.pm unterbringen.

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

Maista

Hallo Jens,

hab nun das Modul upgedatet und soweit scheint es erst ein mal zu funktionieren.

Allerdings sehe ich beim Weblink keine "°"-Zeichen vor dem "C" ? Und die Umlaute passen auch nicht.

Fehlt da noch irgend was? Das UTF habe ich meine ich nach dem Wiki umgestellt.

Danke und schönen Feiertag!

Gruss Gerd

jensb

@Maista
Das hat sehr wahrscheinlich mit dem Download der Weblink-Moduldatei zu tun. Siehe dazu die Beiträge 232 und 233.

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

Maista

Hallo Jens,

war klar das der Fehler zwischen den Ohren war ;)

Ich hatte den ASCII-Text vom GIT kopiert und dann eingespielt.
Da war dann natürlich die falsche Kodierung aktiv :o

War wieder zu spät um das geschwind zu machen.

Danke Dir und noch schönen Feiertag!

Gerd

maddinthebrain

#279
Hallo zusammen,

mein DWD Weblink zeigt nur diese Fehlermeldung

Undefined subroutine &main::DWD_OpenData_ParseDateTimeLocal called at FHEM/DWDODweblink.pm line 643

Was ist da los? Hatte nichts verändert. Das DWD_OpenData Modul scheint noch zu funktionieren. Die Daten/Warnungen werden aktualisiert.

viele Grüße

Martin
Viele Grüße
Martin

Futro mit Proxmox und Debian: FHEM, Signalduino 433MHz & 868MHz, MAX!, WeeWX, FHEM2FHEM,
Raspi 4 mit ConBee mit deCONZ und Phoscon für ZigBee Aktoren und Sensoren

jensb

@maddinthebrain
Das DWD_OpenData-Modul und der Weblink wurden vor einigen Wochen stark überarbeitet. Die Datei des Weblinks heißt jetzt auch nicht mehr "DWDODweblink.pm".

Du solltest das DWD_OpenData-Modul updaten und nach Bedarf neu konfigurieren und den Weblink deinstallieren und neu installieren. Die erforderlichen Hinweise findest du, wenn du im Wiki-Beitrag ganz oben anfängst "Versionänderung: ...".

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

maddinthebrain

Ja, das wars. Dieses Update hatte ich übersehen. Aber das Wiki beschreibt ja schön, wie man es heilen muss. Danke
Viele Grüße
Martin

Futro mit Proxmox und Debian: FHEM, Signalduino 433MHz & 868MHz, MAX!, WeeWX, FHEM2FHEM,
Raspi 4 mit ConBee mit deCONZ und Phoscon für ZigBee Aktoren und Sensoren

Knallkopp_02

#282
Hallo jensb und natürlich alle anderen,

ich bin recht neu hier und habe mich ein weinig mit dem Wetter in FTUI und deinem Modul auseinander gesetzt.

Ich möchte mich einerseits gern auf die Icondarstellung beziehen die hier im Thread vor einigerzeit angesprochen wurde.
Aktuell benutze ich PP, möchte aber gern auf dein Modul wechseln. Wie du schon richtig beschrieben hast, ist PP nicht das Maß der Dinge - es werden nur wenige daten geliefert - aber es bietet meiner Meinung nach einen guten Ansatzpunkt mit den verschiedenen Wetterstadien. Du hast nach einer Lösung gefragt, wie man die ersten 5 abbilden kann. mir würde dazu folgendes einfallen:

sunny.png  //Sonnig
mostly_sunny.png  // Heiter
partly_cloudy.png  // leicht bewölkt
mostly_cloudy.png  // stark bewölkt
cloudy.png  //  bedeckt


So könnte man alles gut abdecken und würde sich auch an das Schema von PP anlehnen.

Ich hätte dann noch 3 Fragen bzw Anliegen, ob man folgenden implementieren kann.

- eine TAG/NACHT Funktion für die Icons, war auch schon mal irgenwo angesprochen.

- einen Wert einfügen, der das aktuelle Wetter als Icon ausgibt, evtl aus dem Wert "ww3".

- kann man die Texte "wwD" irgendwie kürzen für FTUI?

Gruß Knallkopp_02
Ich bin kein Programmierer und habe keine Ahnung.

Raspberry PI 3B+ mit HM-MOD-RPI-PCB,     
HM-TC-IT-WM-W-EU, HM-CC-RT-DN, HM-SEC-SCo
Raspberry PI 3B+ mit 7" Touchdisplay

jensb

@Knallkopp_02
Ich sehe die Funktion des DWD OpenData Modul in der Bereitstellung von Rohdaten in FHEM kompatibler Form, also als Readings. Allein das ist bisweilen nicht einfach, da der DWD des öfteren Datenformate und Datenumfang ändert.

Da es mehrere UIs für FHEM gibt, kann es nicht Aufgabe eines Datenmoduls sein, spezielle Anpassungen für eine bestimmte UI bereit zu stellen. Das muss ggf. ein Koppelmodul erledigen oder es erfolgt direkt in der UI.

Ein Beispiel dafür ist das Modul 99_DWD_OpenData_Weblink.pm: es führt die Anpassung der Daten für FHEMWEB durch. Wenn du dir den Modul-Source ansiehst, findest du die beiden Funktionen GetWeatherIconTag und IsDay, die das machen was du benötigts: Icons und Tag/Nacht.

Meine Empfehlung: Auf Basis von 99_DWD_OpenData_Weblink.pm ein eigenes Koppelmodl für die FTUI schreiben. Ich bin mir sicher, dass das auch einige andere gerne nutzen würden.

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

Knallkopp_02

@jensb

danke für die schnelle Anwort, werde mir das mal ansehen, denke aber das ich dafür nicht der Richtige bin sowas umzusetzen, da ich kein Programmierer bin.

Gruß und schönen Sonntag noch
Ich bin kein Programmierer und habe keine Ahnung.

Raspberry PI 3B+ mit HM-MOD-RPI-PCB,     
HM-TC-IT-WM-W-EU, HM-CC-RT-DN, HM-SEC-SCo
Raspberry PI 3B+ mit 7" Touchdisplay