evcc-io / evcc

Sonne tanken ☀️🚘
https://evcc.io
MIT License
3.4k stars 620 forks source link

Opel/PSA: Internal Server Error #11735

Closed bbr111 closed 7 months ago

bbr111 commented 8 months ago

Discussed in https://github.com/evcc-io/evcc/discussions/11589

Originally posted by **bbr111** January 10, 2024 Hallo zusammen, hat noch jemand Probleme mit PSA / Opel? [main ] ERROR 2024/01/10 11:40:20 creating vehicle corsae failed: cannot create vehicle type 'template': cannot create vehicle type 'opel': login failed: oauth2: "server_error" "Internal Server Error" Benutze auch noch den psa_car_controller und der funktioniert. die API scheint also zu funktionieren.
nuiler commented 8 months ago

Das Problem haben mehrere

https://github.com/evcc-io/evcc/discussions/11589

agt189 commented 8 months ago

Ich habe auch das gleiche Problem...

chr-engwer commented 8 months ago

The API (see https://developer.groupe-psa.io/webapi/b2c/api-reference/specification) has changed in november:

https://developer.groupe-psa.io/webapi/b2c/api-reference/changelog/#article

so this would fit to updating the app...

  1. update the API
  2. update the app in downwards compatible way
  3. update server
spofastic commented 8 months ago

dito

andig commented 8 months ago

Depends on https://github.com/flobz/psa_car_controller/issues/733, https://github.com/TA2k/ioBroker.psa/issues/20

andig commented 8 months ago

Bitte Zugangsdaten für Test an info@evcc.io

bbr111 commented 8 months ago

Bitte Zugangsdaten für Test an info@evcc.io

Kommt gerade durch.

Ich glaube das man noch mehr machen muss als nur den authorize.

die API wurde von api.groupe-psa auf api-key.groupe-psa und die neue URL benötigt ein Zertifikat. Dieses ist auch in der neuen APK hinterlegt im assest ordner. Der Key dazu findet sich ebenfalls in der APK.

ritschi86 commented 8 months ago

gibt es hier schon etwas Neues?

stereotone commented 8 months ago

Werden noch Zugangsdaten benötigt?

andig commented 8 months ago

Im Moment muss jemand rausfinden wie die neue API aussieht.

chr-engwer commented 8 months ago

Wie schon angemerkt wurde, wird das Problem auch in flobz/psa_car_controller#733 behandelt. Da gibt es zwar Fortschritte, aber die Änderungen am Protokoll sind nicht ganz so simple umzusetzen. Wer helfen möchte, sollte dort am besten schauen.

torstenmichl commented 8 months ago

Hallo, anscheinend gleiches Problem bei Peugeot nach Neustart durch das Update: Using config file: /config/evcc.yaml starting evcc: 'EVCC_DATABASE_DSN=/data/evcc.db evcc --config /config/evcc.yaml' [main ] INFO 2024/01/24 17:30:47 evcc 0.123.9 [main ] INFO 2024/01/24 17:30:47 using config file: /config/evcc.yaml [main ] ERROR 2024/01/24 17:30:48 creating vehicle 308 failed: cannot create vehicle type 'template': cannot create vehicle type 'peugeot': login failed: oauth2: "server_error" "Internal Server Error" [main ] ERROR 2024/01/24 17:30:48 creating vehicle 2008 failed: cannot create vehicle type 'template': cannot create vehicle type 'peugeot': login failed: oauth2: "server_error" "Internal Server Error"

APP funktioniert. Mehr kann ich leider nicht beisteuern, da keine Ahnung vom Programmieren.

tah78 commented 8 months ago

Betrifft auch Peugeot selbe API selbe Fehlermeldung: login failed: oauth2: "server_error" "Internal Server Error"

ThiloBaWue commented 8 months ago

Keine Lösung in Sicht?

Sillium007 commented 8 months ago

Diskussion läuft in dem flobz issue. Solange es dort denke ich keine Lösung gibt passiert hier nichts

torstenmichl commented 8 months ago

Was soll ich antworten? Hatte angefragt, warum die Api nebst Authentifizierung geändert wurde.

Sehr geehrter Herr Michl,

vielen Dank für Ihre Mitteilung.

Wir bedauern die Unannehmlichkeiten, die durch die Änderungen im Zugriff auf die API entstanden sind, und entschuldigen uns für etwaige Unannehmlichkeiten.

Um Ihr Anliegen bestmöglich bearbeiten zu können, benötigen wir weitere Informationen. Könnten Sie uns bitte detaillierter erläutern, wofür Sie die neue API-Schnittstellenbeschreibung inklusive Authentifizierungsmechanismus benötigen?

Diese zusätzlichen Informationen helfen uns, Ihr Anliegen besser zu verstehen und Ihnen die benötigten Informationen gezielter zukommen zu lassen. Wir sind daran interessiert, Ihnen so schnell wie möglich zu helfen und die Probleme zu lösen.

Vielen Dank im Voraus für Ihre Kooperation. Bei weiteren Fragen stehen wir Ihnen gerne zur Verfügung.

Mit freundlichen Grüßen,

Stanislava Bako

Peugeot Deutschland Kundenbetreuung

Telefon 0614 2293 5000

bbr111 commented 8 months ago

Die detaillierte Beschreibung ist die GitHub Seite von evcc / flopz / ...

Wir wollen einfach nur wieder mit 3rd Party Tools auf die Daten der Schnittstelle zugreifen. Mir mich ein Kaufkriterium. Muss meinen Opel im Oktober zurückgeben. Mal schauen ob ich umsteigen muss.

ThiloBaWue commented 8 months ago

Es ist ja nicht so, als könnten ThirdPartyApps nicht auf die Daten zugreifen. Ich bin sicher tronity kann nicht zaubern, und ich habe keine Ausfallzeit wahrnehmen können. Die hatten sich wohl vorbereitet. Was aber kein Vorwurf ab die Programmierer hier sein soll. Wahrscheinlich haben Sie es einfach nicht kommen sehen. Ihr schafft das! Aber eine Rückmeldung über den Fortschritt wäre für die zahlenden User schon nett.

Sillium007 commented 8 months ago

flobz hat bei Stellantis einen Issue aufgemacht, wenn ihr das unterstützen wollt bitte hier entlang: https://github.com/Stellantis/stellantis.github.io/issues/128

ThiloBaWue commented 8 months ago

Vielleicht hilft es dem einen oder anderen: Habe meinen Mokka-e jetzt erfolgreich mit der Tronity Integration wieder mit EVCC verbunden. Den Tronity-Account hatte ich sowieso schon. Funktioniert bis jetzt gut. Verbindung und Ladezustand wird erkannt und übernommen (wie zuvor direkt mit dem my.Opel PSA Server). Vielleicht wissen einige nicht das es auch so geht..... https://github.com/evcc-io/evcc/discussions/2554 Die nötigen Zugangsdaten bekommt man auf https://www.tronity.tech/

spofastic commented 8 months ago

Den Umweg über Tronity bin ich auch bereits gegangen: Dabei ist mir aufgefallen, daß man sich INNERHALB der Tronity App im Opel Portal (mit seinen Opel credentials) anmelden und von dort aus das Auto für Tronity auswählen und freischalten muß. Also kein Aufruf der PSA-Api durch Eingabe von Credentials in Tronity (wie es bisher auch in der config von EVCC üblich war) sondern ein komplexerer Prozess. Vielleicht hilft diese Info weiter.

andig commented 8 months ago

Normale oauth Anmeldung. Leider steht die uns nicht zur Verfügung.

spofastic commented 8 months ago

Um auf Tronity zuzugreifen, muß man EVCC als App in Tronity anlegen und anschließend mit clientid und clientsecret auf Tronity zugreifen. Wenn ich mir die folgenden PSA-Seiten durchlese, dann scheint mit der Prozess bei PSA ähnlich zu sein:

Wäre es nicht denkbar auf PSA in ähnlicher Form wie auf Tronity zuzugreifen, wenn man sich jeder individuell vorher bei PSA die entsprechenden OAUTH2 Credentials holt? Sollte ich falsch liegen, so bitte ich um Nachsicht, ich bin kein Entwickler.

andig commented 8 months ago

Hier gehts um PSA, nicht um Tronity. Wer Tronity verwenden möchte kann das bereits jetzt schon. Das PSA API hat das gleiche Problem das wir mit Tesla auch bald haben werden: es ist kostenpflichtig.

Wäre es nicht denkbar auf PSA in ähnlicher Form wie auf Tronity zuzugreifen, wenn man sich jeder individuell vorher bei PSA die entsprechenden OAUTH2 Credentials holt?

Wenn Du es schaffst, die zu bekommen können wir das gerne ausprobieren.

spofastic commented 8 months ago

PSA schreibt (https://developer.groupe-psa.io/webapi/b2c/overview/about/): "End Users APIs allows Third Party Application (Accessing Party) to access vehicle data of their End Users (Resource Owner) owning Stellantis vehicles (ex PSA brands: Citroën, DS, Peugeot, Opel and Vauxhall)." In der darunter liegenden Grafik wird ersichtlich, daß PSA anscheinend von EINEM App-Betreiber (Accessing Party) und n End-Nutzern (End user) ausgeht. Dieses Modell trifft nun leider nicht auf EVCC zu, da jeder Nutzer seine eigene EVCC-Applikation onprem betreibt und dadurch Accessing Party und End user zusammenfallen. Es wird leider auch nirgends ersichtlich, wie/wo man sich als Accessing Party registrieren kann, sonst würde ich das mal ausprobieren - das ganze scheint mir ein dead end zu sein.

Bubbler-der-Bub commented 8 months ago

Rein aus Neugier: Wenn sich Opel / Stellantis so ziert; wo ist denn die ursprüngliche API-Schnittstellenbeschreibung inklusive des Authentifizierungsmechanismus hergekommen? Und für alle, die kurz vorm Wechsel oder einer Neuanschaffung stehen: Gibt es eine Liste von kooperativen Herstellern?

spofastic commented 8 months ago

Vielleicht hilft es dem einen oder anderen: Habe meinen Mokka-e jetzt erfolgreich mit der Tronity Integration wieder mit EVCC verbunden. Den Tronity-Account hatte ich sowieso schon. Funktioniert bis jetzt gut. Verbindung und Ladezustand wird erkannt und übernommen (wie zuvor direkt mit dem my.Opel PSA Server). Vielleicht wissen einige nicht das es auch so geht..... #2554 Die nötigen Zugangsdaten bekommt man auf https://www.tronity.tech/

2 Fragen (auch wenns zu Tronity gehört): a) Wie schauft Deine Config aus? Es gibt zwei unterschiedliche Versionen der Tronity-Config: Die in dem von Dir erwähnten Topic und die in der Doku. Welche nutzt Du? b) Mußt Du bei der Anlage der Application in Tronity neben dem Fahrzeugzuweisung weitere Einstekllungen (Webhook?) vornehmen?

