स्मार्ट होम एनर्जी स्टोरेज ट्रेल स्कीमा

action.devices.traits.EnergyStorage - यह विशेषता उन डिवाइसों की है जो बैटरी को स्टोर कर सकते हैं या बैटरी चार्ज कर सकते हैं. इसके अलावा, वे डिवाइस भी चार्ज हो सकते हैं जो किसी अन्य डिवाइस को चार्ज कर सकते हैं.

डिवाइस की विशेषताएं

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

विशेषताएं टाइप ब्यौरा
queryOnlyEnergyStorage बूलियन

ज़रूरी है.

अगर यह डिवाइस सिर्फ़ सेव किए गए एनर्जी लेवल की क्वेरी करता है और विकल्प के तौर पर, ऐक्टिव चार्जिंग की स्थिति (यह isRechargeable एट्रिब्यूट पर निर्भर है) की सुविधा देता है, तो यह बात सही है. हालांकि, इसे चालू और बंद नहीं किया जा सकता.

energyStorageDistanceUnitForUX स्ट्रिंग

(डिफ़ॉल्ट: "KILOMETERS")

उसका इस्तेमाल, उपयोगकर्ता के जवाबों के तौर पर किया जाएगा.

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

KILOMETERS
MILES
isRechargeable बूलियन

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

अगर यह डिवाइस रीचार्ज हो सकता है, तो 'सही' पर सेट करें. इससे पता चलता है कि डिवाइस capacityUntilFull, isCharging, और isPluggedIn के स्टेटस की रिपोर्ट कर सकता है. साथ ही, Charge कमांड को स्वीकार कर सकता है.

उदाहरण

रीचार्ज होने वाला डिवाइस

{
  "isRechargeable": true,
  "queryOnlyEnergyStorage": false
}

रीचार्ज होने वाला डिवाइस, जो चार्ज होने के मौजूदा समय को मील में दिखाता है

{
  "isRechargeable": true,
  "energyStorageDistanceUnitForUX": "MILES",
  "queryOnlyEnergyStorage": false
}

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

{
  "isRechargeable": false,
  "queryOnlyEnergyStorage": true
}

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

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

राज्य टाइप ब्यौरा
descriptiveCapacityRemaining स्ट्रिंग

ज़रूरी है.

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

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

CRITICALLY_LOW
LOW
MEDIUM
HIGH
FULL
capacityRemaining रेंज

इकाई/वैल्यू वाले जोड़े का कलेक्शन, जिसमें डिवाइस में मौजूद ऊर्जा की क्षमता की जानकारी होती है. उदाहरण के लिए: मेरे <डिवाइस> के पास फ़िलहाल कितने मील हैं या मेरे <डिवाइस> पर कितने प्रतिशत चार्ज है

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

बची हुई यूनिट और वैल्यू पेयर की क्षमता.

rawValue Integer

ज़रूरी है.

क्षमता का मान.

unit स्ट्रिंग

ज़रूरी है.

कपैसिटी यूनिट.

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

SECONDS
MILES
KILOMETERS
PERCENTAGE
KILOWATT_HOURS
capacityUntilFull रेंज

इकाई/वैल्यू वाले जोड़े का कलेक्शन, जिसमें क्षमता के हिसाब से जानकारी होती है. यह जानकारी तब तक रहती है, जब तक डिवाइस पूरी तरह चार्ज नहीं हो जाता. जैसे: <device> के पूरी तरह चार्ज होने में कितना समय लगता है.

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

चार्ज होने तक बैटरी की क्षमता.

rawValue Integer

ज़रूरी है.

क्षमता का मान.

unit स्ट्रिंग

ज़रूरी है.

कपैसिटी यूनिट.

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

SECONDS
MILES
KILOMETERS
PERCENTAGE
KILOWATT_HOURS
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 उपयोगकर्ता ने प्लग इन किए गए डिवाइस को चार्ज करने की कोशिश की.