מדריך לקומקום בית חכם
action.devices.types.KETTLE
– קומקומים הם מכשירים ומרגיעים מים. אינטראקציות עם קומקומים עשויות לכלול הפעלה והשבתה של הקומקומים, שינוי טמפרטורת היעד ואולי גם שינוי של הגדרות שונות של מצב.
הסוג הזה מצביע על כך שהמכשיר מקבל את סמל הקומקום מילים נרדפות וכינויים.
לקומקומים יש דקדוק לפי סוג לaction.devices.traits.OnOff
.
אם המכשיר תומך ב-OnOff
, מבשלים מעט מים
תשלח פקודת action.devices.commands.OnOff
.
יכולות המכשיר
אפשר לעיין במסמכי התיעוד המתאימים לגבי התכונה פרטי ההטמעה, כמו מאפיינים ומצבים שבהם השירות צריך לתמוך, ואיך לבנות תגובות EXECUTE ו-QUERY.
התכונות הנדרשות
התכונות והפקודות האלה נדרשים, אם הן רלוונטיות
במכשיר. אם המכשיר שלכם לא תומך בתכונות האלה, הזינו את קוד השגיאה של
functionNotSupported
בתגובה QUERY או EXECUTE. צפייה
שגיאות וחריגים לקבלת מידע נוסף.
תכונות מומלצות
מומלץ להשתמש בתכונות האלה, אם הן רלוונטיות למכשיר שלכם. עם זאת, אתם יכולים לשלב בין כל התכונות הזמינות כדי להתאים אותן בצורה הטובה ביותר הפונקציונליות של המוצר.
דרישות איכות
- זמן אחזור: חייב להיות פחות מ-800 אלפיות שנייה או שווה לו.
- אמינות: חייבת להיות יותר מ-97% או שווה לו.
מכשיר לדוגמה: קומקום פשוט
הקטע הזה מכיל דוגמאות למטענים ייעודיים (payloads) של Intent שמייצגים 'קטל' נפוץ. על סמך סוג המכשיר והתכונות שמפורטות למעלה. אם מוסיפים או מסירים תכונות בהטמעה, תשנה את התשובות שלכם בהתאם כך שישקפו את השינויים האלה.
דוגמה של תגובת SYNC
{ "requestId": "6894439706274654512", "inputs": [ { "intent": "action.devices.SYNC" } ] }
{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.KETTLE", "traits": [ "action.devices.traits.TemperatureControl", "action.devices.traits.OnOff" ], "name": { "name": "Simple kettle" }, "willReportState": true, "attributes": { "temperatureRange": { "minThresholdCelsius": 0, "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": true, "temperatureSetpointCelsius": 100 } } } }
פקודות EXECUTE לדוגמה
SetTemperature
לפרטים נוספים על הפרמטרים של הפקודה:
אפשר לקרוא את
action.devices.traits.TemperatureControl
הפניה.
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.SetTemperature", "params": { "temperature": 85 } } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "temperatureSetpointCelsius": 85 } } ] } }
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 } } ] } }