1. Introduction
Points abordés
- Découvrez comment concevoir et rédiger un modèle d'automatisation.
- Comment tester un modèle d'automatisation à l'aide de la Google Home Developer Console.
Prérequis
- Un téléphone Android ou iOS sur lequel est installée l'application Google Home.
- Il peut s'agir d'une ampoule connectée intégrée à votre maison ou d'un appareil simulé dans Google Home Playground.
Prérequis
Vous devez savoir comment écrire une automatisation Google Home. Si vous n'avez jamais écrit d'automatisation, envisagez de suivre l'atelier de programmation Créer une automatisation à l'aide de l'éditeur de script avant de poursuivre.
2. Modèles et instances d'automatisation
Les développeurs créent des modèles d'automatisation à l'aide de l'éditeur de modèles d'automatisation dans la Google Home Developer Console. Les modèles d'automatisation contiennent l'essentiel de la logique du script, en référençant les types d'appareils, mais pas les appareils spécifiques.
À l'aide de l'éditeur de script d'automatisation de Google Home pour le Web, les utilisateurs finaux prennent un modèle d'automatisation et créent une instance personnalisée qui agit sur les appareils spécifiques de leur propre maison. Une fois enregistrée, l'instance apparaît sous Routines de la maison dans l'application Google Home (GHA).
3. Planifier votre modèle d'automatisation
Lorsque vous créez une automatisation, vous commencez par réfléchir au problème que vous essayez de résoudre et à ce que l'automatisation fera pour le résoudre. Voici quelques exemples de ces considérations :
- les appareils que vous souhaitez automatiser.
- Le déclencheur (ou l'événement) qui doit lancer l'exécution de l'automatisation.
- Conditions supplémentaires, le cas échéant, qui déterminent si l'automatisation s'exécute une fois déclenchée.
- Actions à effectuer.
Dans cet atelier de programmation, l'automatisation effectuera deux actions :
- allumer une lumière à une heure précise ;
- Éteignez la même lumière à une heure précise.
Maintenant que vous avez ces informations en tête, vous êtes prêt à ouvrir l'éditeur de modèle et à écrire l'automatisation.
4. Écrire le modèle d'automatisation
Les automatisations sont écrites de manière déclarative à l'aide du langage de sérialisation des données YAML.
Un modèle d'automatisation comporte trois sections principales :
- Métadonnées : nom de l'automatisation, description de son fonctionnement et, éventuellement, tags utilisés pour la classer. Les mots clés sont les suivants :
- ÉCLAIRAGE ET PRISES
- CLIMAT ET ÉNERGIE
- SÉCURITÉ ET SURVEILLANCE
- DIVERTISSEMENT
- APPAREILS ET PLUS
- Entrée : définit le ou les types d'appareils que l'automatisation est censée contrôler. Le moteur d'automatisation utilise ces informations pour savoir quels types d'actions sont valides pour les appareils concernés.
- Règles d'automatisation : définissent la logique d'initiation et le comportement de l'automatisation.
Voici le modèle d'automatisation avec lequel vous allez travailler :
metadata:
name:
en: Scheduled light
description:
en: Turn the light on and off at specific times
tags:
- LIGHTING AND PLUGS
input:
the_light:
metadata:
name:
en: The light
description:
en: The light to be controlled
selector:
type: device
multiSelect: true
supportedTypes:
- LIGHT
time_on:
metadata:
name:
en: Time to turn on the light.
description:
en: The time of day to turn on the selected light.
selector:
type: time
default: sunset+30min
time_off:
metadata:
name:
en: Time to turn off the light.
description:
en: The time of day to turn off the selected light.
selector:
type: time
default: 10:00 pm
automations:
- name: Turn on the light
starters:
- type: time.schedule
at: $time_on
actions:
- type: device.command.OnOff
devices: $the_light
on: true
- name: Turn off the light
starters:
- type: time.schedule
at: $time_off
actions:
- type: device.command.OnOff
devices: $the_light
on: false
Lisez le modèle et notez les points suivants :
- La section
metadatacontient le nom et la description de cette automatisation. - La section
inputdéfinit une variable nomméethe_lightqui spécifie un appareil de typeLIGHT. Cela signifie que ce modèle ne peut être utilisé que pour les lumières, et non pour d'autres types d'appareils. En d'autres termes, lorsqu'un utilisateur configure votre automatisation dans sa maison et qu'il est invité à sélectionner un appareil pour$the_light, son choix est limité aux appareils du type que vous avez spécifié. - Deux variables nommées
time_onettime_offsont également définies dans la sectioninput. Ils permettent à l'utilisateur de spécifier quand démarrer les automatisations.time_onreprésente l'heure à laquelle la lumière est allumée ettime_offreprésente l'heure à laquelle elle est éteinte. Si l'utilisateur ne définit pas la valeur detime_onoutime_off, les valeurs par défaut sont utilisées. - La section
automationsde notre automatisation contient deux règles d'automatisation. Chaque règle comporte un seul déclencheurtime.schedulequi indique à l'automatisation à quelle heure elle doit se lancer.
L'éditeur de modèles
L'éditeur de modèles d'automatisation est l'outil que vous utilisez pour écrire des modèles d'automatisation.
- Accédez à la Google Home Developer Console.
- Connectez-vous avec le même compte que celui avec lequel votre appareil est configuré dans l'application Google Home.
- Créez un projet ou sélectionnez-en un existant.
- Sous Automatisations, cliquez sur Développer.
- Cliquez sur Créer un modèle.
- Copiez le modèle d'automatisation "Lumière programmée".
- Collez le modèle d'automatisation "Lumière programmée" dans l'éditeur de modèles.
- Cliquez sur Valider. Corrigez les erreurs qui peuvent s'afficher, puis continuez à valider et à corriger jusqu'à ce qu'il n'y ait plus d'erreurs.
- Cliquez sur Enregistrer pour enregistrer le modèle.
5. Tester le modèle
Vous pouvez maintenant tester le modèle dans la console.
- Assurez-vous que votre ampoule est branchée et visible dans l'application Google Home.
- Si le voyant est allumé, éteignez-le.
- Accédez à la Google Home Developer Console.
- Ouvrez le projet dans lequel vous avez créé votre modèle.
- Sélectionnez Automatisations, puis l'onglet Tester.
- Cliquez sur Ouvrir à côté du modèle d'automatisation "Lumière programmée".
- Sélectionnez la structure dans laquelle vous souhaitez tester le modèle, puis cliquez sur Suivant.
- Dans l'éditeur InputValue, spécifiez le nom de votre lampe. Par exemple, si votre lampe est nommée "Lampe de bureau - Bureau", sélectionnez
Desk light - Officedans le menu déroulant qui s'affiche lorsque vous cliquez à droite delights. Vous pouvez également saisir le nom de l'appareil. - Toujours dans l'éditeur InputValue, définissez l'heure
time_onsur une heure, par exemple, cinq minutes dans le futur, et définissez l'heuretime_offsur une heure peu après l'heuretime_on. - Lorsque vous avez terminé, l'éditeur InputValue doit se présenter comme suit :
inputValue: #add value the_light: Desk light - Office #add value time_off: 11:45 am #add value time_on: 11:40 am - Cliquez sur Activer le test.
- Attendez que les deux temps de démarrage soient écoulés. Le voyant doit s'allumer, puis s'éteindre aux heures spécifiées.
Une fois que vous avez testé votre modèle avec succès, vous savez que votre automatisation fonctionne correctement.
6. Félicitations !
Vous avez créé un modèle d'automatisation. Formidable !
Dans cet atelier de programmation, vous avez appris ce qui suit :
- Découvrez comment concevoir et rédiger un modèle d'automatisation.
- Comment le tester dans la Google Home Developer Console.
Étapes suivantes
Dans cet atelier de programmation, vous avez créé une automatisation très simple. Les automatisations peuvent faire bien plus que programmer l'activation ou la désactivation d'une lumière. Maintenant que vous comprenez les bases de la création et du test d'un modèle d'automatisation, vous pouvez essayer de créer des modèles d'automatisation pour d'autres types d'appareils, en utilisant différents déclencheurs, conditions et actions.
Documentation complémentaire
Pour en savoir plus sur les automatisations Google Home, consultez la documentation de référence sur les automatisations :