New apps Added
This commit is contained in:
@@ -0,0 +1,56 @@
|
||||
"""Home Assistant environment context reader adapter."""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
from typing import Any
|
||||
|
||||
from homeassistant.core import HomeAssistant
|
||||
|
||||
from ...domain.interfaces import IContextReader
|
||||
|
||||
|
||||
class HAContextReader(IContextReader):
|
||||
"""Exposes HA context and sensor metadata for historical data adapters."""
|
||||
|
||||
def __init__(
|
||||
self,
|
||||
hass: HomeAssistant,
|
||||
outdoor_temp_entity_id: str | None = None,
|
||||
humidity_in_entity_id: str | None = None,
|
||||
humidity_out_entity_id: str | None = None,
|
||||
cloud_cover_entity_id: str | None = None,
|
||||
) -> None:
|
||||
"""Initialize the context reader.
|
||||
|
||||
Args:
|
||||
hass: Home Assistant instance
|
||||
outdoor_temp_entity_id: Outdoor temperature sensor (optional)
|
||||
humidity_in_entity_id: Indoor humidity sensor (optional)
|
||||
humidity_out_entity_id: Outdoor humidity sensor (optional)
|
||||
cloud_cover_entity_id: Cloud coverage sensor (optional)
|
||||
"""
|
||||
self._hass = hass
|
||||
self._outdoor_temp_entity_id = outdoor_temp_entity_id
|
||||
self._humidity_in_entity_id = humidity_in_entity_id
|
||||
self._humidity_out_entity_id = humidity_out_entity_id
|
||||
self._cloud_cover_entity_id = cloud_cover_entity_id
|
||||
|
||||
def get_hass(self) -> Any:
|
||||
"""Return the Home Assistant instance for adapters."""
|
||||
return self._hass
|
||||
|
||||
def get_humidity_in_entity_id(self) -> str | None:
|
||||
"""Return the indoor humidity sensor entity id (optional)."""
|
||||
return self._humidity_in_entity_id
|
||||
|
||||
def get_humidity_out_entity_id(self) -> str | None:
|
||||
"""Return the outdoor humidity sensor entity id (optional)."""
|
||||
return self._humidity_out_entity_id
|
||||
|
||||
def get_outdoor_temp_entity_id(self) -> str | None:
|
||||
"""Return the outdoor temperature sensor entity id (optional)."""
|
||||
return self._outdoor_temp_entity_id
|
||||
|
||||
def get_cloud_cover_entity_id(self) -> str | None:
|
||||
"""Return the cloud coverage sensor entity id (optional)."""
|
||||
return self._cloud_cover_entity_id
|
||||
Reference in New Issue
Block a user