mirror of
https://github.com/home-assistant/core.git
synced 2025-07-28 15:47:12 +00:00
Create stream on demand in Teslemetry (#144777)
Create stream on demand
This commit is contained in:
parent
eec617b391
commit
d4c2356c70
@ -95,13 +95,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: TeslemetryConfigEntry) -
|
|||||||
energysites: list[TeslemetryEnergyData] = []
|
energysites: list[TeslemetryEnergyData] = []
|
||||||
|
|
||||||
# Create the stream
|
# Create the stream
|
||||||
stream = TeslemetryStream(
|
stream: TeslemetryStream | None = None
|
||||||
session,
|
|
||||||
access_token,
|
|
||||||
server=f"{region.lower()}.teslemetry.com",
|
|
||||||
parse_timestamp=True,
|
|
||||||
manual=True,
|
|
||||||
)
|
|
||||||
|
|
||||||
for product in products:
|
for product in products:
|
||||||
if (
|
if (
|
||||||
@ -123,6 +117,16 @@ async def async_setup_entry(hass: HomeAssistant, entry: TeslemetryConfigEntry) -
|
|||||||
serial_number=vin,
|
serial_number=vin,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# Create stream if required
|
||||||
|
if not stream:
|
||||||
|
stream = TeslemetryStream(
|
||||||
|
session,
|
||||||
|
access_token,
|
||||||
|
server=f"{region.lower()}.teslemetry.com",
|
||||||
|
parse_timestamp=True,
|
||||||
|
manual=True,
|
||||||
|
)
|
||||||
|
|
||||||
remove_listener = stream.async_add_listener(
|
remove_listener = stream.async_add_listener(
|
||||||
create_handle_vehicle_stream(vin, coordinator),
|
create_handle_vehicle_stream(vin, coordinator),
|
||||||
{"vin": vin},
|
{"vin": vin},
|
||||||
@ -240,6 +244,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: TeslemetryConfigEntry) -
|
|||||||
entry.runtime_data = TeslemetryData(vehicles, energysites, scopes)
|
entry.runtime_data = TeslemetryData(vehicles, energysites, scopes)
|
||||||
await hass.config_entries.async_forward_entry_setups(entry, PLATFORMS)
|
await hass.config_entries.async_forward_entry_setups(entry, PLATFORMS)
|
||||||
|
|
||||||
|
if stream:
|
||||||
entry.async_create_background_task(hass, stream.listen(), "Teslemetry Stream")
|
entry.async_create_background_task(hass, stream.listen(), "Teslemetry Stream")
|
||||||
|
|
||||||
return True
|
return True
|
||||||
|
Loading…
x
Reference in New Issue
Block a user