1. Introduction
Points abordés
- Planifier et écrire une automatisation à l'aide de l'éditeur de script
- Tester une automatisation créée à l'aide d'un script
Ce dont vous avez besoin
- Un téléphone Android ou iOS exécutant l'application Google Home
- Une ampoule connectée ou un autre appareil certifié "Fonctionne avec Google Home" et qui peut être allumé ou éteint.
2. Configurer votre appareil
Si votre appareil n'est pas encore configuré, faites-le chez vous.
Vérifiez que l'appareil apparaît dans l'application Google Home, et que vous pouvez l'allumer et l'éteindre via l'application Home.
3. Planifier votre automatisation à l'aide de l'éditeur de script
Nous allons commencer par réfléchir aux objectifs de l'automatisation créée avec l'éditeur de script. Voici quelques exemples:
- Les appareils que vous souhaitez automatiser.
- Déclencheur (ou événement) qui doit déclencher l'exécution de l'automatisation créée à l'aide du script.
- Les conditions supplémentaires, le cas échéant, déterminent si l'automatisation créée avec l'éditeur de script s'exécute ou non une fois qu'elle est déclenchée.
- Les actions à effectuer.
Pour les besoins de cet atelier de programmation, nous prévoyons que l'automatisation à l'aide de l'éditeur de script effectue deux opérations:
- Allumez votre ampoule (ou un autre appareil connecté) à une heure précise.
- Éteignez votre appareil à une heure précise.
Maintenant que nous savons exactement ce que nous voulons faire par l'automatisation à l'aide de l'éditeur de script, nous allons ouvrir l'éditeur de script et écrire l'automatisation à l'aide de l'éditeur de script.
4. Écrire l'automatisation à l'aide du script
Les automatisations à l'aide de scripts sont écrites de manière déclarative à l'aide du langage de sérialisation des données YAML.
Une automatisation à l'aide de l'éditeur de script comprend deux sections principales:
- Métadonnées : nom de l'automatisation créée avec l'éditeur de script et description de son effet.
- Règles d'automatisation : définissent la logique de lancement et le comportement de l'automatisation.
Métadonnées
Les métadonnées indiquent à l'utilisateur le nom et l'action de l'automatisation. Les métadonnées sont spécifiées dans le bloc metadata
, qui se présente comme suit:
metadata:
name: Scheduled light
description: Turn the light on and off at specific times
Règles d'automatisation
Le travail réel est effectué dans une règle d'automatisation. Elle se compose de trois parties, des déclencheurs, des conditions et des actions, qui sont évaluées dans l'ordre:
1 Déclencheurs | 2 Conditions | 3 actions |
Les déclencheurs sont ce qui lance l'automatisation. Au moins un déclencheur doit renvoyer la valeur | Celles-ci sont facultatives et consistent en une ou plusieurs contraintes supplémentaires qui sont évaluées après l'activation d'un déclencheur. Si les conditions sont résolues en Lorsque vous incluez plusieurs contraintes, séparez-les par des mots clés Une condition est différente d'une notification de changement d'état:
| Les actions sont des opérations effectuées lorsque les conditions du déclencheur et toutes les conditions de contrainte sont remplies. |
Le bloc automations
de notre automatisation contient deux règles:
automations:
- starters:
- type: time.schedule
at: 1:00 PM
actions:
- type: device.command.OnOff
devices: Desk light - Office
on: true
- starters:
- type: time.schedule
at: 1:05 PM
actions:
- type: device.command.OnOff
devices: Desk light - Office
on: false
Veuillez noter les points suivants :
- Il existe deux règles
automations
. La première allume la lumière et la seconde l'éteint. - Chaque règle a une seule action.
on: true
signifie allumer la lumière. De même,on: false
signifie éteindre la lumière.- Chaque règle comporte un seul déclencheur
time.schedule
qui indique à l'automatisation l'heure à laquelle elle doit être lancée. - Cette automatisation ne comporte aucune condition.
5. L'automatisation complète à l'aide de l'éditeur de script
En réunissant tous ces éléments, voici à quoi ressemble l'automatisation complète à l'aide de scripts:
metadata:
name: Scheduled light
description: Turn the light on and off at specific times
automations:
- starters:
- type: time.schedule
at: 1:00 PM
actions:
- type: device.command.OnOff
devices: Desk light - Office
on: true
- starters:
- type: time.schedule
at: 1:05 PM
actions:
- type: device.command.OnOff
devices: Desk light - Office
on: false
- Copiez l'automatisation (voir ci-dessus).
- Accédez à Google Home pour le Web.
- Sélectionnez l'onglet "Automatisations", représenté par une icône à trois étoiles:
- Cliquez sur + Ajouter.
- Dans l'éditeur de script, supprimez le modèle d'automatisation.
- Collez votre automatisation.
- Remplacez
Desk light - Office
par le nom et l'emplacement de votre appareil. - Cliquez sur Valider. L'éditeur de script souligne les sections de votre automatisation à l'aide de l'éditeur de script qui contiennent des erreurs. Corrigez toutes les erreurs qui se produisent, puis continuez à valider et à corriger jusqu'à ce qu'il n'y en ait plus. Par exemple, le nom de votre appareil peut être différent. Dans ce cas, vous pouvez utiliser la fonctionnalité de saisie semi-automatique pour choisir un nom d'appareil valide.
- Cliquez sur Enregistrer.
- Assurez-vous que le bouton Activer, situé sous le texte de votre script, est activé: .
6. Tester l'automatisation
- Assurez-vous que votre appareil est branché et visible dans l'application Google Home.
- Si l'appareil est actuellement allumé, éteignez-le.
- Sur la page Automatisations de Google Home pour le Web, cliquez sur le bouton "Exécuter" à côté de votre automatisation.
- L'appareil devrait s'allumer.
À présent, testons l'automatisation.
- Éteignez l'appareil.
- Modifiez l'automatisation et remplacez l'heure d'activation de l'appareil à la ligne 7 par une heure située cinq minutes dans le futur.
- Remplacez l'heure d'arrêt de l'appareil à la ligne 14 par une heure juste après l'heure d'arrêt.
- Cliquez sur Valider. Corrigez les éventuelles erreurs.
- Cliquez sur Enregistrer.
- Assurez-vous que le bouton Activer est activé.
- Attendez que les deux temps de démarrage soient écoulés. L'appareil devrait s'allumer, puis s'éteindre aux heures que vous avez indiquées.
7. Félicitations !
Vous venez de créer une automatisation à l'aide de l'éditeur de script. Bravo !
Dans cet atelier de programmation, vous avez appris ce qui suit :
- Concevoir et écrire une automatisation.
- Tester une automatisation
Étapes suivantes
Dans cet atelier de programmation, nous avons créé une automatisation très simple. Les automatisations ne se contentent pas de programmer l'activation d'un interrupteur. Maintenant que vous comprenez les bases pour créer une automatisation, vous pouvez explorer les différents types de déclencheurs, de conditions et d'actions disponibles dans l'écosystème Google Home.
Essayez les exercices suivants:
- Ajout de déclencheurs
time.schedule
à l'automatisation. - Modifiez l'automatisation pour allumer et éteindre un autre appareil selon la même programmation.
- Sans supprimer les déclencheurs
time.schedule
, modifiez l'automatisation pour n'allumer les appareils que lorsqu'un autre est allumé. Consultez les exemples de scripts qui utilisent la clausecondition
. - Modifiez l'automatisation pour n'allumer les appareils que lorsqu'il y a quelqu'un à la maison.
Complément d'informations
Pour en savoir plus sur les automatisations Google Home, consultez la documentation de référence sur les automatisations: