Bevor Sie mit der Automation API arbeiten, sollten Sie Ihre automatisierten Abläufe entwerfen.
Bestimmen Sie die folgenden Parameter für jeden automatisierten Ablauf:
- Die Umstände, unter denen der automatisierte Ablauf dem Nutzer vorgeschlagen werden soll. Wenn der Nutzer beispielsweise gerade drei neue Lampen zu seinem Zuhause hinzugefügt hat, ist er möglicherweise an einem bestimmten automatisierten Ablauf interessiert, der auf die Steuerung von Lampen zugeschnitten ist.
- Welche Gerätetypen für den automatisierten Ablauf erforderlich sind. Wenn der Nutzer beispielsweise gerade drei neue Lampen zu seinem Zuhause hinzugefügt hat, ist er möglicherweise an einem bestimmten automatisierten Ablauf interessiert, der auf die Steuerung von Lampen zugeschnitten ist. Beispiele für Gerätetypen für Lampen sind
OnOffLightDevice,ColorTemperatureLightDevice,DimmableLightDeviceoderExtendedColorLightDevice. - Welche Attribut- und Befehls-Traits für den automatisierten Ablauf erforderlich sind und ob sie von der Automation API unter Android unterstützt werden.
- Die Traits, die den automatisierten Ablauf als Auslöser aktivieren sollen. Auslöser werden unter Automatisierungskomponenten unter Android beschrieben.
- Zusätzliche Bedingungen, die bestimmen, ob der automatisierte Ablauf tatsächlich ausgeführt werden soll und welche Aktionen ausgeführt werden sollen.
- Der Ausführungsablauf für den automatisierten Ablauf. Soll er sequenziell oder parallel ausgeführt werden? Benötigen Sie mehrere logische Pfade?
Beim Entwerfen kann es hilfreich sein, den Ablauf des automatisierten Ablaufs Knoten für Knoten zu skizzieren und die für jeden Schritt erforderliche Logik anzugeben.
Nachdem Sie einen automatisierten Ablauf entworfen haben, erstellen Sie ihn mit der Automation DSL. Der von Ihnen erstellte automatisierte Ablauf ist im Wesentlichen eine Vorlage. Alle Strukturen und Geräte darin sind Platzhalter und werden mit der jeweiligen Struktur und den Geräten des Nutzers gefüllt, wenn er den automatisierten Ablauf für die eigene Verwendung übernimmt.
Im Folgenden finden Sie verschiedene Arten von automatisierten Abläufen, die eine App mit den Home APIs erstellen kann. Auf der Seite Automatisierung erstellen finden Sie Codeausschnitte zu diesen Beispielen.
Einfacher automatisierter Ablauf
Angenommen, Sie müssen eine App schreiben, die einen automatisierten Ablauf erstellt, mit dem um 8:00 Uhr die Jalousien hochgefahren werden. Dazu benötigt die App eine Liste der Jalousien (Geräte mit dem Gerätetyp WindowCoveringDevice) in der Struktur, die automatisierte Abläufe unterstützen. Diese Liste kann von der Discovery API bereitgestellt werden.
Für automatisierte Abläufe, die zu einem bestimmten Zeitpunkt ausgeführt werden müssen, müssen Sie außerdem dafür sorgen, dass der Nutzer in der Google Home App (GHA) eine Straßenadresse für die ausgewählte Struktur zugewiesen hat Google Home app (GHA). Andernfalls kennt der automatisierte Ablauf die Zeitzone nicht, in der er ausgeführt wird. Mit der Discovery API können Sie feststellen, ob der Struktur eine Adresse zugewiesen wurde.
Der Ausführungsablauf sieht dann etwa so aus:
- Rufen Sie mit der Discovery API die Liste der
WindowCoveringDevice-Geräte ab. - Wenn die Straßenadresse nicht angegeben ist, benachrichtigen Sie den Nutzer, dass er eine Straßenadresse angeben muss, und beenden Sie die Ausführung.
- Andernfalls definieren Sie den automatisierten Ablauf:
- Starten Sie den automatisierten Ablauf um 8:00 Uhr.
- Rufen Sie für jede Jalousie den Befehl
upOrOpendesWindowCovering-Traits auf.
Komplexer automatisierter Ablauf
Stellen Sie sich eine App vor, die einen automatisierten Ablauf erstellt, der blinkende Lichter auslöst, wenn eine Bewegung erkannt wird.
Eine der ersten Aufgaben bei der Implementierung dieser App besteht darin, mit der Discovery API herauszufinden, welche Lampen im Zuhause des Nutzers verfügbar sind. Mit diesen Informationen kann Ihre App nun die verfügbaren Lampen anzeigen und dem Nutzer möglicherweise die Möglichkeit geben, auszuwählen, welche Lampen blinken sollen.
Der Ausführungsablauf:
- Rufen Sie mit der Discovery API die Liste der in der Struktur vorhandenen Lampen ab. Das sind alle Geräte mit dem Gerätetyp
OnOffLightDevice,ColorTemperatureLightDevice,DimmableLightDeviceoderExtendedColorLightDevice. - Bieten Sie eine Möglichkeit, die blinkenden Lampen auszuwählen, z. B. über ein benutzerdefiniertes Einstellungsfeld.
- Definieren Sie den automatisierten Ablauf:
- Starten Sie den automatisierten Ablauf, wenn jemand das Gelände verlässt oder ankommt, indem Sie
AreaPresenceStateüberwachen. - Wenn
presenceStateangibt, dass die Struktur belegt ist, blinken die ausgewählten Lampen.
- Starten Sie den automatisierten Ablauf, wenn jemand das Gelände verlässt oder ankommt, indem Sie
Allgemeiner automatisierter Ablauf
Ein Beispiel für einen komplexeren automatisierten Ablauf ist einer, der den Nutzer durch die Erstellung eines offenen automatisierten Ablaufs führt, der auf allen oder einigen Geräten in seinem Zuhause basiert.
Der automatisierte Ablauf fordert den Nutzer möglicherweise zuerst auf, eine Struktur auszuwählen.
Anschließend kann der automatisierte Ablauf alle Räume in der Struktur in einer erweiterbaren Gliederungsansicht anzeigen. Wenn Sie einen Raum erweitern, werden die Geräte darin angezeigt. Wenn Sie ein Gerät weiter erweitern, werden die Auslöser und Befehle aufgeführt, die von diesem Gerät unterstützt werden.
Der Nutzer kann die gewünschten Geräte, Auslöser und Befehle auswählen und der automatisierte Ablauf führt ihn durch die Erstellung eines automatisierten Ablaufs.
Wenn alle Entscheidungen des Nutzers abgeschlossen sind, generiert der automatisierte Ablauf den automatisierten Ablauf und speichert ihn in der ausgewählten Struktur.
Auf hoher Ebene muss ein solcher automatisierter Ablauf mehrere Datensätze zum Zuhause des Nutzers mit der Structure API für Android, der Device API für Android, und der Discovery API erfassen.
| API | Informationen |
|---|---|
| Structure API |
|
| Device API |
|
| Discovery API |
|