智能家居 InputSelector 特征架构
action.devices.traits.InputSelector
- 此 trait 适用于能够切换输入的设备。
每个设备的媒体输入都可以具有表示音频或视频 Feed 的动态名称。这些 Feed 可以是硬接线的,也可以是通过网络连接的,但应具有名称且具有合理的持久性。此 trait 不支持任意暂时性 Feed,例如可搜索的网络图书馆。支持已配对的已命名蓝牙来源。来源可以有多个名称,因此支持用户创建的名称和发现的名称,以及默认名称;例如,“hdmi_1”也可以是“DVD 播放器”,或者“usb_1”也可以是“硬盘”。
媒体输入可排序,以支持“下一个”和“上一个”命令。
与 Toggles 和 Modes 一样,应以所有可用语言提供输入的名称;这对默认名称尤为重要。
设备属性
具有此 trait 的设备可能会在 SYNC
操作中报告以下属性。如需详细了解如何处理 SYNC
intent,请参阅 intent 执行方式。
属性 | 类型 | 说明 |
---|---|---|
availableInputs |
数组 |
必填。 表示输入音频或视频 Feed 的对象列表。饲料可以是硬接的,也可以是通过网络连接的。每个 Feed 都应具有名称,并且应具有合理的持久性。请务必仔细定义同义词,以免触发不必要的过度触发。 |
[item, ...] |
对象 |
可用的输入。 |
key |
String |
必填。 输入的唯一键。在语音或回答中,不应向用户显示密钥。 |
names |
数组 |
必填。 所有可用语言的输入名称列表。 |
[item, ...] |
对象 |
针对给定可用语言的输入。 |
lang |
String |
必填。 语言代码。 |
name_synonym |
数组 |
必填。 输入内容的简单易懂的名称(采用指定语言)。第一个同义词用于 Google 助理对用户的响应中。 |
[item, ...] |
String |
输入名称。 |
commandOnlyInputSelector |
布尔值 |
(默认值: 指示设备是否支持使用单向(true)或双向(false)通信。如果设备无法响应此特征的 QUERY intent 或报告状态,请将此属性设置为 true。 |
orderedInputs |
布尔值 |
(默认值: 如果输出列表已排序,则为 true。这也表示“下一个”和“上一个”功能可用。 |
示例
具有两个有序输入的设备。
{ "availableInputs": [ { "key": "hdmi_1", "names": [ { "lang": "en", "name_synonym": [ "HDMI 1", "1st HDMI", "DVD Player" ] }, { "lang": "de", "name_synonym": [ "HDMI 1", "Zuerst HDMI", "DVD Spieler" ] } ] }, { "key": "usb_1", "names": [ { "lang": "en", "name_synonym": [ "USB 1", "First USB", "Hard Drive" ] }, { "lang": "de", "name_synonym": [ "USB 1", "Zuerst USB", "Festplatte" ] } ] } ], "orderedInputs": true }
设备状态
具有此 trait 的实体可能会在 QUERY
操作期间报告以下状态。如需详细了解如何处理 QUERY
intent,请参阅intent 执行方式。
州 | 类型 | 说明 |
---|---|---|
currentInput |
String |
必填。 当前正在使用的输入的键。 |
示例
当前选择的设备具有 HDMI 输入端口。
{ "currentInput": "hdmi_1" }
设备命令
具有此特征的设备可以在 EXECUTE
操作过程中响应以下命令。如需详细了解如何处理 EXECUTE
intent,请参阅intent 执行方式。
action.devices.commands.SetInput
设置媒体输入。
参数
参数 | 类型 | 说明 |
---|---|---|
newInput |
String |
必填。 新输入的键。 |
示例
选择 USB 输入
{ "command": "action.devices.commands.SetInput", "params": { "newInput": "usb_1" } }
action.devices.commands.NextInput
选择下一个输入项。仅当 orderedInputs
属性设置为 true 时适用。
{ "orderedInputs": true }
参数
参数 | 类型 | 说明 |
---|---|---|
没有属性 |
示例
无参数
{ "command": "action.devices.commands.NextInput", "params": {} }
action.devices.commands.PreviousInput
选择上一个输入内容。仅当 orderedInputs
属性设置为 true 时适用。
{ "orderedInputs": true }
参数
参数 | 类型 | 说明 |
---|---|---|
没有属性 |
示例
无参数
{ "command": "action.devices.commands.PreviousInput", "params": {} }
示例话语
de-DE
- Ändere den Eingangskanal auf AUX .
en-US
- change input mode to HDMI 1
es-ES
- cambia a hdmi 1
fr-FR
- Activation du mode HDMI1 .
- Mets la télé sur HDMI 1 .
hi-IN
- टीवी की इनपुट HDMI 1 में स्विच करो
it-IT
- metti ingresso aux sulla tv
ja-JP
- テレビ HDMI1 にして
ko-KR
- TV HDMI 1 로 바꿔 줘
nl-NL
- zet de TV op bluetooth
pt-BR
- Muda a entrada da TV para HDMI2 .
- mudar a entrada para AUX
sv-SE
- Sätt på hdmi 1
设备错误
查看错误和异常的完整列表。unsupportedInput
:目前不支持该输入。