Skip to content

Commit

Permalink
fix: add forecast to weather entity
Browse files Browse the repository at this point in the history
  • Loading branch information
chilikla authored Nov 27, 2024
1 parent 549d31f commit 7d5f83e
Showing 1 changed file with 22 additions and 0 deletions.
22 changes: 22 additions & 0 deletions custom_components/yerushamayim/weather.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@
from .const import DOMAIN
from .data_coordinator import YerushamayimDataCoordinator

from datetime import datetime

async def async_setup_platform(
hass: HomeAssistant,
config: ConfigType,
Expand Down Expand Up @@ -47,6 +49,7 @@ def __init__(self, coordinator: YerushamayimDataCoordinator):
self._attr_unique_id = f"{DOMAIN}_weather"
self._attr_name = "Yerushamayim Weather"
self._attr_native_temperature_unit = UnitOfTemperature.CELSIUS
self._attr_supported_features = WeatherEntityFeature.FORECAST_DAILY

@property
def native_temperature(self) -> float | None:
Expand Down Expand Up @@ -110,4 +113,23 @@ def wind_bearing(self) -> int | None:
try:
return self.coordinator.data.wind["wind_direction"]
except (ValueError, KeyError, TypeError):
return None

async def async_forecast_daily(self) -> list[Forecast] | None:
"""Return the daily forecast."""
try:
forecasts: list[Forecast] = []

forecast = {
"datetime": datetime.now().date().isoformat()
"condition": self.coordinator.data.status.get("condition"),
"native_temperature": float(self.coordinator.data.temperature["temperature"]),
"native_precipitation": float(self.coordinator.data.rain["precipitation"])ת
"precipitation_probability": int(self.coordinator.data.rain["precipitation_probability"])
}

forecasts.append(forecast)
return forecasts

except Exception:
return None

0 comments on commit 7d5f83e

Please sign in to comment.