Tesla OAuth: redirect URI je /t-auth (oprava všude + Caddy rewrite)
V dev portálu je registrováno https://ems.vojacek.eu/t-auth — docs i setup skript diktovaly /tesla/callback (mismatch = invalid_auth_code / chybné návody). Caddy blok nově servíruje callback stránku na /t-auth (rewrite). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,5 +1,10 @@
|
||||
# Tesla Fleet API — napojení EMS (čtení SoC vozidla)
|
||||
|
||||
> **REDIRECT URI registrovaná v dev portálu: `https://ems.vojacek.eu/t-auth`**
|
||||
> (musí se znak po znaku shodovat v authorize URL, v token výměně i v portálu).
|
||||
> Stránka s kódem se servíruje na /t-auth (Caddy rewrite); kód jde vždy
|
||||
> zkopírovat i z adresního řádku (`?code=...`).
|
||||
|
||||
Cíl: po příjezdu EV přečíst skutečné SoC → `ev_session.energy_needed_wh`
|
||||
přesně místo defaultu. Doména `ems.vojacek.eu` slouží JEN jako veřejná
|
||||
vizitka pro Tesla (cert + public key + jednorázový OAuth callback) — EMS
|
||||
@@ -14,14 +19,14 @@ bash /opt/ems-deploy/app/deploy/tesla/setup_tesla_domain.sh
|
||||
|
||||
Veřejné je pouze:
|
||||
- `https://ems.vojacek.eu/.well-known/appspecific/com.tesla.3p.public-key.pem`
|
||||
- `https://ems.vojacek.eu/tesla/callback` (statická stránka zobrazí `?code=`)
|
||||
- `https://ems.vojacek.eu/t-auth` (statická stránka zobrazí `?code=`)
|
||||
- vše ostatní → 404; certifikát řeší Caddy (Let's Encrypt) automaticky.
|
||||
|
||||
## 2. Tesla developer portál (developer.tesla.com)
|
||||
|
||||
Vytvořit aplikaci:
|
||||
- **Allowed Origin:** `https://ems.vojacek.eu`
|
||||
- **Allowed Redirect URI:** `https://ems.vojacek.eu/tesla/callback`
|
||||
- **Allowed Redirect URI:** `https://ems.vojacek.eu/t-auth`
|
||||
- **Scopes:** `openid offline_access vehicle_device_data` (čtení SoC stačí;
|
||||
`vehicle_charging_cmds` až kdybychom chtěli vozidlu poroučet my — teď řídí
|
||||
wallbox, ne auto)
|
||||
@@ -49,7 +54,7 @@ curl -s -X POST https://fleet-api.prd.eu.vn.cloud.tesla.com/api/1/partner_accoun
|
||||
```
|
||||
https://fleet-auth.prd.vn.cloud.tesla.com/oauth2/v3/authorize?
|
||||
response_type=code&client_id=$CLIENT_ID&
|
||||
redirect_uri=https://ems.vojacek.eu/tesla/callback&
|
||||
redirect_uri=https://ems.vojacek.eu/t-auth&
|
||||
scope=openid%20offline_access%20vehicle_device_data&state=ems
|
||||
```
|
||||
Přihlásíš se Tesla účtem → redirect na callback stránku → zkopíruješ `code` →
|
||||
@@ -59,7 +64,7 @@ výměna za tokeny:
|
||||
curl -s https://fleet-auth.prd.vn.cloud.tesla.com/oauth2/v3/token \
|
||||
-d grant_type=authorization_code -d client_id=$CLIENT_ID \
|
||||
-d client_secret=$CLIENT_SECRET -d code=$CODE \
|
||||
-d redirect_uri=https://ems.vojacek.eu/tesla/callback
|
||||
-d redirect_uri=https://ems.vojacek.eu/t-auth
|
||||
# → access_token (krátký) + refresh_token (ULOŽIT — viz krok 5)
|
||||
```
|
||||
|
||||
|
||||
Reference in New Issue
Block a user