Neue 59_Weather, OpenWeatherMapAPI - Tester gesucht

Begonnen von CoolTux, 21 Dezember 2022, 08:39:12

Vorheriges Thema - Nächstes Thema

Sidey

Zitat von: CoolTux am 29 Januar 2023, 12:54:52
Du hast aber wirklich auch onecall genommen für dien Key?
Stell bitte mal version auf 3.0 nicht 3

Danke!

Ja onecall habe ich und mit der Angabe 3.0 geht es.
Steht natürlich auch so in der commandref, da dachte ich wohl 3 ist identisch mit 3.0 ;)


Grüße Sidey
Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem

Maintainer von: SIGNALduino, fhem-docker, alexa-fhem-docker, fhempy-docker

Motivierte linke Hände

Hi, zunächst mal vielen Dank für Deine Arbeit an diesem Modul, Marko!

Ich habe die Änderungen dadurch mitbekommen, dass wegen fehlendem readonly das Modul hier aus der Definition gefallen ist. Ich habe dann von einem Backup die Definition wieder eingespielt:

define OpenWeatherMap Weather API=OpenWeatherMapAPI apikey=xxx location=a,b interval=14400 language=de

Das klappt, danach kann ich ein Update machen. Was mir fehlt, sind die forecast-Readings. Ich habe also versucht, alternativ die Attribute "forecast daily" oder "forecastLimit" zu setzen. Beides hängt fhem auf mit dieser Fehlermeldung:

Undefined subroutine &FHEM::Core::Weather::DeleteForecastreadings called at fhem.pl line 3501.

Kann ich irgendwas machen?

FHEM ist aktuell. (Nicht aus Deinem git, sondern aus den offiziellen Quellen.)
FHEM 6 in einer KVM VM mit Ubuntu
HM-CFG-USB2, 2xHM-CFG-HMLAN, HM-HMUARTLGW mit 100+ HomeMatic Devices, Geofencing, Fritzbox, Unifi, HUE, Harmony-Hub, Denon-Receiver-Modul, Calendar, GardenaSmartDevice, Shelly, MQTT (zigbee2mqtt, Tasmota und Shelly) und ein wenig 1Wire.

CoolTux

Zitat von: Motivierte linke Hände am 02 Februar 2023, 09:54:56
Hi, zunächst mal vielen Dank für Deine Arbeit an diesem Modul, Marko!

Ich habe die Änderungen dadurch mitbekommen, dass wegen fehlendem readonly das Modul hier aus der Definition gefallen ist. Ich habe dann von einem Backup die Definition wieder eingespielt:

define OpenWeatherMap Weather API=OpenWeatherMapAPI apikey=xxx location=a,b interval=14400 language=de

Das klappt, danach kann ich ein Update machen. Was mir fehlt, sind die forecast-Readings. Ich habe also versucht, alternativ die Attribute "forecast daily" oder "forecastLimit" zu setzen. Beides hängt fhem auf mit dieser Fehlermeldung:

Undefined subroutine &FHEM::Core::Weather::DeleteForecastreadings called at fhem.pl line 3501.

Kann ich irgendwas machen?

FHEM ist aktuell. (Nicht aus Deinem git, sondern aus den offiziellen Quellen.)

Ohje da hat sich in der Tat ein Typo eingeschlichen. Es sollte eigentlich heißen

\&FHEM::Core::Weather::_DeleteForecastreadings
in Zeile 856 und in Zeile 861.

Du kannst das gerne versuchen selbst zu korrigieren und dann einen neustart von FHEM machen.
Ich kümmere mich darum das morgen früh ein update zur Verfügung steht.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Motivierte linke Hände

Danke, das Setzen des Attributs funktioniert so wieder. Mal gucken, ob morgen dann auch die Readings für den Wetterbericht wieder auftauchen.  :)
FHEM 6 in einer KVM VM mit Ubuntu
HM-CFG-USB2, 2xHM-CFG-HMLAN, HM-HMUARTLGW mit 100+ HomeMatic Devices, Geofencing, Fritzbox, Unifi, HUE, Harmony-Hub, Denon-Receiver-Modul, Calendar, GardenaSmartDevice, Shelly, MQTT (zigbee2mqtt, Tasmota und Shelly) und ein wenig 1Wire.

