ยินดีต้อนรับสู่ศูนย์นักพัฒนาซอฟต์แวร์ Google Home ซึ่งเป็นจุดหมายใหม่เกี่ยวกับวิธีพัฒนาการดําเนินการสําหรับบ้านอัจฉริยะ หมายเหตุ: คุณจะสร้างการดําเนินการต่างๆ ต่อไปในคอนโซลการดําเนินการ

ความตั้งใจ

Intent ของบ้านอัจฉริยะเป็นออบเจ็กต์การส่งข้อความแบบเรียบง่ายที่อธิบายว่า smart home จะทําอะไร เช่น เปิดไฟหรือแคสต์เสียงไปยังลําโพง

Intent ทั้งหมด smart home รายการอยู่ในเนมสเปซ action.devices และคุณต้องระบุการดําเนินการ เมื่อใดก็ตามที่ Google Assistant ส่งความตั้งใจในการดําเนินการ โทเค็นเพื่อการเข้าถึง OAuth 2 ของบุคคลที่สามของผู้ใช้จะถูกส่งไปที่ส่วนหัวการให้สิทธิ์

ความตั้งใจ smart home ที่รองรับมีดังนี้

ซิงค์

จุดประสงค์ของ action.devices.SYNC ใช้ในการขอรายการอุปกรณ์ smart home ที่ผู้ใช้เชื่อมต่อและพร้อมใช้งานแล้ว

เมื่อผู้ใช้ตั้งค่าอุปกรณ์กับ Google Home app (GHA) ก็จะตรวจสอบสิทธิ์ในโครงสร้างพื้นฐานของระบบคลาวด์ด้วย จากนั้น Assistant จะได้รับโทเค็น OAuth2 ในขั้นนี้ Assistant จะส่ง Intent ของ action.devices.SYNC ไปให้ครบเพื่อเรียกรายการอุปกรณ์และความสามารถของผู้ใช้เริ่มต้นจากโครงสร้างพื้นฐานของระบบคลาวด์

รูปนี้แสดงการโต้ตอบระหว่างโครงสร้างพื้นฐานของ Google และโครงสร้างพื้นฐานของพาร์ทเนอร์ จากโครงสร้างพื้นฐานของ Google จะมีรายชื่อพาร์ทเนอร์ที่พร้อมใช้งานสําหรับแอปไคลเอ็นต์ Assistant ซึ่งจะเข้าสู่โครงสร้างพื้นฐานของพาร์ทเนอร์เพื่อตรวจสอบสิทธิ์ OAuth อย่างสมบูรณ์ การตรวจสอบสิทธิ์ OAuth ทางฝั่งพาร์ทเนอร์คือ WebView การตั้งค่าพาร์ทเนอร์, WebView ของ OAuth, การตั้งค่าและข้อกําหนดที่ไม่บังคับ และบริการระบบคลาวด์ของพาร์ทเนอร์ โครงสร้างพื้นฐานของพาร์ทเนอร์ จากนั้นจะส่งข้อมูลเข้าสู่ระบบ OAuth ไปยังแอปไคลเอ็นต์ของ Assistant บริการระบบคลาวด์ของพาร์ทเนอร์จะส่งอุปกรณ์และความสามารถที่มีอยู่ไปยังบริการ Assistant จากนั้นจะจัดเก็บข้อมูลไว้ในกราฟในหน้าแรก
ภาพที่ 1: การโต้ตอบระหว่าง Google และโครงสร้างพื้นฐานของพาร์ทเนอร์

เพื่อหลีกเลี่ยงการยกเลิกการลิงก์และลิงก์บัญชีของผู้ใช้อีกครั้ง โปรดส่งการซิงค์คําขอไปยัง Assistant การดําเนินการนี้จะส่ง Intent ของ action.devices.SYNC ไปยัง Fulfillment เพื่อซิงค์รายการอุปกรณ์และความสามารถ โปรดดูการซิงค์คําขอสําหรับข้อมูลเพิ่มเติม

แผนภาพโฟลว์ของ Intent ของ SYNC
รูปที่ 2: ความตั้งใจในการซิงค์

ในระหว่างการตั้งค่าการดําเนินการตามคําสั่งซื้อในพื้นที่ แพลตฟอร์ม Home จะตรวจสอบการตอบกลับ SYNC จากการดําเนินการตามการดําเนินการบนระบบคลาวด์ของ smart home หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับวิธีแก้ไขการตอบสนองด้วย SYNC เพื่อรองรับการดําเนินการในท้องถิ่น โปรดดูอัปเดตการตอบสนอง SYNC ในการตอบสนองแบบระบบคลาวด์

QUERY

Intent ของ action.devices.QUERY จะใช้เพื่อค้นหาสถานะปัจจุบันของอุปกรณ์ smart home เครื่อง

เมื่อผู้ใช้กําลังค้นหาสถานะอุปกรณ์ เพื่อตอบคําถามอย่างเช่น Ok Google ไฟในห้องครัวมีอะไรบ้าง, Assistant ส่ง Intent ของ action.devices.QUERY ไปยัง Fulfillment

แผนภาพโฟลว์ของ Intent QUERY
รูปที่ 3: ความตั้งใจของ QUERY

คุณควรใช้สถานะรายงานเพื่อรายงานสถานะปัจจุบันของอุปกรณ์ของผู้ใช้ไปยัง Google Home Graph โดยตรงเพื่อประสบการณ์ของผู้ใช้ที่ดีที่สุด เช่น วิธีนี้จะช่วยให้ Assistant ทราบว่าผู้ใช้เปิดไฟอัจฉริยะที่มีสวิตช์ไฟจริง

การรายงานสถานะอุปกรณ์โดยใช้สถานะรายงาน
ภาพที่ 4: รายงานสถานะอุปกรณ์

ดําเนินการ

Intent ของ action.devices.EXECUTE ใช้เพื่อใช้คําสั่ง ในการดําเนินการบนอุปกรณ์ smart home

เมื่อผู้ใช้ส่งคําสั่งไปยังอุปกรณ์ที่มี Assistant สิ่งที่คุณจะได้รับจะได้รับการดําเนินการ action.devices.EXECUTE ตามการดําเนินการที่อธิบายถึงการดําเนินการและอุปกรณ์ที่จะดําเนินการ ผู้ใช้สามารถดําเนินการบางอย่างกับอุปกรณ์ได้ด้วยคําสั่งอย่างเช่น Ok Google เปิดไฟห้องนั่งเล่น

แผนภาพโฟลว์ของ Intent EXECUTE
รูปที่ 5: ความตั้งใจ

ยกเลิกการเชื่อมต่อ

มีการแสดง Intent ของ action.devices.DISCONNECT เพื่อแจ้งให้คุณทราบ เมื่อผู้ใช้ยกเลิกการลิงก์บัญชีแอปกับ Assistant หลังจากได้รับ Intent ของ action.devices.DISCONNECT แล้ว คุณไม่ควร รายงานสถานะของอุปกรณ์ของผู้ใช้รายนี้