1 """Comelit integration."""
3 from aiocomelit.const
import BRIDGE
9 from .const
import DEFAULT_PORT, DOMAIN
10 from .coordinator
import ComelitBaseCoordinator, ComelitSerialBridge, ComelitVedoSystem
21 Platform.ALARM_CONTROL_PANEL,
22 Platform.BINARY_SENSOR,
28 """Set up Comelit platform."""
30 coordinator: ComelitBaseCoordinator
31 if entry.data.get(CONF_TYPE, BRIDGE) == BRIDGE:
34 entry.data[CONF_HOST],
35 entry.data.get(CONF_PORT, DEFAULT_PORT),
38 platforms = BRIDGE_PLATFORMS
42 entry.data[CONF_HOST],
43 entry.data.get(CONF_PORT, DEFAULT_PORT),
46 platforms = VEDO_PLATFORMS
48 await coordinator.async_config_entry_first_refresh()
50 hass.data.setdefault(DOMAIN, {})[entry.entry_id] = coordinator
52 await hass.config_entries.async_forward_entry_setups(entry, platforms)
58 """Unload a config entry."""
60 if entry.data.get(CONF_TYPE, BRIDGE) == BRIDGE:
61 platforms = BRIDGE_PLATFORMS
63 platforms = VEDO_PLATFORMS
65 coordinator: ComelitBaseCoordinator = hass.data[DOMAIN][entry.entry_id]
66 if unload_ok := await hass.config_entries.async_unload_platforms(entry, platforms):
67 await coordinator.api.logout()
68 await coordinator.api.close()
69 hass.data[DOMAIN].pop(entry.entry_id)
bool async_setup_entry(HomeAssistant hass, ConfigEntry entry)
bool async_unload_entry(HomeAssistant hass, ConfigEntry entry)