Automatisierungsvorlage erstellen

Informationen zu diesem Codelab
schedule34 Minuten
subjectZuletzt aktualisiert: 26. September 2023
account_circleVerfasst von Jonathan Donald and Andres Gomez
  • Automatisierungsvorlagen entwerfen und schreiben
  • Automatisierungsvorlage mit der Google Home Developer Console testen
  • Ein Android- oder iOS-Smartphone mit der Google Home App.
  • Entweder eine intelligente Lampe, die in Ihrem Zuhause eingerichtet ist, oder ein simuliertes Gerät im Google Home Playground.

Du solltest mit dem Erstellen einer Heimautomatisierung von Google Home vertraut sein. Wenn Sie noch keine Automatisierung geschrieben haben, sollten Sie das Codelab Skriptbasierte Automatisierung erstellen ausführen, bevor Sie mit diesem fortfahren.

Entwickler können Automatisierungsvorlagen mit dem entsprechenden Editor in der Google Home Developer Console erstellen. Automatisierungsvorlagen enthalten das Wesentliche der Skriptlogik und verweisen auf Gerätetypen, jedoch nicht auf bestimmte Geräte.

Mit dem Script-Editor der Google Home-Webversion können Endnutzer anhand einer Automatisierungsvorlage eine personalisierte Instanz erstellen, die auf den jeweiligen Geräten in ihrem Zuhause ausgeführt wird. 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 sich zuerst Gedanken darüber machen, welches Problem gelöst werden soll und was die Automatisierung tun soll, um es zu lösen. Dazu gehören unter anderem:

  • Welche Geräte du automatisieren möchtest
  • Welcher Auslöser (oder Ereignis) die Ausführung der Automatisierung auslösen soll
  • Welche zusätzlichen Bedingungen beeinflussen, ob die Automatisierung nach dem Auslösen ausgeführt wird oder nicht.
  • Welche Aktionen durchgeführt werden sollen.

In diesem Codelab werden mit der Automatisierung zwei Schritte ausgeführt:

  1. Sie können eine Lampe zu einer bestimmten Zeit einschalten.
  2. Sie können dieselbe Lampe zu einer bestimmten Zeit ausschalten.

Vor diesem Hintergrund können Sie den Vorlageneditor öffnen und die Automatisierung schreiben.

4. Automatisierungsvorlage schreiben

Automatisierungen werden deklarativ unter Verwendung der YAML-Datenserialisierungssprache geschrieben.

Eine Automatisierungsvorlage besteht aus drei Hauptabschnitten:

  1. Metadaten: Der Name der Automatisierung, eine Beschreibung ihrer Funktion und optional einige Tags, die zur Klassifizierung der Automatisierung verwendet werden. Die Keywords sind:
    • BELEUCHTUNG UND STÖCKER
    • KLIMA UND ENERGIE
    • SICHERHEIT UND BEKANNTHEIT
    • UNTERHALTUNG
    • GERÄTE UND MEHR
  2. Eingabe: Definiert, welche Art von Gerät(en) durch die Automatisierung gesteuert werden soll. Die Automatisierungs-Engine nutzt diese Informationen, um zu ermitteln, welche Arten von Aktionen für die jeweiligen Geräte gültig sind.
  3. Automatisierungsregeln: Definiert die Initiierungslogik und das Verhalten der Automatisierung.

Dies ist die Automatisierungsvorlage, mit der Sie arbeiten:

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 sich die Vorlage 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 der Automatisierung in seinem Zuhause aufgefordert wird, ein Gerät für $the_light auszuwählen, ist seine Auswahl auf Geräte des angegebenen Typs beschränkt.
  • Außerdem werden im Abschnitt input zwei Variablen mit den Namen time_on und time_off definiert. Damit kann der Nutzer festlegen, wann die Automatisierungen gestartet werden sollen. time_on gibt die Zeit an, zu der die Lampe eingeschaltet wird, und time_off die Zeit, zu der die Lampe ausgeschaltet ist. 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 sagt, wann diese Automatisierung gestartet werden soll.

Der Vorlageneditor

Mit dem Editor für Automatisierungsvorlagen erstellen Sie Automatisierungsvorlagen.

  1. Rufen Sie die Google Home Developer Console auf.
  2. Melden Sie sich mit demselben Konto an, mit dem Ihr Gerät in der Google Home App eingerichtet ist.
  3. Erstellen Sie ein Projekt oder wählen Sie ein vorhandenes aus.
  4. Klicken Sie unter Automatisierungen auf Entwickeln.
  5. Klicken Sie auf Vorlage erstellen.
  6. „Geplantes Licht“ kopieren Automatisierungsvorlage.
  7. Fügen Sie das Feld „Geplantes Licht“ ein Automatisierungsvorlage in den Vorlageneditor.
  8. Klicke auf Validieren. Beheben Sie alle eventuell auftretenden Fehler und prüfen und beheben Sie so lange, bis keine Fehler mehr angezeigt werden.
  9. Klicken Sie auf Speichern, um die Vorlage zu speichern.

5. Vorlage testen

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

  1. Die Lampe muss angeschlossen sein und in der Google Home App sichtbar sein.
  2. Wenn die Lampe an ist, 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 Test aus.
  6. Klicken Sie neben „Geplante LED“ auf Öffnen. Automatisierungsvorlage.
  7. Wählen Sie die Struktur aus, in der Sie die Vorlage testen möchten, und klicken Sie dann auf Weiter.
  8. Geben Sie im InputValue-Editor den Namen der Lampe an. Lautet der Name der Lampe beispielsweise „Tischlampe – Büro“, wählen Sie Desk light - Office aus dem Drop-down-Menü aus, das erscheint, wenn Sie rechts neben lights klicken. Sie können auch den Namen des Geräts eingeben.
  9. Geben Sie im InputValue-Editor als time_on-Zeit beispielsweise fünf Minuten in der Zukunft an und ändern Sie die time_off-Zeit in einen Zeitpunkt kurz nach time_on.
  10. Wenn Sie fertig sind, sollte der InputValue-Editor 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 Auslöserzeiten verstrichen sind. Die LED sollte zu den angegebenen Zeiten auf- und dann wieder erlöschen.

Nachdem Sie Ihre Vorlage erfolgreich getestet haben, wissen Sie, dass Ihre Automatisierung fehlerfrei funktioniert.

6. Glückwunsch!

Sie haben eine Automatisierungsvorlage erstellt. Super!

In diesem Codelab haben Sie gelernt, wie Sie:

  • Automatisierungsvorlagen entwerfen und schreiben
  • Test in der Google Home Developer Console

Nächste Schritte

In diesem Codelab haben Sie eine sehr einfache Automatisierung erstellt. Automatisierte Abläufe können viel mehr, als nur das Ein- und Ausschalten einer Lampe zu planen. Nachdem Sie nun mit den Grundlagen zum Erstellen und Testen einer Automatisierungsvorlage vertraut sind, können Sie versuchen, Automatisierungsvorlagen für andere Gerätetypen mit anderen Auslösern, Bedingungen und Aktionen zu erstellen.

Weitere Informationen

Weitere Informationen zu automatisierten Abläufen für Google Home finden Sie in der Referenzdokumentation zu Automatisierungen: