סכימה של ThermostatTemperatureSetpoint

Nest Thermostat 

sdm.devices.traits.ThermostatTemperatureSetpoint

התכונה הזו שייכת לסוגי מכשירים של THERmostAT שתומכים בהגדרה של טמפרטורת יעד וטווח הטמפרטורה.

שדות

שדה התיאור סוג הנתונים
heatCelsius טמפרטורת היעד בצלזיוס עבור מצבי חימום ו-HEATCOOL של התרמוסטט. number
דוגמה: 20.0
coolCelsius טמפרטורת היעד בצלזיוס עבור מצבי COOL ו-HEATCOOL של התרמוסטט. 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 לדוגמה - COOL

בקשה

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, קודם התרמוסטט צריך להיות במצב חימום:

מצב פקודה שדות
חימום SetHeat heatCelsius
מגניב SetCool coolCelsius
חימום SetRange heatCelsius, coolCelsius

חשוב לשים לב שפקודות setpoint מתייחסות רק למעלות צלזיוס כפרמטר, אבל Google Nest Thermostat יכול להציג טמפרטורה במעלות צלזיוס או בפרנהייט.

SetHeat

המדיניות מגדירה את טמפרטורת היעד כשהתרמוסטט במצב חימום.

בקשה ותגובה של SetHeat

בקשה

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

תשובה

{}

שדות בקשת SetHeat

שדה התיאור סוג הנתונים
heatCelsius טמפרטורת היעד שצריך להגדיר כשהתרמוסטט במצב חימום. number
דוגמה: 22.0

SetCool

המדיניות הזו מגדירה את טמפרטורת היעד כשהתרמוסטט במצב COOL.

בקשה ותגובה ל-SetCol

בקשה

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

תשובה

{}

שדות בקשה ל-SetCol

שדה התיאור סוג הנתונים
coolCelsius טמפרטורת היעד שצריך להגדיר כשהתרמוסטט במצב COOL. number
דוגמה: 20.0

SetRange

המדיניות מגדירה את הטמפרטורה המינימלית והמקסימלית כשהתרמוסטט במצב חימום.

בקשה ותגובה ל-SetRange

בקשה

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

תשובה

{}

שדות בקשה של SetRange

שדה התיאור סוג הנתונים
heatCelsius טמפרטורת היעד המינימלית שצריך להגדיר כשהתרמוסטט במצב חימום. number
דוגמה: 20.0
coolCelsius טמפרטורת היעד המקסימלית שצריך להגדיר כשהתרמוסטט במצב חימום. number
דוגמה: 22.0

שגיאות

ניתן להחזיר את קודי השגיאה הבאים ביחס לתכונה הזו:

הודעת שגיאה הכנסה לקליק פתרון בעיות
אי אפשר לבצע את הפקודה במצב התרמוסטט הנוכחי. FAILED_PRECONDITION לפי תכונת ThermostatMode , בחלק מהדגמים של התרמוסטט אין תמיכה בשינוי של מצב החיסכון כשמצב התרמוסטט כבוי. חובה לשנות את מצב התרמוסטט לחימום, קירור או חימום, קירור או חימום, לפני שינוי מצב החיסכון.
ערך הקירור חייב להיות גדול מערך החימום. INVALID_ARGUMENT מוודאים שהשדה heatCelsius קטן מהשדה coolCelsius בפקודה.
לא ניתן לבצע פקודה בתרמוסטט במצב MANUAL_ECO. FAILED_PRECONDITION אי אפשר להגדיר את הטמפרטורה שהוגדרה כשהתרמוסטט במצב 'חיסכון' ידני.

בחומר העזר בנושא קוד שגיאה של API מופיעה הרשימה המלאה של קודי השגיאות של ה-API.