स्मार्ट होम के लिए स्मार्ट फ़िल की सुविधा से जुड़ा ट्रैट स्कीमा

action.devices.traits.Fill - यह ट्रैट, ऐसे डिवाइसों पर लागू होता है जिनमें पानी भरने की सुविधा होती है. जैसे, बाथटब.

डिवाइस ATTRIBUTES

इस विशेषता वाले डिवाइस, SYNC ऑपरेशन के हिस्से के तौर पर, इन एट्रिब्यूट की जानकारी दे सकते हैं. SYNC इंटेंट को मैनेज करने के बारे में ज़्यादा जानने के लिए, इंटेंट पूरा करना लेख पढ़ें.

विशेषताएं टाइप ब्यौरा
availableFillLevels ऑब्जेक्ट

डिवाइस भरने के अलग-अलग लेवल के बारे में बताता है.

levels कलेक्शन

ज़रूरी है.

लेवल के नामों और किसी भाषा के हिसाब से समानार्थी शब्दों की सूची.

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

लेवल का नाम और भाषा के हिसाब से उसके समानार्थी शब्द.

level_name String

ज़रूरी है.

लेवल का अंदरूनी नाम. यह फ़ाइल, लोगों के लिए आसान नहीं हो सकती है. इसे सभी भाषाओं में शेयर किया जाएगा.

level_values कलेक्शन

ज़रूरी है.

इस्तेमाल की जा सकने वाली हर भाषा में, लेवल के समानार्थी शब्द.

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

किसी भाषा में लेवल के समानार्थी शब्द.

level_synonym कलेक्शन

ज़रूरी है.

लेवल का दूसरा नाम. इस सूची में मौजूद पहली स्ट्रिंग का इस्तेमाल, उस भाषा में लेवल के कैननिकल नाम के तौर पर किया जाता है.

[item, ...] String

समानार्थी शब्द का नाम.

lang String

ज़रूरी है.

भाषा का कोड (ISO 639-1). इस्तेमाल की जा सकने वाली भाषाएं देखें.

ordered बूलियन

ज़रूरी है.

अगर यह 'सही' पर सेट है, तो डिवाइस, वॉल्यूम बढ़ाने या घटाने के लॉजिक के लिए अतिरिक्त व्याकरण मैनेज करता है. इसे levels कलेक्शन से दिखाया जाता है. उदाहरण के लिए, आधा लेवल.

supportsFillPercent बूलियन

(डिफ़ॉल्ट: false)

अगर यह सही है, तो लेवल को प्रतिशत में बदलने के लिए निर्देश स्वीकार करें.

उदाहरण

ऐसे डिवाइस जिनमें फ़िल या ड्रेन की ऐसी बुनियादी सुविधाएं हैं जो अलग-अलग लेवल पर काम नहीं करतीं.

{}

ऐसा डिवाइस जो अलग-अलग फ़िल लेवल के साथ काम करता है.

{
  "availableFillLevels": {
    "levels": [
      {
        "level_name": "half_level",
        "level_values": [
          {
            "level_synonym": [
              "Half",
              "Half way",
              "One half"
            ],
            "lang": "en"
          }
        ]
      },
      {
        "level_name": "full_level",
        "level_values": [
          {
            "level_synonym": [
              "Full",
              "All the way",
              "Complete"
            ],
            "lang": "en"
          }
        ]
      }
    ],
    "ordered": true
  }
}

डिवाइस की स्थितियां

इस विशेषता वाली इकाइयां, QUERY की कार्रवाई के तहत, इन राज्यों की शिकायत कर सकती हैं. QUERY इंटेंट को मैनेज करने के बारे में ज़्यादा जानने के लिए, इंटेंट पूरा करना लेख पढ़ें.

राज्य टाइप ब्यौरा
isFilled बूलियन

ज़रूरी है.

अगर डिवाइस किसी भी लेवल पर भरा गया हो, तो वैल्यू 'सही' होगी. अगर डिवाइस की बैटरी पूरी तरह से खत्म हो गई है, तो यह फ़ील्ड गलत के तौर पर सेट होगा.

currentFillLevel String

अगर availableFillLevels एट्रिब्यूट सेट है, तो यह एट्रिब्यूट देना ज़रूरी है. availableFillLevels एट्रिब्यूट में मौजूद डिवाइस के मौजूदा level_name की जानकारी देता है.

currentFillPercent Number

अगर supportsFillPercent एट्रिब्यूट सेट है, तो यह एट्रिब्यूट देना ज़रूरी है. बैटरी के फ़िल होने के मौजूदा प्रतिशत को दिखाता है.

उदाहरण

क्या बाथटब भरा है?

{
  "isFilled": true
}

क्या बाथटब भरा है? (लेवल के साथ).

{
  "isFilled": true,
  "currentFillLevel": "half_level"
}

डिवाइस के लिए निर्देश

इस विशेषता वाले डिवाइस, EXECUTE ऑपरेशन के तहत, इन निर्देशों का जवाब दे सकते हैं. EXECUTE इंटेंट को मैनेज करने के बारे में ज़्यादा जानने के लिए, इंटेंट पूरा करना लेख पढ़ें.

action.devices.commands.Fill

डिवाइस में पानी भरें या उसे खाली करें.

पैरामीटर

पैरामीटर टाइप ब्यौरा
fill बूलियन

ज़रूरी है.

भरने के लिए 'सही' और खाली करने के लिए 'गलत'.

fillLevel String

इससे पता चलता है कि availableFillLevels एट्रिब्यूट में से किस level_name को सेट करना है. अगर कोई वैल्यू नहीं दी गई है, तो डिफ़ॉल्ट लेवल पर भरें.

fillPercent Number

अनुरोध किए गए लेवल का प्रतिशत दिखाता है.

उदाहरण

बाथटब भरें.

{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": true
  }
}

बाथटब ख़ाली कर दो.

{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": false
  }
}

बाथटब को आधा भरें.

{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": true,
    "fillLevel": "half_level"
  }
}

बाथटब में पानी भरने के लेवल को एक बढ़ाएं. इसके लिए, ordered एट्रिब्यूट की वैल्यू true होनी चाहिए.

{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": true,
    "fillLevel": "full_level"
  }
}

डिवाइस से जुड़ी गड़बड़ियां

गड़बड़ियों और अपवादों की पूरी सूची देखें.