action.devices.EXECUTE
컬렉션을 사용해 정리하기
내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.
이 인텐트는 스마트 홈 기기에서 실행할 명령어를 전송합니다.
처리는 각 명령어를 처리하고 상응하는 기기로 전송하며 EXECUTE
응답에서 새 상태를 반환해야 합니다.
단일 EXECUTE
인텐트는 여러 명령어로 여러 기기를 타겟팅할 수 있습니다.
예를 들어 트리거된 인텐트는 조명 세트의 밝기와 색상을 모두 설정하거나 여러 조명을 각각 다른 색상으로 설정할 수 있습니다.
자세한 내용은 쿼리 및 실행을 참고하세요.
요청 형식
필드 | 유형 | 설명 |
---|---|---|
requestId |
String |
필수사항. 요청의 ID입니다. |
inputs |
배열 |
필수사항. 인텐트 요청과 일치하는 입력 목록입니다. |
[item, ...] |
객체 |
인텐트 요청과 연결된 유형 및 페이로드입니다. |
intent |
필수사항. (상수 값: 인텐트 요청 유형입니다. |
|
payload |
객체 |
필수사항. 요청 페이로드 실행 |
commands |
배열 |
필수사항. 기기 타겟 및 명령어 쌍 목록입니다. |
[item, ...] |
객체 |
연결된 기기 타겟에서 실행할 명령어 집합입니다. |
devices |
배열 |
필수사항. 대상 기기 목록 |
[item, ...] |
객체 |
실행할 기기 타겟입니다. |
id |
String |
필수사항. SYNC에 제공된 ID에 따른 기기 ID입니다. |
customData |
객체 |
불투명한 customData 객체가 SYNC에 제공되면 여기에 전송됩니다. |
execution |
배열 |
필수사항. 대상 기기에서 실행할 명령어 목록입니다. |
[item, ...] |
객체 |
기기 명령어 |
command |
String |
필수사항. 실행할 명령어로, 일반적으로 함께 제공되는 매개변수가 있습니다. |
params |
객체 |
각 명령어의 매개변수와 일치합니다. |
예
EXECUTE 인텐트 요청
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123", "customData": { "fooValue": 74, "barValue": true, "bazValue": "sheepdip" } }, { "id": "456", "customData": { "fooValue": 36, "barValue": false, "bazValue": "moarsheep" } } ], "execution": [ { "command": "action.devices.commands.OnOff", "params": { "on": true } } ] } ] } } ] }
응답 형식
필드 | 유형 | 설명 |
---|---|---|
requestId |
String |
필수사항. 해당 요청의 ID입니다. |
payload |
객체 |
필수사항. 인텐트 응답 페이로드 |
errorCode |
String |
인증 실패 및 개발자 시스템을 사용할 수 없는 경우의 전체 트랜잭션에 대한 오류 코드입니다. 개별 기기 오류의 경우 기기 객체 내의 errorCode를 사용합니다. |
debugString |
String |
사용자에게 표시되지는 않지만 개발 중에 로깅되거나 사용될 수 있는 자세한 응답 오류입니다. |
commands |
배열 |
각 객체에는 응답 세부정보가 포함된 기기가 하나 이상 포함됩니다. 참고: 요청과 동일한 방식으로 그룹화되지 않을 수 있습니다. 예를 들어 요청으로 인해 조명 7개가 켜지는데 조명 3개는 성공하고 4개는 실패하여 응답에 그룹 2개가 포함될 수 있습니다. |
[item, ...] |
객체 |
기기 실행 결과입니다. |
ids |
배열 |
필수사항. 이 상태에 해당하는 기기 ID 목록입니다. |
[item, ...] |
String |
기기 ID |
status |
String |
필수사항. 실행 작업의 결과입니다. 지원되는 값:
|
states |
객체 |
각 트레잇 스키마 참조에 설명된 트레잇별 상태와 일치합니다. 실행 후 상태입니다(제공되는 경우). |
online |
Boolean |
기기가 온라인 (연결 가능) 상태인지 여부를 나타냅니다. |
errorCode |
String |
필요한 경우 사전 설정된 오류 코드에서 ERROR 상태를 확장하여 사용자에게 표시되는 오류에 매핑합니다. |
debugString |
String |
사용자에게 표시되지는 않지만 개발 중에 로깅되거나 사용될 수 있는 자세한 명령어 수준 오류입니다. |
예
EXECUTE 인텐트 응답
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "on": true, "online": true } }, { "ids": [ "456" ], "status": "ERROR", "errorCode": "deviceTurnedOff" } ] } }