Echec pour avoir les données 'Open Weather Map'

Posez ici vos questions d'utilisation, de configuration de DomoticZ, de bugs, de conseils sur le logiciel lui même dans son utilisation et son paramétrage.
Des forums spécifiques sont ouverts ci-dessous pour regrouper les différents sujets.
gsagsa99
Messages : 11
Inscription : 09 sept. 2022, 21:01

Echec pour avoir les données 'Open Weather Map'

Message par gsagsa99 »

Hello,
Version : 2022.1 build 14477
Platform Windows 10


J’ai commencé récemment avec Domoticz.
J’essaie de configurer une entrée matériel pour ‘Open Weather Map’ (OWM).
J’ai ouvert un compte et j’ai obtenu une clé API.

Pour la configuration, voir fichier ci-joint

Echec au démarrage , voici le log :
2022-09-06 10:01:42.394 Status: Meteo_Local: Using Domoticz home location (Lon 4.988987, Lat 50.7001)!
2022-09-06 10:01:42.523 Status: Meteo_Local: Using specified location (Lon 4.988987, Lat 50.7001) Unable to find nearest City!
2022-09-06 10:01:42.524 Status: Meteo_Local: Started
2022-09-06 10:01:42.523 Error: Meteo_Local: Error getting http data!

J’ai construit l’appel manuellement comme documenté chez OWM, et j’utilise chrome.

https://api.openweathermap.org/data/2.5 ... ic&lang=en

Cela fonctionne très bien et j’obtiens le fichier JSON.

Bien que n’étant pas expert C++, j’ai regardé dans le module ‘OpenWeatherMap.cpp’.
Il me semble que l’appel OWM est construit correctement.

Ensuite il y a appel à ‘HTTPClient::GET’ qui retourne ‘false’
Pour ce code mon expérience C++ est trop légère.
Une idée pour l’appel échoue ?
Merci
Pièces jointes
Configuration.jpg
Configuration.jpg (435.57 Kio) Consulté 2801 fois
Keros
Messages : 6638
Inscription : 23 juil. 2019, 20:57

Re: Echec pour avoir les données 'Open Weather Map'

Message par Keros »

Bonjour gsagsa99 et bienvenu sur le forum :)

Le message du log indique que le plugin a du mal à trouver une ville proche de ta position. Comme si tu habitais en plein milieu de nulle part :?

Essaye peut-être de paramétrer une localisation sur Paris pour voir si cela fonctionne.

EDIT :

Le service semble se calculer sur les villes. Les coordonnées données sont une position dans l'océan :
Sans titre.png
Sans titre.png (147.26 Kio) Consulté 2790 fois
Si c'est réellement ta position, je te conseille plutôt une météo marine ;)
Comment bien utiliser le forum : Poser une question, Mettre un script, un fichier, une image ou des logs
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
gsagsa99
Messages : 11
Inscription : 09 sept. 2022, 21:01

Re: Echec pour avoir les données 'Open Weather Map'

Message par gsagsa99 »

Merci Keros

J'avais essayé avec plusieurs villes et cela n'a pas fonctionné. Voici le log avec Paris

2022-09-09 21:49:56.111 Status: Meteo_Local: Worker stopped...
2022-09-09 21:49:56.233 Status: Meteo_Local: Using specified location (Lon 2.3522, Lat 48.8566) Unable to find nearest City!
2022-09-09 21:49:56.234 Status: Meteo_Local: Started
2022-09-09 21:49:56.233 Error: Meteo_Local: Error getting http data!
2022-09-09 21:49:59.354 Error: Meteo_Local: Error getting http data!

L'URL que j'ai construit avec les coordonnées locales (effectivement je suis dans un trou à la campagne) fonctionne et me retourne la ville la plus proche avec ses données météo .

Voici l'URL construit manuellement (avec mes coordonnées locales).

https://api.openweathermap.org/data/2.5 ... ic&lang=en

En entrant cet URL dans chrome, j'obtient en retour (format JSON )

{"coord":{"lon":4.989,"lat":50.7001},"weather":[{"id":500,"main":"Rain","description":"light rain","icon":"10n"}],"base":"stations","main":{"temp":15.83,"feels_like":15.71,"temp_min":14.04,"temp_max":16.79,"pressure":1009,"humidity":86},"visibility":10000,"wind":{"speed":4.12,"deg":200},"rain":{"1h":0.24},"clouds":{"all":75},"dt":1662753281,"sys":{"type":2,"id":2010548,"country":"BE","sunrise":1662699965,"sunset":1662746951},"timezone":7200,"id":2789621,"name":"Orp-le-Grand","cod":200}

Je décode le JSON en ligne et j'obtiens les données météo de la ville la plus proche de chez moi : Orp-le-Grand (voir fichier ci-joint)

Donc je pense que quelque se passe dans le code de 'HTTPClient::GET’

@ Keros , je suis bien sur terre ;) , tu as inversé lon et lat. :P

