NEWS
Test Adapter Porsche v0.0.x
-
Hallo,
Ich nutze seit einiger Zeit mit voller Zufriedenheit die Version 0.2.0 (GitHub). Seit Kurzem erhalte ich jedoch folgende Fehlermeldung. Ich habe gesehen, dass Porsche MFA eingeführt hat, allerdings habe ich sowohl ein Konto mit als auch ohne MFA – und bei beiden erscheint beim Einloggen dieselbe Meldung (bei Porsche Connect funktioniert das Einloggen auf beide Arten problemlos).
Siehe Screenshot für die Fehlermeldung.Ich hoffe, ihr könnt mir weiterhelfen
@tomboxVielen Dank im Voraus!
2025-05-26 14:35:22.902 - info: host.raspberrypi "system.adapter.porsche.0" enabled 2025-05-26 14:35:23.236 - info: host.raspberrypi instance system.adapter.porsche.0 in version "0.2.0" (non-npm: TA2k/ioBroker.porsche) started with pid 93607 2025-05-26 14:35:25.136 - debug: porsche.0 (93607) Redis Objects: Use Redis connection: 127.0.0.1:9001 2025-05-26 14:35:25.164 - debug: porsche.0 (93607) Objects client ready ... initialize now 2025-05-26 14:35:25.167 - debug: porsche.0 (93607) Objects create System PubSub Client 2025-05-26 14:35:25.169 - debug: porsche.0 (93607) Objects create User PubSub Client 2025-05-26 14:35:25.193 - debug: porsche.0 (93607) Objects client initialize lua scripts 2025-05-26 14:35:25.201 - debug: porsche.0 (93607) Objects connected to redis: 127.0.0.1:9001 2025-05-26 14:35:25.219 - debug: porsche.0 (93607) Redis States: Use Redis connection: 127.0.0.1:9000 2025-05-26 14:35:25.226 - debug: porsche.0 (93607) States create System PubSub Client 2025-05-26 14:35:25.228 - debug: porsche.0 (93607) States create User PubSub Client 2025-05-26 14:35:25.238 - debug: porsche.0 (93607) States connected to redis: 127.0.0.1:9000 2025-05-26 14:35:25.265 - debug: porsche.0 (93607) Plugin sentry Do not initialize Plugin (enabled=false) 2025-05-26 14:35:25.371 - info: porsche.0 (93607) starting. Version 0.2.0 (non-npm: TA2k/ioBroker.porsche) in /opt/iobroker/node_modules/iobroker.porsche, node: v22.16.0, js-controller: 7.0.6 2025-05-26 14:35:25.868 - <span class=" ! — minimize max characters post- ! 2025-05-26 14:35:26.082 - error: porsche.0 (93607) AxiosError: Request failed with status code 400 2025-05-26 14:35:26.087 - <span class=" ! — minimize max characters post - ! 2025-05-26 14:35:26.556 - debug: porsche.0 (93607) "https://identity.porsche.com/u/login/password?state=...token entfernt...&ui_locales=de&ext-country=DE&ext-language=en_GB" 2025-05-26 14:35:26.558 - debug: porsche.0 (93607) {"error":"invalid_request","error_description":"User identifier prompt skipped.","state":"...token entfernt...} 2025-05-26 14:35:26.558 - error: porsche.0 (93607) No code found. Please check your credentials 2025-05-26 14:35:26.558 - error: porsche.0 (93607) {"error":"invalid_request","error_description":"User identifier prompt skipped.","state":"...token entfernt...}MOD-EDIT: Code in code-tags gesetzt! und private Daten entfernt!
Mach mal einen Gegentest mit nodejs@20.
-
Mach mal einen Gegentest mit nodejs@20.
-
Ich kann seit einiger Zeit keine Verbindung mehr aufbauen
porsche.0 2025-06-13 15:37:24.955 error {"error":"invalid_request","error_description":"User identifier prompt skipped.","state":"tCujKe54DVDekKxoq4kId2tr2jCY3baew-OmFRozElo"} porsche.0 2025-06-13 15:37:24.955 error No code found. Please check your credentialsHat irgendwer eine Idee wie ich das Problem lösen kann?
-
Ich kann seit einiger Zeit keine Verbindung mehr aufbauen
porsche.0 2025-06-13 15:37:24.955 error {"error":"invalid_request","error_description":"User identifier prompt skipped.","state":"tCujKe54DVDekKxoq4kId2tr2jCY3baew-OmFRozElo"} porsche.0 2025-06-13 15:37:24.955 error No code found. Please check your credentialsHat irgendwer eine Idee wie ich das Problem lösen kann?
-
Wollte den Adapter jetzt auch nutzen, habe leider das gleiche Problem.
Da dein Post von Juni 2025 ist, gehe ich davon aus das der Adapter nicht mehr gepflegt wird oder? -
Hi ich wollte mich melden, da ich auch an dem Modul interessiert war, leider hat wohl Porsche die Anmeldung verändert.
Lokal habe ich einen "proof of concept" mit der neuen Anmeldemethode hinbekommen.
Um das nutzen zu können habe ich ein script mit dem ein api token generiert wird.
Leider ist das ganze etwas unschön(ist ein poc), aber momentan habe ich nicht die Zeit es aufzuhübschen. Wer möchte kann sich das unter meinem Fork anschauen.
https://github.com/gimmig/ioBroker.porsche -
@gimmig
Das wäre cool wenn das funktioniert über Iobroker.
Kannst du kurz erklären wie das funktioniert bzw. was man machen muss?Hi @nik82,
ich habe ein Skript für die Generierung eines tokens gemacht.
Dieses wird im terminal auf der iobroker Umgebung ausgeführt.
https://github.com/gimmig/ioBroker.porsche/blob/master/get-refresh-token-simple.js
Dazu noch npm install ausführen.$ npm install $ node get-refresh-token-simple.jsDieses führt dich mit einer Anleitung durch den Prozess des generierens.
Am Schluß der Anleitung muss der token in die Admin Konfiguration eingetragen werden.Wie gesagt das Modul ist noch in der test Phase. Aber ich habe zumindest die Verbindung zur Porsche Api hinbekommen.
-
@gimmig Danke für deine Arbeit, leider kann ich mit der Anleitung die Installation nicht nachvollziehen. Könntest du bitte eine genauere Anleitung hier reinstellen!
@gto gerne,
sofern eine iobroker.porsche Instanz läuft, muss in der iobroker Umgebung, in einem Terminal die Instanz gestoppt werden:$ iobroker stop porscheAnschließend meine Version auf der root Ebene installieren:
iobroker url gimmig/ioBroker.porscheDanach in das Verzeichnis gehen, wo sich das neue Modul befindet:
cd /opt/iobroker/node_modules/iobroker.porscheDie erforderlichen Node Module installieren und das script für die token Generierung starten:
$ npm install $ node get-refresh-token-simple.jsBeim starten kommt folgende Anleitung:
=== Porsche Connect Refresh Token - Manual Setup === This script will help you obtain a refresh token manually. Step 1: Open this URL in your browser: https://identity.porsche.com/authorize?xxxxx Step 2: After logging in, you will be redirected to a URL like: my-porsche-app://auth0/callback?code=XXXXX&state=XXXXX Step 3: Copy the ENTIRE redirect URL and paste it below. If the page shows an error (e.g., "Cannot open app"), that's normal! Just copy the URL from the address bar. Paste the callback URL here: my-porsche-app://auth0/callback?code=xxxxxxxx&state=xxxxx ✅ Authorization code extracted Step 4: Exchanging code for tokens... [INFO] Exchanging authorization code for tokens... [INFO] Tokens received successfully ✅ Tokens received! ✅ Refresh token saved to: .porsche-refresh-token.json ═══════════════════════════════════════════════════════════════ REFRESH TOKEN (copy this to your ioBroker server): ═══════════════════════════════════════════════════════════════ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ═══════════════════════════════════════════════════════════════ 📋 Next steps: 1. Copy the refresh token above 2. On your ioBroker server, update /opt/iobroker/node_modules/iobroker.porsche/ 3. Add the refresh token to adapter configuration 4. Remove Puppeteer dependency (not needed anymore!) 💡 Benefits: ✅ No browser/Puppeteer needed on server ✅ Works perfectly in LXC containers ✅ Much lower resource usage ✅ More reliable 🧪 Testing refresh token... [INFO] Refreshing access token... [INFO] Access token refreshed successfully ✅ Refresh token works! Token refresh test successful. New access token expires in: 3600 seconds ✅ Setup complete!Schritt zwei ist etwas kniffelig, denn je nach browser möchte dieser die Url nicht wirklich öffnen.
Das heißt man muss die url ( my-porsche-app://auth0/callback?code=XXXXX&state=XXXXX) in der browser Konsole evt. raus suchen.Nachdem der token generiert wurde. Kannst du wieder auf der root Ebene von iobroker das Modul starten
$ cd / $ iobroker start porscheDer Token Kann nun in iobroker in der Porsche Instanz eingetragen werden.
Ich hoffe das hilft erstmal. Eine elegantere Lösung zur token Generierung wäre natürlich besser. Sobald ich mehr Zeit habe, geht es an dem Modul weiter. :)
