Automatisierungsvorlage erstellen

1. Einführung

Lerninhalte

  • Automatisierungsvorlagen entwerfen und schreiben
  • Automatisierungsvorlage mit der Google Home Developer Console testen

Voraussetzungen

  • Ein Android- oder iOS-Smartphone mit der Google Home App.
  • Entweder eine intelligente Lampe, die in deinem Zuhause eingerichtet ist, oder ein simuliertes Gerät im Google Home Playground.

Vorbereitung

Sie sollten wissen, wie man einen automatisierten Google Home-Ablauf erstellt. Wenn Sie noch nie eine Automatisierung geschrieben haben, sollten Sie das Codelab zum Erstellen einer scriptbasierten Automatisierung durcharbeiten, bevor Sie mit diesem fortfahren.

2. Automatisierungsvorlagen und ‑instanzen

Entwickler erstellen Automatisierungsvorlagen mit dem Automatisierungsvorlagen-Editor in der Google Home Developer Console. Automatisierungsvorlagen enthalten die wesentliche Script-Logik und verweisen auf Gerätetypen, aber nicht auf bestimmte Geräte.

Mit dem Automatisierungs-Script-Editor in der Google Home-Webversion können Endnutzer eine Automatisierungsvorlage verwenden und eine personalisierte Instanz erstellen, die auf die spezifischen Geräte in ihrem eigenen Zuhause reagiert. Nach dem Speichern wird die Instanz in der Google Home App (GHA) unter Haushaltsabläufe angezeigt.

3. Automatisierungsvorlage planen

Wenn Sie eine Automatisierung erstellen, sollten Sie zuerst darüber nachdenken, welches Problem Sie lösen möchten und wie die Automatisierung dazu beitragen kann. Dazu gehören unter anderem folgende Aspekte:

  • Welche Geräte du automatisieren möchtest.
  • Welcher Starter (oder welches Ereignis) soll die Ausführung der Automatisierung auslösen?
  • Welche zusätzlichen Bedingungen, falls vorhanden, steuern, ob die Automatisierung nach dem Auslösen ausgeführt wird.
  • Welche Aktionen ausgeführt werden sollen.

In diesem Codelab führt die Automatisierung zwei Aktionen aus:

  1. Eine Lampe zu einer bestimmten Zeit einschalten
  2. Schalte dieselbe Lampe zu einer bestimmten Zeit aus.

Jetzt können Sie den Vorlagen-Editor öffnen und die Automatisierung schreiben.

4. Automatisierungsvorlage schreiben

Automatisierte Abläufe werden deklarativ mit der YAML-Datenserialisierungssprache geschrieben.

Eine Automatisierungsvorlage hat drei Hauptabschnitte:

  1. Metadaten: Der Name der Automatisierung, eine Beschreibung der Funktion und optional einige Tags, mit denen die Automatisierung klassifiziert wird. Die Keywords sind:
    • BELEUCHTUNG UND STECKDOSEN
    • KLIMA- UND ENERGIEGERÄTE
    • SICHERHEIT UND UMFELDWAHRNEHMUNG
    • UNTERHALTUNG
    • HAUSHALTSGERÄTE UND MEHR
  2. Eingabe: Definiert, welche Art von Gerät(en) durch die Automatisierung gesteuert werden soll. Die Automatisierungs-Engine verwendet diese Informationen, um zu wissen, welche Arten von Aktionen für die vorgesehenen Geräte gültig sind.
  3. Automatisierungsregeln: Definieren die Initiierungslogik und das Verhalten der Automatisierung.

Das ist die Automatisierungsvorlage, mit der Sie arbeiten werden:

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

Lesen Sie die Vorlage sorgfältig durch und beachten Sie Folgendes:

  • Der Abschnitt metadata enthält den Namen und die Beschreibung dieser Automatisierung.
  • Im Abschnitt input wird eine Variable mit dem Namen the_light definiert, die ein Gerät vom Typ LIGHT angibt. Das bedeutet, dass diese Vorlage nur für Lampen und nicht für andere Gerätetypen verwendet werden darf. Wenn ein Nutzer also beim Einrichten Ihrer Automatisierung in seinem Zuhause aufgefordert wird, ein Gerät für $the_light auszuwählen, ist seine Auswahl auf Geräte des von Ihnen angegebenen Typs beschränkt.
  • Im Abschnitt input sind auch zwei Variablen mit den Namen time_on und time_off definiert. Damit kann der Nutzer festlegen, wann die Automatisierungen gestartet werden sollen. time_on steht für die Uhrzeit, zu der das Licht eingeschaltet wird, und time_off für die Uhrzeit, zu der das Licht ausgeschaltet wird. Wenn der Nutzer den Wert von time_on oder time_off nicht festlegt, werden die Standardwerte verwendet.
  • Der Abschnitt automations unserer Automatisierung enthält zwei Automatisierungsregeln. Jede Regel hat einen einzelnen time.schedule-Auslöser, der der Automatisierung mitteilt, wann sie gestartet werden soll.

