थर्मोस्टैट

Google Nest Thermostat के सभी मॉडल, स्मार्ट डिवाइस मैनेजमेंट (SDM) एपीआई में काम करते हैं. ये डिवाइस, THERMOSTAT डिवाइस का टाइप दिखाते हैं:

sdm.devices.types.THERMOSTAT

विशेषताएं

रेफ़रंस

ये लक्षण, निर्देश या इवेंट इस ग्रुप से जुड़े हैं:

विशेषताब्यौरानिर्देश
कनेक्टिविटीयह एट्रिब्यूट ऐसे किसी भी डिवाइस से जुड़ा है जिसमें कनेक्टिविटी की जानकारी है.
फ़ैनयह एट्रिब्यूट ऐसे किसी भी डिवाइस पर काम करता है जिस पर, सिस्टम के पंखे को कंट्रोल किया जा सकता है.सेटटाइमर
मिडिलिटीयह लक्षण उन सभी डिवाइसों से जुड़ा है जिनमें नमी मापने का सेंसर है.
जानकारीडिवाइस से जुड़ी जानकारी के लिए, यह एट्रिब्यूट किसी भी डिवाइस से जुड़ा है.
सेटिंगयह एट्रिब्यूट, डिवाइस से जुड़ी सेटिंग की जानकारी वाले किसी भी डिवाइस से जुड़ा है.
तापमानयह एट्रिब्यूट, हर उस डिवाइस से जुड़ा है जिसमें तापमान मापने का सेंसर मौजूद है.
थर्मोस्टैटEcoयह एट्रिब्यूट, ECO मोड के साथ काम करने वाले, डिवाइस के थर्मोस्टैट टाइप का है.सेटमोड
थर्मोस्टैटहॉकयह पहचान, थर्मोस्टैट के उन डिवाइसों से जुड़ी है जो एचवीएसी की जानकारी दे सकते हैं.
थर्मोस्टैटमोडयह एट्रिब्यूट, डिवाइस के उस तरह के थर्मोस्टैट से जुड़ा है जो थर्मोस्टैट के अलग-अलग मोड पर काम करता है.सेटमोड
थर्मोस्टैटटेंपर सेट सेटयह विशेषता, डिवाइस के उस प्रकार के थर्मोस्टैट से जुड़ी है जो टारगेट तापमान और तापमान की सीमा सेट करने में मदद करता है.SetHiat
SetCool
SetRange

JSON

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

{
  "type" : "sdm.devices.types.THERMOSTAT",
  "traits" : {
    "sdm.devices.traits.Connectivity" : {
      "status" : "ONLINE"
    },
    "sdm.devices.traits.Fan" : {
      "timerMode" : "ON",
      "timerTimeout" : "2019-05-10T03:22:54Z"
    },
    "sdm.devices.traits.Humidity" : {
      "ambientHumidityPercent" : 35.0
    },
    "sdm.devices.traits.Info" : {
      "customName" : "My device"
    },
    "sdm.devices.traits.Settings" : {
      "temperatureScale" : "CELSIUS"
    },
    "sdm.devices.traits.Temperature" : {
      "ambientTemperatureCelsius" : 23.0
    },
    "sdm.devices.traits.ThermostatEco" : {
      "availableModes" : ["MANUAL_ECO", "OFF"],
      "mode" : "MANUAL_ECO",
      "heatCelsius" : 20.0,
      "coolCelsius" : 22.0
    },
    "sdm.devices.traits.ThermostatHvac" : {
      "status" : "HEATING"
    },
    "sdm.devices.traits.ThermostatMode" : {
      "availableModes" : ["HEAT", "COOL", "HEATCOOL", "OFF"],
      "mode" : "COOL"
    },
    "sdm.devices.traits.ThermostatTemperatureSetpoint" : {
      "heatCelsius" : 20.0,
      "coolCelsius" : 22.0
    }
  }
}

तापमान और नमी

