mirror of https://github.com/home-assistant/core
23 lines
763 B
Python
23 lines
763 B
Python
"""Config flow for Gree."""
|
|
|
|
from greeclimate.discovery import Discovery
|
|
|
|
from homeassistant.components.network import async_get_ipv4_broadcast_addresses
|
|
from homeassistant.core import HomeAssistant
|
|
from homeassistant.helpers import config_entry_flow
|
|
|
|
from .const import DISCOVERY_TIMEOUT, DOMAIN
|
|
|
|
|
|
async def _async_has_devices(hass: HomeAssistant) -> bool:
|
|
"""Return if there are devices that can be discovered."""
|
|
gree_discovery = Discovery(DISCOVERY_TIMEOUT)
|
|
bcast_addr = list(await async_get_ipv4_broadcast_addresses(hass))
|
|
devices = await gree_discovery.scan(
|
|
wait_for=DISCOVERY_TIMEOUT, bcast_ifaces=bcast_addr
|
|
)
|
|
return len(devices) > 0
|
|
|
|
|
|
config_entry_flow.register_discovery_flow(DOMAIN, "Gree Climate", _async_has_devices)
|