थर्मोस्टैट

सभी Google Nest Thermostat मॉडल में इस्तेमाल किए जा सकते हैं Smart Device Management (एसडीएम) एपीआई का इस्तेमाल करना होगा. इन डिवाइसों पर THERMOAT वापस आ जाता है डिवाइस प्रकार:

sdm.devices.types.THERMOSTAT

विशेषताएं

रेफ़रंस

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

विशेषताब्यौरानिर्देश
कनेक्टिविटीयह विशेषता ऐसे किसी भी डिवाइस से जुड़ी है जिसमें कनेक्टिविटी की जानकारी है.
प्रशंसकयह विशेषता ऐसे किसी भी डिवाइस पर लागू होती है जिसमें पंखे को कंट्रोल करने की क्षमता होती है.SetTimer
नमीयह विशेषता ऐसे किसी भी डिवाइस से जुड़ी है जिसमें नमी को मापने वाला सेंसर होता है.
जानकारीयह Trait, डिवाइस से जुड़ी जानकारी के लिए इस्तेमाल किए जा रहे किसी भी डिवाइस से जुड़ा है.
सेटिंगयह Trait, डिवाइस से जुड़ी सेटिंग की जानकारी के लिए इस्तेमाल किए जा रहे किसी भी डिवाइस से जुड़ा है.
तापमानयह विशेषता ऐसे किसी भी डिवाइस से जुड़ी है जिसमें तापमान मापने वाला सेंसर होता है.
ThermostatEcoयह Trait, अलग-अलग तरह के उन डिवाइसों से जुड़ा है जो ECO मोड के साथ काम करते हैं.SetMode
ThermostatHvacयह विशेषता, उस तरह के थर्मोस्टैट से जुड़ी है जो एचवीएसी की जानकारी दे सकते हैं.
ThermostatModeयह खासियत, अलग-अलग तरह के थर्मोस्टैट के साथ काम करने वाले THERMOAT के अलग-अलग तरह के डिवाइसों से जुड़ी है.SetMode
ThermostatTemperatureSetpointयह विशेषता THERMOAT के उन डिवाइस से जुड़ी है जो टारगेट तापमान और तापमान की सीमा सेट करने की सुविधा देते हैं.SetHeat
SetCool
SetRange

JSON

GET जवाब में Trait न होने का मतलब है कि Trait या फ़िलहाल, डिवाइस के लिए यह सुविधा उपलब्ध नहीं है. यहां जाएं: डिवाइस के टाइप में अन्य सुविधाओं का इस्तेमाल करें जानकारी.

{
  "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 तापमान को या तो डिग्री सेल्सियस या फ़ैरनहाइट, लेकिन स्केल को SDM API से सेट नहीं किया जा सकता. तय करने के लिए उपयोगकर्ता द्वारा वर्तमान में सेट किया गया तापमान स्केल है, तो इसका उपयोग करें Settings trait.

मोड बदलें

थर्मोस्टैट के मोड को दो अलग-अलग चीज़ों से मैनेज किया जाता है: ThermostatMode and ThermostatEco.

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

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

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

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

अनुरोध

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

जवाब

{}

ईको मोड

ईको मोड को चालू करने के लिए, MANUAL_ECO का इस्तेमाल मोड के तौर पर करें. ThermostatEco Trait का SetMode निर्देश:

अनुरोध

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

जवाब

{}

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

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

सेट किए गए तापमान में बदलाव करें

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

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

उदाहरण के लिए, SetHeat निर्देश देने के लिए, पहले थर्मोस्टैट को HEAT मोड पर सेट करना होगा:

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

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

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

उदाहरण के लिए, थर्मोस्टैट के चालू होने पर तापमान का सेटपॉइंट बदलने के लिए एचएटी मोड को चालू करने के लिए, ThermostatTemperatureSetpoint Trait का SetHeat निर्देश:

अनुरोध

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

जवाब

{}

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

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

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

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

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

अनुरोध

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

जवाब

{}

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

डिवाइस की कनेक्टिविटी देखें

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

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

पेलोड

{
  "eventId" : "9ee64381-801d-494a-b217-9b64e16a0a84",
  "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"
  ]
}

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

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

पेलोड

{
  "eventId" : "dc9541fd-0b50-4ce7-a723-bbf1792223fa",
  "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"
  ]
}

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

इवेंट का समय

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

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

गड़बड़ियां

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

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

इसके लिए एपीआई गड़बड़ी कोड संदर्भ देखें में देखें.