Automation API 개요

자동화는 홈에서 할 일과 기기 설정을 자동화하는 방법입니다. 자동화는 Google Home 생태계에서 Google Home app (GHA)의 루틴으로, Google Home for webautomation script editor를 통해 사용할 수 있었습니다.

이제 Home API를 통해 Google Home 생태계의 자동화를 사용할 수 있습니다. GHA 루틴 및 script editor에 사용되는 것과 동일한 기본 개념을 사용하지만 Home API를 통해서만 가능한 향상된 기능과 기능을 제공합니다. 여기에는 다음이 포함됩니다.

  • Home API에 표시된 대로 기기의 모든 Matter 표준 및 smart home 트레잇에 액세스합니다.
  • 순차, 병렬, 선택 실행 흐름을 지원합니다.

자동화는 Kotlin에서 자동화를 빌드하도록 설계된 도메인별 언어인 자동화 DSL을 사용하여 작성됩니다.

앱에서 기기 및 구조 또는 자동화 API와 함께 사용할 모든 트레잇과 유형은 초기화 시 등록해야 합니다. 홈 초기화를 참고하세요.

개발자 여정

Automation API는 더 큰 개발 여정의 일부입니다. 이는 사용자가 자동화를 사용하려는 경우 이를 실행할 수 있도록 Structure API와 Device API를 통합한 후에 제공됩니다.

  1. 개발자는 자동화를 계획하고 자동화 DSL을 사용하여 정의합니다.
  2. 개발자가 Kotlin Android 앱에 자동화 정의를 삽입합니다.
  3. 앱은 Discovery API 또는 Device API를 사용하여 수집된 트레잇, 속성, 명령어, 이벤트를 비롯한 기기 정보에 따라 사용자에게 자동화를 표시합니다.
    1. Discovery API를 사용하면 앱이 사용자의 입력 유무와 관계없이 사용자 구조에 있는 기기 유형 및 트레잇에 맞게 맞춤설정된 초안 자동화를 생성할 수 있습니다.
    2. Device API는 Discovery API와 거의 동일한 정보를 제공할 수 있지만 자동화 사용 사례에 최적화되어 있지는 않습니다. 자세한 내용은 Device API와 Discovery API 비교를 참고하세요.
  4. 앱은 선택한 구조에 키가 지정된 실제 자동화를 만듭니다.
  5. 이제 자동화가 사용자의 구조에서 사용할 수 있으며 Structure API 메서드를 사용하여 실행하거나 삭제할 수 있습니다.

사용자는 언제든지 다른 구조 또는 앱 로직에 따라 다른 기기 세트를 선택하여 자동화의 새 인스턴스를 만들 수 있습니다. 이를 실행할 때마다 앱은 자동화의 새 인스턴스를 생성합니다.

가장 기본적인 시나리오에서는 사용자에게 비교적 기본적인 작업을 실행하는 사전 정의된 자동화를 제안할 수 있습니다. 또는 사용자가 필요에 맞게 맞춤설정할 수 있는 자동화의 스켈레톤을 표시할 수 있습니다. 또는 사용자가 Automation API에서 제공되는 모든 빌딩 블록을 사용하여 복잡한 자동화를 구성할 수 있는 개방형 자동화 편집기를 작성할 수 있습니다.

리소스 한도

Home API의 자동화에는 다음과 같은 제한사항이 적용됩니다.

표: 자동화 API 리소스 한도
측정항목 한도
구조당 최대 자동화 수 64
자동화당 최대 노드 수 128
자동화당 최대 표현식 노드 수 64
구조당 최대 자동화 인스턴스 수 1024
구조당 개발자당 최대 자동화 인스턴스 수 64
구조당 일일 최대 실행 수 1024
구조당 개발자당 일일 최대 실행 수 128