OpenHAB 2 und OpenWeatherMap

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Benutzeravatar
udo1toni
Beiträge: 15265
Registriert: 11. Apr 2018 18:05
Answers: 245
Wohnort: Darmstadt

Re: OpenHAB 2 und OpenWeatherMap

Beitrag von udo1toni »

Es ist halt die Frage, ob Du per Text oder per Paper UI konfigurieren möchtest.

Gesendet von meinem SM-G973F mit Tapatalk

openHAB4.3.5 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet

thomas_w

Re: OpenHAB 2 und OpenWeatherMap

Beitrag von thomas_w »

So, jetzt sieht es gut aus. Die 3-Stunden Vorschau zeigt jetzt auch Werte an. Es ist schon ein Kampf mit den langen Bezeichnern und welche Bedeutung nun wirklich dahinter steckt. Aber ich denke, ich habe das Prinzip jetzt verstanden. Damit vielleicht jemand anderes auch was lernen kann, hier meine aktuelle Konfigurationsdateien zu OpenWeatherMap.
OpenHabWeatherMaps.JPG

Ausschnitt aus meiner .sitemap

Code: Alles auswählen

        Group item=gOpenWeather {

            Frame label="Überblick" {
                Text item=localCurrentCondition
            }

            Frame label="Aktuell" {
                Text item=localLastMeasurement
                Text item=localCurrentTemperature
                Text item=localCurrentPressure
                Text item=localCurrentHumidity
                Text item=localCurrentWindSpeed
                Text item=localCurrentCloudiness
                Text item=localCurrentRainVolume
                Text item=localCurrentSnowVolume
            }

            Frame label="3 Stunden Vorschau" {
                Text item=localDailyForecastHours03Timestamp
                Text item=localDailyForecastHours03MinTemperature
                Text item=localDailyForecastHours03MaxTemperature
            }

            Frame label="UV Index" {
                Text item=localCurrentUVIndexTimestamp
                Text item=localCurrentUVIndex
                Text item=localForecastTomorrowUVIndexTimestamp
                Text item=localForecastTomorrowUVIndex
            }

            // Frame label="Wetterstation" icon="sun_clouds" {
            //    Text item=localStationId
            //    Text item=localStationName
            //    Text item=localStationLocation
            // }

        }

OpenWeather.items

Code: Alles auswählen

// Items fuer das OpenWeatherMap Binding
// Stand 11.06.2020
Group gOpenWeather "Wetter" <sun_clouds> 

// aktuelle Wetterdaten
DateTime localLastMeasurement "Zeitpunkt Messung [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <time> (gOpenWeather) { channel="openweathermap:weather-and-forecast:<api-id>:local:current#time-stamp" }
String localCurrentCondition "Wetterlage [%s]" <sun_clouds> (gOpenWeather) { channel="openweathermap:weather-and-forecast:<api-id>:local:current#condition" }
Image localCurrentConditionIcon "Icon" (gOpenWeather) { channel="openweathermap:weather-and-forecast:<api-id>:local:current#icon" }
Number:Temperature localCurrentTemperature "Aussentemperatur [%.2f %unit%]" <temperature> (gOpenWeather) { channel="openweathermap:weather-and-forecast:<api-id>:local:current#temperature" }
Number:Pressure localCurrentPressure "Luftdruck [%.1f %unit%]" <pressure> (gOpenWeather) { channel="openweathermap:weather-and-forecast:<api-id>:local:current#pressure" }
Number:Dimensionless localCurrentHumidity "Luftfeuchtigkeit [%d %unit%]" <humidity> (gOpenWeather) { channel="openweathermap:weather-and-forecast:<api-id>:local:current#humidity" }
Number:Speed localCurrentWindSpeed "Wind Geschwindigkeit [%.1f km/h]" <wind> (gOpenWeather) { channel="openweathermap:weather-and-forecast:<api-id>:local:current#wind-speed" }
Number:Dimensionless localCurrentCloudiness "Bewölkung [%d %unit%]" <clouds> (gOpenWeather) { channel="openweathermap:weather-and-forecast:<api-id>:local:current#cloudiness" }
Number:Length localCurrentRainVolume "Regenmenge [%.1f %unit%]" <rain> (gOpenWeather) { channel="openweathermap:weather-and-forecast:<api-id>:local:current#rain" }
Number:Length localCurrentSnowVolume "Schneemenge [%.1f %unit%]" <snow> (gOpenWeather) { channel="openweathermap:weather-and-forecast:<api-id>:local:current#snow" }

