27 lines
714 B
Python
27 lines
714 B
Python
"""Config flow for Zerproc."""
|
|
import logging
|
|
|
|
import pyzerproc
|
|
|
|
from homeassistant import config_entries
|
|
from homeassistant.helpers import config_entry_flow
|
|
|
|
from .const import DOMAIN
|
|
|
|
_LOGGER = logging.getLogger(__name__)
|
|
|
|
|
|
async def _async_has_devices(hass) -> bool:
|
|
"""Return if there are devices that can be discovered."""
|
|
try:
|
|
devices = await hass.async_add_executor_job(pyzerproc.discover)
|
|
return len(devices) > 0
|
|
except pyzerproc.ZerprocException:
|
|
_LOGGER.error("Unable to discover nearby Zerproc devices", exc_info=True)
|
|
return False
|
|
|
|
|
|
config_entry_flow.register_discovery_flow(
|
|
DOMAIN, "Zerproc", _async_has_devices, config_entries.CONN_CLASS_LOCAL_POLL
|
|
)
|