智慧型住宅百葉窗指南
action.devices.types.BLINDS
- 可開啟和關閉百葉窗,並支援各種百葉窗,例如百葉窗 (朝單一方向開啟)、面板或垂直 (可向左或向右開啟),以及由上而下和由下而上 (可向上或向下開啟)。部分百葉窗的百葉片可旋轉。
這類型表示裝置會取得百葉窗圖示和一些相關同義字和別名。
裝置功能
請參閱對應特徵的說明文件,瞭解實作詳細資訊,例如服務應支援的屬性和狀態,以及如何建構 EXECUTE 和 QUERY 回應。
必要特徵
這些特徵和指令 (如果適用於您的裝置) 是必要的。如果裝置不支援這些特徵,請在 QUERY 或 EXECUTE 回應中輸入 functionNotSupported
的錯誤代碼。詳情請參閱「錯誤和例外狀況」一文。
建議特徵
如果這些特徵適用於您的裝置,建議您使用這些特徵。不過,您可以自由混搭所有可用的特徵,以便配合現有產品功能。
品質規定
- 延遲時間:必須小於或等於 2500 毫秒。
- 可靠度:必須大於或等於 97%。
裝置範例:簡易百葉窗
本節包含意圖酬載資料範例,代表根據上述裝置類型和特徵的常見「百葉窗」。如果您在實作中新增或移除特徵,請據此修改回應,以反映這些變更。
在由上往下、由下往上的百葉窗中,UP
方向會將百葉窗的底部升高,DOWN
方向則會將百葉窗的頂部降低。圖 1 顯示由上而下、由下而上的百葉窗範例,其中 UP
方向會將百葉窗的底部提高 50%,DOWN
方向則會將百葉窗的頂部降低 30%。
![](https://developers.home.google.com/static/cloud-to-cloud/images/smarthome-top-down-bottom-up-blinds.png?authuser=5&hl=zh-tw)
SYNC 回應範例
{ "requestId": "6894439706274654512", "inputs": [ { "intent": "action.devices.SYNC" } ] }
{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.BLINDS", "traits": [ "action.devices.traits.OpenClose" ], "name": { "name": "Simple blinds" }, "willReportState": true, "attributes": { "openDirection": [ "UP", "DOWN" ] }, "deviceInfo": { "manufacturer": "smart-home-inc", "model": "hs1234", "hwVersion": "3.2", "swVersion": "11.4" } } ] } }
範例 QUERY 回應
{ "requestId": "6894439706274654514", "inputs": [ { "intent": "action.devices.QUERY", "payload": { "devices": [ { "id": "123" } ] } } ] }
{ "requestId": "6894439706274654514", "payload": { "devices": { "123": { "status": "SUCCESS", "online": true, "openState": [ { "openPercent": 30, "openDirection": "DOWN" }, { "openPercent": 50, "openDirection": "UP" } ] } } } }
EXECUTE 指令範例
OpenClose
如要進一步瞭解指令參數,請參閱
action.devices.traits.OpenClose
參考資料。
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.OpenClose", "params": { "openPercent": 10, "openDirection": "DOWN" } } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "openState": [ { "openPercent": 10, "openDirection": "DOWN" }, { "openPercent": 50, "openDirection": "UP" } ] } } ] } }