สคีมาลักษณะของช่องสมาร์ทโฮม
action.devices.traits.Channel - ลักษณะนี้ใช้กับอุปกรณ์ที่รองรับช่องทีวีในอุปกรณ์สื่อ
availableChannels รายการนี้ควรประกอบด้วยช่องยอดนิยมหรือช่องยอดนิยมทั้งหมดที่ผู้ใช้หรืออุปกรณ์ติดตาม เราขอแนะนำให้คุณเพิ่มรายการช่องให้น้อย (ไม่เกิน 30 ช่อง) เพื่อให้เวลาในการตอบสนองของการค้นหาต่ำ
แอตทริบิวต์อุปกรณ์
อุปกรณ์ที่มีลักษณะนี้อาจรายงานแอตทริบิวต์ต่อไปนี้เป็นส่วนหนึ่งของการดำเนินการ SYNC ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการ Intent ของ SYNC ได้ที่การดำเนินการตามคำสั่งซื้อใน Intent
| Attributes | ประเภท | คำอธิบาย | 
|---|---|---|
| availableChannels | อาร์เรย์ | ต้องระบุ รายการออบเจ็กต์ที่อธิบายช่องทางสื่อที่ใช้ได้สำหรับอุปกรณ์นี้ แต่ละรายการจะอธิบายช่องทางที่ผู้ใช้สามารถเลือกได้ในอุปกรณ์นี้ | 
| [item, ...] | ออบเจ็กต์ | ช่องทางสื่อที่ใช้ได้ | 
| key | String | ต้องระบุ ตัวระบุที่ไม่ซ้ำกันสำหรับแชแนลนี้ ไม่แสดงให้ผู้ใช้เห็น | 
| names | อาร์เรย์ | ต้องระบุ รายการชื่อที่ผู้ใช้มองเห็นได้สำหรับช่องนี้ | 
| [item, ...] | String | ชื่อช่อง | 
| number | String | ตัวระบุตัวเลขที่ไม่บังคับสำหรับแชแนลนี้ | 
| commandOnlyChannels | บูลีน | (ค่าเริ่มต้น:  ระบุว่าอุปกรณ์รองรับการสื่อสารแบบ 1 ทิศทาง (จริง) หรือ 2 ทิศทาง (เท็จ) ตั้งค่าแอตทริบิวต์นี้เป็น "จริง" หากอุปกรณ์ตอบสนองต่อ Intent QUERY หรือการรายงานสถานะสำหรับลักษณะนี้ไม่ได้ | 
ตัวอย่าง
อุปกรณ์ที่รองรับ 2 แชแนล
{
  "availableChannels": [
    {
      "key": "ktvu2",
      "names": [
        "Fox",
        "KTVU"
      ],
      "number": "2"
    },
    {
      "key": "abc1",
      "names": [
        "ABC",
        "ABC East"
      ],
      "number": "4-11"
    }
  ]
}
สถานะอุปกรณ์
ไม่มี
คำสั่งของอุปกรณ์
อุปกรณ์ที่มีลักษณะนี้อาจตอบสนองต่อคําสั่งต่อไปนี้ซึ่งเป็นส่วนหนึ่งของการดำเนินการ EXECUTE ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการ Intent EXECUTE ได้ที่การดำเนินการตาม Intent
action.devices.commands.selectChannel
ตั้งค่าช่องปัจจุบันเป็นค่าที่เจาะจง
พารามิเตอร์
เพย์โหลดมีข้อมูลอย่างใดอย่างหนึ่งต่อไปนี้
เลือกช่องตามรหัส
| พารามิเตอร์ | ประเภท | คำอธิบาย | 
|---|---|---|
| channelCode | String | ต้องระบุ ตัวระบุที่ไม่ซ้ำกันสำหรับแชแนลที่ขอ ซึ่งตรงกับ  | 
| channelName | String | ชื่อที่เรียกง่ายของช่องที่ขอ | 
| channelNumber | String | ตัวระบุตัวเลขสำหรับช่องที่ขอ | 
เลือกช่องตามหมายเลข
| พารามิเตอร์ | ประเภท | คำอธิบาย | 
|---|---|---|
| channelNumber | String | ต้องระบุ ตัวระบุตัวเลขสำหรับช่องที่ขอ | 
ตัวอย่าง
การเปลี่ยนแปลงใน KTVU
{
  "command": "action.devices.commands.selectChannel",
  "params": {
    "channelCode": "ktvu2",
    "channelName": "KTVU"
  }
}
ไปที่ช่อง 3
{
  "command": "action.devices.commands.selectChannel",
  "params": {
    "channelNumber": "3"
  }
}
ข้อผิดพลาดที่เกี่ยวข้อง
เกิดข้อผิดพลาดขณะเลือกช่องใหม่ในอุปกรณ์
ค่าที่รองรับ
- noAvailableChannel
- noChannelSubscription
- channelSwitchFailed
action.devices.commands.relativeChannel
ปรับช่องปัจจุบันตามค่าสัมพัทธ์
พารามิเตอร์
| พารามิเตอร์ | ประเภท | คำอธิบาย | 
|---|---|---|
| relativeChannelChange | จำนวนเต็ม | ต้องระบุ จำนวนแชแนลที่จะเพิ่มหรือลดลง | 
ตัวอย่าง
เปลี่ยนไปใช้ช่องถัดไป
{
  "command": "action.devices.commands.relativeChannel",
  "params": {
    "relativeChannelChange": 1
  }
}
เปลี่ยนเป็นช่องก่อนหน้า
{
  "command": "action.devices.commands.relativeChannel",
  "params": {
    "relativeChannelChange": -1
  }
}
ข้อผิดพลาดที่เกี่ยวข้อง
เกิดข้อผิดพลาดขณะปรับช่องของอุปกรณ์
ค่าที่รองรับ
- channelSwitchFailed
action.devices.commands.returnChannel
กลับไปที่ช่องล่าสุด/ช่องก่อนหน้าที่ผู้ใช้ดูอยู่
พารามิเตอร์
| พารามิเตอร์ | ประเภท | คำอธิบาย | 
|---|---|---|
| ไม่มีพร็อพเพอร์ตี้ | ||
ตัวอย่าง
กลับไปที่ช่องล่าสุด
{
  "command": "action.devices.commands.returnChannel",
  "params": {}
}
ข้อผิดพลาดที่เกี่ยวข้อง
เกิดข้อผิดพลาดในการกลับไปที่ช่องล่าสุดของอุปกรณ์
ค่าที่รองรับ
- channelSwitchFailed