Fix 401 on direct Fleet API calls (#4095)

* feat: endpoints by env

* fix: typo

* fix: useless env

* fix: format

* fix: distinct auth domain and url

* format

* fix: force issuer url if needed

* feat: new streaming based on vin

* fix refresh

* revert

* up

* feat: no need for access token / refresh token if the TOKEN env var is present

* feat: update login if token env var exists

* feat: add ENV var to allow insecure wss

* fix: remove TESLA_CN

* fix(naming): TESLA_API_URL to TESLA_API_DOMAIN

* feat: add an env var to allo invalid certs on WSS

* doc: add API domains env vars description

* fix: typo

* feat: add env var to change log level

* fix: APP_LOG_LEVEL

* feat: add TOKEN documention and wording

* fix: refacto insecure param

* feat: naming and doc

* fix: missing env var usage

* fix: rebound variable issuer_url

* fix: compilation warning on the issuer_url variable

* fix: format code

* fix: issuer_url assignments

* feat: customize polling intervals

* typo

* update doc

* typo

* add online interval

* add POLLING_ONLINE_INTERVAL

* format

* add minimum interval

* Add minimum on fetch parameter

* typo

* format

* respect immediate fetch, add charging interval

* add log level

* Respect log_level

* format

* use LOG_LEVEL env var to facilitate debug

* revert on log_level

* format

* typo

* format again

* revert on default error intervals

* Add a note in MD about polling settings

* not let the user set intervals via env variables shorter than our defaults

* Fix 401 on direct Fleet API

* try to fix in prod context

* log test

* up

* up

* format

* revert on log

* Update refresh.ex

---------

Co-authored-by: Julien <julien@citio.digital>
This commit is contained in:
jlestel
2024-07-27 14:06:57 +02:00
committed by GitHub
parent 23c8bccff6
commit c8fed077bb
2 changed files with 2 additions and 2 deletions

View File

@@ -6,7 +6,7 @@ defmodule TeslaApi.Auth do
@web_client_id "ownerapi"
@redirect_uri "https://auth.tesla.com/void/callback"
def web_client_id, do: System.get_env("TESLA_AUTH_CLIENT_ID") || @web_client_id
def web_client_id, do: @web_client_id
def redirect_uri, do: @redirect_uri
@default_headers [

View File

@@ -16,7 +16,7 @@ defmodule TeslaApi.Auth.Refresh do
data = %{
grant_type: "refresh_token",
scope: "openid email offline_access",
client_id: @web_client_id,
client_id: System.get_env("TESLA_AUTH_CLIENT_ID", @web_client_id),
refresh_token: auth.refresh_token
}