Motivierte linke Hände

Und wenn ich dann noch eine Frage stellen darf:

{ WeatherAsHtmlV("Wetterbericht") }

liefert nur noch

<table class="weather"><tr><td class="weatherIcon" width=87><img src="/fhem/icons/weather/" width=87 alt=""></td><td class="weatherValue"><br>°C %<br></td></tr></table>

Was an Daten fehlt denn, damit da wieder was Vollständigeres herauskommt?

Ich habe es auch mal als

{ WeatherAsHtmlV("Wetterbericht", "h", 10) }

versucht - keine Änderung im HTML Output.
FHEM 6 in einer KVM VM mit Ubuntu
HM-CFG-USB2, 2xHM-CFG-HMLAN, HM-HMUARTLGW mit 100+ HomeMatic Devices, Geofencing, Fritzbox, Unifi, HUE, Harmony-Hub, Denon-Receiver-Modul, Calendar, GardenaSmartDevice, Shelly, MQTT (zigbee2mqtt, Tasmota und Shelly) und ein wenig 1Wire.

CoolTux

Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

fremitus

Hi Cooltux,

habe den Ort selber integriert mittels:

'country' => encode_utf8($data->{city}->{country}),
                'city' => encode_utf8($data->{city}->{name}),


Betrifft die _FillSelfHashWithWeatherResponseForForecastHourly Routine

Taucht nun natürlich in der List Abfrage mehrfach auf, damit kann ich aber leben. Meine anderen Versuche, dass autark zu implementieren, scheiterten an meine sehr bescheidene Perl Kenntnissen.

gruss

Peer

hajo23

Hi Cooltux,

ich nutze Weather mit der DarkSkyAPI. Seit dem Update zeigt WeatherAsHtmlH("Wetter", "d", 6) bei mir keine Temperatur-forecast-Werte mehr an.

CoolTux

Zitat von: hajo23 am 08 Februar 2023, 14:01:46
Hi Cooltux,

ich nutze Weather mit der DarkSkyAPI. Seit dem Update zeigt WeatherAsHtmlH("Wetter", "d", 6) bei mir keine Temperatur-forecast-Werte mehr an.

Danke Dir. Ist bekannt, es fehlt ein reading. Bin noch nicht dazu gekommen. Sorry
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

slupus

Hi CoolTux,
vielen Dank für die Anpassungen und die Integration der OpenWeatherAPI 3.0!
Die Umstellung hat ohne Probleme funktioniert.

Was mir aufgefallen ist (nur als Hinweis):

  • Ist forecastLimit nicht gesetzt werden fünf Werte abgerufen. Vielleicht kannst du das in der Doku als Hinweis ergänzen (default 5)
  • forecast habe ich auf 10 gesetzt, weil ich die nächsten Stunden abrufen möchte. Da für die Tage nur 8 Werte über OpenWeather abgerufen werden können, zeigt WeatherAsHtmlD("Wetter","d") 8 Werte plus 2 leere Einträge
  • WeatherAsHtmlD("Wetter","d") zeigt grundsätzlich am Ende einen leeren Wert an, egal was in forecastLimit definiert ist

reticon

Hallo,

danke für die Anpassungen - ich teste da gerade auch und die grundsätzliche Umstellung hat bei mir auch geklappt :-)

Etwas, das mir eben aufgefallen ist, da ich gerade aus den Wetter-Daten mir eine Darstellung in fhemapp bastle:
- in den "Day of Week"-Felder a la fc1_day_of_week etc steht bei mir immer zum Tag eine Uhrzeit drin, Beispiel für heute: Do, 12:00

Bin mir aber unsicher ob das über das Modul so kommt oder schlicht die API es so anliefert. Ich dachte ich frage nach ehe ich anfange mir die Uhrzeit da rauszurechnen, evtl. ist's ja auch schlicht ein Mini-Bug.

Viele Grüße,
Martin

bombardi

