-

طرحواره ترموستاتTemperatureSetpoint

Nest Thermostat

sdm.devices.traits.ThermostatTemperatureSetpoint

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

زمینه های

رشته شرح نوع داده
heatCelsius دمای مورد نظر بر حسب سلسیوس برای حالت‌های گرمایش و گرمایش ترموستات. number
مثال: 20.0
coolCelsius دمای مورد نظر بر حسب سانتیگراد برای حالت های خنک کننده و گرمایشی ترموستات. number
مثال: 22.0

نمونه درخواست و پاسخ 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
سرد SetCool coolCelsius
HEATCOOL SetRange 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
مثال: 22.0

SetCool

زمانی که ترموستات در حالت خنک است دمای مورد نظر را تنظیم می کند.

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

درخواست

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

واکنش

{}

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

رشته شرح نوع داده
coolCelsius دمای مورد نظر برای تنظیم زمانی که ترموستات در حالت خنک است. number
مثال: 20.0

SetRange

زمانی که ترموستات در حالت 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
مثال: 20.0
coolCelsius حداکثر دمای هدف برای تنظیم زمانی که ترموستات در حالت HEATCOOL است. number
مثال: 22.0

خطاها

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

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

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