스마트 홈 인텐트는 조명 켜기나 스피커로 오디오 전송과 같은 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, what lights are on in the kitchen?과 같은 질문에 답변합니다.
Assistant는 action.devices.QUERY
인텐트를 풀필먼트에 전송합니다.

최상의 사용자 환경을 위해 상태 보고를 구현하여 사용자 기기의 현재 상태를 Google Home Graph에 직접 보고해야 합니다. 예를 들어 이를 통해 Assistant는 사용자가 물리적 조명 스위치로 스마트 조명을 켰는지 알 수 있습니다.

실행
action.devices.EXECUTE
인텐트는 smart home 기기에서 실행할 명령어를 제공하는 데 사용됩니다.
사용자가 Assistant로 기기에 명령어를 보내면 처리에서 작업과 작업 대상 기기를 설명하는 action.devices.EXECUTE
인텐트를 처리로 수신합니다. 사용자는 Hey Google, turn on my living room lights와 같은 명령어로 기기에서 작업을 실행할 수 있습니다.

연결 해제
action.devices.DISCONNECT
인텐트는 사용자가 Assistant에서 앱 계정을 연결 해제한 경우 이를 알리기 위해 트리거됩니다.
action.devices.DISCONNECT
인텐트를 수신한 후에는 이 사용자의 기기 상태를 보고하면 안 됩니다.