FHEM Forum

FHEM - Hausautomations-Systeme => Unterstützende Dienste => Thema gestartet von: Markus M. am 07 März 2017, 19:31:30

Titel: Umweltbundesamt Luftdaten (60_airquality.pm) Ersetzt durch 60_uba.pm & 60_bfs.pm
Beitrag von: Markus M. am 07 März 2017, 19:31:30
Modul wurde ersetzt durch die Weiterentwicklungen von Florian_GT

UBA: https://forum.fhem.de/index.php/topic,107741.0.html
BFS: https://forum.fhem.de/index.php/topic,107742.0.html




------------


Ein Modul für aktuelle Luftdaten vom Umweltbundesamt.

Es gibt Werte für Feinstaub PM10, Schwefeldioxid, Ozon, Stickstoffdioxid (1-Stunden-Mittelwert) und Kohlenmonoxid (8-Stunden-Mittelwert).
Eine Liste der Stationen findet ihr hier: http://www.umweltbundesamt.de/daten/luftbelastung/aktuelle-luftdaten#/stations (http://www.umweltbundesamt.de/daten/luftbelastung/aktuelle-luftdaten#/stations)

Definition:
define airquality airquality DEXX123

Da fast keine Station alle Werte misst, gibt es Attribute für zusätzliche Stationen für die einzelnen Schadstoffe.
Mit zusätzlichen Attributen für eine ODL ID und die Zugangskennung können auch Werte für Hintergrundstrahlung empfangen werden.
Den Rest findet ihr in der Modulhilfe.

Danke an jnewton957 für die Idee!


Ich werde das Modul nicht ins SVN einchecken, da die Nutzbarkeit der Daten durch die teilweise lückenhafte und verspätete Bereitstellung stark eingeschränkt ist und ich maximal statistischen Nutzen sehe. Da ich persönlich auch keine Verwendung für die Daten habe, wird das Modul nicht aktiv weiterentwickelt.


2018-06-03: Bugfix für userPassODL Attribut (afloria)
2020-01-25: Neue UBA Schnittstelle
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: peterk_de am 07 März 2017, 19:38:03
Jeeeeeeah damit kann ich evtl. meine selbstgebastelten schrottigen HTTPMOD-Anfragen an unseren Landes-Luft-Server ersetzen, DANKE!!
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 07 März 2017, 19:42:27
Zitat von: peterk_de am 07 März 2017, 19:38:03
Jeeeeeeah damit kann ich evtl. meine selbstgebastelten schrottigen HTTPMOD-Anfragen an unseren Landes-Luft-Server ersetzen, DANKE!!

Gut möglich, sollten die gleichen Daten sein. Vielleicht versteckt sich darin sogar schon die ID
Bitte mal testen und loggen, ob noch irgendwo Fehler drin sind - ich hab das gestern Abend spontan zusammengeschustert :)
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: peterk_de am 07 März 2017, 19:55:13
Funktioniert 1a, auch das Zusammenbasteln aus verschiedenen Stationen. Wunderbar. Die Stations-IDs sind andere.

Leider leitet aber unser Landesnetzwerk nicht alle Daten an das Messnetzwerk vom Bund weiter (PM2,5, Benzol, Globalstrahlung und alle Wetterdaten von den Stationen fehlen). Da ich aber in Sichtweite von so ner Messstation wohne, und die ja Equipment auffahren, was sich ein normalsterblicher privat nicht auf den Balkon hängt, sind das perfekte Wetterdaten für mich - das heißt ein paar HTTMODs müssen bleiben, aber das ist weniger tragisch - die wichtigsten Sachen sind dabei :-)
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 07 März 2017, 19:58:29
Wenn du irgendwas findest das solche Daten bundesweit bereithält und idealerweise noch per Schnittstelle auslesbar ist, gib mir Bescheid.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: peterk_de am 07 März 2017, 20:03:00
Hatte ich schon nach gesucht - ich fürchte das gibt es nicht, die Mühe wird sich wahrscheinlich einfach niemand machen, wenn es der Bund selbst schon nicht tut.

Hab noch einen "Haken" gefunden: Die Daten hinken gegenüber denen vom Land eine Stunde hinterher. Die Laden das vermutlich manuell per Eingabemaske hoch ^^
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 07 März 2017, 20:10:40
Vergleich mal ob nicht nur die Stunde nicht passt.
Wenn ich 20 nach 8 einen 1h Mittelwert abrufen dann kann der  von 7 Uhr oder bis 8 Uhr sein. Definitionssache :)

Da ich jeweils von 30 Minuten nach dem letzten erhaltenen Stundenwert bis jetzt über Unix Timestamps anfrage, sollten meine Werte eigentlich fast passen.
Beispiel: Letzter Wert von 19:00, Abfrage-Zeitraum jetzt von 19:30 bis 20:30 - wenn was kommt ist es der Wert von 20 Uhr.
Scheint aber wirklich mit wechselnder Verzögerung zu laufen...
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: KölnSolar am 07 März 2017, 23:26:14
Hi Markus,
interessante Idee. Gleich ausprobiert, aber leider
Can't locate object method "new" via package "JSON" (perhaps you forgot to load "JSON"?) at ./FHEM/60_airquality.pm line 632.

Ist ein Rpi mit aktuellem Wheezy. Hab erst gedacht, ich muss noch das libjson-perl installieren(obwohl die Meldung ja etwas anders ist als sonst bei einem fehlenden Perl-Modul).  Hat aber leider auch mit einem reboot nicht geholfen. Sobald der get-Befehl ausgeführt wird, schmiert fhem ab  :(
Muss ich da erst etwas starten/laden, so wie die Fehlermeldung aussagt ?

Grüße Markus
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 08 März 2017, 08:45:16
Ne, ich muss es dummerweise auch definieren...
Update im ersten Post!
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: KölnSolar am 08 März 2017, 11:39:38
Hi Markus,
danke für die Korrektur. Versteh jetzt nur nicht, warum das bei anderen funktionieren konnte  :-\

Ja, und mein fhem zerriss es trotzdem wieder  >:( Diesmal mit: Undefined subroutine &main::Dumper called at ./FHEM/60_airquality.pm line 658. Ist das nur für Dich zum Test oder muss ich was installieren ?

Ich hab die Zeile mal auskommentiert und dann läufts  ;D

Die commandref ist gut verständlich. 2 Anmerkungen: Scheinbar hat die von mir gewählte Station keinen CO-Messwert. Vielleicht müsste man da textlich noch etwas mehr drauf eingehen, dass nicht alle Stationen alle Werte liefern und man über stationWert eine abweichende Station eintragen kann, um einen Wert zu erhalten. Gewöhnungsbedürftig ist sicherlich auch, dass im Gegensatz zum üblichen Verhalten, als timestamp nicht das letzte get, sondern der timestamp der Veröffentlichung der Luftdaten anzeigt wird.

Beides mit ein wenig Hirn und FHEM-Erfahrung leicht durchschaubar, aber newbies...  :-\ Ich sehe schon die Posts mit ".. Bug seit dem letzte Update..." vor meinen Augen  ;D

Danke fürs Modul und Deine Hilfe
Markus
Edit: Ah, und vielleicht noch die Angabe des polling-intervalls.

Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 08 März 2017, 11:58:43
Zitat von: KölnSolar am 08 März 2017, 11:39:38
Hi Markus,
danke für die Korrektur. Versteh jetzt nur nicht, warum das bei anderen funktionieren konnte  :-\

Dein Perl ist zu weinerlich ;)
Hab den Dumper auch noch eingetragen.


ZitatDie commandref ist gut verständlich. 2 Anmerkungen: Scheinbar hat die von mir gewählte Station keinen CO-Messwert. Vielleicht müsste man da textlich noch etwas mehr drauf eingehen, dass nicht alle Stationen alle Werte liefern und man über stationWert eine abweichende Station eintragen kann, um einen Wert zu erhalten. Gewöhnungsbedürftig ist sicherlich auch, dass im Gegensatz zum üblichen Verhalten, als timestamp nicht das letzte get, sondern der timestamp der Veröffentlichung der Luftdaten anzeigt wird.

Das mit den Stationen steht oben und nochmal in der commandref :)
Timestamps von allen Daten die in irgendwechen externen Quellen mit einem Zeitstempel rumschwirren werden eigentlich immer mit dieser Zeit eingetragen.

Polling ist stündlich. Das werde ich vielleicht noch soweit anpassen dass es immer um XX:30 passiert.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: KölnSolar am 08 März 2017, 12:38:45
ZitatTimestamps von allen Daten die in irgendwechen externen Quellen mit einem Zeitstempel rumschwirren werden eigentlich immer mit dieser Zeit eingetragen.
OK, habe ich nicht. Bin da eher rein event getrieben ;)

Nun fluppts  :-*

Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Frosch am 08 März 2017, 21:36:11
Hallo,

super, auf so ein Modul habe ich auch schon lange gewartet. Momentan beziehe ich die Luftqualitätsdaten wie peterk_de per HTTPMOD aus dem Netz. Ich hole mir die Daten nur von hier: https://www.lanuv.nrw.de/fileadmin/lanuv/luft/immissionen/aktluftqual/eu_luft_akt
Wie das dann bei mir aussieht seht ihr im Anhang.

Merkwürdig ist, dass ich über das Modul von der Station "Bielefeld Ost" nur NO2 und O3 bekomme. Von der Webseite hole ich mir auch noch die PM10 Werte dieser Station. Könnte man www.lanuv.nrw.de noch als weitere Quelle in das Modul aufnehmen?

Ich möchte mit den aktuellen Luftqualitätswerten herausfinden ob das Lüften bzw. einschalten der Wohnraulüftung sinnvoll ist. Daher fände ich einen Vergleich der gemessenen Werte mit den Grenzwerten gut. Eine Idee wäre auch noch das man sich selber Grenzwerte festlegen kann wenn man die offiziellen Grenzwerte noch verschärfen möchte, um dann zum beispiel benachrichtigt zu werden, wenn gerade lieber nicht gelüftet werden sollte oder wie in meinem Fall dann die Wohnraumlüftung abgeschaltet wird.

Gruß Mathias
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: peterk_de am 08 März 2017, 22:19:39
Hmm, FroggyFrog, ich glaube, das für jedes Bundesland einzeln zu machen, das ist 16facher Pflegeaufwand. Zumal die Sachen in jedem Bundesland ja anders bereitgestellt werden.

Mein Beispiel - Sachsen-Anhalt - ist da vielleicht sogar ein typisches: Die haben nur ne Webseite im 90er Jahre-Stil, und - woah! - ne iOS-App. Die hatte ich mir mal mit Wireshark vorgenommen - und jetzt kommt der Brüller - das ist deren "API":

http://www.mu.sachsen-anhalt.de/lau/luesa/tmp/LUESA-APP-json.txt

Immerhin strukturierte Daten, aber alles von allen Messstationen auf einmal. Wer soll so nen Mist in 16fach anderer Ausführung freiwillig aktuell halten? Das läuft doch auf 16 komplett verschiedene Module hinaus. Und will man wirklich für jedes Bundesland ein Modul? Wär zwar das Optimum aber ... hmm. Ich nehm jetzt mangels Zeit, es ordentlich zu machen, mit dem HTTPMOD für die fehlenden Werte einfach von der Webseite und gut. ;-) Vielleicht könnte man ja die entsprechenden URLS/Regexe/XPath-Ausdrücke ja mal im wiki sammeln.

P.S. mein Indoor-PM10 Sensor misst immer deutlich niedrigere Werte als die Station auf der Straße. Danach dürfte ich nie Lüften 😂 Wert geht beim Lüften auch tatsächlich hoch und fällt dann bis zum nächsten mal langsam ab.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: KölnSolar am 12 März 2017, 08:29:50
Hi Markus,
der https://forum.fhem.de/index.php/topic,68875.0.html bzgl. Radioaktivität ist mir eben auf die Füße gefallen. Sinnvoll/Möglich zu implementieren ?

Macht es Sinn Grenzwerte per Modul vorzugeben ? Oder würdest Du da eher den Einsatz von userreadings bevorzugen ?

ZitatTimestamps von allen Daten die in irgendwechen externen Quellen mit einem Zeitstempel rumschwirren werden eigentlich immer mit dieser Zeit eingetragen.
Hab ich ja verstanden  ;) Ist es daher auch "normal", dass man auf der Detailseite bei einer Aktualisierung seitens des internaltimers den timestamp der Aktualisierung sieht, bei einem refresh dann aber den timestamp der Messung ?

Grüße Markus
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 12 März 2017, 11:48:16
Zitat von: KölnSolar am 12 März 2017, 08:29:50
Hi Markus,
der https://forum.fhem.de/index.php/topic,68875.0.html bzgl. Radioaktivität ist mir eben auf die Füße gefallen. Sinnvoll/Möglich zu implementieren ?

In Arbeit :)

ZitatMacht es Sinn Grenzwerte per Modul vorzugeben ? Oder würdest Du da eher den Einsatz von userreadings bevorzugen ?
Userreadings oder was auch immer, lieber nicht im Modul.


ZitatHab ich ja verstanden  ;) Ist es daher auch "normal", dass man auf der Detailseite bei einer Aktualisierung seitens des internaltimers den timestamp der Aktualisierung sieht, bei einem refresh dann aber den timestamp der Messung ?
Nein, das ist eher ein UI-Ding. Hängt glaube ich damit zusammen dass du trotzdem noch ein Event bekommst.
Im Log hast du aber immer die richtigen Timestamps der Messung.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Prof. Dr. Peter Henning am 12 März 2017, 11:51:28
Die Ortsdosisleistung vom Bundesamt für Strahlenschutz bezieht sich ausschließlich auf die Gamma-Strahlung, weil diese am einfachsten zu messen ist. Für Privatpersonen ist die Belastung durch Alpha- und Beta-strahlende Isotope aber der wichtige Faktor, denn diese können inkorporiert werden und damit langfristige Exposition im Innern des Körpers hervorrufen. Sollte es bei einem (extrem unwahrscheinlichen) Reaktorunfall zur Freisetzung von Material kommen, ist genau dieser Niederschlag radioaktiver Isotope die Gefahr - und nicht die Gammastrahlung in ein paar Kilometern Entfernung.

Die Gamma-ODL ist nur ein Indikator für die mittlere langfristige Strahlenexposition der Bevölkerung - es macht mit anderen Worten keinerlei Sinn, hier einen Grenzwert zu definieren und dann ggf. eine Warnung auszulösen.

LG

