智慧住宅意圖是簡單的訊息物件,用於說明要執行的 Cloud-to-cloud 整合作業,例如開啟燈或將音訊投放至揚聲器。
所有 smart home 意圖都包含在 action.devices
命名空間中,您必須為這些意圖提供執行要求。每當 Google Assistant 將意圖傳送至執行作業時,使用者的第三方 OAuth 2 存取權杖就會傳送至授權標頭。
以下是支援的 smart home 意圖:
同步處理
action.devices.SYNC
意圖用於要求使用者已連線且可供使用的 smart home 裝置清單。
使用者透過 Google Home app (GHA) 設定裝置時,也會進行雲端基礎架構驗證。接著,Assistant 會收到 OAuth2 權杖。此時,Assistant 會將 action.devices.SYNC
意圖傳送至您的服務,從雲端基礎架構中擷取使用者裝置和功能的初始清單。

為避免取消連結使用者帳戶再重新連結,您可以將要求同步處理作業傳送至 Assistant。這會將 action.devices.SYNC
意圖傳送至執行服務,以同步處理裝置和功能清單。詳情請參閱「實作要求同步處理」。

在本機出貨設定期間,本機 Home 平台會檢查 smart home Action 雲端出貨服務的 SYNC
回應。如要進一步瞭解如何修改 SYNC
回應以支援本機執行要求,請參閱「在雲端執行要求中更新 SYNC 回應」。
QUERY
action.devices.QUERY
意圖用於查詢 smart home 裝置的目前狀態。
當使用者查詢裝置狀態時,以便回答類似「Hey Google,廚房有哪些燈亮?」這類問題,Assistant 會將 action.devices.QUERY
意圖傳送至你的服務。

為了提供最佳使用者體驗,您應實作回報狀態,以便主動將使用者裝置的目前狀態直接回報給 Google Home Graph。舉例來說,這可讓 Assistant 瞭解使用者是否透過實體燈具開關開啟智慧燈具。

執行
action.devices.EXECUTE
意圖用於提供要在 smart home 裝置上執行的指令。
當使用者透過 Assistant 將指令傳送至裝置時,您的服務供應商會收到 action.devices.EXECUTE
意圖,其中會說明動作和要執行動作的裝置。使用者可以透過「Ok Google,打開客廳燈」這類指令,在裝置上執行動作。

取消連結
當使用者取消連結應用程式帳戶與 Assistant 時,系統會觸發 action.devices.DISCONNECT
意圖,通知您這項操作。收到 action.devices.DISCONNECT
意圖後,您不應回報此使用者裝置的狀態。