สคีมา 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 ตัวควบคุมอุณหภูมิต้องอยู่ในโหมดทำความร้อนก่อน

โหมด คำสั่ง ช่อง
HEAT SetHeat heatCelsius
เย็น 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

ช่อง คำอธิบาย ประเภทข้อมูล
heatCelsius อุณหภูมิเป้าหมายที่จะตั้งค่าเมื่อตัวควบคุมอุณหภูมิอยู่ในโหมดทำความร้อน 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 ตัวควบคุมอุณหภูมิบางรุ่นไม่รองรับการเปลี่ยนโหมดอีโคเมื่อโหมดตัวควบคุมอุณหภูมิเป็นปิด ตามลักษณะ ThermostatMode ต้องเปลี่ยนโหมดตัวควบคุมอุณหภูมิเป็น HEAT, COOL หรือ HEATCOOL ก่อนจึงจะเปลี่ยนโหมดอีโคได้
ค่าเย็นต้องมากกว่าค่าร้อน INVALID_ARGUMENT ตรวจสอบว่าฟิลด์ heatCelsius มีค่าน้อยกว่าฟิลด์ coolCelsius ในคำสั่ง
ไม่อนุญาตให้ใช้คำสั่งเมื่อตัวควบคุมอุณหภูมิอยู่ในโหมด MANUAL_ECO FAILED_PRECONDITION ไม่สามารถตั้งค่าจุดอุณหภูมิได้เมื่อตัวควบคุมอุณหภูมิอยู่ในโหมดอีโคแบบกำหนดเอง

ดูรายการรหัสข้อผิดพลาดของ API ทั้งหมดได้ที่ข้อมูลอ้างอิงรหัสข้อผิดพลาดของ API