pah
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: peterk_de am 12 März 2017, 12:17:38
Zitat von: Prof. Dr. Peter Henning am 12 März 2017, 11:51:28
Die Gamma-ODL ist nur ein Indikator für die mittlere langfristige Strahlenexposition der Bevölkerung - es macht mit anderen Worten keinerlei Sinn, hier einen Grenzwert zu definieren und dann ggf. eine Warnung auszulösen.

Als jemand, der davon keine Ahnung hat: Das liest sich auf deren Seiten und in deren FAQ aber 100% anders.

Edit: Siehe https://odlinfo.bfs.de/DE/themen/was-ist-odl/ereignisfall.html
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Prof. Dr. Peter Henning am 12 März 2017, 12:48:42
Also, etwas ausführlicher:

1. Natürlich steigt bei einem radioaktiven Niederschlag auch die Gammastrahlung an, denn bei den meisten Alpha- und Beta-Zerfällen werden auch Gamma-Photonen freigesetzt. Allerdings ist der radioaktive Niederschlag eine sehr stark regionale Sache. Wie man hier sehen kann

https://lh5.googleusercontent.com/-Rvm7CeZn1gw/TYcUk22uBvI/AAAAAAAALAw/eakkVrOpPQ0/s1600/Deutschlandkarte_Caesium_Radioaktivit%25C3%25A4t_Deutschland.gif
https://lh4.googleusercontent.com/-gDV-VxpaYTY/TYcXk1_xRfI/AAAAAAAALA4/xP5RTaUWxPE/s1600/Deutschlandkarte_Radonkarte_2003.gif

oder auf tausenden öffentlicher Karten des Gebietes um Tchernobyl, kann eine solche Belastung durch Radioisotope über kurze Abstände sehr stark variieren.

2. Aus genau diesem Grund betreibt das BfS ja 1800 Messstellen - und natürlich wird man z.B. das Hereintreiben einer solchen radioaktiven Wolke im Gesamtbild sehen. Aber eben nicht notwendigerweise in einer einzelnen Station, oder in einer einzelnen Region.

3. Das BfS betreibt ein extensives Monitoring dieses Gesamtbildes. Daraus lassen sich dann eben Aussagen gewinnen wie "Nukleare Freisetzung in Osteuropa, leichte Erhöhung der Radioaktivität dann und dann dort und dort zu erwarten". Dann wird man erst sehen müssen, um was es sich handelt - könnte z.B. kurzlebiges leichtes Zeug wie Tritium sein. Und erst dann kann man eine sinnvolle Warnung aussprechen.

LG

pah

Ach ja: Ich bin ausgewiesener Kernphysiker. Am 1. Mai 1986 haben wir auf einem Fahrradausflug eine volle Niederschlagsdosis aus Tchernobyl abbekommen - als ich am nächsten Tag vor das Ganzkörperdosimeter meiner Arbeitsstelle getreten bin, hat das ganz schön gerattert. 1989 habe ich dann auch mal als Gastwissenschaftler am Kurchatov-Institut in Moskau gearbeitet. Deren Werbebroschüre zeigte noch 1989 ein Bild des Tchernobyl-Reaktors...
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 12 März 2017, 17:12:19
Zitat von: peterk_de am 12 März 2017, 12:17:38
Als jemand, der davon keine Ahnung hat: Das liest sich auf deren Seiten und in deren FAQ aber 100% anders.

Wenn du deine Bleijalousien automatisch mit FHEM steuern möchtest, kannst du das mit der neuen Version des Moduls probieren.
Viel Spass damit!

Markus
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: peterk_de am 12 März 2017, 17:39:00
Haha, naja, ich teste es auf jeden Fall wieder ;-)

Was ich aus pah's Kommentar (danke dafür!) schließe: Die reinen Messwerte einer Station sind zwar möglicherweise ein Frühindikator, dass es "Rumms" gemacht hat. Aber da die aggregierten Daten aus verschiedenen Stationen ein genaueres Lagebild für den eigenen Standort ergeben, ist es vermutlich (auch wegen Falsch-Positiven Meldungen) sinnvoller, selbst keinen Schwellwert für eine einzelne Messstation zu setzen und dann die Bleijalousien herunterzulassen, sondern sich dafür lieber auf die öffentlichen Katastrophenschutzmeldungen zu verlassen.

Das hab ich schon länger als Handy-App (Nina - funktioniert prima, einmal dadurch schon auf einen Großbrand in der Nähe aufmerksam gemacht worden) und müsste ich jetzt mangels passendem Gegen-Aktor nicht unbedingt auch noch in FHEM haben. Also OK ich könnte dann die Lüftungsempfehlungen aussetzen. Aber ähm ... naja egal. Luftverschmutzung in 100m Entfernung ist alltagsrelevanter.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Prof. Dr. Peter Henning am 12 März 2017, 17:44:15
ZitatBleijalousien

Soso, Blei. Da sieht man mal, welche Folgen die jahrzehntelange ideologische Gehirnwäsche hat  ;)

Alpha-Strahlen (also Heliumkerne) lassen sich durch normale Kunststoffjalousien problemlos abschirmen - vorausgesetzt, diese haben keine Löcher.

Beta-Strahlen (also Elektronen) benötigen zur wirkungsvollen Abschirmung schon mal 2 mm Aluminium. Die Abschirmung kann man  also gerade noch durch Jalousien erledigen.

Gammastrahlen (also Photonen) werden nur geschwächt. Um bei einer Photonen-Energie von 5 MeV auf ein Zehntel der Ausgangsintensität zu kommen, benötigt man eine ca. 5cm dicke Bleischicht. Ein typischer Rolladen von 1,8 m Breite und 1,2 m  Höhe hätte damit eine Masse von ca. 1,22 Tonnen. Wäre bestimmt lustig, den dafür nötigen Rolladenmotor zu sehen.

Merke: Dass man durch Blei vor radioaktiver Strahlung sicher sein kann, ist ein Märchen.

LG

pah
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Prof. Dr. Peter Henning am 12 März 2017, 17:48:14
Zitatsondern sich dafür lieber auf die öffentlichen Katastrophenschutzmeldungen zu verlassen.

Eben, das ist sehr viel sinnvoller. Und bei allem Misstrauen in staatliches Agieren: In den Überwachungszentren sitzen ernsthafte Leute, die mit großer Genauigkeit und hohem Verantwortungsbewusstsein die Lage beobachten.

LG

pah

Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: KölnSolar am 13 März 2017, 09:26:39
Hi Markus,
mein Perl ist wieder weinerlich  :'(. Es kennt die encode_utf8 nicht. Ich finde auch kein Paket, welches ich nachinstallieren könnte   :-[
Vermutlich schirmt der Bleimantel zu stark ab  ;D
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 13 März 2017, 09:33:21
Zitat von: KölnSolar am 13 März 2017, 09:26:39
Hi Markus,
mein Perl ist wieder weinerlich  :'(. Es kennt die encode_utf8 nicht. Ich finde auch kein Paket, welches ich nachinstallieren könnte   :-[
Vermutlich schirmt der Bleimantel zu stark ab  ;D

Fixed.
Ebenso wie der Crash aus der ersten Version von gestern, falls mal kein JSON ankommt.

Events für Strahlung gibt es übrigens ab dieser Version nicht mehr, wenn der Wert als unsicher gekennzeichnet ist.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: KölnSolar am 13 März 2017, 10:45:56
läuft  :-*
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: jnewton957 am 13 März 2017, 20:39:42
Hallo Markus,

das Modul läuft bei mir ja jetzt schon einige Tage.

Als Tipp für die Nutzer empfehle ich die Nutzung des Attributes showTimeReadings 1
Hintergrund ist, dass die Werte des UBA nicht regelmäßig für alle Stationen ein update bekommen. Auch nachts "schlafen" einige Stationen und die Werte werden morgens nachgeliefert. Man braucht also die Zusatzinformation von wann jeweils der Wert ist.

Ich hatte das Thema airquality auf dem Kölner Usertreffen mit KölnSolar diskutiert.
Es geht beim Modul nicht vordergründig um den "absoluten" Wert. Ob der 1, 50 oder 100 ist, können wir ja nicht mit einer Bewertung versehen.
Aber das UBA hat 11 Grenzwerte pro Luftschadstoff. Es ist also jeweils die Farbgebung der Werte aussagekräftig. Wie weit bin ich von Grenzwerte entfernt. Bin ich blau, hellblau oder schon hellgelb (schönes Wortspiel).

Ich habe das mal in ein Tablet UI umgesetzt.
Anbei meine aktuelle Version (mit Platz für mehr Werte).
Ich habe auch den Air_Quality Wert aus dem Netatmo_Forecast von Citeair noch eingefügt.

Für die Darstellung mache (suche) ich noch eine Möglichkeit, die 11 Grenzwerte quasi als Kopfzeile anzeigen zu lassen. So sehe ich, wie weit ich vom nächsten Grenzwerte mit Farbwechsel entfernt bin.

Nochmals vielen Dank Markus für die schnelle und tolle Arbeit des Moduls.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Octopus180 am 13 März 2017, 21:57:55
Hallo jnewton957

Wärst du so nett und würdest deine HTML zu Verfügung stellen. Sie sieht sehr interessant aus.

Danke
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Florian_GT am 13 März 2017, 23:37:54
Sehr cooles Module: Vielen Dank!

Ich bekomme zwar alle Readings, kann jedoch keine der Daten in der DBLog finden.

Die werden normalerweise von allen Devices erfasst:
define DbLog DbLog ./conf/db.conf .*
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 14 März 2017, 09:11:45
Zitat von: afloria am 13 März 2017, 23:37:54
Ich bekomme zwar alle Readings, kann jedoch keine der Daten in der DBLog finden.

DbLog_splitFn Init vergessen - Oops...
Und der ODL Key ändert sich auch jeden Tag.
Das plus verbessertes Fehlerhandling im ersten Post.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Gisbert am 14 März 2017, 21:00:36
Hallo Markus,

es gibt das Attribut stationRadiation.
Wie bekomme Daten von einer Messstelle, z.B. von dieser: 50737 Köln-Weidenpesch ?
https://odlinfo.bfs.de/DE/aktuelles/messstelle/053150002.html (https://odlinfo.bfs.de/DE/aktuelles/messstelle/053150002.html)

Mit attr <name> stationRadiation 053150002 funktioniert es nicht.

Viele Grüße Gisbert

Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: KölnSolar am 15 März 2017, 06:33:35
Hallo Gisbert,
auch wenn Du den anderen Markus ansprachst  ;)
Probier es immer mal wieder mit einem get data. Irgendwie scheint es öfter Probleme mit der Datenbereitstellung zu geben. Manchmal werden dann Daten von mehreren Messzeitpunkten auf einmal abgeholt.
Die Id sollte passen. Hab ich mir gerade nochmal angesehen. Du hast die aktuellste Version(ich glaub von gestern oder vorgestern) des Moduls ?
Grüße Markus
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Gisbert am 15 März 2017, 08:05:52
Hallo Markus aus dem sonnigen Köln (letzteres ist häufig ein Widerspruch),
es ist genauso, wie du es beschrieben hast. Es tauchen Daten mit verschiedenen Zeitstempeln auf, die alle in einem Rutsch im Logfile stehen.
Das Modul ist das aktuelle von gestern.

@Markus (Modulentwickler),
es gibt wohl die Möglichkeit updates in GitHub einzustellen, die auch beim update in Fhem geladen werden. Ich glaube, dass man in Fhem den Pfad hinterlegen muss, und update all ausführen muss. Dieser Prozess würde das manuelle Suchen, Herunterladen, Verschieben und Ändern der Nutzerrechte der Datei vermeiden.

Viele Grüße Gisbert
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 15 März 2017, 15:52:22
Die Daten kommen tatsächlich ab und an nicht regelmäßig. Das ist also leider normal.
Der Key für die ODL Daten wechselt übrigens scheinbar  mehrmals am Tag.

Das Modul kommt nach der Testphase ins reguläre Update. Vorher will ich aber erst mal die gröbsten Probleme beseitigen.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Brice am 15 März 2017, 16:40:23
Danke für das Modul. Läuft hier seit 3 Tagen. Die Abfrage der Daten erfolgt regelmäßig, die Bereitstellung jedoch nicht:

2017.03.15 09:16:55 3: Received 2 values for CO from after 2017-03-15 06:30:00
2017.03.15 09:16:55 3: Received 9 values for SO2 from after 2017-03-14 21:30:00
2017.03.15 09:16:55 3: Received 2 values for O3 from after 2017-03-15 06:30:00
2017.03.15 09:16:55 3: Received 0 values for PM10 from after 2017-03-15 06:30:00
2017.03.15 09:16:55 3: Received 11 values for NO2 from after 2017-03-14 21:30:00


Die nächste Messstation ist ca. 800 m Luftlinie entfernt :)
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 16 März 2017, 16:34:44
Loglevel Updates und verbessertes Key-Handling für ODL Daten.
Update im ersten Post.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Florian_GT am 17 März 2017, 21:06:04
Wie wärs mit einem GIT Repository?
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 17 März 2017, 21:08:06
Wie wärs stattdessen mit einem offiziellen Modul?
Das hier ist nur als Beta Phase gedacht.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: KölnSolar am 17 März 2017, 21:18:30
Hi Markus,
hab gerade mal wieder auf das device geguckt und musste dann auch mal einen Blick ins Log werfen. Gestern um 23:58 gab es Fehler beim Auslesen der Daten. 10 min später, also nicht im normalen Leserythmus, erneuter Versuch mit Fehler. Seitdem war Ruhe im Log, aber eben auch keine Daten  :'( Einmal manuell mit get angestoßen und es läuft wieder.
Ich denke der Logauszug bringt Dir wenig. Brauchst Du sonstige Infos ?

Edit: Gerade fiel mir das Wesentlichste ein: Meinem Test-Raspi wird um 23:30 die Inet-Verbindung gekappt !!! und kommt erst um 6 wieder. Dann scheint es aber wegen der 2 Fehlversuche keinen internaltimer mehr zu geben, der erst durch das erneute get wieder angelegt wird.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 17 März 2017, 21:29:58
Zitat von: KölnSolar am 17 März 2017, 21:18:30
Ich denke der Logauszug bringt Dir wenig. Brauchst Du sonstige Infos ?

Falsch gedacht, hätte gerne die Art des Fehlers gewusst.


ZitatEdit: Gerade fiel mir das Wesentlichste ein: Meinem Test-Raspi wird um 23:30 die Inet-Verbindung gekappt !!! und kommt erst um 6 wieder. Dann scheint es aber wegen der 2 Fehlversuche keinen internaltimer mehr zu geben, der erst durch das erneute get wieder angelegt wird.

Neue Version im ersten Post.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: moskito am 17 März 2017, 21:35:11
Und noch eine Kleinigkeit:
In der commandref steht als Überschrift noch "allergy".