Merci
Pièces jointes
jsonformatter.zip
(520 octets) Téléchargé 113 fois
Dernière modification par Keros le 10 sept. 2022, 07:00, modifié 1 fois.
Raison : Merci d'éditer le dernier message pour y rajouter l'information supplémentaire
Keros
Messages : 6638
Inscription : 23 juil. 2019, 20:57

Re: Echec pour avoir les données 'Open Weather Map'

Message par Keros »

Ah, oups désolé :oops:

Tu as essayé en rentrant le nom de la ville ou son ID ?
Comment bien utiliser le forum : Poser une question, Mettre un script, un fichier, une image ou des logs
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
gsagsa99
Messages : 11
Inscription : 09 sept. 2022, 21:01

Re: Echec pour avoir les données 'Open Weather Map'

Message par gsagsa99 »

Bonjour ,

Soit avec le nom , soit avec l'ID, cela ne marche pas.
J'ai pris PARIS , pour éviter mon trou perdu dans la campagne belge

Avec le nom, voici le log

2022-09-10 10:08:13.963 Status: Meteo_Local: Worker stopped...
2022-09-10 10:08:13.963 Status: Meteo_Local: Using specified location (City PARIS)!
2022-09-10 10:08:14.091 Status: Meteo_Local: Started
2022-09-10 10:08:14.090 Error: Meteo_Local: Error getting http data!
2022-09-10 10:08:14.090 Error: Meteo_Local: Unable to resolve City to Latitude/Longitude, please use Latitude,Longitude directly in hardware setup


L'ID de PARIS est 6455259 (voir fichier ci-joint)
Avec l'ID , voici le log
2022-09-10 10:13:01.723 Status: Meteo_Local: Worker stopped...
2022-09-10 10:13:01.724 Status: Meteo_Local: Using specified location (Station ID 6455259)!
2022-09-10 10:13:01.876 Status: Meteo_Local: Started
2022-09-10 10:13:01.875 Error: Meteo_Local: Error getting http data!
2022-09-10 10:13:01.876 Error: Meteo_Local: Unable to resolve City to Latitude/Longitude, please use Latitude,Longitude directly in hardware setup!)

J'ai obtenu l'ID de PARIS en faisant manuellement l'URL suivant

https://api.openweathermap.org/data/2.5 ... ic&lang=en

J'obtiens bien les données météo avec l'ID de PARIS (voir fichier ci-joint)

Je pense qu'il y a un bug dans le code de la méthode HTTPClient::GET, mais mes faibles connaissances C++ ne sont suffisantes pour lire le code.

Y-a-t-il moyen de mettre une trace ?

Merci
Pièces jointes
JsonParis.zip
(496 octets) Téléchargé 120 fois
Keros
Messages : 6638
Inscription : 23 juil. 2019, 20:57

Re: Echec pour avoir les données 'Open Weather Map'

Message par Keros »

Là, cela dépasse mes compétences, je ne pourrais pas t'aider plus.
Comment bien utiliser le forum : Poser une question, Mettre un script, un fichier, une image ou des logs
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
gsagsa99
Messages : 11
Inscription : 09 sept. 2022, 21:01

Re: Echec pour avoir les données 'Open Weather Map'

Message par gsagsa99 »

Merci pour ton aide
gsagsa99
Messages : 11
Inscription : 09 sept. 2022, 21:01

Re: Echec pour avoir les données 'Open Weather Map'

Message par gsagsa99 »

Voici (sauf erreurs de ma part), les raisons de l'échec.

OpenWeatherMap à deux APIs :

1. api.openweathermap.org/data/2.5/weather?<paramètres> --> donne la météo actuelle
2 api.openweathermap.org/data/2.5/onecall?<paramètres> --> prévisions

Je ne sais pas depuis quand , mais le deuxième API est passé en version 3.0. La version 2.5 ne fonctionne plus!

De plus il faut souscrire à un 'Base Plan' payant mais qui ne sera facturé qu'après les premiers 1000 appels (journaliers ?) qui restent gratuits.

Pour faire fonctionner cela nécessite un changement de code (voir fichier C++ ci-joint)
Pièces jointes
OpenWeatherMap.zip
(5.85 Kio) Téléchargé 147 fois
Neutrino
Messages : 2662
Inscription : 10 juil. 2015, 15:42
Localisation : Les Herbiers(85)

Re: Echec pour avoir les données 'Open Weather Map'

Message par Neutrino »

Dans "Localisation", il faut rentrer les coordonnées sous ce format :

Code : Tout sélectionner

lat=46.XXXXXX&lon=-1.XXXXXX
Ma maison à plein d'IP ! :mrgreen:
SAV Bonjour. Vous avez vidé le cache ?
gsagsa99
Messages : 11
Inscription : 09 sept. 2022, 21:01

Re: Echec pour avoir les données 'Open Weather Map'

Message par gsagsa99 »

Bonjour Neutrino
merci
Pourquoi -1.xxxxx pour la longitude ?

Si je veux Paris (lat = 48.8566, lon = 2.3522) que dois-je mettre ?
Répondre