สคีมาลักษณะการทำอาหารของ Smart Home
action.devices.traits.Cook
- ลักษณะนี้เป็นของอุปกรณ์ที่สามารถทำอาหารตามการตั้งค่าอาหารล่วงหน้าต่างๆ และโหมดการทำอาหารที่รองรับ
ตัวอย่างประเภทอุปกรณ์เหล่านี้ ได้แก่ Multicooker, Pressure cooker, Blender และ Microwave คำสั่งทำอาหารอาจรวมจำนวนและชื่ออาหาร เช่น "ข้าวกล้อง 2 ถ้วย" โดยที่ "ข้าวกล้อง" เป็นค่าอาหารที่ตั้งไว้ล่วงหน้าสำหรับอุปกรณ์
แต่ลักษณะนี้ใช้ไม่ได้กับเวลาในการปรุงอาหารหรืออุณหภูมิในการปรุงอาหาร ดูข้อมูลเพิ่มเติมได้ที่ Timer และ TemperatureControl
ATTRIBUTES ของอุปกรณ์
อุปกรณ์ที่มีลักษณะเช่นนี้อาจรายงานแอตทริบิวต์ต่อไปนี้ซึ่งเป็นส่วนหนึ่งของการดำเนินการ SYNC
ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการ Intent SYNC
ได้ที่Fulfillment Intent
Attributes | ประเภท | คำอธิบาย |
---|---|---|
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
ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการ Intent QUERY
ได้ที่Fulfillment Intent
รัฐ | ประเภท | คำอธิบาย |
---|---|---|
currentCookingMode |
String |
ต้องระบุ อธิบายโหมดการทำอาหารในปัจจุบันที่ตั้งค่าไว้ในอุปกรณ์จากรายการแอตทริบิวต์ |
currentFoodPreset |
String |
อธิบายการปรุงอาหารปัจจุบันในอุปกรณ์จากรายการแอตทริบิวต์ |
currentFoodQuantity |
Number |
กำหนดปริมาณการปรุงอาหารปัจจุบันที่เชื่อมโยงกับ |
currentFoodUnit |
String |
หน่วยที่เชื่อมโยงกับ |
ตัวอย่าง
เตาอบของฉันกำลังทำอาหารอยู่ไหม
{ "currentCookingMode": "BAKE" }
ตอนนี้หม้อหุงข้าวทำอะไร
{ "currentCookingMode": "COOK", "currentFoodPreset": "brown_rice", "currentFoodQuantity": 2, "currentFoodUnit": "CUPS" }
COMMANDS ของอุปกรณ์
อุปกรณ์ที่มีลักษณะเช่นนี้อาจตอบสนองต่อคำสั่งต่อไปนี้โดยเป็นส่วนหนึ่งของการดำเนินการ EXECUTE
ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการ Intent EXECUTE
ได้ที่Fulfillment Intent
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
- ผู้ใช้ส่งคำขอตั้งค่าอาหารล่วงหน้าที่อุปกรณ์ไม่รองรับ