// Vorschau 3 Stunden
DateTime localDailyForecastHours03Timestamp "Zeitpunkt Vorschau [%1$td.%1$tm.%1$tY %1$tH:%1$tM]" <time> (gOpenWeather) { channel="openweathermap:weather-and-forecast:<api-id>:local:forecastHours03#time-stamp_" }
Number:Temperature localDailyForecastHours03MinTemperature "Temperatur (min.) [%.2f %unit%]" <temperature> (gOpenWeather) { channel="openweathermap:weather-and-forecast:<api-id>:local:forecastHours03#min-temperature" }
Number:Temperature localDailyForecastHours03MaxTemperature "Temperatur (max.) [%.2f %unit%]" <temperature> (gOpenWeather) { channel="openweathermap:weather-and-forecast:<api-id>:local:forecastHours03#max-temperature" }

// UV
DateTime localCurrentUVIndexTimestamp "Zeitpunkte Messung [%1$td.%1$tm.%1$tY]" <time> (gOpenWeather) { channel="openweathermap:uvindex:<api-id>:local:current#time-stamp" }
Number localCurrentUVIndex "Aktueller UV Index [%.1f]" (gOpenWeather) { channel="openweathermap:uvindex:<api-id>:local:current#uvindex" }

DateTime localForecastTomorrowUVIndexTimestamp "Zeitpunkte Vorschau [%1$td.%1$tm.%1$tY]" <time> (gOpenWeather) { channel="openweathermap:uvindex:<api-id>:local:forecastTomorrow#time-stamp" }
Number localForecastTomorrowUVIndex "UV Index für Morgen [%.1f]" (gOpenWeather) { channel="openweathermap:uvindex:<api-id>:local:forecastTomorrow#uvindex" }
OpenWeather.things Den <api-key> muss man sich von OpenWeatcherMap.Org holen.

Code: Alles auswählen

Bridge openweathermap:weather-api:<api-id> "OpenWeatherMap Account" 
    [apikey="<api-key>", refreshInterval=15, language="de"] {
      Thing weather-and-forecast local "Local Weather And Forecast" [location="x,y", forecastHours=24, forecastDays=0, steps=3]
      Thing uvindex local "Local UV Index" [location="x,y", forecastDays=7]
}
Danke für die Starthilfe in OpenHAB. Aller Anfang ist schwer und verwirrend.

Grüße
Thomas
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Zuletzt geändert von thomas_w am 11. Jun 2020 14:52, insgesamt 2-mal geändert.

thomas_w

Re: OpenHAB 2 und OpenWeatherMap

Beitrag von thomas_w »

udo1toni hat geschrieben: 11. Jun 2020 14:11 Es ist halt die Frage, ob Du per Text oder per Paper UI konfigurieren möchtest.
Genau, den Unterschied muss man erst mal erkennen und verstehen. Ich denke, ich entscheide mich für die Konfiguration per Text. Das erscheint mir flexibler. Mal schauen...

SvenK
Beiträge: 9
Registriert: 3. Aug 2020 09:23
Answers: 0

Re: OpenHAB 2 und OpenWeatherMap

Beitrag von SvenK »

Schönen guten Morgen zusammen,

ich habe auch gerade erst mit OpenHAB 2 angefangen und dieser Thread hier hat mir zum Thema OpenWeatherMap super weiter geholfen. Vielen Dank dafür!!

