mirror of
https://github.com/home-assistant/core.git
synced 2025-07-23 21:27:38 +00:00
parent
6c4ba07bd1
commit
a152449b72
@ -23,11 +23,16 @@ from .const import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
def validate_input(user_input: dict[str, str | int]) -> list[dict[str, str | int]]:
|
def validate_input(
|
||||||
|
user_input: dict[str, str | int], multi: bool = False
|
||||||
|
) -> list[dict[str, str | int]]:
|
||||||
"""Handle common flow input validation."""
|
"""Handle common flow input validation."""
|
||||||
steam.api.key.set(user_input[CONF_API_KEY])
|
steam.api.key.set(user_input[CONF_API_KEY])
|
||||||
interface = steam.api.interface("ISteamUser")
|
interface = steam.api.interface("ISteamUser")
|
||||||
names = interface.GetPlayerSummaries(steamids=user_input[CONF_ACCOUNT])
|
if multi:
|
||||||
|
names = interface.GetPlayerSummaries(steamids=user_input[CONF_ACCOUNTS])
|
||||||
|
else:
|
||||||
|
names = interface.GetPlayerSummaries(steamids=user_input[CONF_ACCOUNT])
|
||||||
return names["response"]["players"]["player"]
|
return names["response"]["players"]["player"]
|
||||||
|
|
||||||
|
|
||||||
@ -75,6 +80,9 @@ class SteamFlowHandler(config_entries.ConfigFlow, domain=DOMAIN):
|
|||||||
return self.async_abort(reason="reauth_successful")
|
return self.async_abort(reason="reauth_successful")
|
||||||
self._abort_if_unique_id_configured()
|
self._abort_if_unique_id_configured()
|
||||||
if self.source == config_entries.SOURCE_IMPORT:
|
if self.source == config_entries.SOURCE_IMPORT:
|
||||||
|
res = await self.hass.async_add_executor_job(
|
||||||
|
validate_input, user_input, True
|
||||||
|
)
|
||||||
accounts_data = {
|
accounts_data = {
|
||||||
CONF_ACCOUNTS: {
|
CONF_ACCOUNTS: {
|
||||||
acc["steamid"]: acc["personaname"] for acc in res
|
acc["steamid"]: acc["personaname"] for acc in res
|
||||||
|
@ -56,7 +56,7 @@ class SteamDataUpdateCoordinator(DataUpdateCoordinator):
|
|||||||
}
|
}
|
||||||
for k in players:
|
for k in players:
|
||||||
data = self.player_interface.GetSteamLevel(steamid=players[k]["steamid"])
|
data = self.player_interface.GetSteamLevel(steamid=players[k]["steamid"])
|
||||||
players[k]["level"] = data["response"]["player_level"]
|
players[k]["level"] = data["response"].get("player_level")
|
||||||
return players
|
return players
|
||||||
|
|
||||||
async def _async_update_data(self) -> dict[str, dict[str, str | int]]:
|
async def _async_update_data(self) -> dict[str, dict[str, str | int]]:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user