Zeitplanung und nautische Einzeltermine erweitern

This commit is contained in:
2026-09-28 14:09:31 +02:00
parent 7418941cd5
commit 236b8db0d5
8 changed files with 67 additions and 1584 deletions
@@ -18,6 +18,8 @@ from .const import (
SERVICE_POWER_OFF,
SERVICE_POWER_ON,
SERVICE_SET_NAUTICAL_SCHEDULE,
SERVICE_SET_NAUTICAL_OPEN_SCHEDULE,
SERVICE_SET_NAUTICAL_CLOSE_SCHEDULE,
SERVICE_STOP_ROOF,
)
from .coordinator import SternwarteDataUpdateCoordinator
@@ -77,6 +79,14 @@ async def _async_handle_set_nautical_schedule(hass: HomeAssistant, call: Service
await _async_call_on_all(hass, "async_set_next_nautical_schedule")
async def _async_handle_set_nautical_open_schedule(hass: HomeAssistant, call: ServiceCall) -> None:
await _async_call_on_all(hass, "async_set_next_nautical_open_schedule")
async def _async_handle_set_nautical_close_schedule(hass: HomeAssistant, call: ServiceCall) -> None:
await _async_call_on_all(hass, "async_set_next_nautical_close_schedule")
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
"""Set up Sternwarte from a config entry."""
coordinator = SternwarteDataUpdateCoordinator(hass, entry)
@@ -106,6 +116,16 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
SERVICE_SET_NAUTICAL_SCHEDULE,
partial(_async_handle_set_nautical_schedule, hass),
)
hass.services.async_register(
DOMAIN,
SERVICE_SET_NAUTICAL_OPEN_SCHEDULE,
partial(_async_handle_set_nautical_open_schedule, hass),
)
hass.services.async_register(
DOMAIN,
SERVICE_SET_NAUTICAL_CLOSE_SCHEDULE,
partial(_async_handle_set_nautical_close_schedule, hass),
)
await hass.config_entries.async_forward_entry_setups(entry, PLATFORMS)
return True
@@ -127,6 +147,8 @@ async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
SERVICE_CLEAR_OPEN_SCHEDULE,
SERVICE_CLEAR_CLOSE_SCHEDULE,
SERVICE_SET_NAUTICAL_SCHEDULE,
SERVICE_SET_NAUTICAL_OPEN_SCHEDULE,
SERVICE_SET_NAUTICAL_CLOSE_SCHEDULE,
):
if hass.services.has_service(DOMAIN, service):
hass.services.async_remove(DOMAIN, service)