Translate timeouts

This commit is contained in:
Adrian Kumpf
2019-12-07 15:39:03 +01:00
parent 725d589f3f
commit 9d99c147e4
5 changed files with 36 additions and 21 deletions
+17 -18
View File
@@ -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")
+6 -1
View File
@@ -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 ""
+6 -1
View File
@@ -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 ""
+6 -1
View File
@@ -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 ""