3. Météo
--------
2 affichages :
- Une page de prévision à 14 jours de Météo Concept
- Une alerte pluie imminent (à 1 h de météo France)
3.1 Page météo
^^^^^^^^^^^^^^^
Cette page n’a PAS DE LIAISON AVEC LES SERVEURS DOMOTIQUES(Dz, Ha, Iob)
Voir également le site domo-site.fr
|image366|
*L’API est gratuite chez Météo Concept mais il faut s’enregistrer pour obtenir une clé*
- **La fonction PHP : dans fonctions.php**
|image367|
|image368|
- **Le JS dans footer.php**
|image369|
Pour la mise à jour auto chaque matin :
|image370|
- **Le HTML de la page meteo**
|image371|
l'image SVG de l'icône pour une actualisation:
|image372|
Il faut ajouter la page au site ; la procédure est toujours la même :
- dans config.php,
Mettre la variable à « true » ; *il faut au préalable demander un token gratuit*.
.. code-block::
// Page Météo meteo concept
define('ON_MET',true);// affichage page TOKEN PBLIGATOIRE
// ---Token & code insee
define('TOKEN_MC','2f**********************************d0');
define('INSEE','24454');
Dans header.php, l’affichage dans le menu est alors automatique.
.. code-block::
Météo';?>
- **La page meteo.php** :
https://raw.githubusercontent.com/mgrafr/monitor/main/include/meteo.php
|image375|
_ **Les css : en plus du style pour la page**
.. code-block::
.meteo_concept_am {display: inline;width: 150px;margin-left: -20px;}
#meteo_concept_am{position: relative;top: 20px;margin-left: -20px;}
#meteo_concept{position: relative;top: 10px;}
- **Les icones**
|image377|
|image378|
3.2 La Météo à 1 heure de Météo France
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Ne fait pas partie de la page météo : affichage sur la page d’accueil
|image379|
|image380|
**Extrait de accueil.php** :
.. code-block::
Les icones svg « pluie imminente » et « pas de pluie » disponibles
|image382| |image383| |image384| |image385|
**Le JS dans Footer.php** :
|image386|
**PHP** : ajax.php et fonction PHP « app_met($choix) »
- *ajax.php* :
.. code-block::
if ($app=="infos_met") {$retour=app_met($variable);echo json_encode($retour);}
- *app_met()*
2 Choix :
. (1) en HTML sur le site https://www.lameteoagricole.net/index_pluie-dans-heure.php
https://www.lameteoagricole.net/meteo-a-10-jours/Saint-Martin-De-Gurson-24610.html
Indiquer Commune-Code postal
. (2) par météo France et son API avec un Token
|image388|
**La base de données**: correspondance texte – image, la table text_image
|image389|
*Voir le site domo-site.fr*
|image390|
3.3 Autres prévisions météo depuis météo Concept
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- relevés temps réel depuis une station
.. code-block::
case 3://prévision horaire
$url = 'https://api.meteo-concept.com/api/forecast/nextHours?&token='.TOKEN_MC.'&insee='.INSEE;
$prevam = file_get_curl($url);
$forecast = json_decode($prevam);$info=array();
$forecasth=$forecast->forecast[0];
$info['temp']=$forecasth->temp2m;
$info['hum']=$forecasth->rh2m;
$info['Data']=$info['temp'].'° '.$info['hum'].'%';
return json_encode($info);
break;
- prévision heure par heure : peut remplacer Darsky (devenu payant) ou OpenWeatherMap, c’est français et plus facile d’utilisation, nombreux exemple sur le site web Méteoconcept
.. code-block::
case 2:// relevé temps réel station la pus proche (40Km)
$url = 'https://api.meteo-concept.com/api/observations/around?param=temperature&radius=40&token='.TOKEN_MC.'&insee='.INSEE;
//$url2 = 'https://api.meteo-concept.com/api/forecast/nextHours?token='.TOKEN_MC.'&insee='.INSEE;
$prevam = file_get_curl($url);//echo $prevam;return;
$forecastam = json_decode($prevam);$info=array();
//$info['time']=$forecastam[0]->observation->time;
$info['temp']=$forecastam[0]->observation->temperature->value;
$info['hPa']=$forecastam[0]->observation->atmospheric_pressure->value;
return json_encode($info);
break;
|image392|
.. |image366| image:: ../media/image366.webp
:width: 605px
.. |image367| image:: ../media/image367.webp
:width: 568px
.. |image368| image:: ../media/image368.webp
:width: 650px
.. |image369| image:: ../media/image369.webp
:width: 452px
.. |image370| image:: ../media/image370.webp
:width: 592px
.. |image371| image:: ../media/image371.webp
:width: 525px
.. |image372| image:: ../media/image372.webp
:width: 600px
.. |image375| image:: ../media/image375.webp
:width: 700px
.. |image377| image:: ../media/image377.webp
:width: 541px
.. |image378| image:: ../media/image378.webp
:width: 530px
.. |image379| image:: ../media/image379.webp
:width: 525px
.. |image380| image:: ../media/image380.webp
:width: 525px
.. |image382| image:: ../media/image382.webp
:width: 93px
.. |image383| image:: ../media/image383.webp
:width: 93px
.. |image384| image:: ../media/image384.webp
:width: 93px
.. |image385| image:: ../media/image385.webp
:width: 60px
.. |image386| image:: ../media/image386.webp
:width: 700px
.. |image388| image:: ../media/image388.webp
:width: 700px
.. |image389| image:: ../media/image389.webp
:width: 625px
.. |image390| image:: ../media/image390.webp
:width: 601px
.. |image392| image:: ../media/image392.webp
:width: 554px