สคีมาลักษณะตัวจับเวลาสมาร์ทโฮม
action.devices.traits.Timer
- แอตทริบิวต์ตัวจับเวลาแสดงตัวจับเวลาในอุปกรณ์
เช่น ตัวควบคุมสปริงเกอร์อัจฉริยะหรือสวิตช์ไฟอัจฉริยะอาจมีตัวจับเวลาในตัว ลักษณะนี้อาจใช้เพื่อควบคุมตัวจับเวลาในตัวบนอุปกรณ์ เช่น การเริ่มตัวจับเวลาใหม่ รวมถึงการหยุดตัวจับเวลาชั่วคราวและการยกเลิกตัวจับเวลาที่เดินอยู่ และการถามว่าเหลือเวลาอีกเท่าไร
แอตทริบิวต์อุปกรณ์
อุปกรณ์ที่มีลักษณะนี้อาจรายงานแอตทริบิวต์ต่อไปนี้เป็นส่วนหนึ่งของการดำเนินการ SYNC
ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการ Intent SYNC
ได้ที่การดำเนินการตาม Intent
Attributes | ประเภท | คำอธิบาย |
---|---|---|
maxTimerLimitSec |
จำนวนเต็ม |
ต้องระบุ ระบุการตั้งค่าตัวจับเวลาที่ยาวนานที่สุดในอุปกรณ์ โดยวัดเป็นวินาที |
commandOnlyTimer |
บูลีน |
(ค่าเริ่มต้น: ระบุว่าอุปกรณ์รองรับการสื่อสารแบบ 1 ทิศทาง (จริง) หรือ 2 ทิศทาง (เท็จ) ตั้งค่าแอตทริบิวต์นี้เป็น "จริง" หากอุปกรณ์ตอบสนองต่อ Intent ของ QUERY หรือสถานะรายงานสำหรับลักษณะนี้ไม่ได้ |
ตัวอย่าง
อุปกรณ์ที่มีตัวจับเวลาจำกัดเวลา 2 ชั่วโมง
{ "maxTimerLimitSec": 7200 }
สถานะอุปกรณ์
เอนทิตีที่มีลักษณะนี้อาจรายงานสถานะต่อไปนี้เป็นส่วนหนึ่งของการดำเนินการ QUERY
ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการ Intent QUERY
ได้ที่การดำเนินการตาม Intent
รัฐ | ประเภท | คำอธิบาย |
---|---|---|
timerRemainingSec |
จำนวนเต็ม |
ต้องระบุ เวลาปัจจุบันที่เหลืออยู่เป็นวินาที, -1 หรือ [0, |
timerPaused |
บูลีน |
จริงหากมีตัวจับเวลาที่ทำงานอยู่แต่หยุดชั่วคราวอยู่ในขณะนี้ |
ตัวอย่าง
ตัวจับเวลาของอุปกรณ์เหลือเวลาอีกเท่าไร (ไม่ทำงาน)
{ "timerRemainingSec": -1 }
ตัวจับเวลาของอุปกรณ์เหลือเวลาอีกเท่าไร (กำลังทำงาน)
{ "timerRemainingSec": 60 }
ตัวจับเวลาของอุปกรณ์เหลือเวลาเท่าไร (หยุดชั่วคราว)
{ "timerRemainingSec": 30, "timerPaused": true }
คำสั่งของอุปกรณ์
อุปกรณ์ที่มีลักษณะนี้อาจตอบสนองต่อคําสั่งต่อไปนี้ซึ่งเป็นส่วนหนึ่งของการดำเนินการ EXECUTE
ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการ Intent EXECUTE
ได้ที่การดำเนินการตาม Intent
action.devices.commands.TimerStart
เริ่มตัวจับเวลาใหม่
พารามิเตอร์
พารามิเตอร์ | ประเภท | คำอธิบาย |
---|---|---|
timerTimeSec |
จำนวนเต็ม |
ต้องระบุ ระยะเวลาของตัวจับเวลาเป็นวินาที ต้องอยู่ภายใน [1, |
ตัวอย่าง
เปิดตัวจับเวลาของอุปกรณ์เป็นเวลา 5 นาที
{ "command": "action.devices.commands.TimerStart", "params": { "timerTimeSec": 300 } }
ข้อผิดพลาดที่เกี่ยวข้อง
เกิดข้อผิดพลาดขณะเริ่มตัวจับเวลา
ค่าที่รองรับ
noTimerExists
timerValueOutOfRange
aboveMaximumTimerDuration
belowMinimumTimerDuration
action.devices.commands.TimerAdjust
ปรับระยะเวลาของตัวจับเวลา
พารามิเตอร์
พารามิเตอร์ | ประเภท | คำอธิบาย |
---|---|---|
timerTimeSec |
จำนวนเต็ม |
ต้องระบุ การปรับตัวจับเวลาเป็นบวกหรือลบเป็นวินาที โดยต้องอยู่ในช่วง [ |
ตัวอย่าง
เพิ่มเวลา 1 นาทีให้ตัวจับเวลาของอุปกรณ์
{ "command": "action.devices.commands.TimerAdjust", "params": { "timerTimeSec": 60 } }
หัก 30 วินาทีออกจากตัวจับเวลาของอุปกรณ์
{ "command": "action.devices.commands.TimerAdjust", "params": { "timerTimeSec": -30 } }
ข้อผิดพลาดที่เกี่ยวข้อง
เกิดข้อผิดพลาดในการปรับตัวจับเวลา
ค่าที่รองรับ
noTimerExists
timerValueOutOfRange
aboveMaximumTimerDuration
belowMinimumTimerDuration
action.devices.commands.TimerPause
หยุดตัวจับเวลาชั่วคราว
พารามิเตอร์
พารามิเตอร์ | ประเภท | คำอธิบาย |
---|---|---|
ไม่มีพร็อพเพอร์ตี้ |
ตัวอย่าง
หยุดตัวจับเวลาของอุปกรณ์ชั่วคราว
{ "command": "action.devices.commands.TimerPause", "params": {} }
ข้อผิดพลาดที่เกี่ยวข้อง
เกิดข้อผิดพลาดขณะหยุดตัวจับเวลาชั่วคราว
ค่าที่รองรับ
noTimerExists
action.devices.commands.TimerResume
จับเวลาต่อ
พารามิเตอร์
พารามิเตอร์ | ประเภท | คำอธิบาย |
---|---|---|
ไม่มีพร็อพเพอร์ตี้ |
ตัวอย่าง
จับเวลาบนอุปกรณ์ต่อ
{ "command": "action.devices.commands.TimerResume", "params": {} }
ข้อผิดพลาดที่เกี่ยวข้อง
เกิดข้อผิดพลาดขณะกลับมาเริ่มจับเวลาอีกครั้ง
ค่าที่รองรับ
noTimerExists
action.devices.commands.TimerCancel
ยกเลิกตัวจับเวลา
พารามิเตอร์
พารามิเตอร์ | ประเภท | คำอธิบาย |
---|---|---|
ไม่มีพร็อพเพอร์ตี้ |
ตัวอย่าง
หยุดตัวจับเวลาของอุปกรณ์
{ "command": "action.devices.commands.TimerCancel", "params": {} }
ข้อผิดพลาดที่เกี่ยวข้อง
เกิดข้อผิดพลาดขณะหยุดตัวจับเวลา
ค่าที่รองรับ
noTimerExists