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