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