סכימה של ThermostatTemperatureSetpoint

Nest Thermostat 

sdm.devices.traits.ThermostatTemperatureSetpoint

המאפיין הזה שייך לסוגי מכשירים של THERMOSTAT שתומכים בהגדרת טמפרטורת יעד וטווח טמפרטורות.

שדות

שדה תיאור סוג הנתונים
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 ולתגובה – 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
COOL SetCool coolCelsius
HEATCOOL SetRange heatCelsius, coolCelsius

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

SetHeat

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

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

בקשה

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

תשובה

{}

SetHeat request fields

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

SetCool

הגדרת טמפרטורת היעד כשהתרמוסטט במצב קירור.

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

בקשה

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

תשובה

{}

הגדרת שדות בקשה של Cool

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

שגיאות

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

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

רשימה מלאה של קודי שגיאה של API זמינה במאמר API Error Code Reference.