스마트 홈 인텐트는 조명 켜기 또는 스피커로 오디오 전송과 같이 실행할 Cloud-to-cloud 통합을 설명하는 간단한 메시지 객체입니다.
모든 smart home 인텐트는 action.devices 네임스페이스에 포함되며 이에 대한 처리를 제공해야 합니다. Google Assistant에서 처리에 인텐트를 전송할 때마다 사용자의 서드 파티 OAuth 2 액세스 토큰이 승인 헤더에 전달됩니다.
지원되는 smart home 인텐트는 다음과 같습니다.
동기화
action.devices.SYNC 인텐트는 사용자가 연결했으며 사용할 수 있는 smart home 기기 목록을 요청하는 데 사용됩니다.
사용자가 Google Home app (GHA)로 기기를 설정하면 클라우드 인프라에도 인증됩니다. 그러면 Assistant에서 OAuth2 토큰을 수신합니다. 이 시점에서 Assistant는 action.devices.SYNC 인텐트를 처리로 전송하여 클라우드 인프라에서 사용자 기기 및 기능의 초기 목록을 가져옵니다.
사용자 계정의 연결 해제 및 재연결을 방지하려면 Assistant에 동기화 요청을 보낼 수 있습니다. 이렇게 하면 action.devices.SYNC 인텐트가 처리로 전송되어 기기 및 기능 목록이 동기화됩니다. 자세한 내용은 동기화 요청 구현을 참고하세요.
로컬 처리 설정 중에 Local Home 플랫폼은 smart home 작업의 클라우드 처리에서 SYNC 응답을 확인합니다. 로컬 처리를 지원하도록 SYNC 응답을 수정하는 방법에 관한 자세한 내용은 클라우드 처리에서 SYNC 응답 업데이트를 참고하세요.
QUERY
action.devices.QUERY 인텐트는 smart home 기기의 현재 상태를 쿼리하는 데 사용됩니다.
사용자가 기기 상태를 쿼리할 때(예: Hey Google, 주방에 어떤 조명이 켜져 있어?)
Assistant는 처리에 action.devices.QUERY 인텐트를 전송합니다.
최상의 사용자 환경을 위해 상태 보고를 구현하여 사용자 기기의 현재 상태를 Google Home Graph에 직접 사전에 보고해야 합니다. 예를 들어 이를 통해 사용자가 물리적 조명 스위치로 스마트 조명을 켰는지 Assistant에서 알 수 있습니다.
실행
action.devices.EXECUTE 인텐트는 smart home 기기에서 실행할 명령어를 제공하는 데 사용됩니다.
사용자가 Assistant를 사용하여 기기에 명령어를 전송하면 처리에서 작업과 작업을 실행할 기기를 설명하는 action.devices.EXECUTE 인텐트를 수신합니다. 사용자는 Hey Google, 거실 조명 켜 줘와 같은 명령어로 기기에서 작업을 실행할 수 있습니다.
연결 해제
사용자가 Assistant에서 앱 계정을 연결 해제하면 action.devices.DISCONNECT 인텐트가 트리거되어 알려줍니다.
action.devices.DISCONNECT 인텐트를 수신한 후에는 이 사용자의 기기 상태를 보고해서는 안 됩니다.