mirror of
https://github.com/home-assistant/core.git
synced 2025-07-22 12:47:08 +00:00
Always use shared zeroconf in cast config flow (#42210)
This commit is contained in:
parent
13b2d10194
commit
57cd3058d9
@ -4,6 +4,7 @@ import functools
|
|||||||
from pychromecast.discovery import discover_chromecasts, stop_discovery
|
from pychromecast.discovery import discover_chromecasts, stop_discovery
|
||||||
|
|
||||||
from homeassistant import config_entries
|
from homeassistant import config_entries
|
||||||
|
from homeassistant.components import zeroconf
|
||||||
from homeassistant.helpers import config_entry_flow
|
from homeassistant.helpers import config_entry_flow
|
||||||
|
|
||||||
from .const import DOMAIN
|
from .const import DOMAIN
|
||||||
@ -11,12 +12,19 @@ from .helpers import ChromeCastZeroconf
|
|||||||
|
|
||||||
|
|
||||||
async def _async_has_devices(hass):
|
async def _async_has_devices(hass):
|
||||||
"""Return if there are devices that can be discovered."""
|
"""
|
||||||
|
Return if there are devices that can be discovered.
|
||||||
|
|
||||||
|
This function will be called if no devices are already found through the zeroconf
|
||||||
|
integration.
|
||||||
|
"""
|
||||||
|
|
||||||
|
zeroconf_instance = ChromeCastZeroconf.get_zeroconf()
|
||||||
|
if zeroconf_instance is None:
|
||||||
|
zeroconf_instance = await zeroconf.async_get_instance(hass)
|
||||||
|
|
||||||
casts, browser = await hass.async_add_executor_job(
|
casts, browser = await hass.async_add_executor_job(
|
||||||
functools.partial(
|
functools.partial(discover_chromecasts, zeroconf_instance=zeroconf_instance)
|
||||||
discover_chromecasts, zeroconf_instance=ChromeCastZeroconf.get_zeroconf()
|
|
||||||
)
|
|
||||||
)
|
)
|
||||||
stop_discovery(browser)
|
stop_discovery(browser)
|
||||||
return casts
|
return casts
|
||||||
|
Loading…
x
Reference in New Issue
Block a user