Quick App - Nest Thermostat
Gestion du thermostat Nest via l'API Google
Version 1.0
Permet le contrôle du thermostat (mode éco, on/off, température) et de récupérer les informations des sondes de température et d'humidité.
Le compte Nest à besoin d'être migré sur le compte Google
Prérequis
Le plus compliqué est de récupérer les clés d’accès à l'API de google sur leur site (https://developers.google.com/nest/device-access)
Il faut suivre le quickstart https://developers.google.com/nest/device-access/get-started
Cela consiste à
S'inscrire au "Device Access Program" (https://console.nest.google.com/device-access). Cela coûte 5$ ...
Créer un projet "Google Cloud" (https://developers.google.com/nest/device-access/get-started#set_up_google_cloud_platform)
A la question "Where are you calling from?", il faut choisir Web Server
A la question "Authorized redirect URIs" , il faut mettre https://www.google.com
Récupérer le "client ID OAuth 2.0" et le "client secret" (on les a aussi dans le fichier credentials.json)
Créer un nouveau projet (bouton +) sur la page https://console.nest.google.com/device-access/project-list
Entrer un nom de projet
Rentrer le "client ID OAuth 2.0" qui a été créé dans l'étape 2
Il n'est pas utile d'activer le Google cloud Pub/Sub
A la fin, vous obtenez un Projet ID de la forme "32c4c2bc-fe0d-461b-b51c-f3885afff2f0"
Installation
Importer le fichier Nest.fqa de manière classique.
Ceci est une quickApp de type "Device Controller"
Dans l'onglet variables, remplir les paramètres suivants:
projectId: Le "Projet ID" créé lors de l'étape 3 des prérequis
clientId: Le "client ID OAuth 2.0" créé lors de l'étape 2 des prérequis
clientSecret: Le "client secret" créé lors de l'étape 2 des prérequis
code: laisser xxx. Le vrai code sera à renseigner lors d'une seconde étape
frequency: fréquence de rafraîchissement en seconde
refreshToken: laisser n'importe quoi. Il sera remplis automatiquement par la quickApp
Une fois démarré, au bout de 1 à 2 fois la fréquence de rafraîchissement (donc 1 à 2 minutes par défaut), un mail est envoyé (utilise l'adresse mail admin de fibaro).
Ce mail contient un lien qui permet de configurer les autorisations.
Activer :
Autoriser à consulter des informations sur votre maison (étape 1)
Autoriser à accéder à votre thermostat et à le contrôler
Puis cliquer sur suivant, et autoriser les accès
Vous arrivez sur une page google dont l'URL correspond à qq chose du genre
https://www.google.com/?code=4/xxxxx-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&scope=https://www.googleapis.com/auth/sdm.service
Récupérer la partie code (en rouge) et renseigner là dans le paramètre 'code' de la quickApp.
Au bout de quelque minutes le thermostat sera connecté.