From 984fb12fa4cdd1146659224cd64aa0079e0f04f8 Mon Sep 17 00:00:00 2001 From: Alan Tse Date: Mon, 29 Mar 2021 21:50:41 -0700 Subject: [PATCH] Create new websession if more than one entry in Tesla (#47886) * Create new websession if more than one entry closes #47506 * Remove extraneous count * Always create new session * Update docs --- homeassistant/components/tesla/__init__.py | 3 ++- homeassistant/components/tesla/config_flow.py | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/homeassistant/components/tesla/__init__.py b/homeassistant/components/tesla/__init__.py index b090e1c96ef..84d92f189b9 100644 --- a/homeassistant/components/tesla/__init__.py +++ b/homeassistant/components/tesla/__init__.py @@ -133,7 +133,8 @@ async def async_setup_entry(hass, config_entry): """Set up Tesla as config entry.""" hass.data.setdefault(DOMAIN, {}) config = config_entry.data - websession = aiohttp_client.async_get_clientsession(hass) + # Because users can have multiple accounts, we always create a new session so they have separate cookies + websession = aiohttp_client.async_create_clientsession(hass) email = config_entry.title if email in hass.data[DOMAIN] and CONF_SCAN_INTERVAL in hass.data[DOMAIN][email]: scan_interval = hass.data[DOMAIN][email][CONF_SCAN_INTERVAL] diff --git a/homeassistant/components/tesla/config_flow.py b/homeassistant/components/tesla/config_flow.py index 5aab5ea3c59..7b3060c5072 100644 --- a/homeassistant/components/tesla/config_flow.py +++ b/homeassistant/components/tesla/config_flow.py @@ -147,7 +147,8 @@ async def validate_input(hass: core.HomeAssistant, data): """ config = {} - websession = aiohttp_client.async_get_clientsession(hass) + websession = aiohttp_client.async_create_clientsession(hass) + try: controller = TeslaAPI( websession,