Google Home Script : comment automatiser sa maison ?

Allumer une lumière à 18h, c’est bien. Éteindre toutes les lumières quand tout le monde quitte la maison, lancer l’aspirateur robot uniquement si personne n’est là, allumer les spots extérieurs au coucher du soleil seulement si quelqu’un est présent – c’est autre chose. Les routines classiques de Google Home atteignent vite leurs limites dès qu’on veut de la vraie logique conditionnelle. C’est exactement là qu’intervient le Google Home Script. Et non, pas besoin d’être développeur.

En bref : Routine classique vs Script Google Home

CritèreRoutine classiqueScript Google Home
DéclencheursHeure fixe, commande vocaleHeure, présence, état d’un appareil, lever/coucher du soleil
ConditionsAucuneMultiples (ET, OU, NON)
ActionsSimples, séquentiellesMultiples, avec délais, sur plusieurs appareils
LogiqueLinéaireConditionnelle (if/else)
ComplexitéZéro codeYAML (accessible avec l’aide IA)
Cas d’usage typique« Allume la lumière du salon à 19h »« Éteins tout quand tout le monde part, mais seulement en semaine »

Qu’est-ce que Google Home Script ?

Le script Google Home (ou « automatisation scriptée ») est un outil intégré directement dans l’application Google Home et sur Google Home pour le Web. Il permet d’écrire des automatisations en YAML – un langage de configuration lisible, structuré en blocs indentés.

Disponible depuis juin 2023, l’éditeur de script a été enrichi en octobre 2023 avec une aide à la rédaction par IA : un bouton « Aidez-moi à scripter » génère un script complet à partir d’une description en langage naturel. Vous décrivez ce que vous voulez, l’IA propose le code. Vous n’avez plus qu’à ajuster.

La différence avec une routine classique est fondamentale :

  • Les routines : une action se déclenche à une heure fixe ou sur commande vocale. Pas de condition, pas de logique.
  • Les scripts : on peut combiner plusieurs déclencheurs, vérifier l’état d’un appareil, tester si quelqu’un est à la maison, attendre un délai, et enchaîner des dizaines d’actions.

C’est gratuit, sans abonnement, disponible pour tous les utilisateurs Google Home disposant d’un appareil compatible.

Comment accéder à l’éditeur de script Google Home ?

Deux chemins, même résultat.

Via l’application Google Home (Android / iOS) :

  1. Ouvrez l’app Google Home
  2. Appuyez sur Automatisations (icône en bas)
  3. Appuyez sur + → Créer un script

Via Google Home pour le Web :

  1. Rendez-vous sur home.google.com/automations
  2. Cliquez sur Ajouter → l’éditeur de script s’ouvre

Prérequis : avoir au moins un appareil compatible dans votre logement – un Google Nest Hub, une enceinte Nest, ou un appareil Matter associé à votre maison.

L’aide IA : dans l’éditeur, le bouton « Aidez-moi à scripter » vous permet de décrire votre automatisation en français (« éteins toutes les lumières quand tout le monde part ») et de récupérer un bloc YAML prêt à l’emploi. Pratique pour démarrer.

La structure d’un script Google Home

Pas de panique. Le YAML, c’est juste du texte bien rangé. Pensez-y comme à une recette de cuisine : des ingrédients (les déclencheurs), des conditions (si le four est chaud), des étapes (les actions).

Un script Google Home se compose de deux blocs principaux :

Le bloc metadata

Il donne un nom et une description à votre automatisation. Ça ne sert qu’à vous.

metadata:
name: Extinction générale au départ
description: Éteint toutes les lumières quand tout le monde quitte la maison

Le bloc automations

C’est le cœur du script. Il contient trois sous-sections :

starters (déclencheurs) – ce qui lance le script :

  • time.schedule → une heure précise ou relative au soleil (sunset, sunrise+30min)
  • home.state.HomePresence → présence ou absence détectée
  • device.state.OnOff → un appareil qui s’allume ou s’éteint
  • device.event.MotionDetection → détection de mouvement

