智能家居 AppSelector trait 架构
action.devices.traits.AppSelector
- 此 trait 适用于能够在应用之间切换的设备。
设备属性
具有此 trait 的设备可能会在 SYNC
操作中报告以下属性。如需详细了解如何处理 SYNC
intent,请参阅intent 执行方式。
属性 | 类型 | 说明 |
---|---|---|
availableApplications |
数组 |
必填。 应用列表。每个应用在每种支持的语言中都有一个或多个同义词。系统会在响应中使用第一个同义词。 |
[item, ...] |
对象 |
此设备用户可以与之互动的应用。 |
key |
String |
必填。 应用的唯一键,不会在语音或响应中向用户公开。 |
names |
数组 |
必填。 每个应用的名称及其特定于语言的同义词。 |
[item, ...] |
对象 |
应用同义词。 |
name_synonym |
数组 |
必填。 给定语言的应用名称的易懂同义词。系统会在响应中使用第一个同义词。 |
[item, ...] |
String |
应用名称。 |
lang |
String |
必填。 语言代码。 |
示例
安装了 YouTube 应用的设备
{
"availableApplications": [
{
"key": "youtube",
"names": [
{
"name_synonym": [
"YouTube",
"YouTube US"
],
"lang": "en"
},
{
"name_synonym": [
"YouTube",
"YouTube DE"
],
"lang": "de"
}
]
}
]
}
设备状态
具有此 trait 的实体可能会在 QUERY
操作期间报告以下状态。如需详细了解如何处理 QUERY
intent,请参阅intent 执行方式。
州 | 类型 | 说明 |
---|---|---|
currentApplication |
String |
必填。 当前在前台处于活动状态的应用的键值。 |
示例
设备上当前有 YouTube 应用在前台运行。
{
"currentApplication": "YouTube"
}
设备命令
具有此 trait 的设备可能会在 EXECUTE
操作期间响应以下命令。如需详细了解如何处理 EXECUTE
intent,请参阅intent 执行方式。
action.devices.commands.appInstall
安装给定应用。
参数
参数 | 类型 | 说明 |
---|---|---|
newApplication |
String |
要安装的应用的键。 |
newApplicationName |
String |
要安装的应用的名称。 |
示例
通过密钥安装 YouTube 应用
{
"command": "action.devices.commands.appInstall",
"params": {
"newApplication": "YouTube"
}
}
按名称安装 YouTube 应用
{
"command": "action.devices.commands.appInstall",
"params": {
"newApplicationName": "YouTube US"
}
}
action.devices.commands.appSearch
搜索给定应用。
参数
参数 | 类型 | 说明 |
---|---|---|
newApplication |
String |
要搜索的应用的键。 |
newApplicationName |
String |
要搜索的应用的名称。 |
示例
按键搜索 YouTube 应用
{
"command": "action.devices.commands.appSearch",
"params": {
"newApplication": "YouTube"
}
}
按名称搜索 YouTube 应用
{
"command": "action.devices.commands.appSearch",
"params": {
"newApplicationName": "YouTube US"
}
}
action.devices.commands.appSelect
选择给定应用。
参数
参数 | 类型 | 说明 |
---|---|---|
newApplication |
String |
要选择的应用的键。 |
newApplicationName |
String |
要选择的应用的名称。 |
示例
按键选择 YouTube 应用
{
"command": "action.devices.commands.appSelect",
"params": {
"newApplication": "YouTube"
}
}
按名称选择 YouTube 应用
{
"command": "action.devices.commands.appSelect",
"params": {
"newApplicationName": "YouTube US"
}
}
示例话语
- Öffne Netflix auf dem Fernseher .
- begin using YouTube app on the smart TV
- pon netflix en la tele del salón
- Mets Netflix sur la télé .
- टीवी पर नेटफ्लिक्स ऍप लॉन्च करो
- Apri Netflix sulla televisione della mia camera .
- YouTube のアプリを テレビ でスタート
- TV 에서 유튜브 앱 열어 줘
- Start Netflix op mijn TV .
- Abra o Netflix na TV para mim.
- Abre o Youtube na televisão .
- Öppna Youtube på TV:n
设备错误
查看错误和异常的完整列表。noAvailableApp
:应用不存在或不可用。appLaunchFailed
:应用未能启动。alreadyInstalledApp
:应用已安装。