สคีมาลักษณะระดับเสียงของสมาร์ทโฮม
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
เมื่ออยู่ในระดับเสียงต่ำสุดแล้ว