1 """Vodafone Station integration."""
7 from .const
import DOMAIN
8 from .coordinator
import VodafoneStationRouter
10 PLATFORMS = [Platform.BUTTON, Platform.DEVICE_TRACKER, Platform.SENSOR]
14 """Set up Vodafone Station platform."""
17 entry.data[CONF_HOST],
18 entry.data[CONF_USERNAME],
19 entry.data[CONF_PASSWORD],
23 await coordinator.async_config_entry_first_refresh()
25 hass.data.setdefault(DOMAIN, {})[entry.entry_id] = coordinator
27 entry.async_on_unload(entry.add_update_listener(update_listener))
29 await hass.config_entries.async_forward_entry_setups(entry, PLATFORMS)
35 """Unload a config entry."""
36 if unload_ok := await hass.config_entries.async_unload_platforms(entry, PLATFORMS):
37 coordinator: VodafoneStationRouter = hass.data[DOMAIN][entry.entry_id]
38 await coordinator.api.logout()
39 await coordinator.api.close()
40 hass.data[DOMAIN].pop(entry.entry_id)
46 """Update when config_entry options update."""
48 await hass.config_entries.async_reload(entry.entry_id)
bool async_setup_entry(HomeAssistant hass, ConfigEntry entry)
None update_listener(HomeAssistant hass, ConfigEntry entry)
bool async_unload_entry(HomeAssistant hass, ConfigEntry entry)