condition (conditions) – ce qui filtre l’exécution :

  • time.between → seulement entre deux heures
  • home.state.HomePresence → seulement si quelqu’un est là (ou absent)
  • Opérateurs logiques : and, or, not

actions (actions) – ce que font vos appareils :

  • device.command.OnOff → allumer / éteindre
  • device.command.BrightnessAbsolute → régler la luminosité
  • device.command.ThermostatTemperatureSetpoint → régler la température
  • home.command.Notification → envoyer une notification sur mobile
  • time.delay → attendre un délai avant l’action suivante

Exemple commenté : éteindre les lumières au départ

metadata:
name: Extinction au départ
description: Éteint les lumières quand tout le monde quitte la maison
automations:
- starters:
# Déclencheur : la maison passe en mode "absent"
- type: home.state.HomePresence
state: homePresenceMode
is: AWAY
actions:
# Action : éteindre les lumières du salon et de l'entrée
- type: device.command.OnOff
devices:
- Lampe salon - Salon
- Plafonnier entrée - Entrée
on: false

L’indentation est critique en YAML. Deux espaces ou une tabulation – mais pas les deux en même temps, et pas d’espace en trop. Une erreur d’indentation et le script refuse de s’activer. L’éditeur souligne les erreurs en rouge, ce qui aide beaucoup.

5 exemples de scripts utiles à copier

Éteindre toutes les lumières quand tout le monde part

Situation : vous partez au travail et vous n’êtes jamais sûr d’avoir éteint partout.

metadata:
name: Extinction départ maison
description: Éteint toutes les lumières dès que la maison est vide
automations:
- starters:
- type: home.state.HomePresence
state: homePresenceMode
is: AWAY
actions:
- type: device.command.OnOff
devices:
- Lumière salon - Salon
- Lumière cuisine - Cuisine
- Lumière chambre - Chambre
on: false

Simuler une présence pendant les vacances

Situation : vous êtes absent une semaine et vous voulez que la maison ait l’air habitée.

Le principe : allumer une lumière le soir, l’éteindre après un délai. On peut créer plusieurs automatisations à des heures différentes pour varier l’effet.

metadata:
name: Simulation présence soir
description: Allume une lumière à 20h et l'éteint 2h plus tard
automations:
- starters:
- type: time.schedule
at: 20:00
actions:
- type: device.command.OnOff
devices:
- Lampe salon - Salon
on: true
# Attendre 2 heures avant d'éteindre
- type: time.delay
for: 2hour
- type: device.command.OnOff
devices:
- Lampe salon - Salon
on: false

Lancer l’aspirateur robot quand tout le monde est absent

Situation : l’aspirateur fait du bruit, autant qu’il tourne quand personne n’est là.

metadata:
name: Aspirateur en mode absent
description: Lance l'aspirateur dès que la maison est vide
automations:
# Lancer quand tout le monde part
- starters:
- type: home.state.HomePresence
state: homePresenceMode
is: AWAY
actions:
- type: device.command.StartStop
devices:
- Aspirateur - Salon
start: true
# Arrêter quand quelqu'un rentre
- starters:
- type: home.state.HomePresence
state: homePresenceMode
is: HOME
actions:
- type: device.command.StartStop
devices:
- Aspirateur - Salon
start: false

Régler le thermostat selon l’heure et la saison

Situation : vous voulez 21°C le soir, mais seulement quand il fait frais dehors. Le thermostat Nest remonte la température si elle descend sous 18°C.

metadata:
name: Chauffage soirée
description: Monte le chauffage à 21°C si la température ambiante descend sous 18°C le soir
automations:
- starters:
- type: device.state.TemperatureSetting
state: thermostatTemperatureAmbient
device: Thermostat - Salon
lessThan: 18C
condition:
type: time.between
after: 18:00
before: 23:00
actions:
- type: device.command.ThermostatTemperatureSetpoint
devices:
- Thermostat - Salon
thermostatTemperatureSetpoint: 21C

