מדריך לחיישנים לבית חכם
action.devices.types.SENSOR – חיישן יחיד יכול לשמש למספר פונקציות, כמו מעקב אחרי הטמפרטורה והלחות. החיישנים יכולים לדווח על מדידות כמותיות (למשל, רמות של פחמן חד-חמצני ועשן שנמדדות בחלקים למיליון) או על מדידות איכותיות (למשל, האם איכות האוויר בריאה או לא בריאה).
הסוג הזה מציין שהמכשיר מקבל את סמל החיישן וכמה מילים נרדפות וכינויים שקשורים אליו.
יכולות המכשיר
בתיעוד של התכונה המתאימה מפורטים פרטים על ההטמעה, כמו מאפיינים ומצבים שהשירות שלכם צריך לתמוך בהם, ואיך ליצור תגובות מסוג EXECUTE ו-QUERY.
תכונות מומלצות
התכונות האלה מומלצות, אם הן רלוונטיות למכשיר שלכם. עם זאת, אתם יכולים לשלב בין כל התכונות הזמינות כדי להתאים אותן בצורה הטובה ביותר לפונקציונליות הקיימת של המוצר.
יכול להיות שחיישנים ישתמשו גם בתכונות אחרות שקשורות לנתונים שהם יכולים לדווח עליהם, כמו:
- HumiditySetting
- OpenClose
- TemperatureControl – לשימוש בטמפרטורות שאינן קשורות לאקלים (מים, טמפרטורת פני השטח, פנים המכשיר).
- TemperatureSetting – משמש לטמפרטורות של בקרת האקלים (אוויר הסביבה).
דוגמה למכשיר: חיישן פשוט
בקטע הזה מופיעות דוגמאות למטענים ייעודיים (payloads) של כוונות שמייצגים 'חיישן' נפוץ, על סמך סוג המכשיר והמאפיינים שצוינו למעלה. אם מוסיפים או מסירים מאפיינים בהטמעה, צריך לשנות את התגובות בהתאם כדי לשקף את השינויים האלה.
דוגמה לתגובת סנכרון
{
"requestId": "6894439706274654512",
"inputs": [
{
"intent": "action.devices.SYNC"
}
]
}{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.SENSOR", "traits": [ "action.devices.traits.EnergyStorage", "action.devices.traits.OccupancySensing", "action.devices.traits.SensorState" ], "name": { "name": "Simple sensor" }, "willReportState": true, "attributes": { "sensorStatesSupported": [ { "name": "AirQuality", "descriptiveCapabilities": { "availableStates": [ "healthy", "moderate", "unhealthy", "very unhealthy" ] } } ], "queryOnlyEnergyStorage": true, "occupancySensorConfiguration": [ { "occupancySensorType": "PIR", "occupiedToUnoccupiedDelaySec": 10, "unoccupiedToOccupiedDelaySec": 10, "unoccupiedToOccupiedEventThreshold": 2 } ] }, "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, "currentSensorStateData": [ { "name": "AirQuality", "currentSensorState": "healthy" } ], "descriptiveCapacityRemaining": "HIGH", "capacityRemaining": [ { "unit": "PERCENTAGE", "rawValue": 90 } ], "occupancy": "OCCUPIED" } } } }