Ansonsten läuft das Modul bei mir bestens.

Gruß
Danny
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: KölnSolar am 17 März 2017, 21:54:48
Du bist hier der Chef  ;D
2017.03.16 23:57:56 3: Getting CO data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=CO&scope[]=8SMW&station[]=DENW059&group[]=pollutant&range[]=1489617000,1489701600
2017.03.16 23:58:36 1: Umwelt: URL error for CO from 1489615200: gethostbyname www.umweltbundesamt.de failed
2017.03.16 23:58:36 3: Getting NO2 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=NO2&scope[]=1SMW&station[]=DENW059&group[]=pollutant&range[]=1489696200,1489705076
2017.03.16 23:59:16 1: Umwelt: URL error for NO2 from 1489694400: gethostbyname www.umweltbundesamt.de failed
2017.03.16 23:59:16 3: Getting O3 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=O3&scope[]=1SMW&station[]=DENW059&group[]=pollutant&range[]=1489696200,1489705076
2017.03.16 23:59:56 1: Umwelt: URL error for O3 from 1489694400: gethostbyname www.umweltbundesamt.de failed
2017.03.16 23:59:56 3: Getting PM10 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=PM10&scope[]=1SMW&station[]=DENW059&group[]=pollutant&range[]=1489696200,1489705076
2017.03.17 00:00:36 1: Umwelt: URL error for PM10 from 1489694400: gethostbyname www.umweltbundesamt.de failed
2017.03.17 00:00:36 3: Getting SO2 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=SO2&scope[]=1SMW&station[]=DENW059&group[]=pollutant&range[]=1489696200,1489705076
2017.03.17 00:01:16 1: Umwelt: URL error for SO2 from 1489694400: gethostbyname www.umweltbundesamt.de failed
2017.03.17 00:01:16 3: Umwelt: Refreshing ODL key
2017.03.17 00:01:56 1: Umwelt: ODL key call failed! gethostbyname odlinfo.bfs.de failed
2017.03.17 00:01:56 3: Umwelt: Refreshing ODL key
2017.03.17 00:02:16 1: Umwelt: ODL key call failed! http://odlinfo.bfs.de/DE/themen/wo-stehen-die-sonden/messstellen-in-deutschland.html: Can't connect(1) to http://odlinfo.bfs.de:80: IO::Socket::INET: Bad hostname 'odlinfo.bfs.de:80'
2017.03.17 00:02:16 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/60_airquality.pm line 636.
2017.03.17 00:02:16 3: Getting ODL data from URL: http://odlinfo.bfs.de/json/053620281ct.json
2017.03.17 00:02:57 1: Umwelt: URL error for ODL: gethostbyname odlinfo.bfs.de failed
2017.03.17 00:02:57 3: Umwelt: Refreshing ODL key
2017.03.17 00:03:17 1: Umwelt: ODL key call failed! http://odlinfo.bfs.de/DE/themen/wo-stehen-die-sonden/messstellen-in-deutschland.html: Can't connect(1) to http://odlinfo.bfs.de:80: IO::Socket::INET: Bad hostname 'odlinfo.bfs.de:80'
2017.03.17 00:03:17 3: Getting ODL data from URL: http://odlinfo.bfs.de/json/053620281ct.json
2017.03.17 00:03:57 1: Umwelt: URL error for ODL: gethostbyname odlinfo.bfs.de failed
2017.03.17 00:08:36 3: Getting CO data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=CO&scope[]=8SMW&station[]=DENW059&group[]=pollutant&range[]=1489620600,1489705200
2017.03.17 00:09:16 1: Umwelt: URL error for CO from 1489618800: gethostbyname www.umweltbundesamt.de failed
2017.03.17 00:09:16 3: Getting NO2 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=NO2&scope[]=1SMW&station[]=DENW059&group[]=pollutant&range[]=1489696200,1489705716
2017.03.17 00:09:56 1: Umwelt: URL error for NO2 from 1489694400: gethostbyname www.umweltbundesamt.de failed
2017.03.17 00:09:56 3: Getting O3 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=O3&scope[]=1SMW&station[]=DENW059&group[]=pollutant&range[]=1489696200,1489705716
2017.03.17 00:10:36 1: Umwelt: URL error for O3 from 1489694400: gethostbyname www.umweltbundesamt.de failed
2017.03.17 00:10:36 3: Getting PM10 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=PM10&scope[]=1SMW&station[]=DENW059&group[]=pollutant&range[]=1489696200,1489705716
2017.03.17 00:11:16 1: Umwelt: URL error for PM10 from 1489694400: gethostbyname www.umweltbundesamt.de failed
2017.03.17 00:11:16 3: Getting SO2 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=SO2&scope[]=1SMW&station[]=DENW059&group[]=pollutant&range[]=1489696200,1489705716
2017.03.17 00:11:56 1: Umwelt: URL error for SO2 from 1489694400: gethostbyname www.umweltbundesamt.de failed
2017.03.17 21:13:33 3: Getting CO data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=CO&scope[]=8SMW&station[]=DENW059&group[]=pollutant&range[]=1489696200,1489780800
2017.03.17 21:13:33 3: Getting NO2 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=NO2&scope[]=1SMW&station[]=DENW059&group[]=pollutant&range[]=1489696200,1489780800
2017.03.17 21:13:33 3: Getting O3 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=O3&scope[]=1SMW&station[]=DENW059&group[]=pollutant&range[]=1489696200,1489780800
2017.03.17 21:13:33 3: Getting PM10 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=PM10&scope[]=1SMW&station[]=DENW059&group[]=pollutant&range[]=1489696200,1489780800
2017.03.17 21:13:33 3: Getting SO2 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=SO2&scope[]=1SMW&station[]=DENW059&group[]=pollutant&range[]=1489696200,1489780800
2017.03.17 21:13:33 3: Umwelt: Refreshing ODL key
2017.03.17 21:13:33 3: Getting ODL data from URL: http://odlinfo.bfs.de/json30d402268e9341250a45ca0fa27aeee3/053620281ct.json
2017.03.17 21:13:34 2: Received 24 values for radiation
2017.03.17 21:13:35 2: Received 14 values for O3 from after 2017-03-16 21:30:00
2017.03.17 21:13:35 2: Received 21 values for SO2 from after 2017-03-16 21:30:00
2017.03.17 21:13:36 2: Received 20 values for NO2 from after 2017-03-16 21:30:00
2017.03.17 21:13:36 2: Received 0 values for CO from after 2017-03-16 21:30:00
2017.03.17 21:13:36 2: Received 21 values for PM10 from after 2017-03-16 21:30:00
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 17 März 2017, 23:02:49
Danke, nochmal ne Version :)
ODL bekommt damit wahrscheinlich ohne Internet-Verbindung irgendwann keinen Timer mehr, sollte aber von den Luftdaten morgens wieder mit gestartet werden.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: KölnSolar am 19 März 2017, 10:33:48
Hallo Markus,
prinzipiell klappt das nun mit den Daten trotz nächtlich gekappter Inet-Verbindung. Edit: ODL Daten bleiben aber aus  :(

Jetzt ist mir nur an meinem Plot etwas unschönes augefallen(siehe Anhang). Ich hab mir ja einfache Userreadings gemacht, die mir relativ zum festen Grenzwert einen Prozentsatz liefern:

attr Umwelt userReadings relPM10:PM10.* { (ReadingsVal($name, "PM10",  0) / 50 - 1 ) * 100 . " %"}, relNO2:NO2.* {(ReadingsVal($name, "NO2",  0) / 200 - 1 ) * 100 . " %"}, relO3:O3.* {(ReadingsVal($name, "O3",  0) / 120 - 1 ) * 100 . " %"}


Die kriegen jetzt logischerweise den timestamp des Auslesezeitpunkts und nicht Messzeitpunkt  >:( Führt dann neben fehlenden Daten(das wäre aber nicht so schlimm) zu der unschönen Erscheinung in meinem Plot, da ja nun krass unterschiedliche Daten zum auch "falschen" timestamp im Log gespeichert werden.

Eine Idee ?
Schönen Sonntag
Markus
Edit wg. Rückmeldung zu ODL Daten
Edit2: um 13 Uhr kamen sie dann doch wieder. Im Log sieht man, dass der internaltimer periodisch läuft, aber "received 0 values for radiation"
Edit3: heute nacht hats mir dann FHEM aufgehangen ; fhemweb-Zugriff nicht möglich, fhem stop nicht mehr möglich, hohe CPU-Last, Log proppenvoll, Bsp.
2017.03.20 02:23:28 3: Getting CO data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=CO&scope[]=8SMW&station[]=DENW059&group[]=pollutant&range[]=1489887000,1489971600
2017.03.20 02:23:28 1: Umwelt: URL error for CO from 1489885200: gethostbyname www.umweltbundesamt.de failed
2017.03.20 02:23:28 3: Getting NO2 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=NO2&scope[]=1SMW&station[]=DENW059&group[]=pollutant&range[]=1489955400,1489973008
2017.03.20 02:23:28 1: Umwelt: URL error for NO2 from 1489953600: gethostbyname www.umweltbundesamt.de failed
2017.03.20 02:23:28 3: Getting O3 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=O3&scope[]=1SMW&station[]=DENW059&group[]=pollutant&range[]=1489955400,1489973008
2017.03.20 02:23:28 1: Umwelt: URL error for O3 from 1489953600: gethostbyname www.umweltbundesamt.de failed

Ich glaub aber, dass heut morgen viel mehr passierte. Hab nur leider das Log wg. seiner riesen Größe editiert  :-[
Edit4: Der Neustart hat nun dazu geführt, dass mein Plot nicht mehr funktioniert. Es liegt an den 60(rückwirkend bis 17.3. 17:00) Altwerten für radiation. Nehme ich die raus, sind die Plots OK. Komisch finde ich aber auch, dass bei jeder Abfrage wieder massenhafte Altdaten ausgelesen werden.
2017.03.20 09:09:18 3: Umwelt: Refreshing ODL key
2017.03.20 09:09:18 3: Getting ODL data from URL: http://odlinfo.bfs.de/json15d41d37b75b6dab1d7ceb440bf80320/053620281ct.json
2017.03.20 09:09:21 2: Received 60 values for radiation
2017.03.20 09:09:21 2: Received 22 values for NO2 from after 2017-03-17 21:30:00
2017.03.20 09:09:22 2: Received 22 values for O3 from after 2017-03-17 21:30:00
2017.03.20 09:09:22 2: Received 17 values for SO2 from after 2017-03-17 21:30:00
2017.03.20 09:09:22 2: Received 23 values for PM10 from after 2017-03-17 21:30:00
2017.03.20 09:09:22 2: Received 0 values for CO from after 2017-03-19 09:30:00
2017.03.20 10:09:22 3: Getting CO data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=CO&scope[]=8SMW&station[]=DENW059&group[]=pollutant&range[]=1489915800,1490000400
2017.03.20 10:09:22 3: Getting NO2 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=NO2&scope[]=1SMW&station[]=DENW059&group[]=pollutant&range[]=1489865400,1489950000
2017.03.20 10:09:22 3: Getting O3 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=O3&scope[]=1SMW&station[]=DENW059&group[]=pollutant&range[]=1489865400,1489950000
2017.03.20 10:09:22 3: Getting PM10 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=PM10&scope[]=1SMW&station[]=DENW059&group[]=pollutant&range[]=1489865400,1489950000
2017.03.20 10:09:22 3: Getting SO2 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=SO2&scope[]=1SMW&station[]=DENW059&group[]=pollutant&range[]=1489851000,1489935600
2017.03.20 10:09:22 3: Getting ODL data from URL: http://odlinfo.bfs.de/json15d41d37b75b6dab1d7ceb440bf80320/053620281ct.json
2017.03.20 10:09:23 2: Received 0 values for radiation
2017.03.20 10:09:23 2: Received 23 values for PM10 from after 2017-03-18 20:30:00
2017.03.20 10:09:23 2: Received 12 values for SO2 from after 2017-03-18 16:30:00
2017.03.20 10:09:24 2: Received 22 values for NO2 from after 2017-03-18 20:30:00
2017.03.20 10:09:24 2: Received 22 values for O3 from after 2017-03-18 20:30:00
2017.03.20 10:09:24 2: Received 0 values for CO from after 2017-03-19 10:30:00
2017.03.20 11:09:24 3: Getting CO data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=CO&scope[]=8SMW&station[]=DENW059&group[]=pollutant&range[]=1489919400,1490004000
2017.03.20 11:09:24 3: Getting NO2 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=NO2&scope[]=1SMW&station[]=DENW059&group[]=pollutant&range[]=1489948200,1490004564
2017.03.20 11:09:24 3: Getting O3 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=O3&scope[]=1SMW&station[]=DENW059&group[]=pollutant&range[]=1489948200,1490004564
2017.03.20 11:09:24 3: Getting PM10 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=PM10&scope[]=1SMW&station[]=DENW059&group[]=pollutant&range[]=1489948200,1490004564
2017.03.20 11:09:24 3: Getting SO2 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=SO2&scope[]=1SMW&station[]=DENW059&group[]=pollutant&range[]=1489933800,1490004564
2017.03.20 11:09:24 3: Getting ODL data from URL: http://odlinfo.bfs.de/json15d41d37b75b6dab1d7ceb440bf80320/053620281ct.json
2017.03.20 11:09:24 2: Received 0 values for radiation
2017.03.20 11:09:25 2: Received 13 values for O3 from after 2017-03-19 19:30:00
2017.03.20 11:09:25 2: Received 14 values for PM10 from after 2017-03-19 19:30:00
2017.03.20 11:09:25 2: Received 11 values for NO2 from after 2017-03-19 19:30:00
2017.03.20 11:09:25 2: Received 0 values for CO from after 2017-03-19 11:30:00
2017.03.20 11:09:25 2: Received 13 values for SO2 from after 2017-03-19 15:30:00

Zumindest die massenhafte Abfrage wird ein wenig klarer für mich. In der letzten fhem.save waren setstates vom 17.3. 16:Uhr, so dass airquality dort nach dem FHEM-Neustart aufgesetzt hat. Versteh grad nur nicht, warum um 23:59 kein automatischer save gemacht wurde, wie auf meinem Produktivsystem. Aber das ist OT und andere Baustelle  :(
Edit5: Den save macht das statistics_modul. War mir vorher nicht klar. Ich hab aber jetzt den Zeitpunkt des Absturzes näher analysieren können. Nachdem die Inet-Verbindung zurückkehrt, kann airquality trotz einer Verbindung keine Daten mehr lesen. Versucht es aber im Abstand von ca. 250ms unentwegt und müllt das Log entsprechend zu  :( Nach einem manuellen get ist dann Ruhe.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 22 März 2017, 18:37:38
DNS Probleme plus Timer-Kaskade. Unschön...
Probier mal die neue Version.
Darin kann man auch einen persönlichen API Key angeben, wenn man sowas hat.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: KölnSolar am 22 März 2017, 19:44:32
Ja dann schaun wir mal. Gestern hatte ich tagsüber die Inet-Verbindung gekappt und nach Wiederherstellung hatte ich nach ein paar Stunden 426 MB im Log  :o
Hast Du schon eine Idee, ob und wie das mit den timestamps von userReadings zum Messzeitpunkt hinhauen könnte ?

Zitatpersönlichen API Key
Ägypten  ??? Was ist das und was kann das  :-[
Grüße Markus
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: RaspiLED am 22 März 2017, 20:15:21
Hi Markus,
lies mal die Box rechts oben zu fhem 5.8!
https://forum.fhem.de/index.php/topic,67419.0.html
Gruß Arnd


Raspi2 mit FHEM, CUL, Signalduino, MySensors, HomeBridge, Presence, Bravia, ...
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 22 März 2017, 20:37:07
Falsch, hat damit rein gar nichts zu tun.
Wenn du nicht weisst was es ist, brauchst du es auch nicht.
Im anderen Thread hatte sich jemand bei der BfS Seite registriert und bekommt damit eventuell einen persönlichen Key für die Strahlungsdaten.


ZitatHast Du schon eine Idee, ob und wie das mit den timestamps von userReadings zum Messzeitpunkt hinhauen könnte ?
Nein, das funktioniert nicht.

Wenn du deine Internetverbindung mutwillig deaktivierst, solltest du übrigens vorher alle Module deaktivieren die darauf angewiesen sind.
Das hier sollte sich jetzt wenigstens einigermaßen benehmen.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: KölnSolar am 22 März 2017, 20:56:01
Arnd, Du solltest mich doch mittlerweile besser kennen  ;)

ZitatNein, das funktioniert nicht.
:'( :'( :'( Du "manipulierst" doch auch den timestamp der Readings. Das müsste man doch dann auch in einer Routine in den userReadings machen können(die Hoffnung stirbt zuletzt)
ZitatWenn du deine Internetverbindung mutwillig deaktivierst, solltest du übrigens vorher alle Module deaktivieren die darauf angewiesen sind.
Ja da hast Du schon recht. Ist ja auch nur bei meinem Testsystem. Nur, produktiv kann es ja auch mal ausfallen  :'(
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 22 März 2017, 21:06:14
Zitat von: KölnSolar am 22 März 2017, 20:56:01
Arnd, Du solltest mich doch mittlerweile besser kennen  ;)
:'( :'( :'( Du "manipulierst" doch auch den timestamp der Readings. Das müsste man doch dann auch in einer Routine in den userReadings machen können(die Hoffnung stirbt zuletzt)Ja da hast Du schon recht. Ist ja auch nur bei meinem Testsystem. Nur, produktiv kann es ja auch mal ausfallen  :'(

Wenn du die UserReadings Routine anpassen möchtest, dann schon.
Wenn ein Patch dabei rauskommt umso besser, vielleicht stösst er auf allgemeines Interesse.

Internet kann ausfallen, darauf teste ich aber nicht. Zumindest nicht bis es ausfällt.
Das Leben ist zu kurz für Testsysteme ;)
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: KölnSolar am 22 März 2017, 21:16:19
ZitatWenn ein Patch dabei rauskommt umso besser, vielleicht stösst er auf allgemeines Interesse.
Da überschätzt Du meine Perl-Fähigkeiten  ;)
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: RaspiLED am 22 März 2017, 22:30:49
Hi Jungs,
Ja ihr habt ja Recht. So ist das halt, wenn man die Beiträge nur schnell scannt [emoji6]Sorry!

Dennoch kurz die Erläuterung zum ApiKey. Es gibt Webseiten die sollen komerziell Daten bereitstellen. Und gleichzeitig andere oder seltener Daten zur freien Verfügung rausgeben. Dann hilft man sich häufig mit ApiKeys, also Schlüsseln um Daten in unterschiedlicher Qualität/Häufigkeit freizuschalten. API=ApplikationsInterface - Key=Schlüssel
Z.B. Bei der ESP8266 Wetterstation und der Webseite WeatherUnderground braucht auch jede Person einen eigenen ApiKey ;-) Umsonst nur ein Gerät ungefähr alle 10 Minuten. Unbegrenzt (also z.B. 10.000 Geräte alle 10 Minuten) mehrere Tausend Euro im Jahr.
Gruß Arnd


Raspi2 mit FHEM, CUL, Signalduino, MySensors, HomeBridge, Presence, Bravia, ...
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: KölnSolar am 23 März 2017, 16:17:14
wenn es nicht nur einfach Zufall ist, dann sieht es jetzt gut aus. Kein Datenmüll, sondern nur die üblichen stündlichen Abfrageversuche.
Grüße Markus
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Gisbert am 06 April 2017, 09:11:17
Hallo,

seit 1. April, 2:00 bekomme ich keine neueren Daten, d.h. der letzte Eintrag hat den Zeitstempel 1. April 2:00.
Auf der Homepage http://www.umweltbundesamt.de/daten/luftbelastung/aktuelle-luftdaten#/stations (http://www.umweltbundesamt.de/daten/luftbelastung/aktuelle-luftdaten#/stations) gibt es aktuelle Daten.
Ich habe auch mal die Station gewechselt, ohne Änderung.

In /opt/fhem/FHEM ist die 60_airquality.pm bei mir mit Datum 18.03.2017 08:52 gespeichert.

Internals:
Internals:
   CFGFN      ./FHEM/WetterdatenSensorenInternet.cfg
   DEF        DENW355
   NAME       Luftqualitaet
   NR         60
   POLLUTION  Leverkusen Gustav-Heinemann-Str.
   RADIATION  Köln-Weidenpesch
   STATE      Feinstaub 27 µg/m³<br/>Ozon 41 µg/m³<br/>NO<sub>2</sub> 63 µg/m³<br/>Radioaktivität 0.09 µSv/h
   TYPE       airquality
   Readings:
     2017-04-01 02:00:00   NO2             63
     2017-04-01 02:00:00   O3              41
     2017-04-01 02:00:00   PM10            27
     2017-04-06 05:00:00   radiation_cosmic 0.041
     2017-04-06 05:00:00   radiation_terrestrial 0.049
     2017-04-06 05:00:00   radiation_total 0.09
   Helper:
     INTERVAL   3600
     ODLKey     154ac9a1d2b2c195b1b529cd34b8c38e
     STATION    DENW355
Attributes:
   group      Wetter
   icon       weather_cloudy_light
   pollutants NO2,O3,PM10,SO2
   stateFormat Feinstaub PM10 µg/m³<br/>Ozon O3 µg/m³<br/>NO<sub>2</sub> NO2 µg/m³<br/>Radioaktivität radiation_total µSv/h
   stationO3  DENW079
   stationRadiation 053150002


Logfile nach "get data":
2017.04.06 09:09:18 3: Getting NO2 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=NO2&scope[]=1SMW&station[]=DENW355&group[]=pollutant&range[]=1491006600,1491091200
2017.04.06 09:09:18 3: Getting O3 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=O3&scope[]=1SMW&station[]=DENW079&group[]=pollutant&range[]=1491006600,1491091200
2017.04.06 09:09:18 3: Getting PM10 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=PM10&scope[]=1SMW&station[]=DENW355&group[]=pollutant&range[]=1491006600,1491091200
2017.04.06 09:09:18 3: Getting SO2 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=SO2&scope[]=1SMW&station[]=DENW355&group[]=pollutant&range[]=1491377400,1491462000
2017.04.06 09:09:18 3: Getting ODL data from URL: http://odlinfo.bfs.de/json154ac9a1d2b2c195b1b529cd34b8c38e/053150002ct.json
2017.04.06 09:09:18 2: Received 0 values for NO2 from after 2017-04-01 02:30:00
2017.04.06 09:09:18 2: Received 0 values for O3 from after 2017-04-01 02:30:00
2017.04.06 09:09:18 2: Received 0 values for PM10 from after 2017-04-01 02:30:00
2017.04.06 09:09:18 2: Received 0 values for SO2 from after 2017-04-05 09:30:00
2017.04.06 09:09:18 2: Received 0 values for radiation


Wie bekomme ich neue Daten?

Viele Grüße Gisbert
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: KölnSolar am 06 April 2017, 11:47:59
geht mir auch so  :'( Ich hatte bis dato daran gedacht, dass es mit meiner Station zusammenhängt, die keine Daten mehr liefert. Hab jetzt aber geguckt: tut es nicht.

Es hängt wohl damit zusammen, dass es am 1.4. keine Daten gab und da bleibt airquality dann hängen, weil das letzte Datum wieder als Aufsetzzeitpunkt genommen wird.

Du hast 2 Workarounds: Löschen des devices und shutdown/restart(getestet und funktioniert). Oder shutdown, bearbeiten der fhem.save(Datum 2.4.) und restart. damit sollten auch historische Daten ab 2.4. kommen(ungetestet, weil für mich uninteressant).
Grüße Markus
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 06 April 2017, 12:24:47
Argh, so ein Bullshit auch noch!
Ab welchem Alter soll ich historische Daten ignorieren wenn es eine Lücke gibt?
Sind 24h ok?
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: KölnSolar am 06 April 2017, 15:35:51
ich denke das passt.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Gisbert am 06 April 2017, 19:04:50
Hallo KölnSolar,
der 1. Workaround funktioniert; ist aber keine Dauerlösung. Ich bin mit jeder Lösung zufrieden, die wieder automatisch neue Daten liefert.
Insofern ist eine Lücke bei den historischen Daten nicht so schlimm; meistens schaut man sich die Voreinstellung mit einem Tag an.

Hallo Markus,
vielen Dank und viel Erfolg bei der Änderung.
Das Modul 60_airquality.pm ist ja noch kein offizielles Fhem-Modul. Enthält die neueste Version im ersten Beitrag
Zitat« Letzte Änderung: Heute um 17:53:43 von Markus M. »
bereits die hier genannten Änderungen?

Viele Grüße Gisbert
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 06 April 2017, 19:11:10
Zitat von: Gisbert am 06 April 2017, 19:04:50
Enthält die neueste Version im ersten Beitrag  bereits die hier genannten Änderungen?

Ja, wenn >24h keine Daten kommen werden jeweils nur noch die letzten 24h abgerufen.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Ralf W. am 07 April 2017, 11:48:32
Hallo,

erst einmal Danke für das Modul. Funktionierte sofort.

Wie geht es jetzt weiter mit den ODL-Daten? Ich habe das jetzt zwar mit einem apiKey gelöst und bekomme auch Daten. Aber richtig wäre ja der Zugang über https://<LOGIN>:<PASS>@odlinfo.bfs.de/daten/json/<STATION-ID>.json.

MfG
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 07 April 2017, 11:59:21
Zitat von: Ralf W. am 07 April 2017, 11:48:32
Wie geht es jetzt weiter mit den ODL-Daten? Ich habe das jetzt zwar mit einem apiKey gelöst und bekomme auch Daten. Aber richtig wäre ja der Zugang über https://<LOGIN>:<PASS>@odlinfo.bfs.de/daten/json/<STATION-ID>.json.

Noch nicht dazu gekommen.
Bekommst du was unter https://<LOGIN>:<PASS>@odlinfo.bfs.de/daten/json/<STATION-ID>ct.json ?
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Ralf W. am 07 April 2017, 14:02:11
Zitat von: Markus M. am 07 April 2017, 11:59:21
Bekommst du was unter https://<LOGIN>:<PASS>@odlinfo.bfs.de/daten/json/<STATION-ID>ct.json ?

Ja, erst kommt ein Fenster, das mit "Ja" zu bestätigen ist, dann kommen die Daten. Brauchst Du die Daten?

MfG
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 07 April 2017, 14:57:47
Zitat von: Ralf W. am 07 April 2017, 14:02:11
Ja, erst kommt ein Fenster, das mit "Ja" zu bestätigen ist, dann kommen die Daten. Brauchst Du die Daten?

Die Meldung ist von deinem Browser, ob du den Login verwenden willst?

Wenn ein einzelnes Attribut mit noch unverschlüsselten User:Pass erst mal reicht, kannst du heute abend vielleicht noch testen :)
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Ralf W. am 07 April 2017, 15:52:57
Hallo Markus,

ja, das kommt vom Browser. Aber nur einmalig.

wget rennt:
ralf@yoda:/tmp$ wget https://XXXXX:XXXXX@odlinfo.bfs.de/daten/json/055620080ct.json
--2017-04-07 15:47:00--  https://XXXXX:*XXXXX*@odlinfo.bfs.de/daten/json/055620080ct.json
Auflösen des Hostnamen »odlinfo.bfs.de (odlinfo.bfs.de)«... 194.94.69.74
Verbindungsaufbau zu odlinfo.bfs.de (odlinfo.bfs.de)|194.94.69.74|:443... verbunden.
HTTP-Anforderung gesendet, warte auf Antwort... 401 Unauthorized
Authentifizierung ausgewählt: Basic realm="BfS ODL-Info Downloadbereich"
Wiederverwendung der bestehenden Verbindung zu odlinfo.bfs.de:443.
HTTP-Anforderung gesendet, warte auf Antwort... 200 OK
Länge: 22174 (22K) [application/json]
In »»055620080ct.json«« speichern.

055620080ct.json              100%[=================================================>]  21,65K  --.-KB/s    in 0,02s   

2017-04-07 15:47:00 (1,04 MB/s) - »055620080ct.json« gespeichert [22174/22174]


MfG

Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 07 April 2017, 17:20:45
Zitat von: Ralf W. am 07 April 2017, 15:52:57
wget rennt

Dann probier mal ob das Modul das auch tut.
username:password kommt in's Attribut userPassODL
Danach bitte neu starten und mal das Log mit verbose 4 (oder höher) beobachten.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: KölnSolar am 07 April 2017, 22:48:19
Hi Markus,
wenn ich es richtig in Erinnerung habe, sollten doch Logmeldungen zum "normalen Verhalten" mit Level 3 geloggt werden, oder ? Hab airquality jetzt in meinem Prod.system laufen und da find ich die Meldungen bei generellem verbose 2 unschön/überflüssig.
ZitatSkipping missing readings before 2017-04-06 11:31:49
kommt jetzt auch regelmäßig mit level 2. Wenn es nicht zu aufwändig in der Umsetzung ist, sollte die aus meiner Sicht nur kommen, wenn wirklich Zeiträume übersprungen werden, dann aber gerne als level 2  ;)
Grüße Markus
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Ralf W. am 08 April 2017, 01:01:51
Zitat von: Markus M. am 07 April 2017, 17:20:45
Dann probier mal ob das Modul das auch tut.
username:password kommt in's Attribut userPassODL
Danach bitte neu starten und mal das Log mit verbose 4 (oder höher) beobachten.

Hallo Markus,

hier die Logs nach Neustart (userPassODL ist gefüllt, 2 x get data):

2017.04.08 00:46:54 3: Luftdaten: Refreshing ODL key
2017.04.08 00:46:54 1: Luftdaten: Personal ODL key seems to be invalid!
2017.04.08 00:46:54 3: Getting ODL data from URL: http://odlinfo.bfs.de/jsona192f6dc757ba5c406e780800d50300f/055620080ct.json
2017.04.08 00:46:54 2: Received 0 values for radiation
2017.04.08 00:46:54 5: JSON data for radiation
$VAR1 = {
          'stamm' => {
                       'mw' => '0.066',
                       'hoehe' => 50,
                       'kid' => 4,

2017.04.08 00:47:25 3: Getting ODL data from URL: http://odlinfo.bfs.de/jsona192f6dc757ba5c406e780800d50300f/055620080ct.json
2017.04.08 00:47:25 2: Received 0 values for radiation
2017.04.08 00:47:25 5: JSON data for radiation
$VAR1 = {
          'mw24h' => {
                       't' => [
                                '2016-03-21',
                                '2016-03-22',
                                '2016-03-23',


MfG
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 08 April 2017, 01:18:05
Zitat von: Ralf W. am 08 April 2017, 01:01:51
Hallo Markus,
hier die Logs nach Neustart (userPassODL ist gefüllt, 2 x get data):

Funktioniert noch nicht, bitte nochmal mit der aktualisierten Version probieren.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Ralf W. am 08 April 2017, 01:27:36
Da fehlt noch ein @ nach dem Kennwort:

2017.04.08 01:24:11 1: Luftdaten: URL error for ODL: https://xxxxx:xxxxxodlinfo.bfs.de/json/055620080ct.json: malformed or unsupported URL

MfG
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 08 April 2017, 01:31:17
Zitat von: Ralf W. am 08 April 2017, 01:27:36
Da fehlt noch ein @ nach dem Kennwort:
Stimmt. Jetzt besser?
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Ralf W. am 08 April 2017, 01:37:16
2017.04.08 01:34:03 3: Getting ODL data with login from URL: https://odlinfo.bfs.de/json/055620080ct.json                                                                                                                 
2017.04.08 01:34:03 5: JSON data for PM10                                                                                                                                                                                 
$VAR1 = {                                                                                                                                                                                                                 
          'data' => [                                                                                                                                                                                                     
                      []                                                                                                                                                                                                   
                    ],                                                                                                                                                                                                     
          'time_scope' => [                                                                                                                                                                                               
                            3600                                                                                                                                                                                           
                          ]                                                                                                                                                                                               
        };                                                                                                                                                                                                                 
                                                                                                                                                                                                                           
...                                                                                                                                                     
                                                                                                                                                                                                                           
2017.04.08 01:34:03 1: Luftdaten: ODL key missing                                                                                                                                                                         
2017.04.08 01:34:03 3: Luftdaten: Refreshing ODL key                                                                                                                                                                       
2017.04.08 01:34:03 1: Luftdaten: Personal ODL key seems to be invalid!         
     

STATE = error                                                                                                                                     
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 08 April 2017, 01:46:29
Klappt nicht.
Muss noch was probieren.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Ralf W. am 08 April 2017, 01:49:04
Hast PM ...
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 08 April 2017, 02:19:29
Noch nicht ganz fertig aber der letzte Versuch für heute :)
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Ralf W. am 08 April 2017, 02:39:41
2017.04.08 02:32:29 3: Getting ODL data from URL: http://odlinfo.bfs.de/jsona172f6dc757ba0c480e7020c0d03060f/055620080ct.json
2017.04.08 02:32:29 2: Received 0 values for radiation
2017.04.08 02:32:29 5: JSON data for radiation
$VAR1 = {
          'stamm' => {
                       'plz' => '45711',
                       'status' => 1,
                       'kid' => 4,
                       'kenn' => '055620080',
                       'lat' => '51.67',
                       'hoehe' => 50,
                       'ort' => 'Datteln',
                       'lon' => '7.36',
                       'mw' => '0.066'
                     },
          'mw1h' => {
                      'mw' =>

...
[



STATE = error
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Ralf W. am 08 April 2017, 09:37:20
Hallo Markus,

und das ist aktuell nach Neustart:

2017.04.08 09:06:46 3: Getting NO2 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=NO2&scope[]=1SMW&station[]=DENW002&group[]=pollutant&range[]=1491597000,1491635206             
2017.04.08 09:06:46 3: Getting O3 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=O3&scope[]=1SMW&station[]=DENW015&group[]=pollutant&range[]=1491633000,1491635206               
2017.04.08 09:06:46 3: Getting PM10 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=PM10&scope[]=1SMW&station[]=DENW002&group[]=pollutant&range[]=1491633000,1491635206           
2017.04.08 09:06:46 3: Getting SO2 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=SO2&scope[]=1SMW&station[]=DENW002&group[]=pollutant&range[]=1491618600,1491635206             
2017.04.08 09:06:46 3: Getting ODL data with login from URL: http://odlinfo.bfs.de/daten/json/055620080ct.json                                                                                                             
2017.04.08 09:06:46 2: Received 0 values for radiation
   

STATE =  9 µg/m³               


Und nach einem get data:

2017.04.08 09:32:51 3: Getting NO2 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=NO2&scope[]=1SMW&station[]=DENW002&group[]=pollutant&range[]=1491597000,1491636771             
2017.04.08 09:32:51 3: Getting O3 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=O3&scope[]=1SMW&station[]=DENW015&group[]=pollutant&range[]=1491633000,1491636771               
2017.04.08 09:32:51 3: Getting PM10 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=PM10&scope[]=1SMW&station[]=DENW002&group[]=pollutant&range[]=1491633000,1491636771           
2017.04.08 09:32:51 3: Getting SO2 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=SO2&scope[]=1SMW&station[]=DENW002&group[]=pollutant&range[]=1491618600,1491636771             
2017.04.08 09:32:51 3: Getting ODL data with login from URL: http://odlinfo.bfs.de/daten/json/055620080ct.json                                                                                                             
2017.04.08 09:32:52 2: Received 0 values for radiation
 

STATE = 10 µg/m³


Dann scheint es ja zu laufen  :)

MfG                                                                                                                                                                                                                                                                                                             
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Prof. Dr. Peter Henning am 08 April 2017, 10:51:08
Nochmal, aus gegebenem Anlass: Die ODL-Daten bekommt man natürlich mit http://<user>:<password>@odlinfo.bfs.de/daten/json/<stationid>.json

Mit HTTPMOD ist das dann ein Dreizeiler - keine Notwendigkeit für ein externes wget.

Aber: Die Nutzungsbedingungen besagen ganz klar, dass es sich um eine individuelle Lizensierung handelt, und dass bestimmte Einschränkungen gelten.

Die Weitergabe der Daten an Dritte, oder so etwas wie das "Ausleihen von Zugängen", sind ganz klare Verstöße gegen diese Nutzungsbedingungen. Und wer so etwa hier diskutiert, oder das Forum (und sei es per PM) für den Austausch solcher Daten nutzt, gefährdet nicht nur den Ruf der ganzen Community, sondern auch den Status des Vereins.

Über den Sinn und Unsinn der Nutzungsbedingungen sollte man mit dem BfS verhandeln - aber vorerst sind sie einzuhalten.

LG

pah
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Dr. Boris Neubert am 08 April 2017, 11:01:40
Das Modul ist aus dem ersten Beitrag entfernt und dieses Thema ist bis auf weiteres geschlossen.

Es wird erst wieder geöffnet, wenn eine neue Modulversion veröffentlicht wird, die ausschließlich den vom BfS zulässigen Weg über eine Registrierung unterstützt.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Dr. Boris Neubert am 09 April 2017, 10:02:22
Nach Klärung mit dem Modulautor Thema nun wieder geöffnet.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 09 April 2017, 12:08:15
Das Modul unterstützt nun den Datenabruf der Strahlungsdaten mit einem persönlichen Zugang.
Das entsprechende Attribut wird dabei verschlüsselt abgelegt.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Ralf W. am 09 April 2017, 14:34:37
Rennt. Danke!
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Prof. Dr. Peter Henning am 09 April 2017, 17:10:25
Gut, so ist es ok.

Erstens muss man das BfS an dieser Stelle verstehen - zu viele Ideologen nutzen seriöse Daten, um ihr eigenes Süppchen zu kochen. Als ausgewiesenem Kernphysiker dreht sich mir dabei jedes Mal der Magen um.

Zweitens werde ich mal mit dem Zuständigen telefonieren - eventuell kann man das, bei größerem Interesse, etwas lockern.

LG

pah

Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 10 April 2017, 20:34:55
Zitat von: Prof. Dr. Peter Henning am 09 April 2017, 17:10:25
Gut, so ist es ok.
Erstens muss man das BfS an dieser Stelle verstehen - zu viele Ideologen nutzen seriöse Daten, um ihr eigenes Süppchen zu kochen. Als ausgewiesenem Kernphysiker dreht sich mir dabei jedes Mal der Magen um.
Zweitens werde ich mal mit dem Zuständigen telefonieren - eventuell kann man das, bei größerem Interesse, etwas lockern.
Hallo pah

Gerne, eine Lockerung ist aber eigentlich gar nicht nötig.
Wenn dein erster Einwand wirklich ein so großes Problem darstellt, sollten die Nutzungsbedingungen für den Zugang eher noch erweitert werden was §14 UrhG bzw. ein explizites Rückrufsrecht angeht.

Das Modul ist mittlerweile ja nur mit Zugang nutzbar und mangels eigenem Interesse werde ich auch keinen großen Aufwand mehr reinstecken.
Ich habe für die Daten keinen Einsatzzweck und auch kein umfassendes Verständnis von der Materie.


Ich werde an dieser Stelle aber nochmals versuchen, detailliert den genauen rechtlichen Hintergrund der vorherigen Version zu erläutern, da ich mir das weder aus den Fingern gesaugt habe noch blauäugig einfach die rechtlichen Rahmenbedingungen ignoriere:

-> Die Nutzungsbedingungen für die (mit Passwort geschützte) Schnittstelle stehen auf der Webseite.
-> Wenn jemand einen Zugang beantragt, stimmt er ihnen durch konkludentes Handeln zu, selbst wenn es nicht mehr ausdrücklich in der Mail steht.
-> Tut jemand das nicht, haben sie mangels ausdrücklicher Zustimmung allerdings keinerlei verbindliche Rechtswirkung in Bezug auf die auf der Seite frei zugängliche Daten (ähnlich Schutzfolienverträge, siehe auch OLG Frankfurt Az. 6 U 221/09), wozu auch die vom Browser angezeigten JSON Dateien gehören.

-> Die Daten auf der BfS Seite stellen eine Datenbank dar, die vom Urheberrecht (§87a UrhG) geschützt ist, was auf der Seite durch die Hinweise auf das Urheberrecht auch gesondert betont wird.
-> Damit leitet sich dann aus §53 UrhG ab, dass die Vervielfältigung zum eigenen wissenschaftlichen Gebrauch, aber dabei explizit nur zu nicht gewerblichen Zwecken zulässig ist.
-> Diese Rechte nimmt jeder einzelne Nutzer der das Modul so nutzen würde individuell wahr, die Bereitstellung des Moduls selbst (das ohne Interaktion des Nutzers erst mal nichts tut) im Rahmen eines Open Source Projekts ist unbedenklich (oder zumindest nicht ansatzweise geklärt).
-> Mögliche Verstöße im Bezug auf das Urheberrecht oder Nutzungsvereinbarungen (sofern rechtswirksam) sind in jedem Fall eine Sache zwischen dem Nutzer und dem Urheber/Lizenzgeber.

Es gibt zahlreiche Urteile zu Screen Scraping in Bezug auf eBay und Flugbuchungsseiten und auch einen ziemlich bizarren Weg wie sich Ryanair auf europäischer Ebene dagegen gewehrt hat, bei Interesse einfach mal Google anwerfen.


Die Kurzfassung davon jedenfalls:
Alles was im Web offiziell frei zugänglich ist und urheberrechtlich geschützt ist, darfst du zu privaten wissenschaftlichen Zwecken ohne kommerziellen Faktor (sehe ich bei FHEM gegeben) downloaden und speichern solange du nicht anderslautenden Nutzungsbestimmungen explizit zugestimmt hast.
Bis zu dem Punkt an dem ich angefangen habe, den geschützten Bereich einzubauen, war zumindest das Modul selbst also noch völlig in Ordnung.
Das Posten von reinen Debug Ausgaben mit Rohdaten hier im Forum ist es allerdings leider (auch jetzt) nicht, egal ob mit oder ohne Zugang!


Ich hoffe das hilft dir, die durchaus komplexe rechtliche Thematik etwas besser zu verstehen.

Viele Grüße,
Markus
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Prof. Dr. Peter Henning am 11 April 2017, 16:12:45
Lieber Markus,

ich würde mich nicht scheuen, in den Wettbewerb eintreten, wer sich da besser auskennt. Erstens muss ich das schon aus beruflichen Gründen, und zweitens habe ich auch auf der politischen Ebene Einiges damit zu tun.

Aber, Schwamm drüber: So, wie es jetzt ist, kann man es lassen.

LG

pah
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: jnewton957 am 28 April 2017, 06:26:54
Hallo Markus,

ich habe seit einigen Tagen folgende Fehlermeldung im Log:

2017.04.27 23:09:55 3: Received 1 values for O3 from after 2017-04-27 21:30:00
malformed JSON string, neither array, object, number, string or atom, at character offset 0 (before "(end of string)") at ./FHEM/60_airquality.pm line 645.


Damit stürzt sogar das gesamte FHEM ab und ist offline

Fhem ist auf 5.8, aktuelles $Id: 60_airquality.pm 00000 2017-03-08 $$$

Grüße
Jörg

Was könnte es sein bzw. welche weiteren Infos werden benötigt?
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 28 April 2017, 08:29:27
Zitat von: jnewton957 am 28 April 2017, 06:26:54
Was könnte es sein bzw. welche weiteren Infos werden benötigt?

Setz das Device mal auf Verbose 5 und poste was vor dem Crash ankommt.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: jnewton957 am 07 Mai 2017, 17:08:00
Zitat von: Markus M. am 28 April 2017, 08:29:27
Setz das Device mal auf Verbose 5 und poste was vor dem Crash ankommt.

Hallo,

ich hatte ja das Modul aus der fhem.cfg nicht mehr geladen. Seitdem (also 10 Tage) hatte ich keinen Absturz mehr.

Heute habe ich es zum Test wieder mit include eingefügt. Und siehe da. Nach ca. 1 Stunde der Absturz.

Letzter Logeintrag vor dem Restart

2017.05.07 12:02:09 2: Getting CO data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=CO&scope[]=8SMW&station[]=DERP024&group[]=pollutant&range[]=1494149400,1494151329
2017.05.07 12:02:09 2: Getting NO2 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=NO2&scope[]=1SMW&station[]=DENW062&group[]=pollutant&range[]=1494145800,1494151329
2017.05.07 12:02:09 2: Getting O3 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=O3&scope[]=1SMW&station[]=DENW059&group[]=pollutant&range[]=1494145800,1494151329
2017.05.07 12:02:09 2: Getting PM10 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=PM10&scope[]=1SMW&station[]=DENW062&group[]=pollutant&range[]=1494145800,1494151329
2017.05.07 12:02:09 2: Getting SO2 data from URL: http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=SO2&scope[]=1SMW&station[]=DENW059&group[]=pollutant&range[]=1494145800,1494151329
malformed JSON string, neither array, object, number, string or atom, at character offset 0 (before "(end of string)") at ./FHEM/60_airquality.pm line 645.
2017.05.07 12:02:12 1: BlockingInformParent (BlockingStart): Can't connect to localhost:7073: IO::Socket::INET: connect: Connection refused
2017.05.07 12:02:25 1: BlockingInformParent (PRESENCE_ProcessLocalScan): Can't connect to localhost:7073: IO::Socket::INET: connect: Connection refused


Grüße
Jörg
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Frank_Huber am 07 Mai 2017, 17:14:54
Gelöscht. Versehentlich in falschem thread gepostet.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 08 Mai 2017, 12:43:51
Jörg, kannst du das noch mal mit Verbose 5 reproduzieren?
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: jnewton957 am 19 Mai 2017, 19:29:43
Zitat von: Markus M. am 08 Mai 2017, 12:43:51
Jörg, kannst du das noch mal mit Verbose 5 reproduzieren?

Hallo Markus,

seit dem letzten update habe ich KEINE Abstürze mehr. Das neue Modul scheint zu funktionieren.

VIELEN VIELEN Dank

Jörg
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: ThomasMagnum am 04 Mai 2018, 09:28:39
Da ich seit einiger Zeit keine Daten mehr bekomme hatte ich mal beim Umweltbundesamt nachgefragt warum die so ist.

Folgende Antwort kam vom Umweltbundesamt:
Zitat...der Datenaustausch zwischen den Ländermessnetzen und uns muss über ein speziell gesichertes Netz erfolgen. Hir gab es vor ca. 2-3 Wochen umfangreiche Wartungsarbeiten, so dass der Dataustausch komplett ausgefallen war. In einigen Ländern (unter anderem Hessen, Sachsen, Schleswig-Holstein) gab es anschließend Probleme, weil offenbar IP-Adressen geändert und aus Sicherheitgründen nicht mehr zugelassen wurden. Aktuell besteht das Problem leider noch immer hinsichtlich der Daten aus Hessen. Die Landes-IT aus Hessen steht mit der Bundes-IT in Verbindung und bemüht sich, das Problem zu beheben. Leider haben wir als Umweltbundesamt hierauf keinen Einfluss...

Dies nur als Info falls dies noch jemand festgestellt hat und die Ursache in FHEM sucht.

Gruß, Thomas
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Florian_GT am 09 Mai 2018, 00:27:15
Zitat von: ThomasMagnum am 04 Mai 2018, 09:28:39
Da ich seit einiger Zeit keine Daten mehr bekomme hatte ich mal beim Umweltbundesamt nachgefragt warum die so ist.

Folgende Antwort kam vom Umweltbundesamt:
Dies nur als Info falls dies noch jemand festgestellt hat und die Ursache in FHEM sucht.

Gruß, Thomas

:O

Was wir sind also völlig ungeschützt?
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: ThomasMagnum am 09 Mai 2018, 09:26:36
Schlimmer noch, man hat einen Einblick wie unsere Bundes bzw. Landes IT arbeitet  ;D :D :o
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Prof. Dr. Peter Henning am 09 Mai 2018, 15:46:54
Leute, wenn man im Öffentlichen Dienst die Gehälter zahlen würde, die es in der Privatwirtschaft gibt - dann bekäme man auch bessere Mitarbeiter in diesem Bereich. Aber dann würdet ihr über zu hohe Steuerlast meckern.

LG

pah
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Florian_GT am 03 Juni 2018, 13:39:59
In dem Module werden noch einige Text Meldungen, per "return" zurückgegeben, statt mit der "Log3" Logging Funktion. Das führt u.a. dazu, dass bei jedem Start von FHEM eine Meldung in die Motd geschrieben wird, und die Konfiguration gespeichert werden möchte. Ich habe das korrigiert, und die Version hier angehangen.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 03 Juni 2018, 14:41:04
Ich weiss ja nicht welche Probleme du mit der motd hast und was da reingeschrieben wird, ich kann mir aber eigentlich nicht vorstellen, dass das an einem return in einer Get oder Set Funktion liegt.
Die werden eigentlich weder beim Start noch irgendwo sonst ohne Zutun des Users aufgerufen.


Hättest du deinen anderen Thread (https://forum.fhem.de/index.php/topic,88349.0/topicseen.html) gleich verlinkt, hätte ich verstanden um was es geht :)
Einer deiner 8 Edits im Modul war richtig, ist auf der ersten Seite aktualisiert. Danke!
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Florian_GT am 03 Juni 2018, 16:14:03
Zitat von: Markus M. am 03 Juni 2018, 14:41:04
Ich weiss ja nicht welche Probleme du mit der motd hast und was da reingeschrieben wird, ich kann mir aber eigentlich nicht vorstellen, dass das an einem return in einer Get oder Set Funktion liegt.
Die werden eigentlich weder beim Start noch irgendwo sonst ohne Zutun des Users aufgerufen.


Hättest du deinen anderen Thread (https://forum.fhem.de/index.php/topic,88349.0/topicseen.html) gleich verlinkt, hätte ich verstanden um was es geht :)
Einer deiner 8 Edits im Modul war richtig, ist auf der ersten Seite aktualisiert. Danke!

Sorry, ja hätte ich machen können. Andersrum habe ich verlinkt, und dann nicht mehr daran gedacht, auch von der anderen Richtung aus zu verlinken... Ich habe gleich mehrere Stellen angepasst, von denen ich dachte, dort macht es auch Sinn. Du hast in der airquality_Define und airquality_Get das return gelassen, wird dort der return dann an einer anderen Stelle ausgegeben oder sind das Stellen, wo die Informationen wirklich in der MOTD landen sollen?
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 03 Juni 2018, 17:18:18
Zitat von: afloria am 03 Juni 2018, 16:14:03
Sorry, ja hätte ich machen können. Andersrum habe ich verlinkt, und dann nicht mehr daran gedacht, auch von der anderen Richtung aus zu verlinken... Ich habe gleich mehrere Stellen angepasst, von denen ich dachte, dort macht es auch Sinn. Du hast in der airquality_Define und airquality_Get das return gelassen, wird dort der return dann an einer anderen Stelle ausgegeben oder sind das Stellen, wo die Informationen wirklich in der MOTD landen sollen?
Im Normalfall hätte ich den anderen Thread übersehen, heute hattest du Glück :)

Return wird immer dort verwendet, wo der User Feedback bekommen soll, durch ein Overlay im UI oder einfach eine Zeile mit einer Rückmeldung nach einer Aktion.
Beispielsweise bei einem Get oder einem Set, oder wenn die Device Definition falsch ist.

Gedacht war hier ein Feedback, wenn ein Attribut gesetzt wird.
Was ich dummerweise aber in dem Moment nicht bedacht hatte war, dass das Attribut ja auch immer beim Start durch die Config gesetzt wird.
An dieser Stelle sollte ein Modul aber nichts zurückgeben wenn nichts kaputt ist  - deshalb der Fehler...

Was mir das auch verrät ist, dass das wohl erst seit Kurzem in der motd landet oder du scheinbar mittlerweile der einzige bist, der das Modul mit einem offiziellen Zugang zu den ODL Daten nutzt ;)

Wie auch immer, die Version auf Seite 1 passt nun wieder - glaube ich zumindest, da ich das Modul selbst nicht mit den ODL Daten nutze.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Florian_GT am 03 Juni 2018, 18:11:58
Zitat von: Markus M. am 03 Juni 2018, 17:18:18
Im Normalfall hätte ich den anderen Thread übersehen, heute hattest du Glück :)

Return wird immer dort verwendet, wo der User Feedback bekommen soll, durch ein Overlay im UI oder einfach eine Zeile mit einer Rückmeldung nach einer Aktion.
Beispielsweise bei einem Get oder einem Set, oder wenn die Device Definition falsch ist.

Gedacht war hier ein Feedback, wenn ein Attribut gesetzt wird.
Was ich dummerweise aber in dem Moment nicht bedacht hatte war, dass das Attribut ja auch immer beim Start durch die Config gesetzt wird.
An dieser Stelle sollte ein Modul aber nichts zurückgeben wenn nichts kaputt ist  - deshalb der Fehler...

Was mir das auch verrät ist, dass das wohl erst seit Kurzem in der motd landet oder du scheinbar mittlerweile der einzige bist, der das Modul mit einem offiziellen Zugang zu den ODL Daten nutzt ;)

Wie auch immer, die Version auf Seite 1 passt nun wieder - glaube ich zumindest, da ich das Modul selbst nicht mit den ODL Daten nutze.

Also bei mir landet das schon lange in der MOTD. Ich bin aber gerade dabei, mir mein Fhem richtig fein zu machen. Und das störte halt schon...
Den anderen ist das vermutlich nicht aufgefallen, oder egal? wer weiß, oder ich bin wirklich der einzige, der es nutzt ;)
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: JoWiemann am 03 Juni 2018, 18:13:46
Zitat von: Markus M. am 03 Juni 2018, 17:18:18
Gedacht war hier ein Feedback, wenn ein Attribut gesetzt wird.
Was ich dummerweise aber in dem Moment nicht bedacht hatte war, dass das Attribut ja auch immer beim Start durch die Config gesetzt wird.
An dieser Stelle sollte ein Modul aber nichts zurückgeben wenn nichts kaputt ist  - deshalb der Fehler...
Hm, laut Doku gehören die Attribute dem User und sollten nicht durch ein Modul gesetzt werden.

Grüße Jörg


Gesendet von iPhone mit Tapatalk

Grüße Jörg
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 03 Juni 2018, 18:32:53
Zitat von: JoWiemann am 03 Juni 2018, 18:13:46Hm, laut Doku gehören die Attribute dem User und sollten nicht durch ein Modul gesetzt werden.

Werden sie ja auch nicht.
Den rein informativen Returnwert gab es BEIM Setzen.
Was aber schlecht war, da das ja auch beim Lesen der Config passiert und an der Stelle nichts zurück kommen darf was kein Fehler ist.

Kann ich eigentlich im Modul erkennen ob ein Attribut im UI oder beim Start gesetzt wird? Wahrscheinlich nicht, nehme ich an.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: JoWiemann am 03 Juni 2018, 18:41:13
Ich glaube schon. In irgend einem Zusammen hatten wir das mal im Forum. Aber wann und wo...

Es gibt global:INITIALIZED. Wenn dort true sollte Fhem vollständig hoch gefahren sein.

Grüße Jörg


Gesendet von iPhone mit Tapatalk

Grüße Jörg
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 03 Juni 2018, 18:45:36
Zitat von: JoWiemann am 03 Juni 2018, 18:41:13
Es gibt global:INITIALIZED. Wenn dort true sollte Fhem vollständig hoch gefahren sein.

Danke, muss ich mir merken :)
Hier dran bastle ich allerdings nicht mehr rum, da das Modul nur ein Wochenendprojekt war, das ich so selbst nicht im Einsatz habe.
Um Bugfixes werde ich mich natürlich schon noch kümmern, sofern es die Zeit zulässt. Diesen Thread hier habe ich abonniert.

Möchte zufällig ein Entwickler das Modul adoptieren und ins SVN bringen?

Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Florian_GT am 03 Juni 2018, 19:32:00
Zitat von: Markus M. am 03 Juni 2018, 18:45:36
Danke, muss ich mir merken :)
Hier dran bastle ich allerdings nicht mehr rum, da das Modul nur ein Wochenendprojekt war, das ich so selbst nicht im Einsatz habe.
Um Bugfixes werde ich mich natürlich schon noch kümmern, sofern es die Zeit zulässt. Diesen Thread hier habe ich abonniert.

Möchte zufällig ein Entwickler das Modul adoptieren und ins SVN bringen?

Ich würde es ja machen, aber wie du gemerkt hast, bin ich jetzt noch nicht der beste PERL-Entwickler. Ich könnte mich aber um die Pflege über ein GIT kümmern. Und wenn dann wirklich mal etwas am Code geändert werden muss, dann schaut mal halt in der Community, dass eine Lösung gefunden wird. Ich könnte dann auch als Ansprechpartner seitens dem BFS dienen.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Gisbert am 10 Juni 2018, 20:01:06
Hallo Markus,

bei mir werden Logdaten drei- oder viermal ins Log geschrieben, was dazu führt, dass die Diagramme mehrere Linien für einen Messwert haben.
Sie auch:https://forum.fhem.de/index.php/topic,88532.msg809946.html#msg809946 (https://forum.fhem.de/index.php/topic,88532.msg809946.html#msg809946)

Es hängt laut Rudi's Aussage mit CHANGETIME im Modul 60_airquality.pm zusammen.
Kannst Du dich dieser Sache annehmen?

Zitat von: rudolfkoenig am 10 Juni 2018, 18:01:46
Das ist moeglich, wenn man das (kaum bekannte) Feature CHANGETIME verwendet, so wie 60_airquality.pm das offensichtlich tut.
Mit CHANGETIME kann man zu jedem Ereignis das dazugehoerige Zeitstempel angeben.
Ich fuerchte das Problem muss in 60_airquality.pm adressiert werden.

Viele Grüße Gisbert
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 10 Juni 2018, 20:46:54
Zitat von: Gisbert am 10 Juni 2018, 20:01:06Kannst Du dich dieser Sache annehmen?

Hallo Gisbert
Es liegt tatsächlich an CHANGETIME.
Nur damit lassen sich Datenreihen aus der Cloud sinnvoll in Logs schreiben.
Dass dann doppelt geschrieben wird, liegt im Endeffekt daran dass entweder der Anfangspunkt der Reihe nicht sauber berechnet wird oder irgendwo falsch gespeichert wird.

Wie du aber aus dem Post eins weiter oben aber vielleicht rauslesen kannst, werde ich das Problem mangels Zeit und Interesse nicht mehr beheben.
Möchtest du das Modul vielleicht adoptieren?
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Gisbert am 10 Juni 2018, 20:56:35
Hallo Markus,

das habe ich nicht vermutet, und leider den Beitrag nicht gelesen.
Ich würde es ja machen, aber mir fehlen jegliche Programmierkenntnisse, das ist aussichtslos.
Schade, aber nicht zu ändern.
Ich könnte mich aber zum Testen bereithalten, falls sich jemand für das Modul interessiert und weiterarbeitet.

Viele Grüße Gisbert
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 12 Juni 2018, 11:47:15
Zitat von: afloria am 03 Juni 2018, 19:32:00
Ich würde es ja machen, aber wie du gemerkt hast, bin ich jetzt noch nicht der beste PERL-Entwickler. Ich könnte mich aber um die Pflege über ein GIT kümmern. Und wenn dann wirklich mal etwas am Code geändert werden muss, dann schaut mal halt in der Community, dass eine Lösung gefunden wird. Ich könnte dann auch als Ansprechpartner seitens dem BFS dienen.
Versuch dich doch einfach mal dran.
Das erste Ziel hättest du mit dem gemeldeten Bug ja jetzt.
Mehr als schief gehen kanns nicht, wenn du konkrete Fragen hast, werde ich versuchen dich zu unterstützen :)
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Florian_GT am 20 Juni 2019, 16:03:08
Hallo zusammen,

wie damals gesagt, übernehme ich die Betreuung des Modules.
Ich habe in den vergangenen Tagen das Module in bfs (Bundesamt für Strahlenschutz) und uba (Umweltbundesamt) getrennt, wird bald veröffentlicht. Dann schaue ich mir die Bugs an.

Gruß Florian
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Florian_GT am 26 Juli 2019, 21:26:57
Zitat von: Florian_GT am 20 Juni 2019, 16:03:08
Hallo zusammen,

wie damals gesagt, übernehme ich die Betreuung des Modules.
Ich habe in den vergangenen Tagen das Module in bfs (Bundesamt für Strahlenschutz) und uba (Umweltbundesamt) getrennt, wird bald veröffentlicht. Dann schaue ich mir die Bugs an.

Gruß Florian

Die Module sind nun hier veröffentlicht:
https://raw.githubusercontent.com/fhem/bfs/master/controls_bfs.txt
https://raw.githubusercontent.com/fhem/uba/master/controls_uba.txt

Das alte Modul muss natürlich vorher gelöscht werden. Fortan benötigt man dann je Dienst ein Device. Bei Issues gerne Github nutzen, natürlich geht das auch hier. Ich werde noch für das jeweilige Module ein neuen Thread öffnen indem dann kommentiert werden kann.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: slawekking am 13 August 2019, 15:51:29
Hallo,

habe mir einen User ,  Passwort , die ID der Messstation (messstelle/031540091.html=>031540091) beim BFS besorgt und das Modul 60_bfs.pm ausprobiert.

Leider bekomme ich in Fhem im state error. Im Log kann ich leider nichts erkennen.

Hat vielleicht einer von euch eine Idee, was es sein könnte?

Gruß

Christoph
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Florian_GT am 16 August 2019, 23:37:18
Zitat von: slawekking am 13 August 2019, 15:51:29
Hallo,

habe mir einen User ,  Passwort , die ID der Messstation (messstelle/031540091.html=>031540091) beim BFS besorgt und das Modul 60_bfs.pm ausprobiert.

Leider bekomme ich in Fhem im state error. Im Log kann ich leider nichts erkennen.

Hat vielleicht einer von euch eine Idee, was es sein könnte?

Gruß

Christoph

Hi,

wenn du das Verbose Level auf 3 oder 5 erhöhst, bekommst du eine genauere Fehlermeldung im Log.

Gruß
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: slawekking am 19 August 2019, 08:00:38
Hallo,

danke für die Rückmeldung.

Ich hatte Zugangsdaten nicht für die Json Schnittstelle erhalten.

Jetzt funktioniert es einwandfrei.

Gruß

Christoph
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: HeikoE am 01 Oktober 2019, 21:50:20
Hallo,
Danke erst mal für das Modul UBA.
Wurde beim Umweltbundesamt etwas verändert? Seit einigen Tagen bekomme ich (aus dem alten Modul) keine Daten mehr. Ich habe das zum Anlass genommen, endlich auf das neue UBA Modul umzustellen. Im Testsystem hatte das vor ein paar Wochen problemlos funktioniert.
Jetzt liefert auch dieses nur Fehler

2019.10.01 21:26:22 2: DR.Umwelt: JSON error for UBA (CO from 1569870000)
2019.10.01 21:26:22 2: DR.Umwelt: JSON error for UBA (NO2 from 1569870000) 2019.10.01 21:26:22 2: DR.Umwelt: JSON error for UBA (SO2 from 1569870000) 2019.10.01 21:26:22 2: DR.Umwelt: JSON error for UBA (PM10 from 1569870000) 2019.10.01 21:26:22 2: DR.Umwelt: JSON error for UBA (O3 from 1569870000)

Wenn ich die angezeigten Links
http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=SO2&scope[]=1SMW&station[]=DERP020&group[]=pollutant&range[]=1569871800,1569956400
im Browser eingebe, kommt sowas wie "Schnittstelle nicht mehr unterstützt".
Viele Grüße
Heiko
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: CoolTux am 01 Oktober 2019, 21:57:42
Hilft das https://forum.fhem.de/index.php/topic,78201.0.html vielleicht so lange weiter?
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Florian_GT am 11 Oktober 2019, 16:44:13
Zitat von: HeikoE am 01 Oktober 2019, 21:50:20
Hallo,
Danke erst mal für das Modul UBA.
Wurde beim Umweltbundesamt etwas verändert? Seit einigen Tagen bekomme ich (aus dem alten Modul) keine Daten mehr. Ich habe das zum Anlass genommen, endlich auf das neue UBA Modul umzustellen. Im Testsystem hatte das vor ein paar Wochen problemlos funktioniert.
Jetzt liefert auch dieses nur Fehler

2019.10.01 21:26:22 2: DR.Umwelt: JSON error for UBA (CO from 1569870000)
2019.10.01 21:26:22 2: DR.Umwelt: JSON error for UBA (NO2 from 1569870000) 2019.10.01 21:26:22 2: DR.Umwelt: JSON error for UBA (SO2 from 1569870000) 2019.10.01 21:26:22 2: DR.Umwelt: JSON error for UBA (PM10 from 1569870000) 2019.10.01 21:26:22 2: DR.Umwelt: JSON error for UBA (O3 from 1569870000)

Wenn ich die angezeigten Links
http://www.umweltbundesamt.de/js/uaq/data/stations/measuring?pollutant[]=SO2&scope[]=1SMW&station[]=DERP020&group[]=pollutant&range[]=1569871800,1569956400
im Browser eingebe, kommt sowas wie "Schnittstelle nicht mehr unterstützt".
Viele Grüße
Heiko

Die Schnittstelle vom Bundesamt wird so wie sie im Module genutzt wird, nicht mehr unterstützt. Ich arbeite bereits an der neuen Schnittstelle.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Gisbert am 04 Januar 2020, 08:27:18
Hallo Florian,

gibt es in der Zwischenzeit eine Idee, wie die Luftdaten wieder zur Verfügung gestellt werden können?

Viele​ Grüße​ Gisbert​
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Gisbert am 13 Januar 2020, 11:37:46
Hallo Florian,

ich hab es mal gewagt das Bundeumweltamt anzuschreiben und habe heute vormittag eine Antwort erhalten, die ich dir vom Inhalt her nicht vorenthalten möchte:

"Unser neues Luftportal ist unter https://www.umweltbundesamt.de/daten/luft/luftdaten/ (https://www.umweltbundesamt.de/daten/luft/luftdaten/) erreichbar.
Unter https://www.umweltbundesamt.de/daten/luft/luftdaten/doc (https://www.umweltbundesamt.de/daten/luft/luftdaten/doc) finden Sie eine Dokumentation zur Umweltbundesamt Air Data API."

Angehängt war auch noch eine pdf, die Abrufbeispiele enthält (ist auch hier angehängt).

Ich hab so was noch nie umgesetzt, d.h. ich bin damit schwergradig überfordert.
Dennoch hätte ich gerne die relevanten Daten in meiner Nähe.

Viele Grüße Gisbert
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: KölnSolar am 13 Januar 2020, 14:33:25
Klingt gar nicht so wild auf den ersten Blick. Vom Ablauf "gefühlt" wie früher.

Wenn Florian sich mal melden würde... :'(

Grüße Markus
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Gisbert am 13 Januar 2020, 20:01:08
Zitat von: KölnSolar am 13 Januar 2020, 14:33:25
Klingt gar nicht so wild auf den ersten Blick. Vom Ablauf "gefühlt" wie früher.

Wenn Florian sich mal melden würde... :'(

Grüße Markus

Heißt das, dass du Florian unter die Arme greifen willst? Fände ich auf jeden Fall gut, damit es hier mal wieder voran geht.

Viele Grüße Gisbert
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: KölnSolar am 13 Januar 2020, 21:22:07
Sagen wir mal so: wenn ich sage ich kümmere mich, dann tue ich das auch.  :-X Florian scheint mehr im GitHub unterwegs zu sein.
Und wenn er sich meldet, dass er auf absehbare Zeit nichts macht, dann würde ich es mir noch etwas näher ansehen. Hab aber genügend andere Baustellen.  :(

Ich fand schon toll, dass ich die allgemeine Hysterie zu NOx nicht durch unsere nahe einer der viel befahrensten Autobahnen liegende Messstation bestätigt bekam.  ;D
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Florian_GT am 14 Januar 2020, 01:22:27
Hallo zusammen,

Ja ist fast so wie früher. Eine erste beta läuft schon und ich plane das Release für kommende Woche.

Gruß Florian

Gesendet von meinem MI 9 mit Tapatalk

Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 14 Januar 2020, 15:05:32
Ich bin auch gerade dabei mir das anzusehen - habe aber beschlossen aufzugeben.
Es kommt wirklich  nicht oft vor dass ich das Bedürfnis verspüre einem API Architekten weh zu tun, aber das hier ist definitiv so ein Fall...
Alles komplett verkorkst und schlecht maschinenlesbar, die IDs der Stationen müssen in der Definition wahrscheinlich geändert werden da die Abfrage davon so lange braucht, dass sie nicht mal 1x pro FHEM Neustart zumutbar ist. :(

Vielleicht kannst die Get Abfrage der Stationen ja brauchen:
sub uba_GetStations($) {
  my ($hash) = @_;
  my $name = $hash->{NAME};

  my $dateymd = strftime("%Y-%m-%d", localtime());
  my($err,$data) = HttpUtils_BlockingGet({
  url => 'https://www.umweltbundesamt.de/api/air_data/v2/meta/json?use=airquality&date_from='.$dateymd.'&date_to='.$dateymd.'&time_from=1&time_to=24',
  noshutdown => 1,
  timeout => 20,
  });
  return $err if($err);

  my $json = eval { JSON->new->utf8(0)->decode($data) };
  if($@)
  {
    Log3 $name, 2, "$name: json evaluation error ".$@;
    return $@;
  }

  my @stations = ();
  foreach my $stationnumber ( keys (%{$json->{stations}})){
    my $station;
    $station->{number} = $json->{stations}->{$stationnumber}[0];
    $station->{id} = $json->{stations}->{$stationnumber}[1];
    $station->{name} = encode_utf8($json->{stations}->{$stationnumber}[2]);
    $station->{city} = $json->{stations}->{$stationnumber}[3];
    $station->{type} = $json->{stations}->{$stationnumber}[15].' '.$json->{stations}->{$stationnumber}[16];
    push( @stations, $station );
  }
  my $ret = '';
  @stations = sort { $a->{number} <=> $b->{number} } @stations;
  foreach my $station (@stations){
    $ret .= $station->{id}."\t<b>-> ".$station->{number}." <-</b>\t".$station->{name}." (".$station->{type}.")\n"
  }
  return $ret;
}
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Florian_GT am 20 Januar 2020, 01:55:03
Hallo zusammen,

ich hatte zunächst die CSV Schnittstelle verwendet, die Verarbeitung ist aber nicht so schön gewesen. Die JSON Schnittstellendokumentation ist eher so ulala, nicht ganz vollständig, und einige dinge sind nicht korrekt. Ich habe das jetzt durch Reversing soweit geklärt und das holen der Daten geht schon mal.

Die airquality JSON Schnittstelle ist performant. Diese verwende ich nun.

Hier eine kleine Preview:
2020.01.20 01:48:01.968 5: -------------------------------
2020.01.20 01:48:01.968 5: x Array Key: 2020-01-19 15:00:00
2020.01.20 01:48:01.969 5: x Array Dump: $VAR1 = [
          '2020-01-19 16:00:00',
          0,
          0,
          [
            3,
            52,
            0,
            '0.867'
          ],
          [
            5,
            12,
            0,
            '0.600'
          ],
          [
            1,
            11,
            0,
            '0.550'
          ]
        ];

2020.01.20 01:48:01.969 5: 0 DateTime: 2020-01-19 16:00:00
2020.01.20 01:48:01.969 5: 1 Luftqualitaetsindex: 0
2020.01.20 01:48:01.969 5: 1 Luftqualitaetsindex_name: sehr gut
2020.01.20 01:48:01.969 5: 2 Unbekannt: 0
2020.01.20 01:48:01.969 5: x dataset_size: 6
2020.01.20 01:48:01.970 5: 3 0 component: 3
2020.01.20 01:48:01.970 5: 3 0 component_name: O3
2020.01.20 01:48:01.970 5: 3 1 data: 52
2020.01.20 01:48:01.970 5: 4 0 component: 5
2020.01.20 01:48:01.970 5: 4 0 component_name: NO2
2020.01.20 01:48:01.970 5: 4 1 data: 12
2020.01.20 01:48:01.971 5: 5 0 component: 1
2020.01.20 01:48:01.971 5: 5 0 component_name: PM10
2020.01.20 01:48:01.971 5: 5 1 data: 11


Mir fehlt jetzt noch der Teil, indem ich die Daten passend als Reading übergebe. Außerdem muss ich mir nochmal anschauen, von wann bis wann Daten geladen werden sollen. Es soll möglichst wenig Traffic bei dem UBA anfallen. Die meisten Module laden einfach 24 Stunden, dass geht hier aber deutlich besser, wenn z.B. alle Datensätze aktuell sind, genügt es Daten ab dem Zeitpunkt der letzten Zeitpunkte der Datensätze zu laden.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Florian_GT am 25 Januar 2020, 00:41:44
Hallo zusammen,

ich habe die neue Version unter https://github.com/fhem/uba/tree/development veröffentlicht. Ich würde mich sehr freuen, wenn der eine oder andere die neue Version einmal testen könnte.
Zum testen könnt ihr gerne https://raw.githubusercontent.com/fhem/uba/development/controls_uba.txt einbinden, solltet später aber wieder master setzen um bei der Stable Version zu bleiben.

Danke und Gruß Florian
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Gisbert am 25 Januar 2020, 09:16:40
Hallo Florian,

ich hab jetzt das update gefahren.

Wenn ich in meinem Device "get update" drücke, dann erhalte ich folgenden log-Eintrag:
2020.01.25 09:10:01 3: Getting UBA data from URL: https://www.umweltbundesamt.de/api/air_data/v2/airquality/json?date_from=2019-12-26&time_from=08&date_to=2020-01-25&time_to=09&station=DENW079&lang=de
2020.01.25 09:10:01 3: UBA: Done loading all data


Ich erhalte aber keine Readings in meinem Device, an dem ich seit Monaten nichts verändert habe.

Hier das raw-Format:
defmod Luftdaten uba DENW079
attr Luftdaten comment Leverkusen Gustav-Heinemann-Straße (DENW355) hat nur NO2
attr Luftdaten daysToImport 30
attr Luftdaten group Wetter
attr Luftdaten icon time_eco_mode
attr Luftdaten room Weather
attr Luftdaten stateFormat Feinstaub PM10 µg/m³<br>Ozon O3 µg/m³<br>NO<span style="vertical-align: -4px;; font-size: 80%;;">2</span> NO2 µg/m³
attr Luftdaten userReadings Zeitstempel24 {substr(ReadingsTimestamp($name,'NO2',''),0,16)}


und ein list:
Internals:
   CFGFN      ./FHEM/WetterdatenSensorenInternet.cfg
   DEF        DENW079
   FUUID      5d96fd25-f33f-e986-bfa3-58b5b489a5a7c773
   NAME       Luftdaten
   NOTIFYDEV  global,Lufdaten
   NR         496
   NTFY_ORDER 50-Lufdaten
   STATE      Feinstaub PM10 µg/m³<br>Ozon O3 µg/m³<br>NO<span style="vertical-align: -4px; font-size: 80%;">2</span> NO2 µg/m³
   TYPE       uba
   READINGS:
     2020-01-25 09:10:01   Quellenangabe   Umweltbundesamt mit Daten der Messnetze der Länder und des Bundes
     2020-01-25 09:10:01   Zeitstempel24   
     2020-01-25 09:10:01   state           done
   helper:
     INTERVAL   3600
     STATION    DENW079
     initial_lastupdate 1577347200
     bm:
       FHEM::uba::Get:
         cnt        6
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        25.01. 09:10:01
         max        0.00467705726623535
         tot        0.00497293472290039
         mAr:
           HASH(0x5631d3a38840)
           Lufdaten
           data
       FHEM::uba::Notify:
         cnt        4
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        25.01. 09:14:59
         max        0.000133991241455078
         tot        0.000381946563720703
         mAr:
           HASH(0x5631d3a38840)
           HASH(0x5631cbb70e10)
Attributes:
   comment    Leverkusen Gustav-Heinemann-Straße (DENW355) hat nur NO2
   daysToImport 30
   group      Wetter
   icon       time_eco_mode
   room       Weather
   stateFormat Feinstaub PM10 µg/m³<br>Ozon O3 µg/m³<br>NO<span style="vertical-align: -4px; font-size: 80%;">2</span> NO2 µg/m³
   userReadings Zeitstempel24 {substr(ReadingsTimestamp($name,'NO2',''),0,16)}


Viele Grüße Gisbert
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: KölnSolar am 25 Januar 2020, 09:23:06
Gisbert war schneller,

Hi Florian,
kopiert und
define Umwelt uba DENW059
tut leider nicht
2020.01.25 09:19:42 3: Getting UBA data from URL: https://www.umweltbundesamt.de/api/air_data/v2/airquality/json?date_from=2020-01-24&time_from=08&date_to=2020-01-25&time_to=09&station=DENW059&lang=de
2020.01.25 09:19:43 5: JSON data: $VAR1 = {
          'count' => 0,
          'indices' => {
                         'data' => {
                                     'station id' => {
                                                       'date start' => {
                                                                         '2' => 'data incomplete',
                                                                         '1' => 'total index',
                                                                         '3' => [
                                                                                  'component id',
                                                                                  'value',
                                                                                  'index',
                                                                                  'y-value'
                                                                                ]
                                                                       },
                                                       'date start (CET)' => [
                                                                               'date end (CET)'
                                                                             ]
                                                     }
                                   }
                       },
          'data' => {},
          'request' => {
                         'date_from' => '2020-01-24',
                         'index' => 'code',
                         'lang' => 'de',
                         'time_to' => '09:00:00',
                         'datetime_to' => '2020-01-25 08:00:00',
                         'datetime_from' => '2020-01-24 07:00:00',
                         'date_to' => '2020-01-25',
                         'station' => '059',
                         'time_from' => '08:00:00'
                       }
        };

2020.01.25 09:19:43 3: UBA: Done loading all data


Warum machst Du ein komplett neues Modul und änderst in airquality nicht nur die Datensammlung ?

Grüße Markus
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Gisbert am 25 Januar 2020, 09:31:25
Hallo Florian,

wenn ich folgendes in den Browser kopiere und losschicke:
https://www.umweltbundesamt.de/api/air_data/v2/airquality/json?date_from=2019-12-26&time_from=08&date_to=2020-01-25&time_to=09&station=DENW079&lang=de
bekomme ich:
{"request":{"station":"079","date_from":"2019-12-26","date_to":"2020-01-25","time_from":"08:00:00","time_to":"09:00:00","lang":"de","index":"code","datetime_from":"2019-12-26 07:00:00","datetime_to":"2020-01-25 08:00:00"},"data":{},"indices":{"data":{"station id":{"date start (CET)":["date end (CET)"],"date start":{"1":"total index","2":"data incomplete","3":["component id","value","index","y-value"]}}}},"count":0}

D.h. es kommt eine Antwort, aber ohne Daten.

Viele Grüße Gisbert
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: CoolTux am 25 Januar 2020, 09:38:51
Eure Stations ID sieht seltsam aus. Ich hatte bei meinem Codereview gerade das selbe Problem.
Sucht mal in der Commandref die URL für die Stationen. Dann Eure Station suchen auf der Seite und wenn Ihr die habt ganz unten bei Export CSV mit der Maus auf den Button Export CSV gehen. Ihr solltet dann die URL sehen wo Ihr auch die StationsID raus bekommt. Bei mir ist es die 71
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Gisbert am 25 Januar 2020, 09:54:29
Die StationsID müsste aber richtig sein, siehe Anhang, DENW079.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: CoolTux am 25 Januar 2020, 10:03:52
Gib bei Dir mal die 1397 ein. Also in der Detailübersicht auf modify und dann die Nummer da raus und die 1397 rein. Danach ein get machen
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Gisbert am 25 Januar 2020, 10:24:25
Zitat von: CoolTux am 25 Januar 2020, 10:03:52
Gib bei Dir mal die 1397 ein. Also in der Detailübersicht auf modify und dann die Nummer da raus und die 1397 rein. Danach ein get machen
Grübel ???
Meinst du die Definition, also so?
defmod Luftdaten uba 1397
Nach einem get bekomme ich nur NO2, aber nicht die anderen Paramter, die an der Station verfügbar sind.
Wie kommst du auf 1397?

Viele​ Grüße​ Gisbert​
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: CoolTux am 25 Januar 2020, 10:53:06
Lese Dir bitte einmal die Commandref zum neuen Modul durch und befolge die Anweisungen
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Gisbert am 25 Januar 2020, 11:35:28
Ok, hab's jetzt gefunden, die StatationsID steht in der URL, wenn man mit dem Curser "drüber fährt".
1397: Leverkusen Gustav-Heinemann-Strasse - DENW355
1134: Leverkusen-Manfort - DENW079
Soweit so gut.

Ich hatte die ID 1397 eingetragen und ein get durchgeführt.
Diese Station liefert aber nur NO2, die auch in einer log-Datei "Luftqualitaet-2020-01.log" gespeichert wurden.
Da es sich um die falsche Station handelte, habe ich die Daten aus der log-Datei gelöscht.

Wenn ich jetzt ein get versuche, dann erhalte ich weder bei der Station 1397 noch bei der Station 1134 Daten und auch keine Einträge in der log-Datei.
Da läuft anscheinend noch etwas nicht rund.

Viele Grüße Gisbert
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Gisbert am 25 Januar 2020, 11:51:38
Ich nochmal - jetzt läuft's :-)
Ich hab die Readings gelöscht (deletereading ...), dann ein get durchgeführt.
Jetzt sind alle Daten im log-file vorhanden und die aktuellen Werte werden als Readings im Device angezeigt.

@Florian,
das Attribut daysToImport steht auf 30 (Tagen).
In welchen Intervall lädt das Modul neue Daten ein?

Viele Grüße Gisbert
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Gisbert am 25 Januar 2020, 12:01:52
... und nochmals.

Ich bin noch ein wenig verwirrt durch den Titel des Threads und der Tatsache, dass es 2 Module gibt:
60_airquality.pm
60_uba.pm

Meine Definition lautet jetzt:
defmod Luftdaten uba 1134

Hat sich das Modul airquality komplett erledigt?
In der commandref ist es noch zu finden.

Viele Grüße Gisbert
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 25 Januar 2020, 12:13:52
Ich hatte etwas weiter oben eine uba_GetStations() Funktion gepostet - warum bastelt ihr die nicht einfach mit in das Modul?
Dürfte etwas bequemer sein als die CSV Datei.

Zitat von: Gisbert am 25 Januar 2020, 10:24:25
Nach einem get bekomme ich nur NO2, aber nicht die anderen Paramter, die an der Station verfügbar sind.
Sicher dass es die gibt? Die Funktionalität mehrere Stationen in einem Device zu mischen fehlt in der neuen Version anscheinend komplett.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Gisbert am 25 Januar 2020, 12:36:02
ZitatSicher dass es die gibt? Die Funktionalität mehrere Stationen in einem Device zu mischen fehlt in der neuen Version anscheinend komplett.
So war das nicht gemeint.
Ich hatte die ID zwischendurch geändert und jeweils immer nur eine Station abgefragt.
Titel: Antw:Umweltbundesamt Luftdaten - 60_airquality.pm (non-commit)
Beitrag von: Markus M. am 25 Januar 2020, 12:36:53
Zitat von: Gisbert am 25 Januar 2020, 12:01:52
Ich bin noch ein wenig verwirrt durch den Titel des Threads
;D

ZitatHat sich das Modul airquality komplett erledigt?
Eigentlich ja.
Das war mein ursprüngliches Modul das sowohl die UBA Luftdaten als auch die BfS ODL Werte enthält.
Ich nutze davon nur noch eine persönliche Version, siehe Anhang für Referenzzwecke.
Wurde nach Übernahme aber in 60_uba und 60_bfs aufgeteilt.

ZitatIn der commandref ist es noch zu finden.
Nur wenn du lokal die alte 60_airquality.pm nicht entfernt hast ;)
Titel: Antw:Umweltbundesamt Luftdaten - 60_uba.pm & 60_bfs.pm (früher 60_airquality.pm)
Beitrag von: Gisbert am 25 Januar 2020, 12:43:39
Hallo Markus,

danke für die Info. Ich werde dann die Datei 60_airquality.pm in meinem Fhem-Ordner löschen.

ZitatIch hatte etwas weiter oben eine uba_GetStations() Funktion gepostet - warum bastelt ihr die nicht einfach mit in das Modul?
Dürfte etwas bequemer sein als die CSV Datei.
Das fände ich auch besser; ich hab mir einen Wolf gesucht, bis ich es dann doch noch gefunden habe.
Ich dachte schon, wo kann das nur stehen, bis ich es gesehen hatte, als ich mit der Maus über den csv-Download drüber gefahren bin.
Es ist auch nur dort dann gewissermaßen nur flüchtig zu sehen.

Mit "ihr" fühle ich mich aber mangels Möglichkeiten (keine Entschuldigung, aber leider Fakt) nicht angesprochen.

Viele Grüße Gisbert
Titel: Antw:Umweltbundesamt Luftdaten - 60_uba.pm & 60_bfs.pm (früher 60_airquality.pm)
Beitrag von: Florian_GT am 25 Januar 2020, 13:25:16
Hallo zusammen,

dieser Thread ist eigentlich für das alte Module (Airquality) und sollte geschlossen werden. Ich habe für die beiden neuen Module jeweils einen neuen Thread erstellt. Das alte Airquality Module gibts es schon eine längere Zeit nicht mehr, dazu hatte ich schon mal geschrieben. Ich habe das Module übernommen und in UBA und BFS getrennt. Unterschiedliche Ämter und Schnittstellen. So ist die Entwicklung einfacher. Und es geht auch klarer aus den Modulen hervor, was hier an Daten zu bekommen ist.

UBA: https://forum.fhem.de/index.php/topic,107741.0.html
BFS: https://forum.fhem.de/index.php/topic,107742.0.html

Die StationID muss angepasst werden. Das hatte ich vergessen zu erwähnen. Sorry an diejenigen, die sich da einen Wolf gesucht haben.
Infos zum Update Interval und dem Handling beim Initialen erstellen und den Daten der 30 Tage die abgerufen werden gibt es im neuen Support Thread.
Titel: Antw:Umweltbundesamt Luftdaten - 60_uba.pm & 60_bfs.pm (früher 60_airquality.pm)
Beitrag von: Markus M. am 25 Januar 2020, 13:44:30
Zitat von: Florian_GT am 25 Januar 2020, 13:25:16
dieser Thread ist eigentlich für das alte Module (Airquality) und sollte geschlossen werden.

UBA: https://forum.fhem.de/index.php/topic,107741.0.html
BFS: https://forum.fhem.de/index.php/topic,107742.0.html

👍🏻
Und pass deine Signatur an 😂