Lolo1969 a écrit:Exact ça ne colle pas, j'avais bien eu "Rain Shower" et là maintenant j'ai "Drizzle, Drizzle And Rain". Oué oué, temps pourri aujourd'hui!
Ça semble plus compliqué du coup. Le plus simple et peut être de traduire et modifier les valeurs au fur et à mesure de leur apparition..
opa95 a écrit:Il n'y a rien à comprendre, il faut que Merguez07 rajoute le cache.
<?php
/*************************************************************************************
* Script Meteo du Jour basé sur le site weatherstack.com pour eedomus
* Développement par eedomusbox@gmail.com
*
* Ce script permet de récupérer au format XML, les prévisions pour le jour à venir
* ainsi que la météo actuelle.
*
* 2 paramètres obligatoires: La clé de weatherstack ainsi que la ville recherchée.
* L'url est de la forme: http://localhost/script/?exec=weatherstack.php&commune=[VAR1]&key=[VAR2]
* [VAR1] : Doit contenir la commune
* [VAR2] : Doit contenir la clé
*
* Evolution des versions :
*
* 2017-07-01 (Eedomusbox) : V1.0 - Version initiale
*
**************************************************************************************/
// Récupération de la ville
$commune = getArg('commune');
// On récupère la clé
$key = getArg('key');
$cache_duration = 8*60; // minutes
$time_last_xml = loadVariable('time_last_xml');
if ((time() - $time_last_xml) / 60 < $cache_duration)
{
sdk_header('text/xml');
$cached_xml = loadVariable('cached_xml');
echo $cached_xml;
die();
}
// On récupère la meteo
$url_meteo = "http://api.weatherstack.com/current?access_key=" . $key . "&query=" . $commune;
$jsonResponse = httpQuery($url_meteo);
$content = sdk_json_decode($jsonResponse, true);
// Generation du XML
sdk_header('text/xml');
$xml = '<?xml version="1.0" encoding="UTF-8"?>';
$xml .= '<meteodujour>';
$xml .= '<ville>' . $content[location][name] . '</ville>';
$xml .= '<dateupdate>' . $content[current][observation_time] . '</dateupdate>';
$xml .= '<courant>';
$xml .= '<temperature>' . $content[current][temperature] . '</temperature>';
$xml .= '<code>' . $content[current][weather_code] . '</code>';
$xml .= '<tempRessentie>' . $content[current][feelslike] . '</tempRessentie>';
$xml .= '<humidite>' . $content[current][humidity] . '</humidite>';
$xml .= '<visibilite>' . $content[current][visibility] . '</visibilite>';
$xml .= '<vent>' . $content[current][wind_speed] . '</vent>';
$xml .= '<ventDirection>' . $content[current][wind_dir] . '</ventDirection>';
$xml .= '<pression>' . $content[current][pressure] . '</pression>';
$xml .= '<courverturenuageuse>' . $content[current][cloudcover] . '</courverturenuageuse>';
$xml .= '<indexuv>' . $content[current][uv_index] . '</indexuv>';
$xml .= '<isday>' . $content[current][is_day] . '</isday>';
$xml .= '</courant>';
$xml .= '</meteodujour>';
$cached_xml = '<?xml version="1.0" encoding="utf8" ?>';
$cached_xml .= '<root>';
$cached_xml .= '<cached>0</cached>';
$cached_xml .= $xml;
$cached_xml .= '</root>';
echo $cached_xml;
if ($xml != '') // non vide
{
$cached_xml = str_replace('<cached>0</cached>', '<cached>1</cached>', $cached_xml);
saveVariable('cached_xml', $cached_xml);
saveVariable('time_last_xml', time());
}
?>
opa95 a écrit:Tu ouvre le panneau du plugin et tu cliques sur Vérifier les mises à jour.
Retour vers Scripts & Périphériques du store
Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 20 invité(s)