Vitoconnect - Verbesserte Version

Begonnen von stefanru, 14 Dezember 2024, 23:32:17

Vorheriges Thema - Nächstes Thema

binlan

Zitat von: stefanru am 04 Januar 2026, 23:42:45Naja ich habe das logging angepasst.
Bei der Version wird nun der Responce immer mit loglevel 2 ausgegeben nach Access Token: nicht definiert.
Für dich logge ich nun nur hart auch den Call.
Aber wenn du es in die andere Version eingebaut hast ist auch ok.
Beide sollten ok sein.

So, seit vorhin ist es wieder kaputt. Hier die Ausgabe (token und id abgewandelt). Auch wieder die Warnung beim ersten Auftreten. Die request URL ist exakt identisch zu der, wenn alles glatt läuft.
fhem  | 2026.01.06 20:22:00 1: Heizung - Refresh token request url: https://iam.viessmann-climatesolutions.com/idp/v2/token data: grant_type=refresh_token&client_id=00b7c75f064109eade88d73e4c651e81&refresh_token=b672c84792164f43a83b4cc96c3fc4ac
fhem  | 2026.01.06 20:22:00 1: Heizung. - getRefreshCallback went ok
fhem  | 2026.01.06 20:22:00 1: Heizung - Received response: {"access_token":"eyJraWQiOiI0YzBhZGFhYy1mMzYyybl_sehr_langer_token_BfK6Hqt9VusLFbsd0etFQU","refresh_token":"b672c84792164f43a83b4cc96c3fc4ac","token_type":"Bearer","expires_in":3600}
fhem  | 2026.01.06 21:22:41 1: Heizung. - getRefreshCallback went ok
fhem  | 2026.01.06 21:22:41 1: Heizung - Received response: {"error":"invalid-token-request"}
fhem  |
fhem  | 2026.01.06 21:22:41 1: PERL WARNING: Use of uninitialized value $access_token in string ne at ./FHEM/98_vitoconnect.pm line 3384.
fhem  | 2026.01.06 21:22:41 1: Heizung - Access Token: nicht definiert
fhem  | 2026.01.06 21:22:41 1: Heizung - Received response: {"error":"invalid-token-request"}
fhem  |
fhem  | 2026.01.06 21:24:11 1: Heizung - Refresh token request url: https://iam.viessmann-climatesolutions.com/idp/v2/token data: grant_type=refresh_token&client_id=00b7c75f064109eade88d73e4c651e81&refresh_token=b672c84792164f43a83b4cc96c3fc4ac
fhem  | 2026.01.06 21:24:11 1: Heizung. - getRefreshCallback went ok
fhem  | 2026.01.06 21:24:11 1: Heizung - Received response: {"error":"invalid-token-request"}

stefanru

Ok,

da scheint Viessmann auf einmal mit
{"error":"invalid-token-request"}
auf eine völlig richtige Anfrage zu antworten.

Ich habe jetzt noch 3 Ideen:
1. Du setzt den curl mit deinen Daten mal manuell ab, einfach die Daten austauschen. Er ist direkt aus der Vissmann Doku:
curl -X POST "https://iam.viessmann-climatesolutions.com/idp/v3/token" -H "Content-Type: application/x-www-form-urlencoded" -d "grant_type=refresh_token&client_id=my_oauth_client_id&refresh_token=YOUR REFRESH TOKEN"

2. Ich habe meine Version von V2 auf V3 umgestellt wie in der Doku beschrieben. Vielleicht hat es damit zu tun auch wenn sonst keiner ein Problem damit hat. Die Version ist im Anhang und funktioniert bei mir und wird wohl so auch ins SVN kommen.

3. Da ich nichts erkennen kann was hier falsch läuft vermute ich den Fehler bei Viessmann. Melde dich mal bei https://developer.viessmann-climatesolutions.com/ an und wenn da alles normal aussieht leg vielleicht den client nochmal komplett neu an und update die Daten dazu im Modul mit set.

Weiter fällt mir erstmal nichts mehr dazu ein. Ist echt sehr seltsam.

Gruß,
Stefan
FHEM: Raspberry PI 400+SSD Viessmann, Fronius, BYD, Wunderground, Max, Shelly, ESPEasy, FHEMPY,...  Docker + Portainer: Immich, Authelia, Caddy, Gerbera, Paperless NGX
Maintainer: Vitoconnect
GIT: https://github.com/StefanRu1
Kaffeekasse: https://www.paypal.me/stefanru01