ก่อนเริ่มใช้ Automation API คุณควรออกแบบการทำงานอัตโนมัติ
กำหนดพารามิเตอร์ต่อไปนี้สำหรับการทำงานอัตโนมัติแต่ละรายการ
- สถานการณ์ที่ควรแนะนำการทำงานอัตโนมัติให้แก่ผู้ใช้ ตัวอย่างเช่น หากผู้ใช้เพิ่งเพิ่มหลอดไฟใหม่ 3 ดวงในบ้าน ผู้ใช้อาจสนใจการทำงานอัตโนมัติที่ปรับแต่งมาเพื่อควบคุมหลอดไฟโดยเฉพาะ
- ประเภทอุปกรณ์ที่จำเป็นสำหรับการทำงานอัตโนมัติ ตัวอย่างเช่น หากผู้ใช้เพิ่งเพิ่มหลอดไฟใหม่ 3 ดวงในบ้าน ผู้ใช้อาจสนใจการทำงานอัตโนมัติที่ปรับแต่งมาเพื่อควบคุมหลอดไฟโดยเฉพาะ ตัวอย่างประเภทอุปกรณ์หลอดไฟ ได้แก่
OnOffLightDevice,ColorTemperatureLightDevice,DimmableLightDeviceหรือExtendedColorLightDevice - แอตทริบิวต์และคำสั่งลักษณะใดที่จำเป็นสำหรับการทำงานอัตโนมัติ และAPI การทำงานอัตโนมัติใน Android รองรับหรือไม่
- ลักษณะที่ควรเปิดใช้งานการทำงานอัตโนมัติเป็นเงื่อนไขเริ่มต้น เราจะพูดถึงเงื่อนไขเริ่มต้นในองค์ประกอบของการทำงานอัตโนมัติใน Android
- เงื่อนไขเพิ่มเติมที่กำหนดว่าการทำงานอัตโนมัติควรทำงานจริงหรือไม่ และควรดำเนินการใด
- ขั้นตอนการดำเนินการสำหรับการทำงานอัตโนมัติ ควรดำเนินการตามลำดับหรือพร้อมกัน คุณต้องการเส้นทางตรรกะหลายเส้นทางไหม
เมื่อออกแบบ คุณอาจต้องสร้างแผนภาพขั้นตอนการทำงานอัตโนมัติทีละโหนด โดยมีตรรกะที่จำเป็นในแต่ละขั้นตอน
เมื่อออกแบบการทำงานอัตโนมัติแล้ว ให้ใช้ DSL ของการทำงานอัตโนมัติเพื่อสร้างการทำงานอัตโนมัติ การทำงานอัตโนมัติที่คุณสร้างขึ้นเป็น "เทมเพลต" โดยพื้นฐาน ซึ่งบ้านและอุปกรณ์ทั้งหมดในนั้นเป็นตัวยึดตำแหน่ง และจะป้อนข้อมูลบ้านและอุปกรณ์ที่เฉพาะเจาะจงของผู้ใช้แต่ละรายเมื่อผู้ใช้ "นำ" การทำงานอัตโนมัติไปใช้เอง
ต่อไปนี้คือการทำงานอัตโนมัติประเภทต่างๆ ที่แอปสามารถสร้างได้โดยใช้ Home API ดูข้อความที่ตัดตอนมาของโค้ดที่เกี่ยวข้องกับตัวอย่างเหล่านี้ได้ที่หน้าสร้างการทำงานอัตโนมัติ
การทำงานอัตโนมัติแบบง่าย
สมมติว่าคุณต้องเขียนแอปที่สร้างการทำงานอัตโนมัติซึ่งจะยกม่านขึ้นตอน 8:00 น. ในการดำเนินการนี้ แอปต้องมีรายการม่าน (อุปกรณ์ที่มีประเภทอุปกรณ์ WindowCoveringDevice) ที่อยู่ในบ้านซึ่งรองรับการทำงานอัตโนมัติ โดย Discovery API จะเป็นผู้ให้ข้อมูลนี้
สำหรับการทำงานอัตโนมัติที่ต้องทำงานในเวลาที่กำหนด คุณต้องตรวจสอบด้วยว่าผู้ใช้ได้กำหนดที่อยู่สำหรับบ้านที่เลือกไว้ (ระหว่างการสร้างบ้านหรือในGoogle Home app (GHA)) ไม่เช่นนั้นการทำงานอัตโนมัติจะไม่ทราบเขตเวลาที่จะทำงาน Discovery API จะช่วยคุณระบุได้ว่ามีการกำหนดที่อยู่ให้กับบ้านหรือไม่
ดังนั้นขั้นตอนการดำเนินการจะมีลักษณะดังนี้
- รวบรวมรายการอุปกรณ์
WindowCoveringDeviceโดยใช้ Discovery API - หากไม่มีการป้อนที่อยู่ ให้แจ้งผู้ใช้ว่าต้องระบุที่อยู่ (เช่น ใน GHA) และหยุดการดำเนินการ
- หรือกำหนดการทำงานอัตโนมัติโดยทำดังนี้
- เริ่มการทำงานอัตโนมัติตอน 8:00 น.
- สำหรับม่านแต่ละอัน ให้เรียกใช้คำสั่ง
upOrOpenของลักษณะWindowCovering
การทำงานอัตโนมัติที่ซับซ้อน
ลองนึกภาพแอปที่สร้างการทำงานอัตโนมัติซึ่งจะทริกเกอร์ไฟกะพริบเมื่อตรวจพบการเคลื่อนไหว
งานแรกๆ ในการติดตั้งใช้งานแอปนี้คือการค้นหาว่ามีหลอดไฟใดบ้างที่พร้อมใช้งานในบ้านของผู้ใช้โดยใช้ Discovery API เมื่อมีข้อมูลนี้ แอปของคุณจะแสดงหลอดไฟที่พร้อมใช้งานและอาจอนุญาตให้ผู้ใช้เลือกหลอดไฟที่ต้องการให้กะพริบได้
ขั้นตอนการดำเนินการมีดังนี้
- ใช้ Discovery API เพื่อรวบรวมรายการอุปกรณ์หลอดไฟที่อยู่ในบ้าน ซึ่งจะเป็นอุปกรณ์ที่มีประเภทอุปกรณ์เป็น
OnOffLightDevice,ColorTemperatureLightDevice,DimmableLightDeviceหรือExtendedColorLightDevice - ระบุวิธีเลือกไฟที่กะพริบ ซึ่งอาจทำผ่านแผงการตั้งค่าที่กำหนดเอง
- กำหนดการทำงานอัตโนมัติ ดังนี้
- เริ่มการทำงานอัตโนมัติเมื่อมีคนออกจากหรือมาถึงสถานที่ โดยตรวจสอบ
AreaPresenceState - หาก
presenceStateบ่งชี้ว่ามีคนอยู่ในอาคาร ให้กะพริบไฟที่เลือกไว้
- เริ่มการทำงานอัตโนมัติเมื่อมีคนออกจากหรือมาถึงสถานที่ โดยตรวจสอบ
การทำงานอัตโนมัติทั่วไป
ตัวอย่างการทำงานอัตโนมัติที่ซับซ้อนมากขึ้นคือการทำงานอัตโนมัติที่แนะนำผู้ใช้ตลอดการสร้างการทำงานอัตโนมัติแบบปลายเปิด โดยอิงตามอุปกรณ์บางส่วนหรือทั้งหมดที่มีในบ้าน
การทำงานอัตโนมัติอาจแจ้งให้ผู้ใช้เลือกบ้านก่อน
จากนั้นการทำงานอัตโนมัติจะแสดงห้องทั้งหมดในบ้านในมุมมองเค้าร่างที่ขยายได้ ซึ่งการขยายห้องจะแสดงอุปกรณ์ในห้องนั้น การขยายอุปกรณ์เพิ่มเติมจะแสดงรายการเงื่อนไขเริ่มต้นและคำสั่งที่อุปกรณ์นั้นรองรับ
ผู้ใช้สามารถเลือกอุปกรณ์ เงื่อนไขเริ่มต้น และคำสั่งที่ต้องการใช้ และการทำงานอัตโนมัติจะแนะนำผู้ใช้ตลอดขั้นตอนการสร้างการทำงานอัตโนมัติ
เมื่อผู้ใช้เลือกและตัดสินใจขั้นสุดท้ายทั้งหมดแล้ว ระบบอัตโนมัติจะสร้างการทำงานอัตโนมัติและบันทึกไว้ในโครงสร้างที่ผู้ใช้เลือก
ในระดับสูง การทำงานอัตโนมัติดังกล่าวจะต้องรวบรวมข้อมูลหลายชุดเกี่ยวกับบ้านของผู้ใช้โดยใช้ Structure API สำหรับ Android, Device API สำหรับ Android และ Discovery API
| API | ข้อมูล |
|---|---|
| Structure API |
|
| Device API |
|
| Discovery API |
|