Omówienie interfejsu Automation API

Automatyzacje to sposób na zautomatyzowanie zadań i ustawień urządzeń w domu. Automatyzacje były dostępne w ekosystemie Google Home jako rutyny w Google Home app (GHA) i poprzez automation script editor na Google Home for web.

Automatyzacje w ekosystemie Google Home są teraz dostępne za pomocą interfejsu API Home. Korzystają one z tych samych podstawowych koncepcji, co rutyny GHA i interfejs script editor, ale mają ulepszone funkcje i możliwości dostępne tylko dzięki interfejsom Home API, w tym:

  • Dostęp do wszystkich standardowych i smart homeatrybutów Matter urządzenia, zgodnie z informacjami w interfejsach API Home.
  • Obsługa sekwencyjnych, równoległych i wybranych przepływów wykonywania.

Automatyzacje są pisane za pomocą Automation DSL, języka dostosowanego do danej dziedziny, który służy do tworzenia automatyzacji w Kotlinie.

Wszystkie cechy i typy, których zamierzasz używać w aplikacji z interfejsami API Device & Structure lub Automation, muszą zostać zarejestrowane podczas inicjalizacji. Zobacz Inicjowanie domu.

Ścieżka dewelopera

Automation API to część większego procesu tworzenia. Jest to możliwe po zintegrowaniu interfejsów Structure i Device API, aby umożliwić użytkownikom korzystanie z automatyzacji.

  1. Deweloperzy planują automatyzację i definiują ją za pomocą języka specyfikacji automatyzacji.
  2. Programista umieszcza definicję automatyzacji w aplikacji na Androida napisanej w Kotlinie.
  3. Aplikacja przedstawia użytkownikowi automatyzacje na podstawie informacji o jego urządzeniach, w tym atrybutów, właściwości, poleceń i zdarzeń zebranych za pomocą interfejsu Discovery API lub Device API.
    1. Dzięki Discovery API aplikacja może generować projekt automatyzacji dostosowany do typów urządzeń i właściwości obecnych w strukturze użytkownika (z udziałem lub bez jego udziału).
    2. Interfejs Device API może udostępniać większość tych samych informacji co interfejs Discovery API, ale nie jest zoptymalizowany pod kątem automatyzacji. Więcej informacji znajdziesz w artykule Porównanie interfejsów Device API i Discovery API.
  4. Aplikacja tworzy automatyzację, która jest powiązana z wybraną strukturą.
  5. Automatyzacja jest teraz dostępna w strukturze użytkownika i można ją wykonać lub usunąć za pomocą metod interfejsu Structure API.

Użytkownik może w dowolnym momencie utworzyć nowe wystąpienia automatyzacji, wybierając inną strukturę lub, w zależności od logiki aplikacji, inny zestaw urządzeń. Za każdym razem aplikacja tworzy nową instancję automatyzacji.

W najprostszym przypadku możesz zaproponować użytkownikom zdefiniowaną wcześniej automatyzację, która wykonuje stosunkowo proste zadanie. Możesz też przedstawić szkielet automatyzacji, który użytkownik dostosowuje do swoich potrzeb. Możesz też napisać edytor automatyzacji o otwartym kodzie, który pozwoli użytkownikom tworzyć złożone automatyzacje za pomocą wszystkich elementów dostępnych w interfejsie Automation API.

Limity zasobów

W przypadku automatyzacji w interfejsach API Home obowiązują te limity:

Tabela: Limity zasobów interfejsu Automation API
Dane Limit
Maksymalna liczba automatyzacji na strukturę 64
Maksymalna liczba węzłów na automatyzację 128
Maksymalna liczba węzłów wyrażeń na automatyzację 64
Maksymalna liczba instancji automatyzacji na strukturę 1024
Maksymalna liczba instancji automatyzacji na dewelopera na dom 64
Maksymalna liczba wykonań na strukturę dziennie 1024
Maksymalna liczba wykonań na dewelopera na strukturę dziennie 128