action.devices.EXECUTE
このインテントは、スマートホーム デバイスで実行するコマンドを送信します。
フルフィルメントでは、各コマンドを処理して対応するデバイスに送信し、コマンドを返す必要があります。
EXECUTE
レスポンスの新しい状態。
1 つの EXECUTE
インテントで複数のコマンドを使用して、複数のデバイスをターゲットにできます。
たとえば、トリガーされたインテントで、明るさと色の両方を
複数のライトをそれぞれ異なる色に設定したりできます。
詳細については、クエリと実行をご覧ください。
リクエストの形式
フィールド | タイプ | 説明 |
---|---|---|
requestId |
String |
必須。 リクエストの ID。 |
inputs |
配列 |
必須。 インテント リクエストに一致する入力のリスト。 |
[item, ...] |
オブジェクト |
インテント リクエストに関連付けられているタイプとペイロード。 |
intent |
必須。 (定数値: インテントのリクエスト タイプ。 |
|
payload |
オブジェクト |
必須。 EXECUTE リクエスト ペイロード。 |
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 |
配列 |
各オブジェクトには、1 つ以上のデバイスとレスポンスの詳細が含まれます。注意: リクエストと同じ形ではグループ化されない可能性があります。たとえば、このリクエストで 7 個のライトが点灯し、3 個のライトが成功、4 個が失敗すると、レスポンスには 2 つのグループが含まれることになります。 |
[item, ...] |
オブジェクト |
デバイスの実行結果。 |
ids |
配列 |
必須。 このステータスに対応するデバイス ID のリスト。 |
[item, ...] |
String |
デバイス ID。 |
status |
String |
必須。 実行オペレーションの結果。 サポートされている値:
|
states |
オブジェクト |
各トレイト スキーマ リファレンスに記載されているトレイトごとの状態に合わせる。実行後のステータスです(利用可能な場合)。 |
online |
ブール値 |
デバイスがオンライン(つまり到達可能)かどうかを示します。 |
errorCode |
String |
ERROR 状態を、必要に応じて、プリセットのエラーコードから拡張します。ユーザーに表示されるエラーに対応付けられます。 |
例
EXECUTE インテント レスポンス
{
"requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
"payload": {
"commands": [
{
"ids": [
"123"
],
"status": "SUCCESS",
"states": {
"on": true,
"online": true
}
},
{
"ids": [
"456"
],
"status": "ERROR",
"errorCode": "deviceTurnedOff"
}
]
}
}