راهنمای حسگر خانه هوشمند
action.devices.types.SENSOR - یک حسگر واحد میتواند چندین عملکرد را انجام دهد، مانند نظارت بر دما و رطوبت. حسگرها ممکن است هر دو اندازهگیری کمی - مثلاً مونوکسید کربن و سطح دود که به صورت قسمت در میلیون اندازهگیری میشوند - و کیفی (مانند سالم یا ناسالم بودن کیفیت هوا) را گزارش دهند.
این نوع نشان میدهد که دستگاه نماد حسگر و برخی مترادفها و نامهای مستعار مرتبط را دریافت میکند.
قابلیتهای دستگاه
برای جزئیات پیادهسازی، مانند ویژگیها و حالتهایی که سرویس شما باید پشتیبانی کند، و نحوه ساخت پاسخهای EXECUTE و QUERY، به مستندات مربوط به ویژگیها مراجعه کنید.
ویژگیهای توصیهشده
این ویژگیها، در صورت وجود، برای دستگاه شما توصیه میشوند. با این حال، شما میتوانید از بین تمام ویژگیهای موجود، آنها را با هم ترکیب و تطبیق دهید تا به بهترین شکل با عملکرد محصول فعلی شما مطابقت داشته باشد.
حسگرها همچنین ممکن است از ویژگیهای دیگری که دادههایی را که میتوانند گزارش دهند پوشش میدهند، استفاده کنند، مانند:
- HumiditySetting
- OpenClose
- TemperatureControl - برای دماهای غیر آب و هوایی (آب، دمای سطح، دمای داخلی دستگاه) استفاده میشود.
- TemperatureSetting - برای دمای آب و هوا (هوای محیط) استفاده کنید.
دستگاه نمونه: حسگر ساده
این بخش شامل نمونههایی از payloadهای intent است که نشاندهنده یک "سنسور" رایج بر اساس نوع دستگاه و ویژگیهای بالا هستند. اگر ویژگیهایی را در پیادهسازی خود اضافه یا حذف میکنید، پاسخهای خود را متناسب با آن تغییرات تغییر دهید.
نمونه پاسخ SYNC
{
"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" } } } }