iphikles3000 commented 8 months ago

Hallo zusammen, ich habe mir wohl oder übel auch nen kostenpflichtigen Tronity Account zugelegt. Die Einrichtung läuft mühelos. In der Config habe ich lediglich die ID und die secret Id hinterlegt.

So sieht meine config diesbezüglich aus:

Die Zugangsdaten habe ich der Tronity Extension (abrufbar unter: https://app.tronity.tech/apps) entnommen. An den dortigen Defaults habe ich nichts verändert.

Damit funktioniert die SOC-Abfrage in evcc wieder ohne Probleme. Natürlich hoffe ich weiter auf einen anderen Lösungsweg für Opel/Peugeot...

andig commented 8 months ago

Macht bitte eine eigene Diskussion für Tronity. Das hat in diesem Thread ncihts zu suchen.

Sillium007 commented 7 months ago

Bei flobz haben sie es wohl grundlegend wieder zum Laufen bekommen, aber noch nicht ganz automatisierbar wohl: https://github.com/flobz/psa_car_controller/issues/733#issuecomment-1931515174

kon1992 commented 7 months ago

Workaround über PSA Car controller funktioniert: PSA Car controller installieren in der Version von 0x3dlux (link oben) und anschlissend im EVCC config file das Fahrzeug auf das psa_controller template umstellen. Dann wir die Reichweite und Ladestand wieder angezeigt.

ostrocka commented 7 months ago

Ich musste gerade mein Passwort zurücksetzen, das wurde mir angezeigt:

"Sehr geehrte Kundin, sehr geehrter Kunde, aufgrund technischer Änderungen in unseren Systemen zur Verbesserung der Sicherheit aller Konten, müssen Sie Ihr Passwort aktualisieren! Eine E-Mail zum Zurücksetzen des Passworts wurde an Sie gesendet an:"

Mein altes Passwort war >16 Zeichen und hatte alles drin was man sich so wünscht.

Das ging nun nicht mehr da >16 Zeichen als "Weak Password" bezeichnet wird -- sobald man auf 16 Zeichen runterkürzt ist's dann "very strong".

Das ist ein Saftladen....

phen0 commented 7 months ago

Also ich habe den Workaround mit dem psa_car_controller umgesetzt. Das funktioniert und ich kann in evcc wieder den Ladestand sehen!

image
docsnyder7 commented 7 months ago

@phen0 was heisst workaround? Du hast zusätzlich den selbstständigen Psa Controler installiert und greifst von dem die Daten ab für EVCC

Sillium007 commented 7 months ago

Genau, das funktioniert derzeit https://github.com/evcc-io/evcc/issues/11735#issuecomment-1936929156 Jemand hat die aktuelle "Lösung" auch nochmal zusammengefasst: https://github.com/flobz/psa_car_controller/issues/733#issuecomment-1939555182

evcc intern gibt es noch keine Änderungen

phen0 commented 7 months ago

@docsnyder7 ja genau. Ich habe zusätzlich den psa controller installiert, damit es überhaupt mit dem Ladestand funktioniert. Ist nicht schön, aber funktioniert. Wer Hilfe dabei braucht, kann sich gerne melden.

docsnyder7 commented 7 months ago

OK.. ich hab keine Oberfläche nur die Commandzeile.. wie komm ich ins Dev Tool? auf nem normalen PI4 kein docker oder ähnliches

Sillium007 commented 7 months ago

psa controller starten und vom Desktop aus mit dem Browser drauf verbinden etc.

Und auch in dem Browser nutzt Du die DevTools, das wird nicht auf dem Pi gemacht

docsnyder7 commented 7 months ago
 WARNING: The script psa-car-controller is installed in '/home/docsn/.local/bin' which is not on PATH.
  Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.

na der install bekomm diese warnung und der versuch des starts der web conf geht mit "Komando nicht gefunden" ins leere Bin noch nicht so fit um das zu Lösen!

phen0 commented 7 months ago

Versuche mal dich von der Shell aus- und wieder einzuloggen. Mit echo $PATH kannst du sehen, ob das Verzeichnis enthalten ist. Falls nicht musst du den PATH in der .bashrc oder .profile ergänzen.