智能家居频道特征架构
action.devices.traits.Channel - 此 trait 适用于在媒体设备上支持电视频道的设备。
availableChannels 属性按用户或设备共享可用渠道列表。此列表应包含用户或设备订阅的所有热门频道。为确保查询延迟时间较短,我们建议您将渠道列表控制在较小范围内(不超过 30 个渠道)。
设备属性
具有此 trait 的设备可能会在 SYNC 操作中报告以下属性。如需详细了解如何处理 SYNC intent,请参阅 intent 执行方式。
| 属性 | 类型 | 说明 | 
|---|---|---|
availableChannels | 
    数组 | 
       必填。 用于描述此特定设备的可用媒体渠道的对象列表。每项都描述了用户可以在此设备上选择的频道。  | 
  
[item, ...] | 
    对象 | 
       可用的媒体渠道。  | 
  
key | 
    String | 
       必填。 此渠道的唯一标识符。不会向用户显示。  | 
  
names | 
    数组 | 
       必填。 此渠道的用户可见名称列表。  | 
  
[item, ...] | 
    String | 
       渠道名称。  | 
  
number | 
    String | 
       此渠道的可选数字标识符。  | 
  
commandOnlyChannels | 
    布尔值 | 
       (默认值: 指示设备是否支持使用单向(true)或双向(false)通信。如果设备无法响应此 trait 的 QUERY intent 或报告状态,请将此属性设为 true。  | 
  
示例
支持两个声道的设备。
{
  "availableChannels": [
    {
      "key": "ktvu2",
      "names": [
        "Fox",
        "KTVU"
      ],
      "number": "2"
    },
    {
      "key": "abc1",
      "names": [
        "ABC",
        "ABC East"
      ],
      "number": "4-11"
    }
  ]
}
设备状态
无。
设备命令
具有此 trait 的设备可能会在 EXECUTE 操作期间响应以下命令。如需详细了解如何处理 EXECUTE intent,请参阅intent 执行方式。
action.devices.commands.selectChannel
将当前渠道设置为特定值。
参数
载荷包含以下任一内容:
按 ID 选择频道
| 参数 | 类型 | 说明 | 
|---|---|---|
channelCode | 
    String | 
       必填。 所请求频道的唯一标识符,与   | 
  
channelName | 
    String | 
       请求的渠道的易于理解的名称。  | 
  
channelNumber | 
    String | 
       请求的渠道的数字标识符。  | 
  
按编号选择频道
| 参数 | 类型 | 说明 | 
|---|---|---|
channelNumber | 
    String | 
       必填。 请求的渠道的数字标识符。  | 
  
示例
更改为 KTVU
{
  "command": "action.devices.commands.selectChannel",
  "params": {
    "channelCode": "ktvu2",
    "channelName": "KTVU"
  }
}
转到第三频道。
{
  "command": "action.devices.commands.selectChannel",
  "params": {
    "channelNumber": "3"
  }
}
相关错误
在设备上选择新频道时出错。
支持的值:
noAvailableChannelnoChannelSubscriptionchannelSwitchFailed
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