Aller au contenu principal
Plugin Prévision Météo

Plugin Prévision Météo

Récupérez les **prévisions météo sur 5 jours** dans Jeedom avec widget graphique, données horaires et icônes locales.

Jeedom 4.4+stableos 11+php 7.4/8.x☕ Soutenir le développement

Le plugin Prévision Météo récupère les données météorologiques via le site prevision-meteo.ch et les affiche dans Jeedom avec un widget complet incluant graphique horaire.

Il fournit :

  • la météo actuelle (température, vent, humidité, pression, condition)
  • les prévisions sur 5 jours (min/max, condition, icône, cumul de pluie)
  • les données horaires détaillées (température, précipitations, vent, pression, etc.)
  • un graphique Highcharts interactif avec courbes de température, précipitations et flèches de vent

✨ Principe de fonctionnement

  1. Un cron déclenche périodiquement l'actualisation (par défaut toutes les heures)
  2. Un seul appel API est effectué vers prevision-meteo.ch
  3. Les données sont mises en cache localement (JSON + icônes PNG)
  4. Les commandes Jeedom sont mises à jour et le widget est rafraîchi
  5. Aucun appel réseau ne se fait lors de l'affichage du widget

Le plugin ne possède pas de démon et ne nécessite aucune dépendance à installer.


🔧 Prérequis

Identifier votre station

  1. Rendez-vous sur prevision-meteo.ch
  2. Recherchez votre ville via la barre de recherche
  3. Vous arrivez sur une URL de la forme : https://www.prevision-meteo.ch/meteo/localite/paris
  4. Le nom de station à renseigner est la dernière partie de l'URL : paris
Stations multiples

Vous pouvez créer plusieurs équipements pour différentes villes. Chaque équipement a sa propre station et son propre cron de rafraîchissement.


🚀 Installation

Étape 1 — Installer le plugin

  1. Allez dans Plugins → Gestion des plugins → Market
  2. Recherchez Prévision Météo
  3. Cliquez sur Installer
  4. Activez le plugin

Étape 2 — Créer un équipement

  1. Allez dans Plugins → Météo → Prévision Météo
  2. Cliquez sur Ajouter
  3. Donnez un nom à l'équipement
  4. Renseignez le nom de la station (ex : paris, lyon, st-maurice-vs)
  5. Sauvegardez

Le plugin effectue alors un appel API, crée toutes les commandes et télécharge les icônes localement.


⚙️ Configuration de l'équipement

Paramètres principaux

ChampDescription
StationNom de la localité sur prevision-meteo.ch (ex : paris)
Cron de rafraîchissementExpression cron pour l'actualisation automatique (par défaut : toutes les heures à une minute aléatoire)
Widget personnaliséCocher pour utiliser le widget enrichi avec sources de données personnalisables
Widget par défautCocher pour utiliser le widget Jeedom standard

Widget personnalisé

En cochant Widget personnalisé, vous pouvez remplacer les sources de données par des commandes externes (par exemple une sonde Netatmo) :

  • Température
  • Humidité
  • Pression
  • Vent
  • Pluie instantanée
  • Pluie totale

Configuration widget personnalisé


📊 Données récupérées

Météo actuelle

  • Température (current_condition_tmp)
  • Vitesse du vent et rafales
  • Humidité
  • Pression
  • Icône et condition météo

Prévisions jour 0 à jour 4

Pour chaque jour :

  • Température min / max
  • Condition météo et icône
  • Cumul de pluie journalier (rain_0 à rain_4)

Données horaires (jour 0)

Pour chaque heure du jour en cours :

  • Température (TMP2m)
  • Point de rosée (DPT2m)
  • Température ressentie au vent (WNDCHILL2m)
  • Humidité (RH2m)
  • Pression (PRMSL)
  • Précipitations (APCPsfc)
  • Vitesse du vent (WNDSPD10m) et rafales (WNDGUST10m)
  • Direction du vent (WNDDIR10m, WNDDIRCARD10)
  • Isotherme 0°C (HGT0C)
  • Couverture nuageuse haute/moyenne/basse (HCDC, MCDC, LCDC)
  • Indice K (KINDEX)
