สคีมาลักษณะการทำอาหารของสมาร์ทโฮม
action.devices.traits.Cook - ลักษณะนี้เป็นของอุปกรณ์ที่ปรุงอาหารได้ตามการตั้งค่าอาหารล่วงหน้าต่างๆ และโหมดการทำอาหารที่รองรับ
ตัวอย่างอุปกรณ์ประเภทนี้ ได้แก่ Multicooker, Pressure cooker, Blender และ Microwave คำสั่งทำอาหารอาจรวมถึงปริมาณและชื่อของ อาหาร เช่น "ข้าวกล้อง 2 ถ้วย" โดยที่ "ข้าวกล้อง" เป็นค่าที่กำหนดล่วงหน้าสำหรับอาหารในอุปกรณ์
คุณลักษณะนี้ไม่ได้จัดการเวลาหรืออุณหภูมิในการปรุงอาหาร ดูข้อมูลเพิ่มเติมได้ที่ Timer และ TemperatureControl
แอตทริบิวต์อุปกรณ์
อุปกรณ์ที่มีลักษณะนี้อาจรายงานแอตทริบิวต์ต่อไปนี้
เป็นส่วนหนึ่งของการดำเนินการ SYNC ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการSYNCเจตนาได้ที่การดำเนินการตามเจตนา
| Attributes | ประเภท | คำอธิบาย |
|---|---|---|
supportedCookingModes |
อาร์เรย์ |
ต้องระบุ โหมดการทำอาหารที่อุปกรณ์นี้รองรับ |
[item, ...] |
String |
โหมดทำอาหาร ค่าที่รองรับมีดังนี้
|
foodPresets |
อาร์เรย์ |
ค่าที่กำหนดล่วงหน้าสำหรับอาหารบางประเภท |
[item, ...] |
ออบเจ็กต์ |
ค่าที่กำหนดล่วงหน้าสำหรับอาหาร |
food_preset_name |
String |
ต้องระบุ ชื่อภายในของค่าที่กำหนดล่วงหน้าสำหรับอาหาร ซึ่งจะใช้ในคำสั่งและสถานะ ชื่อนี้อาจไม่เป็นมิตรต่อผู้ใช้และจะใช้ร่วมกันในทุกภาษา |
supported_units |
อาร์เรย์ |
ต้องระบุ มีหน่วยทั้งหมดที่อุปกรณ์รองรับสำหรับอาหารที่เฉพาะเจาะจง |
[item, ...] |
String |
หน่วยที่รองรับ ค่าที่รองรับมีดังนี้
|
food_synonyms |
อาร์เรย์ |
ต้องระบุ คำพ้องของชื่ออาหารสำหรับค่าที่กำหนดล่วงหน้าในแต่ละภาษาที่รองรับ |
[item, ...] |
ออบเจ็กต์ |
ชื่ออาหาร ต้องระบุอย่างน้อย 1 รายการที่มีค่า |
synonym |
อาร์เรย์ |
ต้องระบุ คำพ้องความหมายของค่าที่กำหนดล่วงหน้าควรมีทั้งรูปแบบเอกพจน์และพหูพจน์ หากมี |
[item, ...] |
String |
ชื่อคำพ้องความหมายที่กำหนดล่วงหน้า ต้องระบุอย่างน้อย 1 รายการที่มีค่า |
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เจตนาได้ที่การดำเนินการตามเจตนา
| รัฐ | ประเภท | คำอธิบาย |
|---|---|---|
currentCookingMode |
String |
ต้องระบุ อธิบายโหมดการทำอาหารปัจจุบันที่ตั้งค่าไว้ในอุปกรณ์จากแอตทริบิวต์ |
currentFoodPreset |
String |
|
currentFoodQuantity |
Number |
กำหนดปริมาณอาหารที่ปรุงในปัจจุบันซึ่งเชื่อมโยงกับ |
currentFoodUnit |
String |
หน่วยที่เชื่อมโยงกับ |
ตัวอย่าง
เตาอบของฉันกำลังทำอาหารอยู่ไหม
{
"currentCookingMode": "BAKE"
}ตอนนี้หม้อหุงข้าวของฉันกำลังทำอะไรอยู่
{
"currentCookingMode": "COOK",
"currentFoodPreset": "brown_rice",
"currentFoodQuantity": 2,
"currentFoodUnit": "CUPS"
}คำสั่งของอุปกรณ์
อุปกรณ์ที่มีลักษณะนี้อาจตอบสนองต่อคำสั่งต่อไปนี้
ซึ่งเป็นส่วนหนึ่งของการดำเนินการ EXECUTE ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการEXECUTEเจตนาได้ที่การดำเนินการตามเจตนา
action.devices.commands.Cook
เริ่มหรือหยุดทำอาหาร
พารามิเตอร์
| พารามิเตอร์ | ประเภท | คำอธิบาย |
|---|---|---|
start |
บูลีน |
ต้องระบุ จริงเพื่อเริ่มทำอาหาร เท็จเพื่อหยุดโหมดการทำอาหารปัจจุบัน |
cookingMode |
String |
โหมดการทำอาหารที่ขอสำหรับอุปกรณ์จากแอตทริบิวต์ |
foodPreset |
String |
ชื่อค่าที่ตั้งล่วงหน้าของอาหารที่ผู้ใช้ขอจากแอตทริบิวต์ |
quantity |
Number |
ปริมาณอาหารที่ผู้ใช้ขอ |
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- ผู้ใช้ขอการตั้งค่าอาหารล่วงหน้าที่อุปกรณ์ไม่รองรับ