智能家居 InputSelector 特征架构
action.devices.traits.InputSelector
- 此特征用于能够切换输入源的设备。
媒体输入可以为每台设备使用动态名称,以表示音频或视频 Feed。这些 Feed 可以是硬连接或联网的,但应为其命名且具有合理的持久性。此特征不支持任意临时 Feed,例如可搜索的网络库。支持已命名的成对蓝牙来源。来源可以有多个名称,因此支持用户创建和发现的名称以及默认名称;例如,“hdmi_1”也可能是“DVD player”或“usb_1”也可能是“Hard drive”。
您可以对媒体输入进行排序,以支持“next”和“previous”命令。
与 Toggles 和 Modes 一样,输入名称应以所有可用语言提供;这与默认名称尤其相关。
设备属性
具有此特征的设备可能会在 SYNC
操作过程中报告以下属性。如需详细了解如何处理 SYNC
intent,请参阅 intent 执行方式。
属性 | 类型 | 说明 |
---|---|---|
availableInputs |
数组 |
必填。 代表输入音频或视频 Feed 的对象列表。Feed 可以是硬线的,也可以是联网的。每个 Feed 都应具有适当的名称,并持续显示。请务必仔细定义同义词,防止不必要的(过度)触发。 |
[item, ...] |
对象 |
可用输入。 |
key |
String |
必填。 输入的唯一键。不应在语音或响应过程中向用户呈现密钥。 |
names |
数组 |
必填。 所有可用语言的输入内容名称列表。 |
[item, ...] |
对象 |
给定可用语言的输入。 |
lang |
String |
必填。 语言代码。 |
name_synonym |
数组 |
必填。 输入的简单易懂名称(采用指定语言)。第一个同义词用于 Google 助理对用户的响应中。 |
[item, ...] |
String |
输入名称。 |
commandOnlyInputSelector |
Boolean |
(默认值: 指明设备是否支持使用单向 (true) 或双向 (false) 通信。如果设备无法响应此特征的 QUERY intent 或报告状态,请将此属性设为 true。 |
orderedInputs |
Boolean |
(默认值: 如果输出列表是有序的,则为 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 }
设备状态
具有此特征的实体可能会在 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
:目前不支持该输入。