थर्मोस्टैट का आस-पास का तापमान पढ़ने के लिए,तापमान सुविधा का इस्तेमाल करें. आस-पास के तापमान को डिवाइस से मापा जाता है.

थर्मोस्टैट की कमरे में नमी का डेटा पढ़ने के लिए,ह्यूमिडिटी सुविधा का इस्तेमाल करें. आस-पास की नमी को डिवाइस पर मापा जाता है.

तापमान स्केल

Google Nest Thermostat, किसी भी डिग्री सेल्सियस या फ़ैरनहाइट में तापमान दिखा सकता है. हालांकि, एसडीएम एपीआई स्केल को सेट नहीं कर सकता. उपयोगकर्ता ने फ़िलहाल जो स्केल किया है उसे तय करने के लिए,सेटिंग एट्रिब्यूट का इस्तेमाल करें.

मोड बदलना

थर्मोस्टैट का मोड दो अलग-अलग विशेषताओं से मैनेज किया जाता है: TherestatMode और ThermoreatEco.

स्टैंडर्ड मोड

थर्मोस्टैट मोड को HEAT, COOL या HEATCOOL में बदलने के लिए, थर्मोस्टैटमोड विशेषता के SetMode निर्देश का इस्तेमाल करें.

इस निर्देश का इस्तेमाल थर्मोस्टैट मोड को बंद करने के लिए भी किया जा सकता है. इससे ईको मोड चालू नहीं किया जा सकता.

उदाहरण के लिए, स्टैंडर्ड थर्मोस्टैट मोड में से किसी एक को बदलने के लिए:

अनुरोध

POST /enterprises/project-id/devices/device-id:executeCommand
{
  "command" : "sdm.devices.commands.ThermostatMode.SetMode",
  "params" : {
    "mode" : "HEAT"
  }
}

जवाब

{}

ईको मोड

ईको मोड को चालू करने के लिए, MANUAL_ECO को थर्मोस्टैट के ईको मोड वाले SetMode कमांड के साथ मोड के तौर पर इस्तेमाल करें:

अनुरोध

POST /enterprises/project-id/devices/device-id:executeCommand
{
  "command" : "sdm.devices.commands.ThermostatEco.SetMode",
  "params" : {
    "mode" : "MANUAL_ECO"
  }
}

जवाब

{}

इससे ईको मोड की मौजूदा स्थिति या उसमें होने वाले बदलावों के आधार पर, दूसरी विशेषताओं पर असर पड़ता है:

  • अगर ईको मोड बंद है, तो थर्मोस्टैट मोड डिफ़ॉल्ट रूप से आखिरी स्टैंडर्ड मोड (HEAT, COOL, HEATCOOL या बंद) पर डिफ़ॉल्ट रूप से चालू रहेगा.
  • अगर ईको मोड MANUAL_ECO है:
    • TherestattemperatureSetpoint एट्रिब्यूट के लिए दिए गए निर्देश अस्वीकार कर दिए गए हैं.
    • तापमान के लिए सेट किए गए तापमान, TherestatTemperatureSetpoint एट्रिब्यूट से नहीं दिखाए जाते.

थर्मोस्टैट के मुताबिक, अगर थर्मोस्टैट मोड बंद है, तो कुछ थर्मोस्टैट मॉडल, ईको मोड को बदलने की सुविधा नहीं देते.

तापमान के सेट पॉइंट बदलें

तापमान के लिए सेट किए गए तापमान को सिर्फ़ तब बदला जा सकता है, जब थर्मोस्टैट हीट, कूल या HEATCOOL मोड में हो. और सेट किए गए सेटपॉइंट, थर्मोस्टैट के मौजूदा मोड के मुताबिक होते हैं. जब मोड बंद हो या ईको मोड को MANUAL_ECO पर सेट किया गया हो, तब तापमान के बिंदु नहीं बदले जा सकते.

