Warn if interface_addr remains in Sonos configuration (#52652)

This commit is contained in:
jjlawren
2021-07-08 02:15:56 -05:00
committed by Franck Nijhof
parent 8173dd06fe
commit b9827a5b2e

View File

@@ -52,14 +52,17 @@ CONFIG_SCHEMA = vol.Schema(
{ {
DOMAIN: vol.Schema( DOMAIN: vol.Schema(
{ {
MP_DOMAIN: vol.Schema( MP_DOMAIN: vol.All(
{ cv.deprecated(CONF_INTERFACE_ADDR),
vol.Optional(CONF_ADVERTISE_ADDR): cv.string, vol.Schema(
vol.Optional(CONF_INTERFACE_ADDR): cv.string, {
vol.Optional(CONF_HOSTS): vol.All( vol.Optional(CONF_ADVERTISE_ADDR): cv.string,
cv.ensure_list_csv, [cv.string] vol.Optional(CONF_INTERFACE_ADDR): cv.string,
), vol.Optional(CONF_HOSTS): vol.All(
} cv.ensure_list_csv, [cv.string]
),
}
),
) )
} }
) )
@@ -126,6 +129,13 @@ async def async_setup_entry( # noqa: C901
if advertise_addr: if advertise_addr:
pysonos.config.EVENT_ADVERTISE_IP = advertise_addr pysonos.config.EVENT_ADVERTISE_IP = advertise_addr
if deprecated_address := config.get(CONF_INTERFACE_ADDR):
_LOGGER.warning(
"'%s' is deprecated, enable %s in the Network integration (https://www.home-assistant.io/integrations/network/)",
CONF_INTERFACE_ADDR,
deprecated_address,
)
async def _async_stop_event_listener(event: Event) -> None: async def _async_stop_event_listener(event: Event) -> None:
await asyncio.gather( await asyncio.gather(
*[speaker.async_unsubscribe() for speaker in data.discovered.values()], *[speaker.async_unsubscribe() for speaker in data.discovered.values()],