Allumer les lumières extérieures au coucher du soleil uniquement si quelqu’un est à la maison

Situation : inutile d’allumer les spots de jardin si personne n’est là pour en profiter.

metadata:
name: Spots jardin au coucher du soleil
description: Allume les lumières extérieures au coucher du soleil si quelqu'un est présent
automations:
- starters:
- type: time.schedule
at: SUNSET
# Condition : quelqu'un est à la maison
condition:
type: home.state.HomePresence
state: homePresenceMode
is: HOME
actions:
- type: device.command.OnOff
devices:
- Spots jardin - Extérieur
on: true

Les limites à connaître

Bon, soyons honnêtes. L’éditeur de script Google Home est puissant, mais il a ses angles morts.

Compatibilité des appareils. Seuls les appareils Matter, Google Nest et certains appareils Zigbee (via un hub compatible) fonctionnent avec les scripts. Beaucoup d’appareils Tuya bon marché, certaines prises connectées sans certification Matter, ou les vieux appareils Zigbee sans hub : ils n’apparaissent tout simplement pas dans l’éditeur.

Pas de compatibilité universelle avec les tiers. Si votre ampoule Philips Hue est bien intégrée à Google Home, elle fonctionnera. Mais un appareil associé via une intégration tierce bancale peut disparaître de la liste des appareils disponibles dans l’éditeur.

Le YAML est sensible aux indentations. Une tabulation de trop, un espace manquant, et le script refuse de s’activer. L’éditeur souligne les erreurs, mais il faut quand même les corriger à la main. C’est la principale source de frustration pour les débutants.

L’IA aide, mais ne garantit pas un script parfait. Le bouton « Aidez-moi à scripter » génère souvent un bon point de départ, mais il arrive que les noms d’appareils ne correspondent pas exactement à ceux configurés dans votre app Google Home. Il faut toujours vérifier et ajuster.

La détection de présence n’est pas infaillible. Les automatisations basées sur home.state.HomePresence dépendent de la localisation des téléphones des membres du foyer. Si un téléphone est en mode avion ou que la localisation est désactivée, le script peut se tromper sur la présence.

FAQ

Google Home Script est-il gratuit ?

Oui, complètement. L’éditeur de script est inclus dans l’application Google Home standard, sans abonnement requis. Certaines fonctionnalités comme la détection d’événements sur caméra (détection de personne, de colis) peuvent nécessiter un abonnement Google Home Premium, mais l’éditeur lui-même est accessible à tous.

Faut-il savoir coder pour utiliser l’éditeur de script Google Home ?

Non. Le YAML est un langage de configuration très lisible – ce n’est pas du Python ni du JavaScript. Et depuis octobre 2023, le bouton « Aidez-moi à scripter » permet de générer un script complet à partir d’une phrase en français. On recommande quand même de comprendre la structure de base (les trois blocs metadata, starters, actions) pour pouvoir corriger les erreurs que l’IA génère parfois.

Quels appareils sont compatibles avec les scripts Google Home ?

Les appareils Google Nest (thermostats, caméras, enceintes, écrans), les appareils certifiés Matter, et certains appareils Zigbee connectés via un hub compatible. Pour vérifier si un appareil spécifique est compatible, ouvrez l’éditeur de script et utilisez la saisie semi-automatique (Ctrl+Espace) : si l’appareil n’apparaît pas dans les suggestions, il n’est pas pris en charge.

Quelle est la différence entre une Routine et un Script Google Home ?

Une routine classique est une séquence simple : un déclencheur → des actions. Pas de condition, pas de logique. Un script Google Home permet des automatisations conditionnelles multi-étapes : plusieurs déclencheurs, des conditions (si quelqu’un est à la maison, si l’heure est entre 18h et 22h), des délais entre les actions, et une logique ET/OU/NON. Les scripts sont réservés aux « Routines du foyer » (Household Routines), pas aux routines personnelles.