mirror of
https://github.com/teslamate-org/teslamate.git
synced 2026-01-24 21:06:08 +08:00
Translate timeouts
This commit is contained in:
+17
-18
@@ -118,24 +118,8 @@ defmodule TeslaMate.Api do
|
||||
|
||||
{:ok, vehicles} ->
|
||||
vehicles =
|
||||
Task.async_stream(
|
||||
vehicles,
|
||||
fn
|
||||
%TeslaApi.Vehicle{state: "online", id: id} = vehicle ->
|
||||
case call(state.deps.tesla_api_vehicle, :get_with_state, [state.auth, id]) do
|
||||
{:ok, %TeslaApi.Vehicle{} = vehicle} ->
|
||||
vehicle
|
||||
|
||||
{:error, reason} ->
|
||||
Logger.warn("TeslaApi.Error / #{inspect(reason, pretty: true)}")
|
||||
vehicle
|
||||
end
|
||||
|
||||
%TeslaApi.Vehicle{} = vehicle ->
|
||||
vehicle
|
||||
end,
|
||||
timeout: 32_500
|
||||
)
|
||||
vehicles
|
||||
|> Task.async_stream(&preload_vehicle(&1, state), timeout: 32_500)
|
||||
|> Enum.map(fn {:ok, vehicle} -> vehicle end)
|
||||
|
||||
{{:ok, vehicles}, state}
|
||||
@@ -224,4 +208,19 @@ defmodule TeslaMate.Api do
|
||||
|
||||
{:noreply, state}
|
||||
end
|
||||
|
||||
## Private
|
||||
|
||||
defp preload_vehicle(%TeslaApi.Vehicle{state: "online", id: id} = vehicle, state) do
|
||||
case call(state.deps.tesla_api_vehicle, :get_with_state, [state.auth, id]) do
|
||||
{:ok, %TeslaApi.Vehicle{} = vehicle} ->
|
||||
vehicle
|
||||
|
||||
{:error, reason} ->
|
||||
Logger.warn("TeslaApi.Error / #{inspect(reason, pretty: true)}")
|
||||
vehicle
|
||||
end
|
||||
end
|
||||
|
||||
defp preload_vehicle(%TeslaApi.Vehicle{} = vehicle, _state), do: vehicle
|
||||
end
|
||||
|
||||
@@ -100,6 +100,7 @@ defmodule TeslaMateWeb.CarLive.Summary do
|
||||
defp translate_error(:user_present), do: gettext("Driver present")
|
||||
defp translate_error(:update_in_progress), do: gettext("Update in progress")
|
||||
defp translate_error(:unknown), do: gettext("An error occurred")
|
||||
defp translate_error(:timeout), do: gettext("Timeout")
|
||||
|
||||
defp translate_error(:sleep_mode_disabled_at_location),
|
||||
do: gettext("Sleep Mode is disabled at current location")
|
||||
|
||||
@@ -433,7 +433,7 @@ msgid "Sleep Mode Enabled"
|
||||
msgstr "Schlafmodus aktiviert"
|
||||
|
||||
#, elixir-format
|
||||
#: lib/teslamate_web/live/car_live/summary.ex:105
|
||||
#: lib/teslamate_web/live/car_live/summary.ex:106
|
||||
msgid "Sleep Mode is disabled at current location"
|
||||
msgstr "Schlafmodus ist am aktuellen Ort deaktiviert"
|
||||
|
||||
@@ -441,3 +441,8 @@ msgstr "Schlafmodus ist am aktuellen Ort deaktiviert"
|
||||
#: lib/teslamate_web/live/car_live/summary.ex:102
|
||||
msgid "An error occurred"
|
||||
msgstr "Ein Fehler ist aufgetreten"
|
||||
|
||||
#, elixir-format
|
||||
#: lib/teslamate_web/live/car_live/summary.ex:103
|
||||
msgid "Timeout"
|
||||
msgstr ""
|
||||
|
||||
@@ -432,7 +432,7 @@ msgid "Sleep Mode Enabled"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-format
|
||||
#: lib/teslamate_web/live/car_live/summary.ex:105
|
||||
#: lib/teslamate_web/live/car_live/summary.ex:106
|
||||
msgid "Sleep Mode is disabled at current location"
|
||||
msgstr ""
|
||||
|
||||
@@ -440,3 +440,8 @@ msgstr ""
|
||||
#: lib/teslamate_web/live/car_live/summary.ex:102
|
||||
msgid "An error occurred"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-format
|
||||
#: lib/teslamate_web/live/car_live/summary.ex:103
|
||||
msgid "Timeout"
|
||||
msgstr ""
|
||||
|
||||
@@ -433,7 +433,7 @@ msgid "Sleep Mode Enabled"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-format
|
||||
#: lib/teslamate_web/live/car_live/summary.ex:105
|
||||
#: lib/teslamate_web/live/car_live/summary.ex:106
|
||||
msgid "Sleep Mode is disabled at current location"
|
||||
msgstr ""
|
||||
|
||||
@@ -441,3 +441,8 @@ msgstr ""
|
||||
#: lib/teslamate_web/live/car_live/summary.ex:102
|
||||
msgid "An error occurred"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-format
|
||||
#: lib/teslamate_web/live/car_live/summary.ex:103
|
||||
msgid "Timeout"
|
||||
msgstr ""
|
||||
|
||||
Reference in New Issue
Block a user