智能家居烹饪特征架构
action.devices.traits.Cook - 此特征属于可根据各种食材预设和支持的烹饪模式烹饪食物的设备。
这些设备类型的示例包括 Multicooker、Pressure cooker、Blender 和 Microwave。烹饪指令可以包含食物的数量和名称,例如“两杯糙米”,其中“糙米”是设备的食物预设。
此特征不处理烹饪时间或烹饪温度。 如需了解详情,请参阅 Timer 和 TemperatureControl。
设备属性
具有此特征的设备可能会在 SYNC 操作中报告以下属性。如需详细了解如何处理 SYNC intent,请参阅意图实现。
| 属性 | 类型 | 说明 |
|---|---|---|
supportedCookingModes |
数组 |
必填。 相应设备支持的烹饪模式。 |
[item, ...] |
String |
烹饪模式。 支持的值:
|
foodPresets |
数组 |
针对某些类型食物的预设。 |
[item, ...] |
对象 |
食物预设。 |
food_preset_name |
String |
必填。 食品预设的内部名称,将用于命令和状态。此名称可能不太方便用户理解,并且会以所有语言显示。 |
supported_units |
数组 |
必填。 包含设备针对特定食物支持的所有单位。 |
[item, ...] |
String |
支持的单位。 支持的值:
|
food_synonyms |
数组 |
必填。 预设中每种受支持语言的食物名称同义词。 |
[item, ...] |
对象 |
食物名称。为了提供语言回退,至少需要一个 |
synonym |
数组 |
必填。 预设的同义词,应同时包含单数和复数形式(如果适用)。 |
[item, ...] |
String |
预设同义词名称。为了提供语言回退,至少需要一个 |
lang |
String |
必填。 语言代码 (ISO 639-1)。请参阅支持的语言。 |
示例
仅具有一种烹饪模式且没有预设的设备。
{
"supportedCookingModes": [
"BAKE"
]
}具有多种烹饪模式和食材预设的设备。
{
"supportedCookingModes": [
"COOK",
"WARM"
],
"foodPresets": [
{
"food_preset_name": "white_rice",
"supported_units": [
"CUPS"
],
"food_synonyms": [
{
"synonym": [
"White Rice",
"Rice"
],
"lang": "en"
}
]
},
{
"food_preset_name": "brown_rice",
"supported_units": [
"CUPS"
],
"food_synonyms": [
{
"synonym": [
"Brown Rice"
],
"lang": "en"
}
]
}
]
}设备状态
具有此特征的实体可能会在 QUERY 操作中报告以下状态。如需详细了解如何处理 QUERY intent,请参阅意图实现。
| 州 | 类型 | 说明 |
|---|---|---|
currentCookingMode |
String |
必填。 描述设备上设置的当前烹饪模式,来自 |
currentFoodPreset |
String |
设备中当前烹饪的食物的 |
currentFoodQuantity |
编号 |
定义与 |
currentFoodUnit |
String |
与 |
示例
烤箱在烹饪吗?
{
"currentCookingMode": "BAKE"
}我的电饭锅现在在煮什么?
{
"currentCookingMode": "COOK",
"currentFoodPreset": "brown_rice",
"currentFoodQuantity": 2,
"currentFoodUnit": "CUPS"
}设备命令
具有此特征的设备可能会响应以下命令,作为 EXECUTE 操作的一部分。如需详细了解如何处理 EXECUTE intent,请参阅意图实现。
action.devices.commands.Cook
开始或停止烹饪。
参数
| 参数 | 类型 | 说明 |
|---|---|---|
start |
布尔值 |
必填。 True 表示开始烹饪,false 表示停止当前烹饪模式。 |
cookingMode |
String |
从 |
foodPreset |
String |
用户通过 |
quantity |
编号 |
用户请求的食物数量。 |
unit |
String |
与 |
示例
开始在烤箱中烘焙。
{
"command": "action.devices.commands.Cook",
"params": {
"start": true,
"cookingMode": "BAKE"
}
}停止在我的烤箱中烘烤。
{
"command": "action.devices.commands.Cook",
"params": {
"start": false,
"cookingMode": "BAKE"
}
}开始用电饭煲煮 2 杯白米饭。
{
"command": "action.devices.commands.Cook",
"params": {
"start": true,
"cookingMode": "COOK",
"foodPreset": "white_rice",
"quantity": 2,
"unit": "CUPS"
}
}设备错误
查看错误和异常的完整列表。deviceDoorOpen- 设备的门是打开的。deviceLidOpen- 设备的盖子处于打开状态。fractionalAmountNotSupported- 用户为相应食物预设请求了小数数量,但该设备不支持。amountAboveLimit- 用户请求的数量超过了上限。unknownFoodPreset- 用户请求的食物预设不受设备支持。