BOVELLES (80540)
Informations Météo: relevés et conditions météo sur Bovelles, Somme |
{
"require": {
"rugaard/oauth2-netatmo": "^1.0",
"league/oauth2-client": "^3.0"
}
}
require_once 'vendor/autoload.php';
use Rugaard\OAuth2\Client\Netatmo\Provider\Netatmo;
use League\OAuth2\Client\Token\AccessToken;
// Remplacez ces valeurs par celles de votre application Netatmo
$clientId = 'YOUR_CLIENT_ID';
$clientSecret = 'YOUR_CLIENT_SECRET';
$redirectUri = 'YOUR_REDIRECT_URI';
// Créer le fournisseur Netatmo
$provider = new Netatmo([
'clientId' => $clientId,
'clientSecret' => $clientSecret,
'redirectUri' => $redirectUri
]);
// Fonction pour charger les tokens depuis le fichier
function loadTokensFromFile($file)
{
if (file_exists($file)) {
$data = json_decode(file_get_contents($file), true);
return new AccessToken($data);
}
return null;
}
// Fonction pour sauvegarder les tokens dans le fichier
function saveTokensToFile($file, AccessToken $accessToken)
{
$data = json_encode($accessToken->jsonSerialize(), JSON_PRETTY_PRINT);
file_put_contents($file, $data);
}
// Charger les tokens depuis le fichier
$accessToken = loadTokensFromFile('tokens.json');
// Vérifier si le token est expiré avant chaque demande à l'API Netatmo
if ($accessToken && $accessToken->hasExpired()) {
// Rafraîchir le token si nécessaire
$newAccessToken = $provider->getAccessToken('refresh_token', [
'refresh_token' => $accessToken->getRefreshToken(),
]);
// Sauvegarder le nouveau token dans le fichier
saveTokensToFile('tokens.json', $newAccessToken);
// Utiliser le nouveau jeton d'accès
$accessToken = $newAccessToken;
}
// Gérer le processus d'authentification si le token est toujours invalide
if (!$accessToken || $accessToken->hasExpired()) {
if (!isset($_GET['code'])) {
// Si le code d'autorisation n'est pas présent, redirigez l'utilisateur vers l'URL d'autorisation
$authUrl = $provider->getAuthorizationUrl([
'scope' => 'read_station'
]);
header('Location: ' . $authUrl);
exit;
} else {
// Si le code d'autorisation est présent, obtenez le jeton d'accès en échangeant le code
$accessToken = $provider->getAccessToken('authorization_code', [
'code' => $_GET['code'],
]);
// Sauvegarder les tokens dans le fichier
saveTokensToFile('tokens.json', $accessToken);
}
}
// Utilisez le jeton d'accès pour accéder aux API Netatmo
$netatmoData = $provider->getResourceOwner($accessToken);
// Affichez les données Netatmo
print_r($netatmoData);
//////////////////////////////
//---Récupération des données JSON---------
//$url_devices = "https://api.netatmo.net/api/devicelist?access_token=" . $accessToken;
|
Pas d'alerte météo en cours
| ||||||||||||||||||||||||||||||
Mise à jour des données : 2024-11-21 07:52:37 - GMT+01:00 - Lever du soleil: 08:17 - Coucher du soleil: 16:56 - Durée du jour: 08:38 (-2min/hier)
Données : Station Netatmo & pour les prévisions : YR.NO, Infoclimat Pour la qualité de l'air : OpenWeathermap |
© 2019-2024 meteo-bovelles.org Site en ligne depuis le 18 septembre 2019 Mentions Légales |