Aller au contenu
Alakazart

Quick App - Nest Thermostat

Recommended Posts

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

 

 

Nest_quickapp.png?raw=true

 

 

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 à 

  1. S'inscrire au "Device Access Program" (https://console.nest.google.com/device-access). Cela coûte 5$ ...
  2. 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)
  3. 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:

param.png.8e46d5a91d631813f82a0937a9a0a569.png

 

 

  • 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é.

 

  • Like 2

Partager ce message


Lien à poster
Partager sur d’autres sites

Merci beaucoup, ça marche impeccable !!!

Sais-tu si il existe la meme chose pour les nest protect ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Google ne propose pas d'API pour le Nest Protect.

 

Les seules appareils supportés sont les caméras, les thermostats et les sonnettes Nest.

https://developers.google.com/nest/device-access/traits

 

Si des APIs arrivent un jour pour le Nest Protect, j'ajouterai le support :)

 

NB: Je n'ai pas eu de notification mail, donc je répond car je suis passé au hasard sur ce post.

 

Partager ce message


Lien à poster
Partager sur d’autres sites

×