智能家居频道特征架构
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" } }
相关错误
在设备上选择新频道时出错。
支持的值:
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