HA-008 HA-009: add discovery and history pipeline
Closes #17 Closes #18
This commit is contained in:
42
docs/ha_data.md
Normal file
42
docs/ha_data.md
Normal file
@@ -0,0 +1,42 @@
|
||||
# Home-Assistant-Datenpipeline
|
||||
|
||||
SillyHome Next trennt aktuelle Entity-Metadaten, Discovery und historische
|
||||
Messwerte. Dadurch gelangen nur klassifizierte, geeignete Daten in spätere
|
||||
Trainings- und Erklärungsprozesse.
|
||||
|
||||
## Entity Discovery
|
||||
|
||||
`GET /v1/discovery` klassifiziert Home-Assistant-Entities in:
|
||||
|
||||
- `measurement`: numerische Messsensoren, für Training geeignet
|
||||
- `binary_context`: binäre Kontextsensoren wie Bewegung oder Anwesenheit
|
||||
- `context`: Personen-, Wetter- und Standortkontext
|
||||
- `actuator`: mögliche Automationsziele, nicht als Trainingssensor verwendet
|
||||
- `unsupported`: noch nicht klassifizierte Entity-Typen
|
||||
|
||||
Optionale Query-Parameter:
|
||||
|
||||
- `domain=sensor` kann mehrfach angegeben werden
|
||||
- `learnable=true|false` filtert nach Trainingsrelevanz
|
||||
|
||||
## Historische Daten
|
||||
|
||||
Historische Zustände werden über Home Assistants
|
||||
`/api/history/period/<start>`-Schnittstelle geladen. Abfragen verlangen:
|
||||
|
||||
- mindestens eine Entity-ID, maximal 100
|
||||
- zeitzonenbehaftete Start- und Endzeit
|
||||
- ein Enddatum nach dem Startdatum
|
||||
- maximal 31 Tage pro Abfrage
|
||||
|
||||
Die Normalisierung übernimmt nur endliche numerische Zustände. `unknown`,
|
||||
`unavailable`, nichtnumerische Werte, `NaN` und unendliche Werte werden nicht
|
||||
als Trainingsdaten verwendet. Ergebnisse werden je Entity chronologisch
|
||||
sortiert.
|
||||
|
||||
## Datenschutz und Betrieb
|
||||
|
||||
Die Daten bleiben lokal. Home-Assistant-Tokens gehören ausschließlich in die
|
||||
Umgebungskonfiguration und dürfen nicht protokolliert oder versioniert werden.
|
||||
Die API sollte nur lokal oder hinter einem authentifizierenden Reverse Proxy
|
||||
erreichbar sein.
|
||||
Reference in New Issue
Block a user