Skillnad API pre/post Highland?
Moderator: Redaktion
Skillnad API pre/post Highland?
Har knappat ihop en riktigt bra smart-laddning som styrs av NodeRed som jag har använt i över 4 år till Model 3 LR (2019).
Har fungerat riktigt bra hela tiden.
Nu har jag en ny Model 3 LR Highland och har upptäckt att API anrop som skriver/gör inställningar (som att starta laddning tex) inte fungerar. Enbart läsa/hämta information från bilen fungerar.
Det är samma sak ifrån Node Red, Home Assistant och tex Tibbers integration smartladdning.
Enda skillnaden jag kan hitta är att Highland har API-version 71 och min tidigare bil har API-version 67.
Nån som lyckats styra Highland ifrån 3:e parts app?
Har fungerat riktigt bra hela tiden.
Nu har jag en ny Model 3 LR Highland och har upptäckt att API anrop som skriver/gör inställningar (som att starta laddning tex) inte fungerar. Enbart läsa/hämta information från bilen fungerar.
Det är samma sak ifrån Node Red, Home Assistant och tex Tibbers integration smartladdning.
Enda skillnaden jag kan hitta är att Highland har API-version 71 och min tidigare bil har API-version 67.
Nån som lyckats styra Highland ifrån 3:e parts app?
Re: Skillnad API pre/post Highland?
Aha. Här skulle kunna förklara varför jag har problem med min Highland och Tibber/Gridio. Jag la ett inlägg om det för någon dag sedan. Tyvärr har jag inget annat vettigt att säga än att nej, det funkar riktigt dåligt med tredjepartsappar för min del också.
Tesla M3 2024 (Highland)
Re: Skillnad API pre/post Highland?
Det har inget att göra med det nya officiella APIet? Jag har fått gå över till det nya i både TeslaFi och Watch for Tesla. Man måste då logga in hos Tesla och utöver det godkänna tre olika saker som appen ska ha access till, bla möjligheten att skicka kommandon till bilen.
M3 SR+ 2021 MiC
-
- Inlägg: 1
- Blev medlem: 19 nov 2023 07:33
Re: Skillnad API pre/post Highland?
Det stämmer att API-version 71 har ändrat hur man startar laddning. Istället för att skicka ett anrop till /api/1/vehicle/command/charge_start måste du nu skicka ett anrop till /api/1/vehicle/command/start_charging.
Här är ett exempel på hur du kan ändra ditt Node-Red-flöde för att stödja API-version 71:
function startLading() {
const response = await fetch("/api/1/vehicle/command/start_charging", {
method: "POST",
headers: {
Authorization: "Bearer <ditt-token>",
},
});
if (response.status === 200) {
// Laddning startad
} else {
// Fel uppstod
}
}
Du kan också använda en annan funktion, som startCharge(), som tillhandahålls av Tesla-API-klienten för Node-Red.
function startLading() {
const api = new TeslaAPI("<ditt-token>");
api.startCharge();
}
Jag hoppas att detta hjälper!
Här är ett exempel på hur du kan ändra ditt Node-Red-flöde för att stödja API-version 71:
function startLading() {
const response = await fetch("/api/1/vehicle/command/start_charging", {
method: "POST",
headers: {
Authorization: "Bearer <ditt-token>",
},
});
if (response.status === 200) {
// Laddning startad
} else {
// Fel uppstod
}
}
Du kan också använda en annan funktion, som startCharge(), som tillhandahålls av Tesla-API-klienten för Node-Red.
function startLading() {
const api = new TeslaAPI("<ditt-token>");
api.startCharge();
}
Jag hoppas att detta hjälper!
Re: Skillnad API pre/post Highland?
Tack för svar.MiatoEleanor skrev: ↑03 jan 2024 08:52Det stämmer att API-version 71 har ändrat hur man startar laddning. Istället för att skicka ett anrop till /api/1/vehicle/command/charge_start måste du nu skicka ett anrop till /api/1/vehicle/command/start_charging.
Här är ett exempel på hur du kan ändra ditt Node-Red-flöde för att stödja API-version 71:
function startLading() {
const response = await fetch("/api/1/vehicle/command/start_charging", {
method: "POST",
headers: {
Authorization: "Bearer <ditt-token>",
},
});
if (response.status === 200) {
// Laddning startad
} else {
// Fel uppstod
}
}
Du kan också använda en annan funktion, som startCharge(), som tillhandahålls av Tesla-API-klienten för Node-Red.
function startLading() {
const api = new TeslaAPI("<ditt-token>");
api.startCharge();
}
Jag hoppas att detta hjälper!
Använder jag felaktikt command så får jag "Invalid command" och om jag använder det rätta kommandot så får jag "Forbidden". Det går som sagt att läsa alla parametrar och värden ifrån bilen men inte att anropa något som gör en "ändring" (starta laddning, tuta, blinka med ljuset etc). Hela API:et är alltså Read Only....
Det är samma ifrån Node Red, HA Tibber och Gridio. Tänte först att det var nån man måste godkänna i bilen eller i Tesla-appen att man för göra ändringan, men hittar inget sådant...
Re: Skillnad API pre/post Highland?
Tror att det som sagt kan ha att göra med Teslas nya API.Gr1pen skrev: ↑03 jan 2024 17:39Tack för svar.
Använder jag felaktikt command så får jag "Invalid command" och om jag använder det rätta kommandot så får jag "Forbidden". Det går som sagt att läsa alla parametrar och värden ifrån bilen men inte att anropa något som gör en "ändring" (starta laddning, tuta, blinka med ljuset etc). Hela API:et är alltså Read Only....
Det är samma ifrån Node Red, HA Tibber och Gridio. Tänte först att det var nån man måste godkänna i bilen eller i Tesla-appen att man för göra ändringan, men hittar inget sådant...
Detta tas upp i bla Teslamates "Issues" på GitHub: https://github.com/teslamate-org/teslamate/issues/3364
Tesla skriver själva om det här: https://github.com/teslamotors/vehicle- ... m-overview
So in order to send a command to a vehicle, a third-party application must obtain a valid OAuth token from the user, and the user must enroll the application's public key in the vehicle.
Some developers may be familiar with Tesla's Owner API. Owner API will stop working as vehicles begin requiring end-to-end command authentication.
M3 SR+ 2021 MiC
Re: Skillnad API pre/post Highland?
Jo det måste vara så. Jag fick till svar från Gridios support nu att de kommer ha support för det nya API:et troligen nästa vecka.marcusw skrev: ↑05 jan 2024 09:46
Tror att det som sagt kan ha att göra med Teslas nya API.
Detta tas upp i bla Teslamates "Issues" på GitHub: https://github.com/teslamate-org/teslamate/issues/3364
Tesla skriver själva om det här: https://github.com/teslamotors/vehicle- ... m-overview
So in order to send a command to a vehicle, a third-party application must obtain a valid OAuth token from the user, and the user must enroll the application's public key in the vehicle.Some developers may be familiar with Tesla's Owner API. Owner API will stop working as vehicles begin requiring end-to-end command authentication.
Får använda den sålänge för laddningen i väntan på att Node-Red också förhoppningsvis får stöd för det nya API:et.
Re: Skillnad API pre/post Highland?
Har haft lite korrespondans med Gridio och tillsammans testat och nu har de fått till smartladdningen i deras app mot Teslas nya API.
Antar att de publicerar instruktioner där man laddar ner appen.
Man måste skanna en QR-kod för appen som läggs till som en "extranyckel" i bilen.
Antar att de publicerar instruktioner där man laddar ner appen.
Man måste skanna en QR-kod för appen som läggs till som en "extranyckel" i bilen.
Re: Skillnad API pre/post Highland?
Härligt att det är på gång med en lösning där. Jag antar att det är samma lösning som Tessie har med en ”fleet key” som läggs till i bilen. Vet du något om när dom planerar släppa ut det här?Gr1pen skrev:Har haft lite korrespondans med Gridio och tillsammans testat och nu har de fått till smartladdningen i deras app mot Teslas nya API.
Antar att de publicerar instruktioner där man laddar ner appen.
Man måste skanna en QR-kod för appen som läggs till som en "extranyckel" i bilen.
Tesla M3 2024 (Highland)