स्मार्ट होम EnergyStorage ट्रैट स्कीमा
action.devices.traits.EnergyStorage - यह एट्रिब्यूट उन डिवाइसों के लिए है जो बैटरी में ऊर्जा को सेव कर सकते हैं और उसे फिर से चार्ज कर सकते हैं. इसके अलावा, यह एट्रिब्यूट उन डिवाइसों के लिए भी है जो किसी दूसरे डिवाइस को चार्ज कर सकते हैं.
डिवाइस के एट्रिब्यूट
इस विशेषता वाले डिवाइस, SYNC ऑपरेशन के हिस्से के तौर पर, इन एट्रिब्यूट की जानकारी दे सकते हैं. SYNC इंटेंट को मैनेज करने के बारे में ज़्यादा जानने के लिए, इंटेंट पूरा करना लेख पढ़ें.
| विशेषताएं | टाइप | ब्यौरा | 
|---|---|---|
queryOnlyEnergyStorage | 
    बूलियन | 
       ज़रूरी है. अगर यह डिवाइस सिर्फ़ सेव की गई ऊर्जा के लेवल और ज़रूरत पड़ने पर, चार्जिंग की चालू स्थिति (  | 
  
energyStorageDistanceUnitForUX | 
    String | 
       (डिफ़ॉल्ट:  इसका इस्तेमाल, उपयोगकर्ता को दिए जाने वाले जवाबों में किया जाएगा. इस्तेमाल की जा सकने वाली वैल्यू: 
  | 
  
isRechargeable | 
    बूलियन | 
       (डिफ़ॉल्ट:  अगर डिवाइस रीचार्ज हो सकता है, तो 'सही है' पर सेट करें. इससे पता चलता है कि डिवाइस   | 
  
उदाहरण
रीचार्ज किया जा सकने वाला डिवाइस
{
  "isRechargeable": true,
  "queryOnlyEnergyStorage": false
}रीचार्ज किया जा सकने वाला ऐसा डिवाइस जो मौजूदा चार्जिंग लेवल को मील में दिखाता है
{
  "isRechargeable": true,
  "energyStorageDistanceUnitForUX": "MILES",
  "queryOnlyEnergyStorage": false
}ऐसा डिवाइस जिसे चार्ज नहीं किया जा सकता और जो सिर्फ़ बैटरी के मौजूदा चार्ज लेवल की जानकारी देने की सुविधा देता है
{
  "isRechargeable": false,
  "queryOnlyEnergyStorage": true
}डिवाइस की स्थितियां
इस विशेषता वाली इकाइयां, QUERY ऑपरेशन के तहत, इन स्थितियों की जानकारी दे सकती हैं. QUERY इंटेंट को मैनेज करने के बारे में ज़्यादा जानने के लिए, इंटेंट पूरा करना लेख पढ़ें.
| राज्य | टाइप | ब्यौरा | 
|---|---|---|
descriptiveCapacityRemaining | 
    String | 
       ज़रूरी है. ऊर्जा क्षमता के लेवल की जानकारी. ध्यान दें कि यह तब होता है, जब कैपेसिटी का कोई संख्यात्मक डेटा न हो. अगर संख्या के हिसाब से कैपेसिटी का डेटा भी उपलब्ध है, तो जहां भी हो सके वहां संख्या के हिसाब से कैपेसिटी के डेटा को प्राथमिकता दी जाएगी. इस्तेमाल की जा सकने वाली वैल्यू: 
  | 
  
capacityRemaining | 
    कलेक्शन | 
       यूनिट/वैल्यू पेयर का कलेक्शन, जिसमें डिवाइस की मौजूदा ऊर्जा क्षमता की जानकारी होती है. उदाहरण के लिए: फ़िलहाल, मेरा <device> कितने मील चला है या मेरे <device> की बैटरी कितने प्रतिशत चार्ज है  | 
  
[item, ...] | 
    ऑब्जेक्ट | 
       यूनिट और वैल्यू पेयर में बची हुई कपैसिटी.  | 
  
rawValue | 
    Integer | 
       ज़रूरी है. क्षमता की वैल्यू.  | 
  
unit | 
    String | 
       ज़रूरी है. क्षमता की इकाई. इस्तेमाल की जा सकने वाली वैल्यू: 
  | 
  
capacityUntilFull | 
    कलेक्शन | 
       यूनिट/वैल्यू पेयर का कलेक्शन, जो डिवाइस के पूरी तरह चार्ज होने तक उसकी क्षमता की जानकारी रखता है. उदाहरण के लिए: <device> को पूरी तरह से चार्ज होने में कितना समय लगेगा.  | 
  
[item, ...] | 
    ऑब्जेक्ट | 
       चार्ज होने तक की क्षमता.  | 
  
rawValue | 
    Integer | 
       ज़रूरी है. क्षमता की वैल्यू.  | 
  
unit | 
    String | 
       ज़रूरी है. क्षमता की इकाई. इस्तेमाल की जा सकने वाली वैल्यू: 
  | 
  
isCharging | 
    बूलियन | 
       डिवाइस फ़िलहाल चार्ज हो रहा है या नहीं.  | 
  
isPluggedIn | 
    बूलियन | 
       डिवाइस फ़िलहाल चार्जिंग में है या नहीं. डिवाइस को प्लग-इन किया जा सकता है, लेकिन वह लगातार चार्ज नहीं हो रहा है.  | 
  
उदाहरण
रीचार्ज किया जा सकने वाला डिवाइस
{
  "descriptiveCapacityRemaining": "HIGH",
  "capacityRemaining": [
    {
      "rawValue": 36000,
      "unit": "SECONDS"
    },
    {
      "rawValue": 90,
      "unit": "PERCENTAGE"
    }
  ],
  "capacityUntilFull": [
    {
      "rawValue": 120,
      "unit": "SECONDS"
    }
  ],
  "isCharging": true,
  "isPluggedIn": true
}चार्ज किया जा सकने वाला ऐसा डिवाइस जो चार्ज के मौजूदा लेवल को मील में दिखाता है
{
  "descriptiveCapacityRemaining": "CRITICALLY_LOW",
  "capacityRemaining": [
    {
      "rawValue": 12,
      "unit": "MILES"
    }
  ],
  "capacityUntilFull": [
    {
      "rawValue": 6000,
      "unit": "SECONDS"
    }
  ],
  "isCharging": true,
  "isPluggedIn": true
}ऐसा डिवाइस जिसे चार्ज नहीं किया जा सकता और जो सिर्फ़ बैटरी के मौजूदा चार्ज लेवल की जानकारी देता है
{
  "descriptiveCapacityRemaining": "LOW"
}डिवाइस के लिए निर्देश
इस विशेषता वाले डिवाइस, EXECUTE ऑपरेशन के तहत, इन निर्देशों का जवाब दे सकते हैं. EXECUTE इंटेंट को मैनेज करने के बारे में ज़्यादा जानने के लिए, इंटेंट पूरा करना लेख पढ़ें.
action.devices.commands.Charge
चार्जिंग शुरू या बंद करें.
इस निर्देश के लिए, ये एट्रिब्यूट ज़रूरी हैं:
{
  "isRechargeable": true
}
पैरामीटर
| पैरामीटर | टाइप | ब्यौरा | 
|---|---|---|
charge | 
    बूलियन | 
       ज़रूरी है. चार्जिंग शुरू करने के लिए 'सही' और चार्जिंग बंद करने के लिए 'गलत'.  | 
  
उदाहरण
चार्जिंग शुरू करने का निर्देश
{
  "command": "action.devices.commands.Charge",
  "params": {
    "charge": true
  }
}चार्ज करने का निर्देश बंद करें
{
  "command": "action.devices.commands.Charge",
  "params": {
    "charge": false
  }
}डिवाइस से जुड़ी गड़बड़ियां
गड़बड़ियों और अपवादों की पूरी सूची देखें.deviceUnplugged: उपयोगकर्ता ने किसी ऐसे डिवाइस को चार्ज करने की कोशिश की जो प्लग इन नहीं है.