智能家居模式特征架构
action.devices.traits.Modes
- 此特征涵盖设备的所有可用模式和特定于模式的设置。
此特征属于任意数量为“n-way”的设备其中的 模式和设置是任意的,并且因设备或设备类型而异。 每种模式都有多种可能的设置,但一次只能选择一种;烘干机不能 采用“柔和”的措辞“正常”和“重型”模式。一项设置 属于 Toggles 特征。
例如,洗衣机可以设置洗衣机的洗衣量和温度。 这两种模式都属于模式,因为它们相互独立, 一次只能处于一种状态。用户可以设置如下模式: 将洗衣机温度设为 冷启动。
有些模式是“有序”的还可以上/下调整 增加/减少措辞。例如,加载大小(小、中、大)和 所有温度都有明确的有序排列(请注意,温度并非 具有数值目标的温控器(如其他设备),但负载类型 (柔韧性、普通、羊毛等)。
此特征涵盖用户可以设置的一种或多种单个模式。一般来说,
这些模式应该用于未与其他设备解除关联的功能
行为关联的行为(例如开启或关闭设备本身)
使用更具体的 trait(例如,thermostatMode
trait TemperatureSetting)。
设备属性
具有此特征的设备可能会报告以下内容
作为 SYNC
操作的一部分。学习内容
有关处理 SYNC
intent 的更多信息,请参阅
intent 执行方式。
属性 | 类型 | 说明 |
---|---|---|
availableModes |
数组 |
必填。 可用模式列表。 |
[item, ...] |
对象 |
可用模式。 |
name |
String |
必填。 模式的内部名称,将在命令和状态中使用。此名称可能不方便用户使用,并将在所有语言之间共享。 |
name_values |
数组 |
必填。 该模式在每种受支持语言的同义词。 |
[item, ...] |
对象 |
模式在给定语言中的同义词。 |
name_synonym |
数组 |
必填。 模式的同义词。此列表中的第一个字符串将用作相应语言的关卡规范名称。 |
[item, ...] |
String |
同义词名称。 |
lang |
String |
必填。 语言代码 (ISO 639-1)。查看支持的语言。 |
settings |
数组 |
必填。 此模式支持的设置。 |
[item, ...] |
对象 |
支持的设置。 至少需要 2 项。 |
setting_name |
String |
必填。 模式设置的内部名称,将在命令和状态中使用。此名称可能不方便用户使用,并将在所有语言之间共享。 |
setting_values |
数组 |
必填。 相应设置在每种受支持语言的同义词。 |
[item, ...] |
对象 |
相应设置在给定语言的同义词。 |
setting_synonym |
数组 |
必填。 设置的同义词。此列表中的第一个字符串将用作相应语言的关卡规范名称。 |
[item, ...] |
String |
同义词名称。 |
lang |
String |
必填。 语言代码 (ISO 639-1)。查看支持的语言。 |
ordered |
布尔值 |
(默认值: 如果设为 true,系统会按照设置数组的顺序(递增)应用增加/递减逻辑的其他语法。 |
commandOnlyModes |
布尔值 |
(默认值: 指示设备支持使用单向 (true) 还是双向 (false) 通信。如果设备无法响应此特征的 QUERY intent 或报告状态,请将此属性设置为 true。 |
queryOnlyModes |
布尔值 |
(默认值: 如果设备支持仅查询执行,则为必需。此属性指示设备是否只能查询状态信息,且无法控制。 |
示例
具有多种模式和设置的设备。
{ "availableModes": [ { "name": "load_mode", "name_values": [ { "name_synonym": [ "Load", "Size", "Load size" ], "lang": "en" } ], "settings": [ { "setting_name": "small_load", "setting_values": [ { "setting_synonym": [ "Small", "Half" ], "lang": "en" } ] }, { "setting_name": "medium_load", "setting_values": [ { "setting_synonym": [ "Medium", "Normal" ], "lang": "en" } ] }, { "setting_name": "large_load", "setting_values": [ { "setting_synonym": [ "Large", "Full" ], "lang": "en" } ] } ], "ordered": true }, { "name": "temp_mode", "name_values": [ { "name_synonym": [ "Temperature", "Temp" ], "lang": "en" } ], "settings": [ { "setting_name": "hot_temp", "setting_values": [ { "setting_synonym": [ "Hot", "White" ], "lang": "en" } ] }, { "setting_name": "warm_temp", "setting_values": [ { "setting_synonym": [ "Warm", "Color" ], "lang": "en" } ] }, { "setting_name": "cold_temp", "setting_values": [ { "setting_synonym": [ "Cold", "Delicate" ], "lang": "en" } ] } ], "ordered": false } ] }
设备具有仅执行命令模式。
{ "availableModes": [ { "name": "light_mode", "name_values": [ { "name_synonym": [ "Light", "Lighting" ], "lang": "en" } ], "settings": [ { "setting_name": "day_light", "setting_values": [ { "setting_synonym": [ "Day", "Bright" ], "lang": "en" } ] }, { "setting_name": "night_light", "setting_values": [ { "setting_synonym": [ "Night", "Dark" ], "lang": "en" } ] }, { "setting_name": "reading_light", "setting_values": [ { "setting_synonym": [ "Reading", "Ambiant" ], "lang": "en" } ] } ], "ordered": false } ], "commandOnlyModes": true, "queryOnlyModes": false }
设备状态
具有此特征的实体可能会报告以下内容
QUERY
操作包含的指定状态。学习内容
有关处理 QUERY
intent 的更多信息,请参阅
intent 执行方式。
州 | 类型 | 说明 |
---|---|---|
currentModeSettings |
对象 |
必填。 以设备的模式 |
<string> |
String |
目前气温为 |
示例
设备处于哪种模式?
{ "currentModeSettings": { "load_mode": "small_load", "temp_mode": "cold_temp" } }
设备命令
具有此特征的设备可能会响应以下内容
作为 EXECUTE
操作的一部分。学习内容
有关处理 EXECUTE
intent 的更多信息,请参阅
intent 执行方式。
action.devices.commands.SetModes
更新模式设置。
参数
参数 | 类型 | 说明 |
---|---|---|
updateModeSettings |
对象 |
必填。 键值对,其中设备的模式 |
<string> |
String |
新建 |
示例
设置为大负载。
{ "command": "action.devices.commands.SetModes", "params": { "updateModeSettings": { "load_mode": "large_load" } } }
示例话语
<ph type="x-smartling-placeholder">de-DE
- Stelle den Staubsauger auf Ruhemodus
en-US
- set the vacuum to energy saver mode
es-ES
- pon la lavadora en modo frío
fr-FR
- mets l'aspirateur en silencieux
hi-IN
- वैक्यूम पर कार्पेट मोड लगाएं
it-IT
- imposta l'aspirapolvere su silenzioso
ja-JP
- 掃除機 を 静音 モードに設定して
ko-KR
- 세탁기 세탁량 많음 으로 설정해
pt-BR
- acionar a função autolimpeza do aspirador
- ligar o modo de aquecimento