action.devices.EXECUTE

यह इंटेंट स्मार्ट होम डिवाइसों पर एक्ज़ीक्यूट करने के लिए निर्देश भेजता है.

आपकी वाहन बेचने का तरीका, हर निर्देश को प्रोसेस करना चाहिए, इसे इससे जुड़े डिवाइस पर ट्रांसमिट करना चाहिए, और EXECUTE रिस्पॉन्स में नई स्थिति को वापस करना चाहिए.

एक ही EXECUTE इंटेंट, कई निर्देशों को कई डिवाइसों पर टारगेट कर सकता है. उदाहरण के लिए, ट्रिगर किए गए इंटेंट से लाइटों के सेट पर चमक और रंग, दोनों सेट हो सकते हैं या हो सकता है कि हर लाइट एक अलग रंग में सेट हो जाए.

ज़्यादा जानकारी के लिए, क्वेरी करें और एक्ज़ीक्यूट करें देखें.

अनुरोध का फ़ॉर्मैट

फ़ील्ड टाइप जानकारी
requestId String

ज़रूरी है.

अनुरोध का आईडी.

inputs रेंज

ज़रूरी है.

इंटेंट के अनुरोध से मेल खाने वाले इनपुट की सूची.

[item, ...] ऑब्जेक्ट

इंटेंट अनुरोध से जुड़े टाइप और पेलोड

intent

ज़रूरी है.

(स्थायी मान: "action.devices.EXECUTE")

इंटेंट अनुरोध प्रकार.

payload ऑब्जेक्ट

ज़रूरी है.

EXECUTE अनुरोध का पेलोड लोड करें.

commands रेंज

ज़रूरी है.

डिवाइस टारगेट और कमांड पेयर की सूची.

[item, ...] ऑब्जेक्ट

अटैच किए गए डिवाइस टारगेट पर एक्ज़ीक्यूट करने के लिए कमांड का सेट.

devices रेंज

ज़रूरी है.

टारगेट किए गए डिवाइसों की सूची.

[item, ...] ऑब्जेक्ट

एक्ज़ीक्यूट करने के लिए डिवाइस टारगेट.

id String

ज़रूरी है.

सिंक में दिए गए आईडी के मुताबिक डिवाइस आईडी.

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 रेंज

हर ऑब्जेक्ट में जवाब के बारे में जानकारी वाली एक या एक से ज़्यादा चीज़ें होती हैं. ध्यान दें, हो सकता है कि इन्हें उसी तरह ग्रुप में न रखा जाए जैसा अनुरोध में दिया गया है. उदाहरण के लिए, अनुरोध में 7 लाइटें चालू की जा सकती हैं, जिनमें 3 लाइटें चालू हो जाती हैं और 4 लाइटें नाकाम हो जाती हैं. ऐसा होने पर वे जवाब में दो ग्रुप में शामिल हो जाती हैं.

[item, ...] ऑब्जेक्ट

डिवाइस एक्ज़ीक्यूशन का नतीजा.

ids रेंज

ज़रूरी है.

इस स्थिति से जुड़े डिवाइस आईडी की सूची.

[item, ...] String

डिवाइस आईडी.

status String

ज़रूरी है.

एक्ज़ीक्यूट कार्रवाई का नतीजा.

इस्तेमाल की जा सकने वाली वैल्यू:

SUCCESS
पुष्टि करें कि निर्देश सफल रहा.
PENDING
कमांड कतार में है, लेकिन सफल हो सकता है.
OFFLINE
टारगेट डिवाइस ऑफ़लाइन स्थिति में है या पहुंच से बाहर है.
EXCEPTIONS
किसी निर्देश में कोई समस्या या चेतावनी है. निर्देश सही तरह से काम कर रहा है या नहीं हो सकता. आम तौर पर, यह स्टेटस तब सेट किया जाता है, जब आप कनेक्ट किए गए किसी दूसरे डिवाइस के बारे में ज़्यादा जानकारी भेजना चाहते हैं.
ERROR
टारगेट डिवाइस निर्देश नहीं दे सकता.
states ऑब्जेक्ट

हर एट्रिब्यूट की स्कीमा से जुड़ी जानकारी के हिसाब से, स्वास्थ्य से जुड़ी हर स्थिति के हिसाब से अलाइन किया गया है. लागू होने के बाद, ये स्थितियां उपलब्ध हैं.

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"
      }
    ]
  }
}