action.devices.EXECUTE
यह इंटेंट, स्मार्ट होम डिवाइसों पर लागू करने के लिए निर्देश भेजता है.
ग्राहक को आइटम भेजने के बाद, हर निर्देश को प्रोसेस करना होगा, उसे संबंधित डिवाइस पर भेजना होगा, और फिर उसे वापस करना होगा
EXECUTE
रिस्पॉन्स में नई स्थिति.
एक ही EXECUTE
इंटेंट, कई निर्देशों वाले कई डिवाइसों को टारगेट कर सकता है.
उदाहरण के लिए, ट्रिगर किया गया इंटेंट
लाइटें या कई लाइटों को अलग-अलग रंग में सेट कर सकती हैं.
ज़्यादा जानकारी के लिए, क्वेरी और एक्ज़ीक्यूट करना सेक्शन देखें.
अनुरोध का फ़ॉर्मैट
फ़ील्ड | टाइप | ब्यौरा |
---|---|---|
requestId |
String |
ज़रूरी है. अनुरोध का आईडी. |
inputs |
कलेक्शन |
ज़रूरी है. इंटेंट के अनुरोध से मैच करने वाले इनपुट की सूची. |
[item, ...] |
ऑब्जेक्ट |
इंटेंट अनुरोध से जुड़ा टाइप और पेलोड. |
intent |
ज़रूरी है. (कॉन्सटेंट वैल्यू: इंटेंट के अनुरोध का टाइप. |
|
payload |
ऑब्जेक्ट |
ज़रूरी है. पेलोड के लिए अनुरोध करें. |
commands |
कलेक्शन |
ज़रूरी है. डिवाइस टारगेट और कमांड पेयर की सूची. |
[item, ...] |
ऑब्जेक्ट |
निर्देशों का सेट, जिन्हें अटैच किए गए डिवाइस टारगेट पर लागू करना है. |
devices |
कलेक्शन |
ज़रूरी है. टारगेट किए गए डिवाइसों की सूची. |
[item, ...] |
ऑब्जेक्ट |
वह डिवाइस टारगेट जिसे लागू करना है. |
id |
String |
ज़रूरी है. सिंक में दिए गए आईडी के मुताबिक डिवाइस आईडी. |
customData |
ऑब्जेक्ट |
अगर SYNC में ओपेक customData ऑब्जेक्ट दिया जाता है, तो उसे यहां भेजा जाता है. |
execution |
कलेक्शन |
ज़रूरी है. टारगेट डिवाइसों पर लागू किए जाने वाले कमांड की सूची. |
[item, ...] |
ऑब्जेक्ट |
डिवाइस का निर्देश. |
command |
String |
ज़रूरी है. लागू किया जाने वाला निर्देश. आम तौर पर, इसके साथ पैरामीटर होते हैं. |
params |
ऑब्जेक्ट |
हर कमांड के लिए पैरामीटर से अलाइन किया जाता है. |
उदाहरण
इंटेंट के मुताबिक अनुरोध भेजें
{
"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 |
ज़रूरी है. संबंधित अनुरोध का आईडी. |
payload |
ऑब्जेक्ट |
ज़रूरी है. इंटेंट रिस्पॉन्स पेलोड. |
errorCode |
String |
पुष्टि न होने और डेवलपर सिस्टम के उपलब्ध न होने की वजह से, पूरे लेन-देन के लिए गड़बड़ी का कोड. डिवाइस की अलग-अलग गड़बड़ियों के लिए, डिवाइस ऑब्जेक्ट में errorCode का इस्तेमाल करें. |
debugString |
String |
गड़बड़ी के बारे में ऐसी जानकारी जो लोगों को कभी नहीं दिखेगी. हालांकि, यह डेवलपमेंट के दौरान लॉग या इस्तेमाल की जा सकती है. |
commands |
कलेक्शन |
हर ऑब्जेक्ट में, रिस्पॉन्स की जानकारी वाले एक या उससे ज़्यादा डिवाइस होते हैं. एन॰बी॰ इन्हें अनुरोध की तरह ग्रुप में नहीं रखा जा सकता. उदाहरण के लिए, अनुरोध के जवाब में सात लाइटें चालू हो सकती हैं, जिनमें से 3 लाइट काम कर रही हैं और 4 काम नहीं कर रही हैं. इसलिए, जवाब में दो ग्रुप दिखेंगे. |
[item, ...] |
ऑब्जेक्ट |
डिवाइस पर एक्ज़ीक्यूशन का नतीजा. |
ids |
कलेक्शन |
ज़रूरी है. इस स्थिति से जुड़े डिवाइस आईडी की सूची. |
[item, ...] |
String |
डिवाइस आईडी. |
status |
String |
ज़रूरी है. कार्रवाई का नतीजा. इस्तेमाल की जा सकने वाली वैल्यू:
|
states |
ऑब्जेक्ट |
हर Trait स्कीमा के रेफ़रंस में, हर विशेषता की स्थितियों के हिसाब से अलाइन किया जाता है. प्लान लागू होने के बाद, ये स्थितियां उपलब्ध होती हैं. |
online |
बूलियन |
यह बताता है कि डिवाइस ऑनलाइन है या नहीं. इससे कनेक्ट किया जा सकता है या नहीं. |
errorCode |
String |
अगर ज़रूरत हो, तो पहले से सेट किए गए गड़बड़ी के कोड की मदद से गड़बड़ी की स्थिति को बड़ा किया जा रहा है. यह कोड, उपयोगकर्ताओं को दिखने वाली गड़बड़ियों को मैप करेगा. |
उदाहरण
इंटेंट के मुताबिक जवाब
{
"requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
"payload": {
"commands": [
{
"ids": [
"123"
],
"status": "SUCCESS",
"states": {
"on": true,
"online": true
}
},
{
"ids": [
"456"
],
"status": "ERROR",
"errorCode": "deviceTurnedOff"
}
]
}
}