Documentation complète des commandes

La liste complète des paramètres retournés par le flux JSON est disponible dans la documentation officielle de prevision-meteo.ch (PDF).


🖥️ Widgets

Widget standard

Le widget affiche :

  • l'icône météo du jour (servie localement)
  • la température actuelle
  • les conditions et températures min/max
  • l'humidité, la pression, le vent, l'indice orage
  • les prévisions J+1 à J+4 avec icônes
  • l'isotherme et le point de rosée
  • la température ressentie (windchill sous 10°C, humidex au-dessus de 20°C)

Widget standard

Widget avec humidex

Graphique horaire

Un clic sur l'icône graphique bascule l'affichage vers un graphique Highcharts interactif. Des boutons permettent de sélectionner le jour (J0 à J4).

Le graphique affiche :

  • courbe de température et température ressentie
  • barres de précipitations
  • icônes météo toutes les 2 heures
  • flèches de direction du vent avec intensité Beaufort

Graphique horaire

Widget personnalisé

En activant le widget personnalisé, les données affichées peuvent provenir de commandes externes (sondes Netatmo, stations météo, etc.).

Widget personnalisé


🔄 Rafraîchissement des données

Automatique

Le plugin utilise le cron Jeedom (méthode cron() appelée chaque minute). Chaque équipement a sa propre expression cron configurable.

Par défaut : une fois par heure (minute aléatoire entre 1 et 9).

Manuel

Une commande Rafraîchir (action) est disponible sur chaque équipement. Un clic sur l'icône de synchronisation du widget déclenche l'actualisation.

Protection anti-spam

Un cooldown de 60 secondes empêche les appels API trop rapprochés. Si un rafraîchissement a eu lieu il y a moins de 60s, la demande est ignorée.

Résilience

En cas d'échec de l'appel API (timeout, erreur réseau, JSON invalide), le plugin conserve les dernières données valides en cache et met à jour les commandes à partir de celles-ci.


📁 Cache et fichiers locaux

Le plugin stocke ses données dans le dossier data/ :

FichierContenu
{station}.jsonRéponse brute de l'API
{station}_days.jsonDonnées traitées pour les graphiques (5 jours avec timestamps)
{station}.lockFichier verrou anti-spam (contient le timestamp du dernier appel)
icons/{condition}.pngIcônes météo téléchargées localement
icons/{condition}-big.pngIcônes météo grande taille

Les icônes sont téléchargées une seule fois puis servies localement. Aucun appel au site distant n'est fait lors de l'affichage des widgets.


🛠️ Dépannage

Aucune donnée météo

  • Vérifiez que le nom de station est correct (dernière partie de l'URL prevision-meteo.ch)
  • Vérifiez que la machine Jeedom a accès à Internet
  • Consultez les logs du plugin (meteoprev)

Les icônes ne s'affichent pas

  • Vérifiez que le dossier plugins/meteoprev/data/icons/ existe et contient des fichiers PNG
  • Lancez un rafraîchissement manuel pour déclencher le téléchargement des icônes

Le graphique est vide

  • Vérifiez que le fichier {station}_days.json existe dans plugins/meteoprev/data/
  • Lancez un rafraîchissement pour regénérer ce fichier

"Cooldown actif" dans les logs

C'est normal : cela signifie qu'un rafraîchissement a été demandé moins de 60 secondes après le précédent. Le plugin protège l'API contre les appels trop fréquents.


✅ Résumé

Le plugin Prévision Météo permet d'intégrer dans Jeedom :

  • les prévisions météo sur 5 jours via prevision-meteo.ch
  • un widget complet avec graphique horaire interactif
  • des données horaires détaillées (température, vent, pression, précipitations)
  • un cache local des icônes et des données pour un affichage rapide et sans dépendance réseau

C'est une solution légère, sans démon ni dépendance, avec un seul appel API par actualisation.