Integración externa: Meteo France

La diferencia de temperatura podría deberse a que el widget no muestra decimales. Por ejemplo, recibo el valor de 16.9°C y en lugar de redondear a 17°C, el decimal simplemente se omite.

Acabo de lanzar un parcheo en la integración (desde Besançon). ¿Podrías actualizar y probar?
Redondeo los valores decimales recibidos por la API y he corregido el problema del copo de nieve.

Acabo de hacer la actualización y confirmo que el problema de los copos de nieve está resuelto :wink:

@prohand Habrá una nueva actualización en 1.0.3 porque olvidé poner la categoría.

Yo también tengo diferencias (versión 1.0.3)

No se muestra ningún copo de nieve por el momento, pero sí termómetros rojos, presentes en las versiones 1.0.1 y 1.0.3

Una información que debería ayudar a depurar:

Igual para mí:

Gracias @mutmut y @Jluc por las capturas, permitieron encontrar al culpable rápidamente :folded_hands:

El problema: el termómetro rojo, es el icono que el widget muestra cuando no reconoce la condición meteorológica (« No disponible »). Al consultar la API de Météo France en una treintena de ciudades, encontré la descripción en cuestión: « Variable ». Es un cielo mixto bastante común, pero este término no estaba en mi lista de correspondencias — de ahí el icono por defecto.

Bonus sorpresa: la API a veces devuelve descripciones en inglés (« Cloudy », « Storms », « Slight showers ») en medio de un boletín en francés, aunque le pido explícitamente en francés. Tampoco eran reconocidas.

Lo que he corregido:

  • « Variable » y los términos en inglés ahora son reconocidos;
  • sobre todo, he añadido una red de seguridad: si Météo France inventa algún día un término que no conozco, la integración se basa en la familia del icono en lugar de mostrar un termómetro. Esto debería cerrar el tema de una vez por todas;
  • de paso, dos iconos que eran inexactos: « Tormenta con granizo » mostraba una simple tormenta, y « Muy nublado » mostraba un sol detrás de una nube cuando en realidad es un cielo cubierto.

Verificado en 12 ciudades, metrópolis y ultramar: ningún termómetro, ni en la hora actual, ni en las próximas horas, ni en los próximos días.

@Chris75 he investigado las diferencias con meteofrance.com, y buena noticia: no es un error. Hay dos causas, ambas antes de la integración.

  1. No es exactamente el mismo lugar

La API que uso responde para el punto GPS exacto de tu casa. El sitio web de meteofrance.com, en cambio, muestra el pronóstico del municipio (su punto de referencia oficial). Cuando hay relieve, se nota.

Pequeña demostración alrededor de Besançon, en solo 4 km:

Punto consultado Lugar devuelto Altitud Mínima prevista
centro Besançon 261 m 17,2 °C
oeste Besançon 307 m 16,1 °C
sur Beure 252 m 15,6 °C
este Montfaucon 488 m 13,6 °C

3,6 °C de diferencia entre dos puntos de la misma ciudad. Las diferencias de un grado reportadas encajan perfectamente. Y no es casualidad que afecten principalmente a las mínimas: las temperaturas nocturnas son las que más dependen de la altitud y del efecto de cuenca. Besançon, ciudad encajonada, es el caso de estudio :slightly_smiling_face:

Cabe señalar que la integración es más precisa para ti que el sitio web: describe tu casa, no el centro de la ciudad.

  1. El viento: la API pierde precisión antes que yo

La API solo devuelve la velocidad del viento en m/s enteros. Una vez convertido a km/h, solo se pueden mostrar ciertos valores:

1, 2, 3, 4, 5, 6 m/s → 4, 7, 11, 14, 18, 22 km/h

Cuando el sitio web muestra 15 km/h (es decir, 4,17 m/s), la API me da 4 m/s redondos, lo que se convierte en 14 km/h. Es imposible mostrar 15, 10 o 5 — estos valores no existen en lo que recibo. Es exactamente la serie de diferencias de tu captura, @Chris75 (15→14, 10→11, 5→7).

Aquí no puedo hacer nada: no se puede reconstruir un decimal que la API no envía.

Explicación clara :+1:

Gracias @Will_71 por todas estas correcciones.

¿Sabes si sería posible conservar en pantalla la página del día anterior?

¿Qué quieres decir? ¿Quieres conservar el tiempo de ayer?
¿Con qué fin?

Sí, eso es, como suele ocurrir, las previsiones no siempre se corresponden con la situación real, lo que permitiría reducir el delta.

Pero no sé si esto puede interesarle a alguien

He creado una casa situada en el punto de referencia oficial y esto es lo que obtengo:

  • para las temperaturas: está bien
  • para los iconos: hay diferencias
  • para el viento: los 10 km/h de Météo-France dan 14 km/h para el lunes 24

@Chris75, ¿puedes actualizar y volver a probar, por favor?

con la última versión:


Vale, gracias. Para los iconos, no creo que pueda hacer mejor por el momento, ya que no tengo los iconos como los de Meteo France para el 22 y el 23. Miraré para encontrar otros iconos, pero habrá que hacer una modificación en el núcleo.

Para el viento, la API proporciona la velocidad en m/s.
Si tomamos el ejemplo del viernes 21, tienes 20 km/h en Meteo France y 18 km/h en Gladys.
La API devuelve 5 m/s, no hay decimales, por lo que si convertimos 5 m/s => 18 km/h.
Sería necesario que la API devolviera 5.5 m/s para que tengas 20 km/h en Gladys. ¡Ahí no podré hacer nada más, lamentablemente!

efectivamente creo que la galería de iconos de Gladys no es suficiente para corresponder
Y para el viento, entendí bien que era un problema de redondeo, ¡ya lo habías explicado muy bien!

Uy : acabo de probar la última versión, pero hay aún más diferencias en los iconos