sensoren 2
This commit is contained in:
37
packages/home_capabilities/temp_humidity_sensor.py
Normal file
37
packages/home_capabilities/temp_humidity_sensor.py
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
"""
|
||||||
|
Temperature & Humidity Sensor Capability - temp_humidity_sensor@1.0.0
|
||||||
|
|
||||||
|
Read-only sensor for temperature and humidity measurements.
|
||||||
|
"""
|
||||||
|
|
||||||
|
from datetime import datetime
|
||||||
|
from typing import Annotated
|
||||||
|
|
||||||
|
from pydantic import BaseModel, Field
|
||||||
|
|
||||||
|
|
||||||
|
class TempHumidityState(BaseModel):
|
||||||
|
"""
|
||||||
|
State model for temperature & humidity sensors.
|
||||||
|
|
||||||
|
Required fields:
|
||||||
|
- temperature: Temperature in degrees Celsius
|
||||||
|
- humidity: Relative humidity in percent
|
||||||
|
|
||||||
|
Optional fields:
|
||||||
|
- battery: Battery level 0-100%
|
||||||
|
- linkquality: Signal quality indicator
|
||||||
|
- voltage: Battery voltage in mV
|
||||||
|
- ts: Timestamp of measurement
|
||||||
|
"""
|
||||||
|
temperature: float = Field(..., description="Temperature in degrees Celsius")
|
||||||
|
humidity: float = Field(..., description="Relative humidity in percent (0-100)")
|
||||||
|
battery: Annotated[int, Field(ge=0, le=100)] | None = None
|
||||||
|
linkquality: int | None = None
|
||||||
|
voltage: int | None = None
|
||||||
|
ts: datetime | None = None
|
||||||
|
|
||||||
|
|
||||||
|
# Capability metadata
|
||||||
|
CAP_VERSION = "temp_humidity_sensor@1.0.0"
|
||||||
|
DISPLAY_NAME = "Temperature & Humidity Sensor"
|
||||||
Reference in New Issue
Block a user