थर्मोस्टैट, उस मोड में होना चाहिए जो तापमान के सेट पॉइंट को बदलने से पहले कॉल किए जा रहे निर्देश से मेल खाता हो. सेट अप बदलने के निर्देश और फ़ील्ड, थर्मोस्टैट मोड के हिसाब से अलग-अलग होते हैं.

उदाहरण के लिए, सेट हाइट कमांड जारी करने के लिए, थर्मोस्टैट का पहले HEAT मोड में होना ज़रूरी है:

मोड आदेश फ़ील्ड
की सुविधा चालू है सेट हीट heatCelsius
ठंडा सेट कूल coolCelsius
हीटकूल SetRange heatCelsius, coolCelsius

ध्यान दें कि सेट अप किए जाने वाले कमांड, सेल्सियस में सिर्फ़ डिग्री को पैरामीटर के तौर पर लेते हैं. हालांकि, Google Nest Thermostat, तापमान को सेल्सियस या फ़ैरनहाइट में दिखा सकता है.

अगर थर्मोस्टैट ईको मोड में है, तो

उदाहरण के लिए, अगर थर्मोस्टैट हीट मोड में है, तो तापमान सेट करने का तरीका बदलने के लिए, ThermostatTemperatureSetpoint एट्रिब्यूट के Setहीट निर्देश का इस्तेमाल करें:

अनुरोध

POST /enterprises/project-id/devices/device-id:executeCommand
{
  "command" : "sdm.devices.commands.ThermostatTemperatureSetpoint.SetHeat",
  "params" : {
    "heatCelsius" : 22.0
  }
}

जवाब

{}

ईको मोड सेटपॉइंट

TherestatEco विशेषता के ज़रिए दिए गए heatCelsius और coolCelsius सेट पॉइंट, उपयोगकर्ता ने सेट किए हैं. इन्हें एसडीएम एपीआई के ज़रिए बदला नहीं जा सकता.

पंखा चालू या बंद करना

अगर थर्मोस्टैट में पंखे का इस्तेमाल किया जा सकता है, तो इसे चालू या बंद करने के लिए, पंखे की शैली में SetTimer निर्देश का इस्तेमाल करें. चालू करते समय, यह तय किया जा सकता है कि पंखे को कितनी देर तक चलाना है.

उदाहरण के लिए, एक घंटे के लिए पंखा चलाने के लिए:

अनुरोध

POST /enterprises/project-id/devices/device-id:executeCommand
{
  "command" : "sdm.devices.commands.Fan.SetTimer",
  "params" : {
    "timerMode" : "ON",
    "duration" : "3600s"
  }
}

जवाब

{}

अगर duration फ़ील्ड को बाहर किया जाता है, तो पंखा 15 मिनट तक डिफ़ॉल्ट रूप से चलेगा.

डिवाइस की कनेक्टिविटी की जांच करना

अगर डिवाइस निर्देशों का जवाब नहीं दे रहा है या इवेंट नहीं भेज रहा है या आपको डिवाइस से जुड़े एपीआई से गड़बड़ियां मिल रही हैं, तो ऑफ़लाइन स्थिति के लिए डिवाइस की कनेक्टिविटी की जांच करने के लिएकनेक्टिविटी सुविधा का इस्तेमाल करें. देखें कि डिवाइस के इंटरनेट से कनेक्ट हैं या नहीं. साथ ही, पक्का करें कि Nest की सेवा का सेट अप ठीक से काम कर रहा है.

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

पेलोड

{
  "eventId" : "dd05ec21-82db-46f0-8878-4fedcf1af200",
  "timestamp" : "2019-01-01T00:00:01Z",
  "resourceUpdate" : {
    "name" : "enterprises/project-id/devices/device-id",
    "traits" : {
      "sdm.devices.traits.Connectivity" : {
        "status" : "OFFLINE"
      }
    }
  },
  "userId": "AVPHwEuBfnPOnTqzVFT4IONX2Qqhu9EJ4ubO-bNnQ-yi",
  "resourceGroup" : [
    "enterprises/project-id/devices/device-id"
  ]
}

