מדריך לשימוש באמבטיה חכמה
action.devices.types.BATHTUB
– אפשר למלא ולנקות אמבטיות, אולי לרמות מסוימות אם האמבטיה תומכת בכך.
הסוג הזה מציין שהמכשיר יקבל את סמל האמבטיה וחלק מהמשאבים הקשורים, כמו שמות נרדפים וכינויים.
יכולות המכשיר
פרטי ההטמעה, כמו המאפיינים והמצבים שהשירות צריך לתמוך בהם, והאופן שבו יוצרים תגובות EXECUTE ו-QUERY, מפורטים במסמכי העזרה של המאפיינים המתאימים.
מאפיינים מומלצים
מומלץ להשתמש במאפיינים האלה אם הם רלוונטיים למכשיר שלכם. עם זאת, אתם יכולים לשלב בין כל המאפיינים הזמינים כדי להתאים את התכונות האלה לפונקציונליות הקיימת של המוצר.
דרישות איכות
- זמן אחזור: חייב להיות קטן מ-800ms או שווה לו.
- אמינות: הערך חייב להיות שווה ל-97% או גדול ממנו.
מכשיר לדוגמה: אמבטיה פשוטה
בקטע הזה מופיעות דוגמאות של נתוני עומס שימושי (payload) של כוונה שמייצגים 'אמבט' נפוץ, על סמך סוג המכשיר והמאפיינים שלמעלה. אם מוסיפים או מסירים מאפיינים בהטמעה, צריך לשנות את התשובות בהתאם כדי לשקף את השינויים האלה.
דוגמה לתגובת SYNC
{ "requestId": "6894439706274654512", "inputs": [ { "intent": "action.devices.SYNC" } ] }
{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.BATHTUB", "traits": [ "action.devices.traits.Fill", "action.devices.traits.TemperatureControl", "action.devices.traits.OnOff" ], "name": { "name": "Simple bathtub" }, "willReportState": true, "attributes": { "availableFillLevels": { "levels": [ { "level_name": "half_key", "level_values": [ { "level_synonym": [ "Half", "Halfway", "One half" ], "lang": "en" } ] } ], "ordered": false }, "temperatureRange": { "minThresholdCelsius": 25, "maxThresholdCelsius": 100 }, "temperatureUnitForUX": "F" }, "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, "on": false, "currentFillLevel": "half_key", "isFilled": true, "temperatureSetpointCelsius": 30 } } } }
דוגמאות לפקודות EXECUTE
מילוי
פרטים נוספים על הפרמטרים של הפקודה זמינים במאמר העזרה של
action.devices.traits.Fill
.
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.Fill", "params": { "fill": true, "fillLevel": "half_key" } } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "on": true, "currentFillLevel": "half_key" } } ] } }
SetTemperature
פרטים נוספים על הפרמטרים של הפקודה זמינים במאמר העזרה של
action.devices.traits.TemperatureControl
.
{ "requestId": "6894439706274654520", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.SetTemperature", "params": { "temperature": 40 } } ] } ] } } ] }
{ "requestId": "6894439706274654520", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "temperatureSetpointCelsius": 40 } } ] } }
OnOff
פרטים נוספים על הפרמטרים של הפקודה זמינים במאמר העזרה של
action.devices.traits.OnOff
.
{ "requestId": "6894439706274654518", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.OnOff", "params": { "on": true } } ] } ] } } ] }
{ "requestId": "6894439706274654518", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "on": true } } ] } }