Der Vorlageneditor

Der Editor für Automatisierungsvorlagen ist das Tool, mit dem Sie Automatisierungsvorlagen schreiben.

  1. Rufen Sie die Google Home Developer Console auf.
  2. Melden Sie sich mit dem Konto an, mit dem Ihr Gerät in der Google Home App eingerichtet ist.
  3. Erstellen Sie ein neues Projekt oder wählen Sie ein vorhandenes Projekt aus.
  4. Klicken Sie unter Automatisierungen auf Entwickeln.
  5. Klicken Sie auf Vorlage erstellen.
  6. Kopieren Sie die Automatisierungsvorlage „Geplante Beleuchtung“.
  7. Fügen Sie die Automatisierungsvorlage „Geplante Beleuchtung“ in den Vorlageneditor ein.
  8. Klicken Sie auf Validieren. Beheben Sie alle Fehler, die möglicherweise auftreten, und fahren Sie mit der Validierung und Fehlerbehebung fort, bis keine Fehler mehr gemeldet werden.
  9. Klicken Sie auf Speichern, um die Vorlage zu speichern.

5. Vorlage testen

Sie können die Vorlage jetzt in der Console testen.

  1. Prüfe, ob deine Lampe eingesteckt und in der Google Home App sichtbar ist.
  2. Wenn die Lampe leuchtet, schalten Sie sie aus.
  3. Rufen Sie die Google Home Developer Console auf.
  4. Öffnen Sie das Projekt, in dem Sie die Vorlage erstellt haben.
  5. Wählen Sie Automatisierungen und dann den Tab Testen aus.
  6. Klicken Sie neben der Automatisierungsvorlage „Geplante Beleuchtung“ auf Öffnen.
  7. Wählen Sie die Struktur aus, in der Sie die Vorlage testen möchten, und klicken Sie auf Weiter.
  8. Geben Sie im Editor InputValue den Namen der Lampe an. Wenn deine Lampe beispielsweise „Schreibtischlampe – Büro“ heißt, wählst du Desk light - Office aus dem Drop-down-Menü aus, das angezeigt wird, wenn du rechts neben lights klickst. Alternativ können Sie den Namen des Geräts eingeben.
  9. Geben Sie auch im InputValue-Editor die time_on-Zeit auf eine Zeit fest, die beispielsweise fünf Minuten in der Zukunft liegt, und ändern Sie die time_off-Zeit in eine Zeit kurz nach der time_on-Zeit.
  10. Wenn Sie fertig sind, sollte der Editor für InputValue in etwa so aussehen:
    inputValue:
     #add value
     the_light: Desk light - Office
     #add value
     time_off: 11:45 am
     #add value
     time_on: 11:40 am
    
  11. Klicken Sie auf Test aktivieren.
  12. Warten Sie, bis die beiden Startzeiten verstrichen sind. Die Lampe sollte zu den angegebenen Zeiten an- und ausgehen.

Nachdem Sie Ihre Vorlage erfolgreich getestet haben, wissen Sie, dass Ihre Automatisierung funktionsfähig ist.

6. Glückwunsch!

Sie haben erfolgreich eine Automatisierungsvorlage erstellt. Sehr gut!

In diesem Codelab haben Sie Folgendes gelernt:

  • Automatisierungsvorlagen entwerfen und schreiben
  • So testen Sie es in der Google Home Developer Console.

Nächste Schritte

In diesem Codelab haben Sie eine sehr einfache Automatisierung erstellt. Automatisierungen können viel mehr als nur das Ein- und Ausschalten von Lichtern planen. Nachdem Sie nun die Grundlagen zum Erstellen und Testen einer Automatisierungsvorlage kennen, können Sie Automatisierungsvorlagen für andere Gerätetypen mit verschiedenen Startern, Bedingungen und Aktionen erstellen.

Weitere Informationen

Weitere Informationen zu automatisierten Abläufen in Google Home findest du in der Referenzdokumentation zu automatisierten Abläufen: