FHEM Forum

FHEM - Hausautomations-Systeme => Unterstützende Dienste => Thema gestartet von: betateilchen am 26 Juli 2013, 13:09:09

Titel: 98_openweathermap
Beitrag von: betateilchen am 26 Juli 2013, 13:09:09
Hallo Forumgemeinde,

nach dem in diesem Thread (http://forum.fhem.de/index.php?topic=13000.0) ja schon einige Diskussionspunkte (u.a. curl für Fritzbox *g*) aufkamen, konnte ich es einfach nicht sein lassen, die gesamte Funktionalität in ein Modul zu kapseln, das von systemaufrufen unabhängig sein sollte.

Hier kommt die erste Version - zum Testen und zum Rückmelden.

Was kann dieses Modul?

Wetterdaten an einen vom User vorher bei www.openweathermap.org (http://www.openweathermap.org) (im Folgenden: owo) registrierten Account senden.
Die Nutzung der owo-API zum Lesen von Daten ist derzeit noch nicht unterstützt, das ist für einen späteren Zeitpunkt aber bereits geplant.

Wie nutzt man dieses Modul?

define meinWetter openweather

Damit wird ein device "meinWetter" angelegt:

(http://up.picr.de/15300433bt.png)

Die Steuerung des device erfolgt über diverse Attribute:

Für die Definition der Station selbst sind folgende Attribute vorhanden:


owoApiKey   = <apiKey> # wird derzeit noch nicht benutzt
owoDebug    = <0|1> # solange dieses Attribut nicht mit 0 definiert ist, werden keine Daten tatsächlich an owo übertragen. Wichtig während der Einrichtung des device!
owoInterval = <numerischer Wert> # Abstand zwischen den Übertragungen in Sekunden. Default: 1800
owoStation  = <Name der Station> # kann frei gewählt werden, unter diesem Namen wird die Station bei owo geführt
owoUser     = <username:password> # Benutzerdaten für den Zugriff auf owo


Die GEO-Daten der Station (latitude, longitude und altitude) werden aus der globalen FHEM-Definition (global) übernommen und von meinem Modul automatisch verwendet!

Für die Definition der zu übertragenden Wetterdaten stehen 10 Werte zur Verfügung, was in den allermeisten Fällen ausreichen sollte. Diese Attribute heißen
owoSrc0 owoSrc1 ... owoSrc9

In diesen Attributen werden immer drei Parameter, getrennt durch einen Doppelpunkt, angegeben.


allgemeine Syntax: attr <device> owoSrcN <owoParam>:<sensorName>:<readingName>

Beispiel: attr meinWetter owoSrc0 temp:sensor_Balkon:temperature


Im Beispiel wird ein Attribut owoSrc0 angelegt, das dem Modul mitteilt, es soll aus dem fhem-device "sensor_Balkon" das Reading "temperature" lesen und diesen Wert als temp an owo schicken. Die Parameternamen bei owo sind dort in der API Beschreibung festgelegt. Es können bis zu 10 dieser vorgegebenen Parameter auf diese Weise definiert werden.

Die Parameter für die GEO-Daten (lat, lon, alt) müssen nicht explizit angegeben werden!

Eine komplette Definition sieht also so aus:

(http://up.picr.de/15300568tl.png)


Die gesamte Verarbeitung wird auch im Logfile protokolliert:


2013.07.26 13:03:54 3: openweather owo started: SendData
2013.07.26 13:03:54 3: openweather owo reading: owoSrc0 temp sensor 27.1
2013.07.26 13:03:54 3: openweather owo debug:   name=Leimen&lat=49.35&long=8.68&alt=100&temp=27.1


Während der Einrichtung kann so kontrolliert werden, welche Sensoren gelesen werden und welcher generierte Datenstring das Modul an owo schickt.
Der Eintrag "debug:" wird durch "sending:" ersetzt, sobald das Attribut owoDebug auf 0 gesetzt wird und die tatsächliche Übertragung gestartet wird.


Diskussion und Rückmeldung bitte hier im Thread.
Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 27 Juli 2013, 11:56:06
Hier kommt die nächste Version...

Änderungen zur letzten Version:

Das Modul benötigt das Perl Modul JSON

feht dieses Modul auf Eurer fhem-Hardware, muss es mit cpan install JSON nachinstalliert werden. Das Modul sollte auf allen Plattformen zur Verfügung stehen.

Die Attribute owoSrcXX haben jetzt einen zweistelligen Zähler

der von 00 - 19 geht. Damit lassen sich maximal 20 Parameter (+die 3 GEO-Parameter + Stationsname) an openweather übertragen. DIe owo-Api unterstützt derzeit 18 Parameter, die gesendet werden können:


# OpenWeatherMap API parameters
# -----------------------------
# wind_dir - wind direction, grad
# wind_speed - wind speed, mps
# temp - temperature, grad C
# humidity - relative humidity, %
# pressure - atmosphere pressure
# wind_gust - speed of wind gust, mps
# rain_1h - rain in recent hour, mm
# rain_24h - rain in recent 24 hours, mm
# rain_today - rain today, mm
# snow - snow in recent 24 hours, mm
# lum - illumination, W/M²
# radiation - radiation
# dewpoint - dewpoint
# uv - UV index
#
# name - station name
# lat - latitude
# long - longitude
# alt - altitude, m


Die letzten 4 Parameter brauchen nicht defiiniert zu werden, diese werden automatisch mit übertragen. Somit sind 14 frei definierbare Parameter vorgesehen, und die maximale Anzahl von 20 definierbaren Parametern ist mehr als ausreichend, selbst wenn die owo-Api irgenwann erweitert wird.


Es können nun auch Wetterdaten über die owo-API abgerufen werden

Hierfür gibt es 3 Möglichketen:


get <devName> stationByName <cityName>

   Beispiel: get owo stationByName Heidelberg,DE


get <devName> stationById <cityId>

   Beispiel: get owo stationById 2907911


get <devName> stationByGeo [<lat> <lon>]

   Beispiel: get owo stationByGeo 49.40 8.69



Weitere Infos zur Suche nach Stationen finden sich hier: http://openweathermap.org/API (//openweathermap.org/API)

Alle drei obigen Aufrufe liefern folgende Readings:


   Readings:
     2013-07-27 11:42:51   clouds          8
     2013-07-27 11:42:51   humidity        69
     2013-07-27 11:42:51   lastRx          Sat Jul 27 11:40:27 2013
     2013-07-27 11:42:51   pressureAbs     1006
     2013-07-27 11:42:51   rawData        
     2013-07-27 11:42:51   stationId       2907911
     2013-07-27 11:42:51   stationLat      49.4000
     2013-07-27 11:42:51   stationLon      8.6900
     2013-07-27 11:42:51   stationName     Heidelberg
     2013-07-27 11:42:51   tempMax         31.7
     2013-07-27 11:42:51   tempMin         30.0
     2013-07-27 11:42:51   temperature     30.8
     2013-07-27 11:42:51   windDir         187.5
     2013-07-27 11:42:51   windSpeed       2.31


Die Beschreibung der einzelnen Werte findet sich hier: http://bugs.openweathermap.org/projects/api/wiki/Weather_Data (//bugs.openweathermap.org/projects/api/wiki/Weather_Data)

Anmerkungen:

Das Reading "lastRx" beinhaltet die letzte Aktualisierung der Daten in der Station, nicht den Abruf in fhem.

Das Reading rawData ist per default leer. Sobald man ein Attribut attr <devName> owoRaw 1 setzt, wird in diesem Fall die komplette Antwort vom Openweathermap Server im JSON Format gespeichert. Falls irgendjemand die Rohdaten selbst weiterverarbeiten möchte, kann er das gerne damit tun.

Die Positionsangaben bei stationByGeo sind optional. Werden keine Positionsdaten verwendet, werden die globalen fhem-Attribute latitude und longitude verwendet, in der Regel also der dort festgelegte eigene Standort.

Bei stationById kann das gesuchte Land mit einem Komma hinter den Städtenamen angehängt werden, falls es den Städtenamen in mehreren Ländern gibt. (siehe obiges Beispiel "Heidelberg,DE")

Die API-URL von openweather ist im Attribut owoGetUrl gespeichert. Da sich diese Adresse regelmäßig ändert, kann somit eine Anpassung auch vom Anwender durchgeführt werden, falls das Modul selbst noch nicht aktualisiert ist.

Die Daten werden NICHT automatisch aktualisiert. Vor jeder Auswertung der Readings muss also ein "get ..." abgesetzt werden. Das hat den Hintergrund, mehrere unterschiedliche Stationen abrufen und auswerten zu können.
Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 28 Juli 2013, 11:01:35
Hat eigentlich schon jemand von den sieben Downloadern das Modul getestet und kann mir bitte eine Rückmeldung geben?

Bei der finalen Version wird alles anders :) Sie wird drei Aufgaben unterstützen

1. Senden eigener Wetterdaten an openweathermap
2. Definition einer Wetterstation von owo, deren Daten dann in den Readings regelmäßig aktualisiert werden
3. Nutzung der owo-API zum Abruf einer beliebigen Station aus dem owo-Bestand ohne Aktualisierung

Alle drei Anwendungsfälle sind unabhängig voneinander nutzbar, aber auch in beliebiger Kombination und natürlich auch alle gleichzeitig.

Programmiertechnisch ist die Version schon fertig,  ich muss mich aber erst noch mit der zugehörigen Doku beschäftigen.


Ausblick auf weitere (vielleicht irgendwann) geplante Funktionen:

- Abruf von Vorhersagedaten
- optisch hübsche Darstellung (Nutzung von owo-Icons in weblink o.ä.) Dazu muss ich mich aber erst näher mit dem Thema weblink beschäftigen.

Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 28 Juli 2013, 23:27:41
Das Modul ist fertig, die komplette Doku für commandref erstellt, das Ganze ist bei SVN eingecheckt und wird ab morgen per update verteilt.

Achtung: neuer Modulname = 98_openweathermap.pm um der zugrundeliegenden Internetplattform gerecht zu werden.

Viel Spaß damit!

Und falls Fragen und/oder Probleme auftreten, bitte hier im Thread fragen.
Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 30 Juli 2013, 23:36:44
Aktuelle Änderungen/Erweiterungen:

- "set <name> send" hinzugefügt: startet für Testzwecke einen sofortigen Sende/Abruf-Zyklus, unabhängig vom definierten Intervall.

- Attribute owoSendUrl hinzugefügt

beides ist dokumentiert in commandref.
Titel: Aw: Modul 98_openweather
Beitrag von: Thomas Kregelin am 31 Juli 2013, 22:48:25
@betateilchen

Bin vor kurzem auf openweathermap.org und dann auf dein FHEM Modul gestoßen.

Vielen Dank für deine Arbeit!

In den nächsten Tagen sollte ich eine HM-WDS-OC3 Wetterstation und einen neuen CUL bekommen - dann werde ich das Modul gleich testen.

Kennst du die HM-WDS-OC3? Welche Wetterstation benutzt du?



Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 31 Juli 2013, 23:26:13
Zitat von: Thomas Kregelin schrieb am Mi, 31 Juli 2013 22:48Welche Wetterstation benutzt du?

"Wetterstation" im kompletten Sinne, eher nicht, sondern mehrere einzelne Sensoren:

Für Temperatur und Luftfeuchte: HM-WDS10-TH-O

Für Luftdruck: BMP180 direkt am RaspberryPi, auf dem FHEM läuft.

Zum Feststellen, ob es regnet (ohne Mengenmessung): HM-Sen-RD-O
Titel: Aw: Modul 98_openweather
Beitrag von: buchner51 am 02 August 2013, 16:31:43
Hallo,
Suche eine Wetterstation mit drei Sonnensensoren für Rolladensteuerung.

Für Eib Knx gibt es solche aber zum höchst Preis .
Hat hier jemand Erfahrung?

Danke.
Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 03 August 2013, 19:39:49
das ist aber hier der völlig falsche Thread für Deine Frage.
Titel: Aw: Modul 98_openweather
Beitrag von: Thomas Kregelin am 07 August 2013, 22:49:03
Ich habe die Wetterstation in Betrieb genommen; die Sensoren geben plausible Werte aus.

Leider habe ich es noch nicht geschafft, Werte an openweatermap zu schicken.

Ich bin nach Anleitung in der command ref vorgegangen. Zum Testen lasse ich zunächst nur die Temperatur senden.

Meine config:

define owo openweathermap
attr owo owoDebug 1
attr owo owoGetUrl http://api.openweathermap.org/data/2.5/weather (//api.openweathermap.org/data/2.5/weather)
attr owo owoInterval 600
attr owo owoSendUrl http://openweathermap.org/data/post (//openweathermap.org/data/post)
attr owo owoSrc00 temp:OC3:temperature
attr owo owoStation StuSta
attr owo owoUser ***:***

Das log zeigt mir:

2013.08.07 22:38:27 3: openweather owo started: SendData
2013.08.07 22:38:27 3: openweather owo reading: owoSrc00 temp OC3 23.4
2013.08.07 22:38:27 3: openweather owo debug:   name=StuSta&lat=48.1831&long=11.6114&alt=?&temp=23.4&APPID=

Wenn ich mystats in meinem owo Onlineprofil anwähle erscheinen keine Werte.

Testweise habe ich per Terminal folgenden Befehl probiert:

curl -d 'temp=20&lat=49.11&long=24.11&alt=200' --user 'username:****' http://openweathermap.org/data/post (//openweathermap.org/data/post)

Wenn ich den Befehl mit meinen Profildaten entsprechend angepasse - wird der Temperaturwert korrekt gesendet und online angezeigt.

Was könnte ich machen um den Fehler zu finden?
Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 07 August 2013, 22:53:16
Zitat von: Thomas Kregelin schrieb am Mi, 07 August 2013 22:49Ich bin nach Anleitung in der command ref vorgegangen.

Nein, bist Du nicht.

Zitat von: Thomas Kregelin schrieb am Mi, 07 August 2013 22:49Was könnte ich machen um den Fehler zu finden?

Nochmal lesen, was in der commandref steht.

(http://up.picr.de/15430193aw.jpg)

Und Du solltest Deine altitude noch als globales Attribut pflegen, die Höhe fehlt nämlich noch in Deinem Sendestring.
Titel: Aw: Modul 98_openweather
Beitrag von: Thomas Kregelin am 07 August 2013, 23:05:31
Nachdem ich meinen Post abgesendet hatte, habe ich den Fehler mit dem Debug auch gesehen.

Tja - zu kurz gelesen.

Leider funktioniert es immer noch nicht. Habe auch ein attr global altitude festgelegt - leider kein Unterschied.

Mein log:

2013.08.07 22:56:46 3: openweather owo started: SendData
2013.08.07 22:56:46 3: openweather owo reading: owoSrc00 temp OC3 23.4
2013.08.07 22:56:47 3: openweather owo sending: name=StuSta&lat=48.1831&long=11.6114&alt=515&temp=23.4&APPID=
Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 07 August 2013, 23:29:14
Zitat von: Thomas Kregelin schrieb am Mi, 07 August 2013 23:05leider kein Unterschied.

vorher:

2013.08.07 22:38:27 3: openweather owo debug: name=StuSta&lat=48.1831&long=11.6114&alt=?&temp=23.4&APPID=

nachher:

2013.08.07 22:56:47 3: openweather owo sending: name=StuSta&lat=48.1831&long=11.6114&alt=515&temp=23.4&APPID=

Anstatt "debug" steht da jetzt "sending". Das Modul versucht also definitiv, die Daten an owo zu schicken. Wenn dann noch etwas schiefgeht, funktioniert die Verbindung an sich nicht. Überprüfe nochmal Deinen user und das password.

Welche Readings werden Dir jetzt angezeigt? Es sollten mindestens zwei Readings mit my_ am Anfang vorhanden sein: my_temp und my_lastSent
Titel: Aw: Modul 98_openweather
Beitrag von: Thomas Kregelin am 07 August 2013, 23:53:34
Meine Readings:

my_lastSent Wed Aug 7 23:36:41 2013 2013-08-07 23:36:41
my_temp 23 2013-08-07 23:36:41
state active 2013-08-07 23:36:41

In meinem onlineprofil werden keine aktualisierten Daten angezeigt. Es stehen immernoch die Daten dort, die ich mit dem curl Befehl aus dem Terminal abgeschickt hatte.

Wahrscheinlich liegt es dann daran, dass fhem die Daten nicht vernünftig übertragen kann. Ich kann beispielsweise schon keine fhem updates abrufen - er gibt mir ständig:

Can't get release.pm from http://fhem.de (//fhem.de)

Vielleicht liegt es an irgendwelchen Firewall Einstellungen (Studentenwohnheim).

Werde weiter nach dem Fehler suchen.

Danke für die Hilfe.
Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 07 August 2013, 23:58:35
Zitat von: Thomas Kregelin schrieb am Mi, 07 August 2013 23:53Vielleicht liegt es an irgendwelchen Firewall Einstellungen (Studentenwohnheim).

das sagst Du erst jetzt?

Da ist mit Sicherheit ein Proxy-Server dazwischen, dann kann das nicht funktionieren.
Dieses Problem habe ich z.B. auch aus unserem Firmennetzwerk.

Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 08 August 2013, 14:11:46
Hallo Thomas,

kannst Du mal bitte die hier angehängte Version testen?

Die liest Proxy-Einstellungen aus Deiner Systemumgebung und berücksichtigt diese (falls vorhanden) beim Verbindungsaufbau.


Sollte das nicht funktionieren, werde ich die Proxy-Einstellungen per Attribut konfigurierbar einbauen.

Viele Grüße
Udo
Titel: Aw: Modul 98_openweather
Beitrag von: Thomas Kregelin am 08 August 2013, 20:58:18
@betateilchen

Perfekt!

Mit der modifizierten Version funktionierte es auf Anhieb.

Vielen Dank für die schnelle Hilfe.

Interessanter Weise habe ich weder systemseitig (Ubuntu) noch browserseitig (Firefox) einen Proxy eingestellt. Es funktionieren auch alle Dienste die ich soweit genutzt habe. Nur fhem scheint Probleme zu haben.

Kennst du bei dieser Gelegenheit auch eine Abhilfe für das update Problem (Can't get release.pm from http://fhem.de (//fhem.de))?
Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 08 August 2013, 21:21:01
Zitat von: Thomas Kregelin schrieb am Do, 08 August 2013 20:58Kennst du bei dieser Gelegenheit auch eine Abhilfe für das update Problem

Ja: installiere Dir einen svn-Client und hole Dir die updates direkt per SVN auf Deinen Rechner. Das funktioniert auch über eine simple http-Verbindung. So habe ich das Problem bei mir im Büro gelöst, um an die Updates zu kommen. Damit bist Du auch nicht mehr auf die morgendliche Bereitstellung angewiesen, sondern kannst das Update beliebig oft am Tag machen. Sobald ein Entwickler eine Änderung veröffentlich hat, steht sie Dir dann auch zum Abruf zur Verfügung. Lediglich das Backup vor dem Update findet dann nicht mehr automatisch statt, aber das läßt sich ja problemlos in ein linux-Script einbauen, wenn es das Gewissen beruhigt.
Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 11 August 2013, 22:00:07
Zitat von: bgewehr schrieb am So, 11 August 2013 21:33Nun ließ sich das Modul laden und anwenden, aber nicht alle Readings werden gefüllt:
Aus der JSON Antwort von openweathermap fehlen einige Angaben:

(siehe Anhang / see attachement)

liegt das an allow_nonref?

Bei mir werden für Essen momentan folgende Readings geliefert:

(http://up.picr.de/15472284xd.png)

Wenn alle anderen Readings bei Dir korrekt dekodiert werden, liegt es nicht an der json Auswertung, denn die ist für alle Readings gleich.
Wenn eine Station einen bestimmten Wert nicht liefert, taucht das Reading einfach nicht auf.
Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 12 August 2013, 00:08:18
Ich arbeite gerade an einer Version, bei der mittels eines neuen Attributes eingestellt werden kann, ob die Daten per JSON oder per XML verarbeitet werden sollen, da JSON auf vielen Fritzboxen nicht (ohne weiteres) funktioniert.

Welcher Fritzbox-Nutzer, der noch kein JSON auf seiner Kiste hat, wäre bereit, mich beim Testen zu unterstützen? Mit fehlt leider die entsprechende Hardware für eigene Tests.

Warum beide Versionen ermöglichen?

Ganz einfach: Bei der API-Nutzung mittels JSON werden einige Daten mehr übertragen als bei XML.


-----
Titel: Aw: Modul 98_openweather
Beitrag von: bgewehr am 12 August 2013, 08:37:26
Zum Thema JSON auf Fritzbox: Ich habe es mit meinem Volkszaehler Modul und auch mit Deinem owo Modul erfolgreich zum Laufen gebracht.


Das Modul nutzt einen JSON-Interpreter, um die Antwort vom Volkszaehler in eine PERL-Variable zu wandeln. Dazu sind einige zusätzliche PERL Module notwendig.
JSON für PERL kann von hier geladen werden:
http://cpansearch.perl.org/src/MAKAMAKA/JSON-1.15/lib/JSON/


Ich habe die json.pm im fhem/FHEM liegen und den Ordner JSON ebenfalls, damit geht alles!

Allerdings sind die Funktiosnamen dieser "alten" JSON Version anders, daher musste ich das owo Modul anpassen, siehe Anhang.

Anstelle decode heißt es dort noch jsonToObj. Damit läuft es nun auf der Fritze 7390.
Titel: Aw: Modul 98_openweather
Beitrag von: bgewehr am 12 August 2013, 08:39:12
Mal ne andere Frage: Wie kann ich die Regenmenge der letzten 12 Stunden ermitteln und loggen?

Ich stelle mir einen Graphen der Regenmenge vor, der mit dem gleitenden 12h Mittelwert gefüllt wird.
Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 12 August 2013, 09:33:57
Es gibt grundsätzlich Regenwerte für verschiedene Zeiträume, (1h, 12h, 24h, today) Welche Werte von einer Wetterstation gemeldet werden, läßt sich allerdings als reiner Abfrager nicht beeinflussen.

Bei openweathermap kannst Du laut api-Beschreibung nur den 3h Wert bekommen:

(http://up.picr.de/15475901ag.png)

Als Gegenbeispiel: Der Deutsche Wetterdienst liefert die Regenwerte 1h und 24h.

Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 12 August 2013, 12:07:08
Zitat von: bgewehr schrieb am Mo, 12 August 2013 08:37Zum Thema JSON auf Fritzbox: Ich habe es mit meinem Volkszaehler Modul und auch mit Deinem owo Modul erfolgreich zum Laufen gebracht.

Hattest Du eigentlich mal meinen gestern hier im Forum geschriebenen Ratschlag ausprobiert?

Link
Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 13 August 2013, 06:54:56
98_openweathermap benötigt ab sofort das Perl Modul XML::Simple, da es aktuell beide Decodierverfahren (JSON und XML) beherrscht.

Sobald openweathermap.org es geschafft hat, in beiden Datasets die gleichen Informationen zu liefern (ich stehe dazu mit owo in Diskussion) wird die JSON Dekodierung aus dem Modul verschwinden.


-----
Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 13 August 2013, 22:08:37
Seit heute nachmittag, ca. 16:45 Uhr funktioniert das Senden der Daten an owo nicht mehr. Scheint aber ein Fehler auf dem Zielserver zu sein, von dort kommt nur ein Error 500 zurück.

Es liegt also nicht am fhem Modul, wenn in Eurem Account keine Daten aktualisiert werden. Schauen wir mal, wann es wieder funktioniert. Die ab morgen verfügbare Modulversion wird einen solchen Übertragungsfehler auch in den Readings anzeigen. Die Version ist bereits eingecheckt.



-----
Titel: Aw: Modul 98_openweather
Beitrag von: Frank S. am 08 September 2013, 07:00:30
Moin.

Besteht das Problem bei der Übetragung zum Server immer noch? Ich habe gestern versucht, meine Daten an den Server zu senden. Es hat aber bisher nicht geklappt.

Im LogFile steht folgende Fehlermeldung


2013.09.08 07:39:21 3: openWeather return value: -1

Ich nutze folgendes Beispiel zur Übertragung:

define openWeather notify openWeather { my $temp = ReadingsVal("Temperatursender","temperature", "");; my $humi = ReadingsVal("Temperatursender", "humidity", "");; system("curl -d 'temp=$temp&humidity=$humi&lat=xx.xxxx&long=y.yyyy&name=Stationsname' --user 'user:passwort' http://openweathermap.org/data/post") }

define send_openWeather at +*00:30:00 trigger openWeather


Schöne Grüße
Frank S.
Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 08 September 2013, 10:05:24
Deine Frage hat nichts mit dem Modul 98_openweathermap zu tun, denn für das Modul brauchst Du keine notify und trigger mehr.

Wenn ich mich recht erinnere, ist -1 keine Fehlermeldung. Schau doch bei openweathermap einfach mal in die Landkarte, dort sollte Deine Meldung angezeigt werden, wenn Du "Show Station Details" anklickst.

Derzeit (Stand vergangener Donnerstag) sind mir keine Störungen bei der Datenübertragung bekannt.
Titel: Aw: Modul 98_openweather
Beitrag von: bgewehr am 08 September 2013, 17:53:15
Ich bekomme im Moment für Essen nur alte Daten, wenn ich danach auf openweathermap.org suche... found x Stations, X bad...
Titel: Aw: Modul 98_openweather
Beitrag von: Frank S. am 08 September 2013, 21:10:09
Moin.

Tschuldigung, dass ich meien Frage ans falsche Thema gehängt habe. Da hier der über den Ausfall des Servers berichtet wurde, habe ich hier nach gefragt.

Ich habe noch einmal nachgesehen. Meine Station wird noch nicht auf der Karte angezeigt. Auch wird sie unter "my stats" nicht angezeigt.

Schöne Grüße
Frank
Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 08 September 2013, 21:27:48
@Frank S. probier doch mal die Übertragung mit Hilfe des Moduls, da gibts auch ein paar lesbare Rückmeldungen zur Analyse

@bgewehr:

get owo stationByName Essen,DE liefert bei mir aktuell:


Readings:
     2013-09-08 21:25:10   _dataSource     www.openweathermap.org
     2013-09-08 21:25:10   _decodedWith    XML
     2013-09-08 21:25:10   _httpResponse_g 200 OK
     2013-09-08 21:25:10   g_clouds        92
     2013-09-08 21:25:10   g_humidity      100
     2013-09-08 21:25:10   g_lastWx        2013-09-08T19:25:10
     2013-09-08 21:25:10   g_pressure      1019.72
     2013-09-08 21:25:10   g_stationCountry DE
     2013-09-08 21:25:10   g_stationId     2928810
     2013-09-08 21:25:10   g_stationLat    51.4500
     2013-09-08 21:25:10   g_stationLon    7.0167
     2013-09-08 21:25:10   g_stationName   Essen
     2013-09-08 21:25:10   g_sunrise       2013-09-08T04:56:55
     2013-09-08 21:25:10   g_sunset        2013-09-08T18:01:49
     2013-09-08 21:25:10   g_tempMax       14.1
     2013-09-08 21:25:10   g_tempMin       14.1
     2013-09-08 21:25:10   g_temperature   14.1
     2013-09-08 21:25:10   g_windDir       350
     2013-09-08 21:25:10   g_windSpeed     2.55


Das sind durchaus plausible und aktuelle Daten.
Titel: Aw: Modul 98_openweather
Beitrag von: bgewehr am 08 September 2013, 21:56:12
OK, gut. Auf openweathermap.org kommen dazu nur alte Daten...
Titel: Aw: Modul 98_openweather
Beitrag von: Frank S. am 08 September 2013, 22:11:26
Moin.

Danke für den Hinweis. Ich habe es gerade ausprobiert. Auf meiner FritzBox 7390 habe ich allerdings das JSON-Problem.

Werde es die Tage noch einmal ausprobieren.

Schöne Grüße
Frank
Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 09 September 2013, 00:07:55
ZitatAuf meiner FritzBox 7390 habe ich allerdings das JSON-Problem.

Das ist kein Problem, die Lösung steht auch im Modul beschrieben. Leg Dir im Modulverzeichnis FHEM ein "Dummymodul" namens JSON.pm an, das lediglich aus einer einzigen Zeile besteht:

return 1;

Für den reinen "Sendebetrieb" war es das dann schon, das Laden des Moduls und das Senden von Wetterdaten sollte problemlos funktionieren.

Wenn Du das Modul auch für den Abruf von Wetterdaten benutzen willst, schaltest Du um auf XML mit

attr <deviceName> owoUseXml 1

Dann klappts auch mit dem Datenempfang, für die Decodierung wird dann XML verwendet.



---
Titel: Aw: Modul 98_openweather
Beitrag von: rudolfkoenig am 09 September 2013, 08:43:56
@betateilchen, falls Du Interesse daran hast: statt "use JSON" kann man auch "eval require JSON" verwenden, um ein fehlendes JSON.pm zu ueberleben. Siehe z.Bsp TcpServerUtils.pm
Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 09 September 2013, 09:08:38
Danke für den Tipp, ich werde das nach dem Urlaub mal testen. Das hätte den Vorteil, dass ich dann sogar automatisch auf XML umschalten kann.
Titel: Aw: Modul 98_openweather
Beitrag von: Frank S. am 09 September 2013, 17:22:01
Moin.

Danke für die Hilfe. Ich habe das Modul zum Laufen bekommen.

Die Daten werden allerdings immer noch nicht unter "mystats" angezeigt.

Nun bekomme ich nach dem Senden folgende Debug-Ausgabe:

2013.09.09 17:15:59 3: owo owo: started: SendData
2013.09.09 17:15:59 3: owo owo: reading: owoSrc00 temp Temperatursender 16.8
2013.09.09 17:15:59 3: owo owo: reading: owoSrc01 humidity Temperatursender 76
2013.09.09 17:15:59 3: owo owo: debug:   name=FSte&lat=xx.xx&long=y.yy&alt=&temp=16.8&humidity=76&APPID=

Schöne Grüße
Frank
Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 09 September 2013, 20:11:52
Mich interessieren weniger die Ausgaben im Log, sondern viel mehr die Readings, die mit my_ anfangen.

Übrigens: Du sendest gar keine Daten ab, sondern Dein Modul läuft im Debug-Modus. Manchmal hilft es, die Doku zu lesen.

Setze mal das Attribut owoDebug auf 0

Wenn das Senden aktiviert ist, steht im Log anstatt

2013.09.09 17:15:59 3: owo owo: debug: name=FSte&lat=xx.xx&long=y.yy&alt=&temp=16.8&humidity=76&APPID=

nämlich

2013.09.09 17:15:59 3: owo owo: sending: name=FSte&lat=xx.xx&long=y.yy&alt=&temp=16.8&humidity=76&APPID=



Meine Daten werden aktuell in den owo-Maps auch nicht dargestellt, aber in mystats sind die Daten aktuell.
Titel: Aw: Modul 98_openweather
Beitrag von: Frank S. am 09 September 2013, 22:15:49
Moin.

Danke für den dezenten Hinweis. Man sollte doch besser gleich die Doku genau lesen.

Ich habe mal das Attribut owoDebug auf 0 gesetzt und nun funktioniert alles wie gewünscht. Danke für Eure Hilfe.

Schöne Grüße
Frank


Titel: Aw: Modul 98_openweather
Beitrag von: HarryT am 10 September 2013, 22:51:18
Hi

Before starting I updated my Fhem installation.

I have a fritzbox 7390 and at the moment I can send data to openweathermap.org but get errors when I read them. Do you still need testers?

I added an empty JSON.pm to my installation with the 1 line added as described in the forum.

In fhem.cfg I have:
define owo openweathermap
attr owo owoUseXml 1

Calling
sub tt($)
{
fhem("get owo stationByName Heidelberg,DE");
}

results in:

Can't locate unicore/Heavy.pl in @INC (@INC contains: /var/InternerSpeicher/fhem/lib/perl5/site_perl/5.12.2/mips-linux /var/InternerSpeicher/fhem/lib/perl5/site_perl/5.12.2/mips-linux /var/InternerSpeicher/fhem/lib/perl5/site_perl/5.12.2 /var/InternerSpeicher/fhem/lib/perl5/5.12.2/mips-linux /var/InternerSpeicher/fhem/lib/perl5/5.12.2/mips-linux /var/InternerSpeicher/fhem/lib/perl5/5.12.2 /opt/lib/perl5/site_perl/5.12.2/mips-linux /opt/lib/perl5/site_perl/5.12.2 /opt/lib/perl5/5.12.2/mips-linux /opt/lib/perl5/5.12.2 . ./FHEM) at /var/InternerSpeicher/fhem/lib/perl5/5.12.2/utf8_heavy.pl line 96.

Titel: Aw: Modul 98_openweather
Beitrag von: HarryT am 11 September 2013, 14:38:31
Hello all

I found the solution for my problem. To one who gets the same problems. have a look at http://www.fhemwiki.de/wiki/Unicode_FritzBox (//www.fhemwiki.de/wiki/Unicode_FritzBox)

{HT}
Titel: Aw: Modul 98_openweather
Beitrag von: HarryT am 11 September 2013, 15:40:56
Zitat von: betateilchen schrieb am So, 28 Juli 2013 11:01Ausblick auf weitere (vielleicht irgendwann) geplante Funktionen:

- Abruf von Vorhersagedaten


That would be nice.

It seems the amount of rain/snow is not shown in fhem yet. Would be good if that is also possible.

{HT}
Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 12 September 2013, 09:53:29
Zitat von: betateilchen schrieb am Mo, 09 September 2013 20:11Meine Daten werden aktuell in den owo-Maps auch nicht dargestellt, aber in mystats sind die Daten aktuell.

Im Moment werden meine Wetterdaten auch in den Maps wieder korrekt angezeigt.
Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 12 September 2013, 09:56:20
Zitat von: HarryT schrieb am Mi, 11 September 2013 15:40It seems the amount of rain/snow is not shown in fhem yet. Would be good if that is also possible.

The module can alreadz handle this without any problem. Data for rain and snow will be shown if they are delivered in station's answer. But there are two problems:

1. Not all stations provide these informations in answer dataset
2. Dataset in XML does not contain same data than the JSON dataset, normally XML contains less data

Titel: Aw: Modul 98_openweather
Beitrag von: HarryT am 12 September 2013, 10:27:18
Zitat von: betateilchen schrieb am Do, 12 September 2013 09:56
Zitat von: HarryT schrieb am Mi, 11 September 2013 15:40It seems the amount of rain/snow is not shown in fhem yet. Would be good if that is also possible.

The module can alreadz handle this without any problem. Data for rain and snow will be shown if they are delivered in station's answer. But there are two problems:

1. Not all stations provide these informations in answer dataset
2. Dataset in XML does not contain same data than the JSON dataset, normally XML contains less data


I use the version which came with FHEM update on my Fritzbox 7390. Is this the latest?

The module displays the complete xml it gets in the logfile. Good for debuging, but I would suggest to surpress this in the end, the same for the data sended to openweathermap. The same for the sended data.
In the xml I see the rain amount. But in the readings I don't see them.

If it helps, I volunteer for testing your module on FB7390 and deliver feedback.

{HT}
 
Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 12 September 2013, 19:35:04
Zitat von: HarryT schrieb am Do, 12 September 2013 10:27I use the version which came with FHEM update on my Fritzbox 7390. Is this the latest?

Sure.

Zitat von: HarryT schrieb am Do, 12 September 2013 10:27but I would suggest to surpress this in the end, the same for the data sended to openweathermap. The same for the sended data.

Module uses standard logging facilities inside fhem. So you can configure output to logfile simply by using verbose attribute yourself. See commandref for details.

Zitat von: HarryT schrieb am Do, 12 September 2013 10:27In the xml I see the rain amount.

Maybe openweathermap changed content of XML dataset. I had some discussions with responsible developers there regarding differences between JSON and XML. I will check this in about two weeks.
Titel: Aw: Modul 98_openweather
Beitrag von: Frank S. am 18 September 2013, 07:37:45
Moin.

Mir ist heute noch etwas aufgefallen. Ist es möglich das bei Übertagung des Wertes 0, dies nicht bei openweather.org aktualisiert wird? Dies ist unter anderem beim Wert "rain today" vorgestern war der Wert 7.2, gestern und heute bisher 0. Der Graf bieb bei 7.2 stehen und ist nicht auf 0 aktualisiert worden.

Laut Logfile wird aber der Wert 0 übertragen.

Schöne Grüße
Frank
Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 19 September 2013, 11:44:33
Das ist aber eine Frage, die nur openweathermap beantworten kann. Was die dort mit den übertragenen Daten machen, kann ich nicht beeinflussen.
Und selbst die grafische Aufbereitung der Daten dort wird extern durchgeführt und nicht von openweathermap selbst.


---
Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 19 September 2013, 11:55:14
Zitat von: HarryT schrieb am Do, 12 September 2013 10:27The module displays the complete xml it gets in the logfile.
...
In the xml I see the rain amount. But in the readings I don't see them.

I can not find rain data in any XML dataset. Please post an example with valid data here.
Titel: Aw: Modul 98_openweather
Beitrag von: Frank S. am 20 September 2013, 11:49:18
Moin.

Ich habe mir dass noch mal bei openweather.org angeschaut. Es scheint wirklich bei der grafischen Darstellung ein Problem zu geben. So ist die Darstellung der Kurven für Tages- und Stundenwerte richtig. Nur die Anzeige der Ticks bleibt beim letzten Wert hängen. Also im großen und ganzen alles richtig.

Noch mal Danke für Eure Mühen, funktioniert super.

Schöne Grüße
Frank
Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 20 September 2013, 13:22:15
Seit heute braucht das Modul nicht mehr zwingend das JSON Modul für das Decodieren der Daten, standardmäßig wird nun XML verwendet.
Wer das JSON Modul auf seinem System verfügbar hat, kann das Attribut owoUseXml auf 0 setzen (oder löschen) um JSON zu verwenden.

Damit sollten vor allem die Benutzer irgendwelcher dreibuchstabiger "Hardware" aus Berlin ein paar Probleme weniger haben.
Titel: Aw: Modul 98_openweather
Beitrag von: HarryT am 05 Oktober 2013, 15:09:27
Zitat von: betateilchen schrieb am Do, 19 September 2013 11:55
Zitat von: HarryT schrieb am Do, 12 September 2013 10:27The module displays the complete xml it gets in the logfile.
...
In the xml I see the rain amount. But in the readings I don't see them.

I can not find rain data in any XML dataset. Please post an example with valid data here.

Hi

Sorry for the delay, I was away for some time. Unfortunately the current version doesn't show the xml in the logfile any longer. And my logging is crashed during my abstance. Do you still have a version which displays the incoming xml in the logfile for debugging?

BTW openweathermap shows the time in GMT. Is it possible to convert these to the time in your actual place?

{HT}  
Titel: Aw: Modul 98_openweather
Beitrag von: betateilchen am 05 Oktober 2013, 18:20:46
Please read the module's documentation in commandref. You can configure the logging yourself. I did not change anything regarding the logging.

BTW: the more complete JSON dataset is shown with localtime conversion.
Titel: Antw:Modul 98_openweather
Beitrag von: cwagner am 13 Oktober 2013, 18:32:08
Dieses Modul hat mir ein schönes Wochenende bereitet: Interessante Geschichte und letztendlich auch wirklich gut gemacht. Nun läuft alles seit ein paar Stunden und da fällt mir im Log (verbose=3) auf, dass jeder Sendevorgang doppelt abläuft:

2013.10.13 18:05:52 3: owo owo: started: SendData
2013.10.13 18:05:52 3: owo owo: reading: owoSrc00 temp Wetterstation 8.6
2013.10.13 18:05:53 3: owo owo: reading: owoSrc01 humidity Wetterstation 85
2013.10.13 18:05:53 3: owo owo: reading: owoSrc02 wind_dir Wetterstation 280
2013.10.13 18:05:53 3: owo owo: reading: owoSrc03 rain_today RegenmengeTag 18.42194092827
2013.10.13 18:05:53 3: owo owo: reading: owoSrc04 wind_speed WindSpeed_mps 0
2013.10.13 18:05:53 3: owo owo: reading: owoSrc05 rain_1h RegenmengeLast1Hours 0
2013.10.13 18:05:53 3: owo owo: reading: owoSrc06 rain_24h RegenmengeLast24Hours 0
2013.10.13 18:05:53 3: owo owo: reading: owoSrc07 dewpoint Wetterstation 6.8
2013.10.13 18:05:53 3: owo owo: sending: name=Osterholz-Scharmbeck, DE&lat=53.120031&long=8.736286&alt=4&temp=8.6&humidity=85&wind_dir=280&rain_today=18.42194092827&wind_speed=0&rain_1h=0&rain_24h=0&dewpoint=6.8&APPID=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
2013.10.13 18:05:54 3: owo owo: htmlResponse: 200 OK
2013.10.13 18:05:59 3: owo owo: started: SendData
2013.10.13 18:05:59 3: owo owo: reading: owoSrc00 temp Wetterstation 8.6
2013.10.13 18:05:59 3: owo owo: reading: owoSrc01 humidity Wetterstation 85
2013.10.13 18:05:59 3: owo owo: reading: owoSrc02 wind_dir Wetterstation 280
2013.10.13 18:05:59 3: owo owo: reading: owoSrc03 rain_today RegenmengeTag 18.42194092827
2013.10.13 18:05:59 3: owo owo: reading: owoSrc04 wind_speed WindSpeed_mps 0
2013.10.13 18:05:59 3: owo owo: reading: owoSrc05 rain_1h RegenmengeLast1Hours 0
2013.10.13 18:05:59 3: owo owo: reading: owoSrc06 rain_24h RegenmengeLast24Hours 0
2013.10.13 18:05:59 3: owo owo: reading: owoSrc07 dewpoint Wetterstation 6.8
2013.10.13 18:05:59 3: owo owo: sending: name=Osterholz-Scharmbeck, DE&lat=53.120031&long=8.736286&alt=4&temp=8.6&humidity=85&wind_dir=280&rain_today=18.42194092827&wind_speed=0&rain_1h=0&rain_24h=0&dewpoint=6.8&APPID=XXXXXXXXXXXXXXXXXXXXXXX
2013.10.13 18:06:00 3: owo owo: htmlResponse: 200 OK

Könnte es damit zusammenhängen, dass unsere kleine Stadt einen langen Doppelnamen hat?

Herzliche Grüße

Christian
Titel: Antw:Modul 98_openweather
Beitrag von: betateilchen am 13 Oktober 2013, 19:10:04
Komisch... am Namen mit dem Bindestrich liegt es sicher nicht.

Lass mal bitte das ",DE" weg und teste nochmal.

Ansonsten könnte es auch sein, dass da zwei Timer gestartet sind. Mach mal ein "shutdown restart" wenn die erste Maßnahme nicht greift.

Welche Modulversion hast Du im Einsatz?
Titel: Antw:Modul 98_openweather
Beitrag von: CQuadrat am 16 Oktober 2013, 15:52:49
Cooles Modul!

Hat mir heute während eines ereignisarmen Arbeitstages die Zeit vertrieben: OpenWeatherMap hat jetzt einen Messpunkt mehr  ;)

Danke an den Entwickler !


Wird der Datenupload während Internet-Downzeiten eigentlich gepuffert und nach einem Reconnect nachträglich hochgeladen?
Titel: Antw:Modul 98_openweather
Beitrag von: betateilchen am 16 Oktober 2013, 16:18:38
Zitat von: CQuadrat am 16 Oktober 2013, 15:52:49
Wird der Datenupload während Internet-Downzeiten eigentlich gepuffert und nach einem Reconnect nachträglich hochgeladen?

nein.

Das würde auch nichts nützen, weil der Timestamp der Datenerfassung nicht mitgesendet wird, somit wären die Daten nicht zuordenbar.
Titel: Antw:Modul 98_openweather
Beitrag von: cwagner am 16 Oktober 2013, 21:12:41
Also, das habe ich noch einmal getestet: Das DE weggelassen, ja unsere Stadt um die zweite Hälfte reduziert. Eine doppelte Definition oder doppelte Notifies kann ich ausschließen. In beiden Fällen habe ich immer noch zwei Log-Einträge je Sendevorgang:
2013.10.15 22:37:36 3: owo owo: started: SendData
2013.10.15 22:37:36 3: owo owo: reading: owoSrc00 temp Wetterstation 7.8
2013.10.15 22:37:36 3: owo owo: reading: owoSrc01 humidity Wetterstation 99
2013.10.15 22:37:36 3: owo owo: reading: owoSrc02 wind_dir Wetterstation 95
2013.10.15 22:37:36 3: owo owo: reading: owoSrc03 rain_today RegenmengeTag 1.74261603375532
2013.10.15 22:37:36 3: owo owo: reading: owoSrc04 wind_speed WindSpeed_mps 0
2013.10.15 22:37:36 3: owo owo: reading: owoSrc05 rain_1h RegenmengeLast1Hours 0
2013.10.15 22:37:36 3: owo owo: reading: owoSrc06 rain_24h RegenmengeLast24Hours 0
2013.10.15 22:37:36 3: owo owo: reading: owoSrc07 dewpoint Wetterstation 6.8
2013.10.15 22:37:36 3: owo owo: sending: name=Osterholz&lat=53.120031&long=8.736286&alt=4&temp=7.8&humidity=99&wind_dir=95&rain_today=1.74261603375532&wind_speed=0&rain_1h=0&rain_24h=0&dewpoint=6.8&APPID=XXXXXXXXXX
2013.10.15 22:37:37 3: owo owo: htmlResponse: 200 OK

2013.10.15 22:37:43 3: owo owo: started: SendData
2013.10.15 22:37:43 3: owo owo: reading: owoSrc00 temp Wetterstation 7.8
2013.10.15 22:37:43 3: owo owo: reading: owoSrc01 humidity Wetterstation 99
2013.10.15 22:37:43 3: owo owo: reading: owoSrc02 wind_dir Wetterstation 95
2013.10.15 22:37:43 3: owo owo: reading: owoSrc03 rain_today RegenmengeTag 1.74261603375532
2013.10.15 22:37:43 3: owo owo: reading: owoSrc04 wind_speed WindSpeed_mps 0
2013.10.15 22:37:43 3: owo owo: reading: owoSrc05 rain_1h RegenmengeLast1Hours 0
2013.10.15 22:37:43 3: owo owo: reading: owoSrc06 rain_24h RegenmengeLast24Hours 0
2013.10.15 22:37:43 3: owo owo: reading: owoSrc07 dewpoint Wetterstation 6.8
2013.10.15 22:37:43 3: owo owo: sending: name=Osterholz&lat=53.120031&long=8.736286&alt=4&temp=7.8&humidity=99&wind_dir=95&rain_today=1.74261603375532&wind_speed=0&rain_1h=0&rain_24h=0&dewpoint=6.8&APPID=XXXXXXXXXXXXXXXXXXXXXXXXXX
2013.10.15 22:37:44 3: owo owo: htmlResponse: 200 OK

Internals:
   CFGFN      ./FHEM/wetter.cfg
   NAME       owo
   NR         252
   NTFY_ORDER 50-owo
   STATE      active
   TYPE       openweathermap
   Readings:
     2013-10-16 07:08:02   my_dewpoint     6.8
     2013-10-16 07:08:01   my_humidity     99
     2013-10-16 07:08:02   my_lastSent     Wed Oct 16 07:08:02 2013
     2013-10-16 07:08:02   my_rain_1h      0
     2013-10-16 07:08:02   my_rain_24h     0
     2013-10-16 07:08:02   my_rain_today   1.74261603375532
     2013-10-16 07:08:02   my_response     {"message":"","cod":"200","id":"65955"}
     2013-10-16 07:08:01   my_temp         10
     2013-10-16 07:08:02   my_wind_dir     65
     2013-10-16 07:08:02   my_wind_speed   0
     2013-10-16 07:08:02   state           active
   Helper:
     AVAILABLE  1
     INTERVAL   1800
Attributes:
   owoApiKey  XXXXXXXXXXXXXXXXXX
   owoDebug   0
   owoGetUrl  http://api.openweathermap.org/data/2.5/weather
   owoInterval 1800
   owoSendUrl http://openweathermap.org/data/post
   owoSrc00   temp:Wetterstation:temperature
   owoSrc01   humidity:Wetterstation:humidity
   owoSrc02   wind_dir:Wetterstation:windDirection
   owoSrc03   rain_today:RegenmengeTag:state
   owoSrc04   wind_speed:WindSpeed_mps:state
   owoSrc05   rain_1h:RegenmengeLast1Hours:state
   owoSrc06   rain_24h:RegenmengeLast24Hours:state
   owoSrc07   dewpoint:Wetterstation:dewpoint:state
   owoStation Osterholz
   owoUseXml  1
   owoUser    XXXXXXXXXXXXXXXXXXXX
   room          Wetter
   verbose     3


Herzliche Grüße
Christian
Titel: Antw:Modul 98_openweather
Beitrag von: betateilchen am 16 Oktober 2013, 21:25:39
Also zum einen sind viele Deiner Werte zu lang, vor allem latitude und longitude sollten nicht mehr als 4 Nachkommastellen haben, sonst kriegt der owo-Server Kummer.

Und dann irritiert mich, dass das doppelte Senden in einem Abstand von 7 Sekunden erfolgt. Da MUSS es irgendwo zwei Schleifen geben, anders kann solch ein Verhalten eigentlich nicht auftreten.

Wie sieht denn Deine fhem.cfg aus? Du hast ja die Definition ausgelagert. Gibt es in fhem.cfg noch irgendwo einen Eintrag, der was mit openweathermap zu tun hat?

Ich habe versucht, das Fehlerbild hier zu reproduzieren - ohne Erfolg.



Titel: Antw:Modul 98_openweather
Beitrag von: cwagner am 19 Oktober 2013, 14:21:36
Ganz herzlichen Dank für die Mühe, die Du, Betateilchen Dir gibtst. Deine Tipps bin ich so nachgegangen, vor allem habe ich die OWO-Definition ins fhem.cfg verlegt. Am Ende steht: Es funktioniert jetzt so wie erwartet - welcher Punkt es nun brachte, weiß ich nicht so recht.

Grüße

Christian
Titel: Antw:Modul 98_openweather
Beitrag von: betateilchen am 28 Oktober 2013, 10:46:43
Irgendwie kann ich seit Tagen keine Daten mehr nach openweathermap übertragen - da kommt nur ein Serverfehler 500 zurück.

Hat das Problem sonst noch jemand festgestellt?
Titel: Antw:Modul 98_openweather
Beitrag von: Frank S. am 28 Oktober 2013, 13:24:23
Moin.

Das Verhalten kann ich  auch beobachten. Seit ein paar Tagen kommt es bei mir auch zu Problemen bei der Übertragung.

Schöne Grüße
Frank
Titel: Antw:Modul 98_openweather
Beitrag von: mw_fhem am 28 Oktober 2013, 15:39:27
Auch ich habe diesen Fehler. Das Modul hatte ich am Freitag noch erfolgreich eingerichtet und Daten übermittelt. Gestern hatte ich die Fehlermeldung. Und wenn ich mich auf der Homepage anmelden will, gibt es ebenfalls Fehler.
Titel: Antw:Modul 98_openweather
Beitrag von: betateilchen am 28 Oktober 2013, 16:21:04
gut zu wissen, dass ich am Modul nix tun muss, sondern das Problem auf der anderen Seite liegt :)
Titel: Antw:Modul 98_openweather
Beitrag von: Frank S. am 29 Oktober 2013, 07:07:38
Moin.

Zur Info. Seit gestern nachmittag werden wieder Daten nach Openweather übertragen.

Schöne Grüße
Frank
Titel: Antw:Modul 98_openweather
Beitrag von: betateilchen am 29 Oktober 2013, 09:46:57
danke für den Hinweis, ich hab die Übertragung grade wieder aktiviert und sie funktioniert auch hier wieder.
Titel: Antw:Modul 98_openweather
Beitrag von: El-Docho am 13 November 2013, 15:27:16
nachdem ich FHEM endlich mal geupdated habe, geht jetzt auch das owo problemlos! Auf der Owo Webseite sehe ich unter "mystats" keinen Eintrag, aber auf der Karte sind sie zu sehen!
Titel: Antw:Modul 98_openweather
Beitrag von: volschin am 07 Dezember 2013, 06:44:03
Hallo betateilchen,
ich habe 2 probleme mit dem Modul.
1. Es löst immer 2 mal aus:
2013.12.07 06:19:04 3: owo ow.Berlin: retrievingStationData: Id: 6545310 Name:
2013.12.07 06:19:04 3: owo ow.Berlin: decoding JSON
2013.12.07 06:19:19 3: owo ow.Berlin: retrievingStationData: Id: 6545310 Name:
2013.12.07 06:19:19 3: owo ow.Berlin: decoding JSON


2. Die Einstellung event-on-change-reading .* müsste die Anzahl der Log-Einträge auf die geänderten Werte reduzieren, hat aber keine Auswirkung.
2013-12-06_07:03:34 ow.Berlin c_lastWx: Fri Dec  6 06:48:57 2013
2013-12-06_07:03:34 ow.Berlin c_humidity: 75
2013-12-06_07:03:34 ow.Berlin c_pressureAbs: 999.3
2013-12-06_07:03:34 ow.Berlin c_windSpeed: 14.2
2013-12-06_07:03:34 ow.Berlin c_windDir: 265
2013-12-06_07:03:34 ow.Berlin c_clouds: 92
2013-12-06_07:03:34 ow.Berlin c_temperature: 1.4
2013-12-06_07:03:41 ow.Berlin c_lastWx: Fri Dec  6 06:48:57 2013
2013-12-06_07:03:41 ow.Berlin c_humidity: 75
2013-12-06_07:03:41 ow.Berlin c_pressureAbs: 999.3
2013-12-06_07:03:41 ow.Berlin c_windSpeed: 14.2
2013-12-06_07:03:41 ow.Berlin c_windDir: 265
2013-12-06_07:03:41 ow.Berlin c_clouds: 92
2013-12-06_07:03:41 ow.Berlin c_temperature: 1.4
2013-12-06_08:03:35 ow.Berlin c_lastWx: Fri Dec  6 08:00:10 2013
2013-12-06_08:03:35 ow.Berlin c_humidity: 96
2013-12-06_08:03:35 ow.Berlin c_pressureAbs: 999
2013-12-06_08:03:35 ow.Berlin c_windSpeed: 13.4
2013-12-06_08:03:35 ow.Berlin c_windDir: 270
2013-12-06_08:03:35 ow.Berlin c_clouds: 75
2013-12-06_08:03:35 ow.Berlin c_temperature: 1.4
2013-12-06_08:03:42 ow.Berlin c_lastWx: Fri Dec  6 08:00:10 2013
2013-12-06_08:03:42 ow.Berlin c_humidity: 96
2013-12-06_08:03:42 ow.Berlin c_pressureAbs: 999
2013-12-06_08:03:42 ow.Berlin c_windSpeed: 13.4
2013-12-06_08:03:42 ow.Berlin c_windDir: 270
2013-12-06_08:03:42 ow.Berlin c_clouds: 75
2013-12-06_08:03:42 ow.Berlin c_temperature: 1.4


Hast Du eine Idee?

Danke und Gruß,
Veit
Titel: Antw:Modul 98_openweather
Beitrag von: cwagner am 07 Dezember 2013, 10:54:14
Guten Tag,

die Sache mit der doppelten Auslösung hat sich bei mir auch wieder eingestellt - ganz kurz hatte ich (weiß nicht warum und wie) es mal, dass openweather nur einmal auslöste. Hatte dann einige Hinweise durchgespielt, aber ohne dauerhaften Erfolg. Bin froh, dass es jetzt noch eine weitere Beobachtung gibt, ich dachte schon, mein Problem würde vor dem Schirm sitzen :-)

Grüße

Christian
Titel: Antw:Modul 98_openweather
Beitrag von: betateilchen am 07 Dezember 2013, 23:24:31
Zitat von: volschin am 07 Dezember 2013, 06:44:03
ich habe 2 probleme mit dem Modul.
1. Es löst immer 2 mal aus:
2. Die Einstellung event-on-change-reading .* müsste die Anzahl der Log-Einträge auf die geänderten Werte reduzieren, hat aber keine Auswirkung.
Hast Du eine Idee?

zu 1: da laufen aus irgendeinem Grund zwei Update-Schleifen innerhalb fhem - warum das auftritt, kann ich Dir im Moment nicht sagen, ich hatte diesen Effekt noch nicht. Kannst Du mal ein komplettes Listing Deines owo-Device posten? Was passiert, wenn Du fhem einmal neustartest? Ist das Problem dann weg?

zu 2: das Verhalten ist ganz einfach logisch erklärbar. Die Readings werden nicht wirklich aktualisiert, sondern im Rahmen der Auswertung IMMER erstmal komplett gelöscht und dann neu befüllt. Deshalb sind das immer alles "neue" Readings und keine update-Readings. Dieses Vorgehen war notwendig, um die Konsistenz der angezeigten Daten zu gewährleisten. Es liefern nämlich nicht alle Stationen den gleichen Datenumfang und Du könntest anhand der Daten nicht erkennen, von welcher Station sie wirklich stammen. Selbst die gleiche Station kann ab und zu unterschiedlich umfangreiche Datensätze liefern.

Übrigens: Datenabfragen in so kurzen Zeitabständen wie Du das machst (im Sekundenbereich), können dazu führen, dass owo Dich irgendwann komplett serverseitig sperrt. In der API-Definition ist ein Mindest-Intervall von 10 Minuten vorgegeben.
Titel: Antw:Modul 98_openweather
Beitrag von: betateilchen am 08 Dezember 2013, 17:50:55
Ich habe gerade eine modifizierte Version eingecheckt und hoffe, dass damit das Problem mit der Doppeltverarbeitung behoben wird. Da ich es selbst nicht testen kann (ich hatte den Fehler noch nie) bin ich da auf Eure Rückmeldung angewiesen.
Titel: Antw:Modul 98_openweather
Beitrag von: cwagner am 08 Dezember 2013, 22:23:17
Hallo, Betateilchen,

habe nun seit 3 Stunden die neue Version aktiviert und kann Dir Erfolg vermelden. Jetzt werden bei mir alle halbe Stunde jeweils nur einmal die Daten übermittelt.
Das wäre ein Erfolg.

Herzliche Grüße

Christian
Titel: Antw:Modul 98_openweather
Beitrag von: betateilchen am 09 Dezember 2013, 11:15:47
na das klingt doch schonmal ganz gut :)
Titel: Antw:Modul 98_openweather
Beitrag von: volschin am 09 Dezember 2013, 20:04:50
Hallo betateilchen,
Sieht auch bei mir nach dem Update erstmal gut aus. Vielen Dank.

Gruß
Veit
Titel: Antw:Modul 98_openweather
Beitrag von: betateilchen am 09 Dezember 2013, 20:24:33
na prima  8)

Danke für die Rückmeldungen.
Titel: Antw:Modul 98_openweathermap
Beitrag von: Frank S. am 16 Januar 2014, 19:49:17
Moin.

Ein Frage die mich gerade beschäftigt. Gibt es schon Möglichkeiten, die Wetterdaten auch an das Wetternetzwerk von wetter.com zuschicken?

Schöne Grüße
Frank S.
Titel: Antw:Modul 98_openweather
Beitrag von: betateilchen am 16 Januar 2014, 22:16:35
achso... jetzt (nachdem ich mal auf wetter.com gestöbert habe) verstehe ich erst den Hintergrund der Frage  8)

Achtung:


Es geht also um zwei völlig unterschiedliche Wetterdienste.

Das Modul hieß Anfangs nur "98_openweather" wurde aber im Laufe seiner Vervollständigung zu 98_openweathermap umbenannt. Lediglich der Thread-Titel blieb bestehen.
Titel: Antw:Modul 98_openweather
Beitrag von: Joesky am 17 Januar 2014, 00:03:39
Wie kann man die Werte von Openweathermap regelmäßig abrufen?
Titel: Antw:98_openweathermap
Beitrag von: betateilchen am 17 Januar 2014, 10:18:40
Indem man die Beschreibung zum Modul liest?
Titel: Antw:98_openweathermap
Beitrag von: Joesky am 17 Januar 2014, 21:25:52
Wenn Du nicht antworten möchtest, tu es einfach nicht. Die Freundlichkeit in deutschen Foren wird immer besser...  :-\ Ich habe die Beschreibung gelesen und nicht verstanden, bzw. eine Lösung dafür nicht gefunden. Ich will die Daten von OWM auslesen und nicht wegschicken. Und laut commendref bietet das Modul diese Möglichkeit nicht an. Also muss man bestimmt irgendetwas dafür programmieren.
Titel: Antw:98_openweathermap
Beitrag von: Joachim am 17 Januar 2014, 22:26:00
Moin Joesky,
ich nutze zwar dieses Modul nicht,
aber
im Gegensatz zu Dir habe ich die Beschreibung gelesen.
Es steht alles drin was man wissen muß!
ZitatWenn Du nicht antworten möchtest, tu es einfach nicht. Die Freundlichkeit in deutschen Foren wird immer besser..
Wenn Du nicht in der Lage bist zu lesen und zu verstehen, bzw. bei nichtverstehen eine entsprechende Frage zu formulieren,
dann ist das Dein Problem.
Frage von Dir war:
ZitatWie kann man die Werte von Openweathermap regelmäßig abrufen?
Richtige Antwort:
ZitatIndem man die Beschreibung zum Modul liest?
denn dort steht:
2. set a weather station from owo network as data source for your fhem installation
    set owo stationByName Leimen
    set owo stationById 2879241
    set owo stationByGeo 49.3511 8.6894

    All commands will retrieve weather data for Leimen (near Heidelberg,DE)
    Readings will be updated periodically, based on value of owoInterval.
Ich fand die Antwort ausreichend und freundlich.
Wenn Du in dieser Beschreibung etwas nicht verstanden hast, stelle Verständissfragen.

Gruß Joachim
Titel: Antw:98_openweathermap
Beitrag von: Joesky am 17 Januar 2014, 23:11:49
Wie ich geschrieben habe: Dann habe ich die Beschreibung nicht richtig verstanden. Ich ging davon aus, dass ich mit dem set die Datenübertragung einstelle. Allerdings habe ich das so auch schon probiert und es kam nichts an. Aber egal, ich doktor' dann mal weiter.

Wenn ich etwas nicht verstehe, stelle ich eine Frage in einem Forum, so habe ich das Prinzip verstanden. Wenn jeder alles verstehen würde, wäre ein Forum überflüssig. Aber hier (und inzwischen nicht nur hier) läuft man Gefahr gleich angemacht zu werden, weil man etwas fragt. Nur weil ich erst etwas um die 10 Beiträge geschrieben habe, heißt das nicht, dass ich blutiger Anfänger bin. Ich musste einfach bisher nichts fragen, weil ich eine Antwort fand. Eine Antwort "Indem man die Beschreibung zum Modul liest?" ist eine anmache von der Seite.
Titel: Antw:98_openweathermap
Beitrag von: betateilchen am 17 Januar 2014, 23:14:43
Zitat von: Joesky am 17 Januar 2014, 21:25:52Wenn Du nicht antworten möchtest, tu es einfach nicht.

Da ich der Autor des Moduls bin, geht es nicht darum, ob ich antworten will oder nicht. Nur hätte ich Dir nichts anderes antworten können, als das was auch in der commandref steht und was von meinem Vorredner bereits zitiert wurde.

Zitat von: Joesky am 17 Januar 2014, 21:25:52Ich will die Daten von OWM auslesen und nicht wegschicken. Und laut commendref bietet das Modul diese Möglichkeit nicht an.

Ich habe keine Ahnung, wie Du auf diese Aussage kommst. In der commandref zum Modul steht ganz am Anfang eindeutig und leicht verständlich, welche Funktionen diese Modul bietet.


This module provides connection to openweathermap-network www.openweathermap.org (owo)
You can use this module to do three different tasks:

1. send weather data from your own weather station to owo network.
2. set any weather data in owo network as datasource for your fhem installation. Data from this station will be updated periodically.
3. retrieve weather data from any weather station in owo network once. (same as 2. but without update)


Und wenn Du das auch nur ein einziges Mal gelesen hättest, könntest Du nicht auf eine solch falsche Behauptung kommen, denn Punkt 2 dieser Liste ist exakt das, wonach Du gefragt hast. Und wie diese Funktionalität umgesetzt wird, ist in der commandref meiner Meinung nach leicht verständlich beschrieben inklusive Beispiel.

Lesenkönnen setze ich eigentlich bei jedem Anwender voraus.
Titel: Antw:98_openweathermap
Beitrag von: Joesky am 17 Januar 2014, 23:17:35
Egal. Ich versuch's einfach weiter, Danke.
Titel: Antw:98_openweathermap
Beitrag von: betateilchen am 17 Januar 2014, 23:37:47
Beschreib doch einfach mal Dein konkretes Problem, bevor Du Leute vollmaulst.

Du mußt doch einfach nur eine Station mit "set..." definieren und alles ist gut.
Titel: Antw:98_openweathermap
Beitrag von: corny456 am 11 August 2014, 21:43:44
Nanu?!  :o Wo ist denn das Modul geblieben? Ist das aus dem SVN geflogen?

Weder der define geht noch finde ich es in der commandref...

Gruß Marius
Titel: Antw:98_openweathermap
Beitrag von: betateilchen am 11 August 2014, 21:48:27
http://forum.fhem.de/index.php/topic,24187.0.html
Titel: Antw:98_openweathermap
Beitrag von: stim am 15 August 2014, 14:54:55
Nach dem deaktiveren des Debug modes bekomme ich folgendes

2014.08.15 14:40:52 3: owo meinWetter: htmlResponse: 500 Internal Server Error
2014.08.15 14:40:52 3: owo meinWetter: sending: name=Hassels&lat=52.17780&long=7.87222&alt=&rain=50.2&APPID=2998a064ea470ba5682b01f0d5825403
2014.08.15 14:40:51 3: owo meinWetter: reading: owoSrc00 rain KS300 50.2
2014.08.15 14:40:51 3: owo meinWetter: started: SendData


owoGetUrl
http://api.openweathermap.org/data/2.5/weather

owoSendUrl
http://openweathermap.org/data/post

owoUseXml
1

Titel: Antw:98_openweathermap
Beitrag von: Alex am 13 September 2014, 15:30:24
Hallo,

ich wüde gerne die Niederschlagswerte für meine Stadt abrufen und loggen. Dafür erschien mir dieses modul passend. Ich hab es jetzt eingerichtet, finde aber keine Readings für Niederschlag. Liegt das an XML?

Gibt es noch irgendwo die Dokumentation für das Modul? bzw. den commandref eintrag?

Vielen Dank &lg
Titel: Antw:98_openweathermap
Beitrag von: justme1968 am 13 September 2014, 15:40:48
beim openweathermap modul kann ich dir nicht weiterhelfen aber vielleicht ist das netatmo modul etwas für dich. schau mal ins wiki.

gruss
  andre
Titel: Antw:98_openweathermap
Beitrag von: betateilchen am 13 September 2014, 15:51:52
Zitat von: Alex am 13 September 2014, 15:30:24
Ich hab es jetzt eingerichtet, finde aber keine Readings für Niederschlag. Liegt das an XML?

Das kann vielleicht einfach daran liegen, dass bei weitem nicht jede in openweathermap gelistete Station auch tatsächlich Regendaten liefert. Das Thema hatten wir hier schon mehrfach.

Dass die Datensätze zwischen XML und JSON unterschiedliche Datenmengen enthalten, ist ein weiterer Effekt, der sich auswirken kann.
Titel: Antw:98_openweathermap
Beitrag von: Alex am 14 September 2014, 00:24:32
vielen Dank für die schnellen Antworten! Ich habs komplett gelesen und daher mit Berlin, Karlsruhe und Magdeburg versucht und bei allen dreien keinen Niederschlag gefunden (auf der Website ist er allerdings angegeben).

vvon netatmo hatte ich noch nichts gehört, scheint aber sehr vielversprechend zu sein. Ich denke ich werde das mal versuchen. bevor ich mir an JSON die zähne ausbeiße...
Titel: Antw:98_openweathermap
Beitrag von: Thomas Kregelin am 05 November 2014, 21:08:11
Hallo betateilchen,

ich wollte mich heute wieder einmal mit dem openweathermap modul beschäftigen.

Das Modul ist umgezogen in ./contrib - das habe ich gesehen. Ich finde allerdings keine Dokumentation mehr in der commandref. Ist die auch umgezogen - wohin?

Zwischenzeitlich gab es bei openweathermap.org einige - zumindest optische - Umstellungen. Ist die API davon auch betroffen? Können wir unsere Wetterdaten immer noch hochladen?

Warum ist das Modul eigentlich in ./contrib umgezogen. Was bedeutet das für das Modul? Werden noch automatische updates verteilt? 

Gruß
TK
Titel: Antw:98_openweathermap
Beitrag von: betateilchen am 05 November 2014, 21:33:29
Die Dokumentation ist nach wie vor im Modul vorhanden. Allerdings führt die commandref nur die Dokumentation der Modul, die im regulären fhem-Modulpfad enthalten sind.

Das Modul ist (neben einigen anderen auch) von mir nach ./contrib verschoben worden, weil zum einen das Interesse an dem Modul nicht mehr gegeben war und zum anderen keine großen Änderungen/Erweiterungen mehr vorgesehen waren.

http://forum.fhem.de/index.php/topic,24187.0.html

Der Upload von Wetterdaten funktioniert nach wie vor.

(http://up.picr.de/20041505cg.png)