Eine Verständisfrage habe ich. Laut der Beschreibung von OpenWeatherMap sollte ja nicht nur die Stundenvorhersage sondern auch für ein paar Tage die Tagesvorhersage (z.B. channel="openweathermap:weather-and-forecast:api:local:forecastTomorrow#condition) mit dem freien API funktionieren. Ich bekomme zwar x Stunden Vorhersagen, nicht aber die Tagesvorhersagen. Ist die Beschreibung falsch oder sollte noch etwas beachtet werden? Meine Einstellungen sind gleich denen hier imThread.

Besten Dank
Sven

Benutzeravatar
udo1toni
Beiträge: 15265
Registriert: 11. Apr 2018 18:05
Answers: 245
Wohnort: Darmstadt

Re: OpenHAB 2 und OpenWeatherMap

Beitrag von udo1toni »

Für mich funktioniert nur die 3-Stunden-Vorhersage.
Ich denke, das ist einfach aus dem Angebot von OpenWeatherMap abgepinnt worden, und dort ist es mindestens ebenso missverständlich formuliert.

Mein Verständnis: Man bekommt die Wetterdaten als Vorhersage für bis zu 5 (? aus dem Gedächtnis) Tage, allerdings nicht in der Form als Tagesübersicht, sondern nur als Vorhersage von bis zu 40 (120 Stunden Vorhersage) Drei-Stunden-Fenstern. Im Binding kann man die Anzahl der Fenster über die Zeitspanne konfigurieren und bekommt dann entsprechend mehr Channel.

Wenn man für den Dienst zahlt, bekommt man hingegen bis zu 14 Tage Vorhersage und zusätzlich zu den 3-Stunden-Vorhersagen auch die Tageszusammenfassungen, die man ja eher gewohnt ist.


Gesendet von iPad mit Tapatalk
openHAB4.3.5 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet

Benutzeravatar
peter-pan
Beiträge: 2769
Registriert: 28. Nov 2018 12:03
Answers: 30
Wohnort: Schwäbisch Gmünd

Re: OpenHAB 2 und OpenWeatherMap

Beitrag von peter-pan »

SvenK hat geschrieben: 4. Aug 2020 10:23 Ich bekomme zwar x Stunden Vorhersagen, nicht aber die Tagesvorhersagen. Ist die Beschreibung falsch oder sollte noch etwas beachtet werden? Meine Einstellungen sind gleich denen hier imThread
Tageswerte bekommst du nur in der Bezahlversion. In der freien Version sind es die 3-Stunden-Zyklen bis zu 120 Stunden. Die kannst du dir dann ggf. per Rule zu Tageswerten aggregieren.

Es gibt aber inzswischen auch noch eine andere Möglichkeit, den OpenWeatherMap anbietet. Der Api-Call lautet etwa so:

Code: Alles auswählen

https://api.openweathermap.org/data/2.5/onecall?lat=12.3456&lon=7.890123&exclude=minutely,hourly&appid=dein-api-key&lang=de&units=metric
Latitude, Longitude und Api-Key musst du halt noch mit deinen Werten ersetzen. Du kannst das ja mal so in deinem Browser aufrufen. Dann kannst du dir die Werte anschauen.

Ich habe den Aufruf in die http.cfg eingefügt und dann kannst du dir die Werte, die du haben möchtest aus dem JSON-String extrahieren.

Der JSON-String sieht so aus:

Code: Alles auswählen

{"lat":12.34,"lon":5.67
,"timezone":"Europe/Berlin","timezone_offset":7200,"current":{"dt":1596534256,"sunrise":1596513491,"sunset":1596567296,"temp":17.55,"feels_like":18.65,"pressure":1015,"humidity":82,"dew_point":14.44,"uvi":7.09,"clouds":100,"visibility":10000,"wind_speed":0.45,"wind_deg":20,"wind_gust":2.24,"weather":[{"id":500,"main":"Rain","description":"Leichter Regen","icon":"10d"}],"rain":{"1h":0.19}},"daily":[{"dt":1596538800,"sunrise":1596513491,"sunset":1596567296,"temp":{"day":17.53,"min":9.87,"max":17.55,"night":9.87,"eve":14.89,"morn":17.55},"feels_like":{"day":17.18,"night":8.62,"eve":14.45,"morn":17.2},"pressure":1015,"humidity":76,"dew_point":13.26,"wind_speed":1.95,"wind_deg":21,"weather":[{"id":501,"main":"Rain","description":"Mäßiger Regen","icon":"10d"}],"clouds":100,"pop":0.97,"rain":3.81,"uvi":7.09},{"dt":1596625200,"sunrise":1596599974,"sunset":1596653603,"temp":{"day":21.15,"min":11.95,"max":21.49,"night":11.99,"eve":17.56,"morn":11.95},"feels_like":{"day":19.02,"night":11.15,"eve":17.28,"morn":10.9},"pressure":1018,"humidity":53,"dew_point":11.29,"wind_speed":3.58,"wind_deg":87,"weather":[{"id":802,"main":"Clouds","description":"Mäßig bewölkt","icon":"03d"}],"clouds":31,"pop":0,"uvi":7.16},{"dt":1596711600,"sunrise":1596686457,"sunset":1596739908,"temp":{"day":23.16,"min":14.74,"max":23.89,"night":14.93,"eve":19.98,"morn":14.74},"feels_like":{"day":21.78,"night":15.36,"eve":20.82,"morn":13.46},"pressure":1019,"humidity":56,"dew_point":14.17,"wind_speed":3.73,"wind_deg":85,"weather":[{"id":800,"main":"Clear","description":"Klarer Himmel","icon":"01d"}],"clouds":0,"pop":0,"uvi":7.17},{"dt":1596798000,"sunrise":1596772941,"sunset":1596826212,"temp":{"day":24.02,"min":16.85,"max":25.98,"night":16.85,"eve":22.08,"morn":17.7},"feels_like":{"day":24.83,"night":17.94,"eve":24.09,"morn":18.72},"pressure":1019,"humidity":69,"dew_point":18.1,"wind_speed":2.82,"wind_deg":95,"weather":[{"id":500,"main":"Rain","description":"Leichter Regen","icon":"10d"}],"clouds":45,"pop":0.2,"rain":0.14,"uvi":7.11},{"dt":1596884400,"sunrise":1596859425,"sunset":1596912514,"temp":{"day":27.75,"min":17.86,"max":27.75,"night":17.86,"eve":22.66,"morn":19.01},"feels_like":{"day":27.94,"night":18.99,"eve":24.6,"morn":20.38},"pressure":1018,"humidity":47,"dew_point":15.73,"wind_speed":2.24,"wind_deg":106,"weather":[{"id":800,"main":"Clear","description":"Klarer Himmel","icon":"01d"}],"clouds":0,"pop":0,"uvi":7.15},{"dt":1596970800,"sunrise":1596945909,"sunset":1596998814,"temp":{"day":26.27,"min":17.67,"max":26.63,"night":17.67,"eve":22.68,"morn":20.16},"feels_like":{"day":27.59,"night":18.31,"eve":24.31,"morn":22.04},"pressure":1015,"humidity":62,"dew_point":18.42,"wind_speed":2.35,"wind_deg":16,"weather":[{"id":500,"main":"Rain","description":"Leichter Regen","icon":"10d"}],"clouds":98,"pop":0.67,"rain":2.98,"uvi":6.71},{"dt":1597057200,"sunrise":1597032394,"sunset":1597085114,"temp":{"day":27.01,"min":17.98,"max":27.14,"night":17.98,"eve":22.7,"morn":18.86},"feels_like":{"day":26.92,"night":17.93,"eve":23.95,"morn":19.72},"pressure":1013,"humidity":55,"dew_point":17.42,"wind_speed":3.64,"wind_deg":89,"weather":[{"id":800,"main":"Clear","description":"Klarer Himmel","icon":"01d"}],"clouds":0,"pop":0,"uvi":6.94},{"dt":1597143600,"sunrise":1597118878,"sunset":1597171411,"temp":{"day":27.93,"min":17.58,"max":27.93,"night":17.58,"eve":23.29,"morn":17.87},"feels_like":{"day":29.96,"night":18.21,"eve":25.62,"morn":17.17},"pressure":1013,"humidity":53,"dew_point":17.53,"wind_speed":0.76,"wind_deg":102,"weather":[{"id":501,"main":"Rain","description":"Mäßiger Regen","icon":"10d"}],"clouds":87,"pop":1,"rain":5.35,"uvi":7.03}]}
Ich habe das zwar nur mal zum testen installiert, aber so wie es aussieht bekommt man da Tageswerte bis zu 8 Tagen (einschl. lfd.Tag) und zwar noch getrennt nach tagsüber, morgens , abends und nachts.

Die Detailierung der Werte lässt sich auch noch steueren mit dem Parameter "exclude" im Api-Aufruf. Ich habe z.B.: exclude=minutely,hourly, also keine Minuten und Stundenwerte. Das wird sonst ein "Riesen-JSON-String" und das brauch ich auch nicht.
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.3.5 openhabian

SvenK
Beiträge: 9
Registriert: 3. Aug 2020 09:23
Answers: 0

Re: OpenHAB 2 und OpenWeatherMap

Beitrag von SvenK »

peter-pan hat geschrieben: 4. Aug 2020 12:11Tageswerte bekommst du nur in der Bezahlversion. In der freien Version sind es die 3-Stunden-Zyklen bis zu 120 Stunden. Die kannst du dir dann ggf. per Rule zu Tageswerten aggregieren.
Ist in der Beschreibung nicht sehr verständlich geschrieben, aber das erklärt es. Besten Dank!

Benutzeravatar
udo1toni
Beiträge: 15265
Registriert: 11. Apr 2018 18:05
Answers: 245
Wohnort: Darmstadt

OpenHAB 2 und OpenWeatherMap

Beitrag von udo1toni »

peter-pan hat geschrieben:Es gibt aber inzswischen auch noch eine andere Möglichkeit, den OpenWeatherMap anbietet. Der Api-Call lautet etwa so:

Code: Alles auswählen

https://api.openweathermap.org/data/2.5/onecall?lat=12.3456&lon=7.890123&exclude=minutely,hourly&appid=dein-api-key&lang=de&units=metric
Latitude, Longitude und Api-Key musst du halt noch mit deinen Werten ersetzen. Du kannst das ja mal so in deinem Browser aufrufen. Dann kannst du dir die Werte anschauen.
Hast Du da irgendein Dokument von openWeatherMap? Dann könnte man das dem Binding Entwickler mal stecken...


Gesendet von iPad mit Tapatalk
openHAB4.3.5 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet

Benutzeravatar
peter-pan
Beiträge: 2769
Registriert: 28. Nov 2018 12:03
Answers: 30
Wohnort: Schwäbisch Gmünd

Re: OpenHAB 2 und OpenWeatherMap

Beitrag von peter-pan »

SvenK hat geschrieben: 4. Aug 2020 13:23 Ist in der Beschreibung nicht sehr verständlich geschrieben, aber das erklärt es.
...du hast Recht, das ist wirklich nicht so ganz eindeutig. Ich hab mir halt selber 'ne Rule gebastelt, aber....da ich nicht so ganz firm bin, hat die ein paar kleine Bugs (hängt vor allem mit den Lambdas zusammen). Funktioniert aber sonst ganz gut.

Auf meinem Testsystem(NGRE,JSR223), hab ich ein Python-Script laufen, dass besser funktioniert :lol: .

Aber es gibt ein Python-Script von Scott Rushworth (5iver) aus dem internationalen Forum, die dir sämtliche Items und Gruppen anlegt und auch die Tageswerte aggregiert. Allerdings brauchst du NGRE und JSR223/Jython.
udo1toni hat geschrieben: 4. Aug 2020 14:33 Hast Du da irgendein Dokument von openWeatherMap? Dann könnte man das dem Binding Entwickler mal stecken...
Hallo Udo,
ich kann dir folgende Links anbieten:
Den hier (allgemein) mit dem Hinweis auf das/die neue Api
und den hier mit der Doku der Felder

Ich meine aber mal irgendwo gelesen zu haben, dass Christoph sich nicht mehr mit dem jetzigen Binding beschäftigt, sondern schon an OH3 rumbastelt. Du hast da aber einen besseren Draht, vielleicht macht er's ja doch, oder hat schon was in der Schublade ;) . Wäre auf jeden Fall mal einen Versuch wert.

Ich selber habe spasseshalber nur mal ein paar Items extrahiert, aber so grundsätzlich scheint es gar nicht so schlecht zu sein, was man Werten bekommen kann.
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.3.5 openhabian

Benutzeravatar
udo1toni
Beiträge: 15265
Registriert: 11. Apr 2018 18:05
Answers: 245
Wohnort: Darmstadt

Re: OpenHAB 2 und OpenWeatherMap

Beitrag von udo1toni »

Ah, da hat sich ja doch einiges getan... Das Dokument, was Du verlinkt hast, kannte ich shcon, aber untendrunter (und der One API Call) hat sich einiges verändert.
openHAB4.3.5 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet

Antworten