From a0ef3ad21b88b2c4c692682afaf64b493d96f682 Mon Sep 17 00:00:00 2001 From: Joakim Plate Date: Fri, 5 Aug 2022 16:06:19 +0200 Subject: [PATCH] Use stored philips_js system data on start (#75981) Co-authored-by: Martin Hjelmare --- homeassistant/components/philips_js/__init__.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/homeassistant/components/philips_js/__init__.py b/homeassistant/components/philips_js/__init__.py index 9e574e69f90..24b3f9a91e0 100644 --- a/homeassistant/components/philips_js/__init__.py +++ b/homeassistant/components/philips_js/__init__.py @@ -38,15 +38,22 @@ LOGGER = logging.getLogger(__name__) async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: """Set up Philips TV from a config entry.""" + system: SystemType | None = entry.data.get(CONF_SYSTEM) tvapi = PhilipsTV( entry.data[CONF_HOST], entry.data[CONF_API_VERSION], username=entry.data.get(CONF_USERNAME), password=entry.data.get(CONF_PASSWORD), + system=system, ) coordinator = PhilipsTVDataUpdateCoordinator(hass, tvapi, entry.options) await coordinator.async_refresh() + + if (actual_system := tvapi.system) and actual_system != system: + data = {**entry.data, CONF_SYSTEM: actual_system} + hass.config_entries.async_update_entry(entry, data=data) + hass.data.setdefault(DOMAIN, {}) hass.data[DOMAIN][entry.entry_id] = coordinator