action.cihazlar.EXECUTE
Bu amaç, akıllı ev cihazlarında yürütülecek komutları gönderir.
Sipariş karşılama işlemi her komutu işlemeli, ilgili cihaza iletmeli ve EXECUTE
yanıtında yeni durumu döndürmelidir.
Tek bir EXECUTE
amacı, birden fazla komutla birden fazla cihazı hedefleyebilir.
Örneğin, tetiklenen bir amaç bir grup ışıkta hem parlaklığı hem de rengi ayarlayabilir veya birden fazla ışığın her birini farklı bir renge ayarlayabilir.
Daha fazla bilgi için Sorgu ve yürütme bölümünü inceleyin.
İstek biçimi
Alanlar | Tür | Açıklama |
---|---|---|
requestId |
Dize |
Zorunludur. İsteğin kimliği. |
inputs |
Dizi |
Zorunludur. Amaç isteğiyle eşleşen girişlerin listesi. |
[item, ...] |
Nesne |
Amaç isteğiyle ilişkili tür ve yük. |
intent |
Zorunludur. (Sabit değer: Amaç istek türü. |
|
payload |
Nesne |
Zorunludur. Yürütme isteği yükü. |
commands |
Dizi |
Zorunludur. Cihaz hedefi ve komut çiftleri listesi. |
[item, ...] |
Nesne |
Ekli cihaz hedeflerinde yürütülecek komut grubu. |
devices |
Dizi |
Zorunludur. Hedef cihazların listesi. |
[item, ...] |
Nesne |
Yürütülecek cihaz hedefi. |
id |
Dize |
Zorunludur. SYNC'te sağlanan kimliğe göre cihaz kimliği. |
customData |
Nesne |
Opak customData nesnesi SYNC'de sağlanmışsa buraya gönderilir. |
execution |
Dizi |
Zorunludur. Hedef cihazlarda yürütülecek komutların listesi. |
[item, ...] |
Nesne |
Cihaz komutu. |
command |
Dize |
Zorunludur. Genellikle eşlik eden parametrelerle yürütülecek komut. |
params |
Nesne |
Her bir komutun parametreleriyle uyumlu. |
Örnekler
Yürütme isteği
{ "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 } } ] } ] } } ] }
Yanıt biçimi
Alanlar | Tür | Açıklama |
---|---|---|
requestId |
Dize |
Zorunludur. İlgili isteğin kimliği. |
payload |
Nesne |
Zorunludur. Intent yanıt yükü. |
errorCode |
Dize |
Kimlik doğrulama hataları ve geliştirici sisteminin kullanılamaması ile ilgili işlemin tamamı için hata kodu. Cihaz hataları için cihaz nesnesindeki errorCode'u kullanın. |
debugString |
Dize |
Kullanıcılara hiçbir zaman sunulmayacak, ancak geliştirme sırasında günlüğe kaydedilebilecek veya kullanılabilecek ayrıntılı hata. |
commands |
Dizi |
Her nesne, yanıt ayrıntılarına sahip bir veya daha fazla cihaz içerir. Not: Bunlar istekteki gibi gruplandırılamaz. Örneğin, istek 7 ışığı açabilir, 3 ışık başarılı ve 4 başarısız olabilir, dolayısıyla yanıtta iki grup olabilir. |
[item, ...] |
Nesne |
Cihaz yürütme sonucu. |
ids |
Dizi |
Zorunludur. Bu duruma karşılık gelen cihaz kimliklerinin listesi. |
[item, ...] |
Dize |
Cihaz kimliği. |
status |
Dize |
Zorunludur. Yürütme işleminin sonucu. Desteklenen değerler:
|
states |
Nesne |
Her özellik şeması referansında açıklanan özellik başına durumlara uygun şekilde ayarlanır. Varsa yürütmeden sonraki durumlardır. |
online |
Boole |
Cihazın online (yani erişilebilir) olup olmadığını belirtir. |
errorCode |
Dize |
Gerektiğinde, kullanıcılara sunulan hataları eşleyecek hazır hata hata kodlarından kaynaklanan ERROR durumu genişletiliyor. |
Örnekler
UYGULAMA YANITI DEVAM ET
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "on": true, "online": true } }, { "ids": [ "456" ], "status": "ERROR", "errorCode": "deviceTurnedOff" } ] } }