डिवाइस से जुड़े इवेंट पर प्रतिक्रिया देना

खास जानकारी वाले फ़ील्ड में कोई भी बदलाव करने पर इवेंट जनरेट होता है. उदाहरण के लिए, अगर थर्मोस्टैट की एचवीएसी स्थिति हीटिंग के लिए बदली गई है, तो आपको यह resourceUpdate इवेंट मिलेगा:

पेलोड

{
  "eventId" : "d9d86df5-407f-4917-8286-fe07d5c3dd3b",
  "timestamp" : "2019-01-01T00:00:01Z",
  "resourceUpdate" : {
    "name" : "enterprises/project-id/devices/device-id",
    "traits" : {
      "sdm.devices.traits.ThermostatHvac" : {
        "status" : "HEATING"
      }
    }
  },
  "userId": "AVPHwEuBfnPOnTqzVFT4IONX2Qqhu9EJ4ubO-bNnQ-yi",
  "resourceGroup" : [
    "enterprises/project-id/devices/device-id"
  ]
}

इस डिवाइस टाइप से जुड़ी सभी विशेषताओं के लिए इवेंट ट्रिगर किए जाते हैं. अगर आपको इंटिग्रेशन के तहत किसी तरह की प्रतिक्रिया चाहिए, तो इवेंट चालू करें.

इवेंट का समय

ध्यान दें कि एचवीएसी स्थिति में बदलाव के लिए इवेंट, थर्मोस्टैट मोड में बदलाव के इवेंट के साथ ही डिलीवर नहीं किया जा सकता.

उदाहरण के लिए, एचवीएसी सिस्टम को सुरक्षित रखने के लिए, कभी-कभी थर्मोस्टैट के हीटिंग या कूलिंग मोड को चालू करने में देरी होती है. इस मामले में, थर्मोस्टैट मोड को बदलने से हो सकता है कि शुरुआत में सिर्फ़ थर्मोस्टैटमोड और थर्मोस्टैट तापमान में सेट के बदलाव में बदलाव हों. अगर एचवीएसी सिस्टम को चालू करने में कोई देरी नहीं हुई, तो तीनों इवेंट एक ही समय पर भेजे जाएंगे.

गड़बड़ियां

इस डिवाइस के संबंध में ये गड़बड़ी कोड दिखाए जा सकते हैं:

गड़बड़ी संदेश RPC समस्या हल करना
कूल वैल्यू, हीट वैल्यू से ज़्यादा होनी चाहिए. INVALID_ARGUMENT पक्का करें कि heatCelsius फ़ील्ड, आपके निर्देश में मौजूद coolCelsius फ़ील्ड से कम हो.
मौजूदा थर्मोस्टैट मोड में कमांड की अनुमति नहीं है. FAILED_PRECONDITION थर्मोस्टैट मोड बंद होने पर, कुछ थर्मोस्टैट मॉडल, ईको मोड को बदलने की सुविधा नहीं देते हैं. ऐसा थर्मोस्टैटमोड ट्रेट के मुताबिक किया जाता है. ईको मोड को बदलने से पहले, थर्मोस्टैट मोड को HEAT, COOL या HEATCOOL में बदला जाना चाहिए.
थर्मोस्टैट का पंखा उपलब्ध नहीं है. FAILED_PRECONDITION थर्मोस्टैट में पंखे की सुविधा नहीं है. इस डिवाइस के लिए, प्रशंसकों से जुड़ी बातों और निर्देशों का इस्तेमाल नहीं किया जा सकता.
MANUAL_ECO मोड में थर्मोस्टैट की अनुमति नहीं है. FAILED_PRECONDITION अगर थर्मोस्टैट मैन्युअल ईको मोड में है, तो तापमान सेट नहीं किया जा सकता.

एपीआई के गड़बड़ी कोड की पूरी सूची देखने के लिए, एपीआई से जुड़ी गड़बड़ी के कोड का रेफ़रंस देखें.