สคีมาลักษณะระดับเสียงของสมาร์ทโฮม
action.devices.traits.Volume - ลักษณะนี้ใช้กับอุปกรณ์ที่เปลี่ยนระดับเสียงได้ (เช่น การตั้งค่าระดับเสียง ปิดเสียง หรือเปิดเสียง)
แอตทริบิวต์อุปกรณ์
อุปกรณ์ที่มีลักษณะนี้อาจรายงานแอตทริบิวต์ต่อไปนี้เป็นส่วนหนึ่งของการดำเนินการ SYNC ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการ Intent SYNC ได้ที่การดำเนินการตาม Intent
| Attributes | ประเภท | คำอธิบาย |
|---|---|---|
volumeMaxLevel |
จำนวนเต็ม |
ต้องระบุ ระดับเสียงสูงสุด โดยสมมติว่าค่าฐานคือ 0 (ปิดเสียง) Assistant จะปรับคำสั่งที่เป็นคำวิเศษณ์ (เช่น "เพิ่มระดับเสียงทีวีขึ้นอีกนิด") ให้ตามความเหมาะสม |
volumeCanMuteAndUnmute |
บูลีน |
ต้องระบุ บ่งบอกว่าอุปกรณ์ปิดและเปิดเสียงได้หรือไม่ การปิดเสียงเป็นตัวเลือกแยกต่างหากเนื่องจากลักษณะการทํางานของ "ปิดเสียง" จะลดระดับเสียงเป็น 0 ขณะจดจําระดับเสียงก่อนหน้าไว้เพื่อให้การเลิกปิดเสียงคืนค่าระดับเสียงนั้น ซึ่งจะแสดงในสถานะระดับเสียง เช่น หากระดับเสียงเป็น 5 และผู้ใช้ปิดเสียง ระดับเสียงจะยังคงเป็น 5 และ |
volumeDefaultPercentage |
จำนวนเต็ม |
(ค่าเริ่มต้น: ระดับเสียง (เป็นเปอร์เซ็นต์) สำหรับระดับเสียงเริ่มต้นที่ผู้ใช้หรือผู้ผลิตกำหนด รูปแบบต้องอยู่ในช่วง 0-100 |
levelStepSize |
จำนวนเต็ม |
(ค่าเริ่มต้น: ขนาดขั้นเริ่มต้นสำหรับการค้นหาระดับเสียงแบบสัมพัทธ์ เช่น "เพิ่มระดับเสียงใน <device_name>" |
commandOnlyVolume |
บูลีน |
(ค่าเริ่มต้น: ระบุว่าอุปกรณ์ทำงานโดยใช้การสื่อสารแบบ 1 ทิศทาง (จริง) หรือ 2 ทิศทาง (เท็จ) เช่น หากตัวควบคุมยืนยันสถานะอุปกรณ์ใหม่ได้หลังจากส่งคำขอ ช่องนี้จะมีค่าเป็นเท็จ หากไม่สามารถยืนยันได้ว่าคําขอดําเนินการเสร็จสมบูรณ์หรือไม่ หรือไม่สามารถดูสถานะของอุปกรณ์ (เช่น หากอุปกรณ์เป็นรีโมตอินฟราเรดแบบดั้งเดิม) ให้ตั้งค่าช่องนี้เป็น "จริง" |
ตัวอย่าง
อุปกรณ์ลำโพงที่ปิดเสียงได้และรายงานสถานะปัจจุบัน
{
"volumeMaxLevel": 11,
"volumeCanMuteAndUnmute": true,
"levelStepSize": 2,
"commandOnlyVolume": false,
"volumeDefaultPercentage": 6
}สถานะอุปกรณ์
เอนทิตีที่มีลักษณะนี้อาจรายงานสถานะต่อไปนี้เป็นส่วนหนึ่งของการดำเนินการ QUERY ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการ Intent QUERY ได้ที่การดำเนินการตาม Intent
| รัฐ | ประเภท | คำอธิบาย |
|---|---|---|
currentVolume |
จำนวนเต็ม |
ต้องระบุ เปอร์เซ็นต์ระดับเสียงปัจจุบัน โดยต้องอยู่ระหว่าง |
isMuted |
บูลีน |
ต้องระบุหากตั้งค่าแอตทริบิวต์ |
ตัวอย่าง
อุปกรณ์ลำโพงที่ปิดเสียงได้และรายงานสถานะปัจจุบัน
{
"currentVolume": 5,
"isMuted": false
}คำสั่งของอุปกรณ์
อุปกรณ์ที่มีลักษณะนี้อาจตอบสนองต่อคําสั่งต่อไปนี้ซึ่งเป็นส่วนหนึ่งของการดำเนินการ EXECUTE ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการ Intent EXECUTE ได้ที่การดำเนินการตาม Intent
action.devices.commands.mute
ปิดหรือเปิดเสียงอุปกรณ์
พารามิเตอร์
| พารามิเตอร์ | ประเภท | คำอธิบาย |
|---|---|---|
mute |
บูลีน |
ต้องระบุ ปิดหรือเปิดเสียงอุปกรณ์ |
ตัวอย่าง
ปิดเสียงอุปกรณ์ลําโพง
{
"command": "action.devices.commands.mute",
"params": {
"mute": true
}
}action.devices.commands.setVolume
ตั้งระดับเสียงเป็นระดับที่ขอ โดยอิงตาม volumeMaxLevel
พารามิเตอร์
| พารามิเตอร์ | ประเภท | คำอธิบาย |
|---|---|---|
volumeLevel |
จำนวนเต็ม |
ต้องระบุ ระดับเสียงใหม่จาก |
ตัวอย่าง
ตั้งระดับเสียงสัมบูรณ์ของอุปกรณ์ลำโพง
{
"command": "action.devices.commands.setVolume",
"params": {
"volumeLevel": 6
}
}action.devices.commands.volumeRelative
เพิ่มหรือลดระดับเสียง n ขั้น โดยอิงตาม volumeMaxLevel สำหรับคำสั่งที่ใช้รูปแบบสัมพัทธ์ Assistant จะเลือก n ตามความเหมาะสมเพื่อปรับขนาดให้เข้ากับขั้นตอนที่มี เช่น ทำให้ทีวีดังขึ้นมากจะมีจำนวนขั้นตอนมากกว่าทำให้ทีวีดังขึ้นเล็กน้อย
พารามิเตอร์
| พารามิเตอร์ | ประเภท | คำอธิบาย |
|---|---|---|
relativeSteps |
จำนวนเต็ม |
ต้องระบุ เชิงลบสําหรับ "ลดลง" |
ตัวอย่าง
ตั้งระดับเสียงสัมพัทธ์ของอุปกรณ์ลําโพงในโหมดคำสั่งเท่านั้น
{
"command": "action.devices.commands.volumeRelative",
"params": {
"relativeSteps": -1
}
}ข้อผิดพลาดของอุปกรณ์
ดูรายการข้อผิดพลาดและข้อยกเว้นทั้งหมดvolumeAlreadyMax: อุปกรณ์ได้รับคำสั่งVolumeUpเมื่ออยู่ในระดับเสียงสูงสุดอยู่แล้วvolumeAlreadyMin: อุปกรณ์ได้รับคำสั่งVolumeDownเมื่ออยู่ในระดับเสียงต่ำสุดแล้ว