Hallo,
ich habe jetzt endlich wieder das Weather Modul zum laufen gebracht.

Leider fehlt mir der Forecast.

Hier ein List von meinem Device.
Internals:
   API        OpenWeatherMapAPI
   APIKEY     XXXXXX
   APIOPTIONS cachemaxage:600
   DEF        API=OpenWeatherMapAPI,cachemaxage:600 apikey=XXXXXX location=52.3651974,13.3088034 interval=3600 lang=de
   FUUID      XXXXXX-f33f-41bc-da62-b15e35e8b0d63fd6
   INTERVAL   3600
   LANG       de
   MODEL      OpenWeatherMapAPI
   NAME       myWeather
   NOTIFYDEV  global
   NR         600
   NTFY_ORDER 50-myWeather
   STATE      T: 13 °C F: 85 % W: 20 km/h P: 999 hPa
   TYPE       Weather
   VERSION    v2.2.22
   eventCount 2
   READINGS:
     2023-03-24 08:26:49   apiMaintainer   Marko Oldenburg <fhemdevelopment@cooltux.net>
     2023-03-24 08:26:49   apiVersion      v3.2.6-stable
     2023-03-24 08:26:49   city           
     2023-03-24 08:26:49   cloudCover      75
     2023-03-24 08:26:49   code            35
     2023-03-24 08:26:49   condition       Leichter Regen
     2023-03-24 08:26:49   current_date_time Fr, 24 Mär 2023 08:26
     2023-03-24 08:26:49   high_c          13
     2023-03-24 08:26:49   humidity        85
     2023-03-24 08:26:49   icon            heavyrain
     2023-03-24 08:26:49   iconAPI         10d
     2023-03-24 08:26:49   lastError      
     2023-03-24 08:26:49   lat             52.3651974
     2023-03-24 08:26:49   long            13.3088034
     2023-03-24 08:26:49   low_c           12
     2023-03-24 08:26:49   pressure        999
     2023-03-24 08:26:49   pubDate         Fr, 24 Mär 2023 08:26
     2023-03-24 08:26:49   state           T: 13 °C F: 85 % W: 20 km/h P: 999 hPa
     2023-03-24 08:26:49   status          ok
     2023-03-24 08:26:49   sunriseTime     Fr, 24 Mär 2023 06:01
     2023-03-24 08:26:49   sunsetTime      Fr, 24 Mär 2023 18:25
     2023-03-24 08:26:49   tempFeelsLike_c 12
     2023-03-24 08:26:49   tempHigh        13
     2023-03-24 08:26:49   tempLow         12
     2023-03-24 08:26:49   temp_c          13
     2023-03-24 08:26:49   temperature     13
     2023-03-24 08:26:49   validity        up-to-date
     2023-03-24 08:26:49   visibility      10000
     2023-03-24 08:26:49   wind            20
     2023-03-24 08:26:49   wind_condition  Wind: S 20 km/h
     2023-03-24 08:26:49   wind_direction  190
     2023-03-24 08:26:49   wind_speed      20
   fhem:
     LOCATION   52.3651974,13.3088034
     allowCache 1
     interfaces temperature;humidity;wind
   readings:
Attributes:
   alerts     1
   forecast   daily
   room       Wetter
Was mache ich falsch ?

isy

Hallo bombardi,
das kann am API Key liegen.
Ich nutze den kostenlosen Key und damit muss man das Attr forecast auf hourly stellen.
Daran könnte das Problem liegen.
VG Helmut
Ein Weg wird erst zu einem Weg, wenn man ihn geht

bombardi

Das funktioniert für die nächsten 5 Stunden, aber ich möchte den Forecast für die nächsten Tage habe.
Irgendeine andere Kostenlose Idee ?

binford6000

Zitat von: bombardi am 24 März 2023, 10:32:02Irgendeine andere Kostenlose Idee ?
Auf API-Version 3.0 mit onecall umstellen:
API=OpenWeatherMapAPI,cachemaxage:600,version:3.0,endpoint:onecall apikey=abc...xyz
attr MeinWetter forecast daily
attr MeinWetter forecastLimit 5