طرحواره نقطه تنظیم دما ترموستات

ترموستات نست

sdm.devices.traits.ThermostatTemperatureSetpoint

این ویژگی متعلق به انواع دستگاه‌های ترموستات است که از تنظیم دمای هدف و محدوده دما پشتیبانی می‌کنند.

فیلدها

میدان توضیحات نوع داده
heatCelsius دمای هدف بر حسب سانتیگراد برای حالت‌های گرمایش (HEAT) و سرمایش (HEATCOOL) ترموستات. number
مثال: ۲۰.۰
coolCelsius دمای هدف بر حسب سانتیگراد برای حالت‌های خنک‌کننده (COOL) و خنک‌کننده حرارتی (HEATCOOL). number
مثال: ۲۲.۰

نمونه درخواست و پاسخ GET - HEAT

درخواست

GET /enterprises/project-id/devices/device-id

پاسخ

{
  "name" : "enterprises/project-id/devices/device-id",
  "traits" : {
    "sdm.devices.traits.ThermostatTemperatureSetpoint" : {
      "heatCelsius" : 20.0,
    }
  }
}

نمونه درخواست و پاسخ GET - عالی

درخواست

GET /enterprises/project-id/devices/device-id

پاسخ

{
  "name" : "enterprises/project-id/devices/device-id",
  "traits" : {
    "sdm.devices.traits.ThermostatTemperatureSetpoint" : {
      "coolCelsius" : 22.0
    }
  }
}

نمونه درخواست و پاسخ GET - HEATCOOL

درخواست

GET /enterprises/project-id/devices/device-id

پاسخ

{
  "name" : "enterprises/project-id/devices/device-id",
  "traits" : {
    "sdm.devices.traits.ThermostatTemperatureSetpoint" : {
      "heatCelsius" : 20.0,
      "coolCelsius" : 22.0
    }
  }
}

دستورات

ترموستات باید قبل از تغییر نقاط تنظیم دما، در حالتی باشد که با دستوری که فراخوانی می‌شود مطابقت داشته باشد. دستور و فیلد(های) لازم برای تغییر نقطه(های) تنظیم، بسته به حالت ترموستات متفاوت است.

برای مثال، برای صدور دستور SetHeat، ترموستات ابتدا باید در حالت HEAT باشد:

حالت فرماندهی فیلد(ها)
گرما تنظیم گرما heatCelsius
خنک ست کول coolCelsius
خنک کننده حرارتی محدوده تنظیم heatCelsius ، coolCelsius

توجه داشته باشید که دستورات نقطه تنظیم فقط درجه سانتیگراد را به عنوان پارامتر در نظر می‌گیرند، اگرچه ترموستات Google Nest می‌تواند دما را هم بر حسب سانتیگراد و هم بر حسب فارنهایت نمایش دهد.

تنظیم گرما

دمای هدف را هنگامی که ترموستات در حالت HEAT است، تنظیم می‌کند.

درخواست و پاسخ SetHeat

درخواست

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

پاسخ

{}

فیلدهای درخواست SetHeat

میدان توضیحات نوع داده
heatCelsius دمای هدف برای تنظیم هنگامی که ترموستات در حالت HEAT است. number
مثال: ۲۲.۰

ست کول

دمای هدف را هنگامی که ترموستات در حالت خنک کننده (COOL) است، تنظیم می‌کند.

درخواست و پاسخ SetCool

درخواست

POST /enterprises/project-id/devices/device-id:executeCommand
{
  "command" : "sdm.devices.commands.ThermostatTemperatureSetpoint.SetCool",
  "params" : {
    "coolCelsius" : 20.0
  }
}

پاسخ

{}

فیلدهای درخواست SetCool

میدان توضیحات نوع داده
coolCelsius دمای هدف برای تنظیم هنگامی که ترموستات در حالت خنک قرار دارد. number
مثال: ۲۰.۰

محدوده تنظیم

وقتی ترموستات در حالت HEATCOOL است، حداقل و حداکثر دما را تنظیم می‌کند.

درخواست و پاسخ SetRange

درخواست

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

پاسخ

{}

فیلدهای درخواست SetRange

میدان توضیحات نوع داده
heatCelsius حداقل دمای هدف برای تنظیم هنگامی که ترموستات در حالت HEATCOOL است. number
مثال: ۲۰.۰
coolCelsius حداکثر دمای هدف برای تنظیم هنگامی که ترموستات در حالت HEATCOOL است. number
مثال: ۲۲.۰

خطاها

کد(های) خطای زیر ممکن است در رابطه با این ویژگی برگردانده شوند:

پیام خطا آر پی سی عیب‌یابی
فرمان در حالت ترموستات فعلی مجاز نیست. FAILED_PRECONDITION طبق گفته، برخی از مدل‌های ترموستات از تغییر حالت Eco هنگام خاموش بودن حالت ترموستات پشتیبانی نمی‌کنند. حالت ترموستات ویژگی. قبل از تغییر حالت اقتصادی (اکو)، حالت ترموستات باید به HEAT، COOL یا HEATCOOL تغییر یابد.
ارزش سرمایی باید بیشتر از ارزش گرمایی باشد. INVALID_ARGUMENT مطمئن شوید که فیلد heatCelsius در دستور شما کمتر از فیلد coolCelsius باشد.
وقتی ترموستات در حالت MANUAL_ECO است، دستور مجاز نیست. FAILED_PRECONDITION وقتی ترموستات در حالت دستی Eco قرار دارد، نمی‌توان نقطه تنظیم دما را تنظیم کرد.

برای مشاهده لیست کامل کدهای خطای API به مرجع کدهای خطای API مراجعه کنید.