ความตั้งใจ

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

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

ต่อไปนี้คือ Intent smart home ที่รองรับ

ซิงค์

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

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

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

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

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

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

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 การดำเนินการตามคำสั่งซื้อจะได้รับ Intent ของ action.devices.EXECUTE ซึ่งอธิบายถึงการดำเนินการและอุปกรณ์ที่จะดำเนินการ ผู้ใช้สั่งการในอุปกรณ์ด้วยคำสั่ง เช่น Ok Google เปิดไฟห้องนั่งเล่นได้

แผนภาพโฟลว์ของ Intent คำสั่ง EXECUTE
ภาพที่ 5: แสดงเจตนา

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

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