HomeConnect - HowTo

Begonnen von Pf@nne, 18 Dezember 2017, 21:30:38

Vorheriges Thema - Nächstes Thema

haempy

Zitat von: hauwech am 04 Dezember 2020, 13:53:00
Hallo zusammen,
ich versuche gerade unsere neue Spülmaschine einzubinden.
Wenn ich im Developer account "Register application" (unter HomeConnect -> Applications) aufrufe, ist da nix, wo ich wie beschrieben, den "Fhem Betatester" als "Company Name" eingeben kann.
Die verfügbaren Felder lauten:
- Application ID *
- OAuth Flow * -> "Authorization code gran flow" oder "device flow"
- Home Connect User Account for Testing
- Redirect URI *

Dann noch zwei Checkboxen:
- Add additional redirect URIs
- Enable One Time Token Mode

Hat sich da was geändert, oder bin ich nur falsch?

Gruß Roland

Servus,

vor dem gleichen Problem stand ich auch....
Als erstens musst du dich registrieren und ganz wichtig deinen Home Connect Account richtig eintragen.
Aber so weit scheinst du ja schon zu sein ;-)

Ich habs heute so zum laufen gebracht:
- Application ID * --> Kannst irgendwas eingeben z.B. FHEM_Geschirrspüler
- OAuth Flow * -> "Authorization code gran flow" oder "device flow" --> ich hab "Authorization code gran flow" stehen lassen
- Home Connect User Account for Testing --> die Email-Adresse mit der du dich bei der Home-Connect App angemeldet hast
- Redirect URI * --> Wie im HOWTO angegeben "http://localhost:8083/fhem?cmd.Test=set%20hcconn%20auth%20"

Dann noch zwei Checkboxen:
- Add additional redirect URIs --> Nein
- Enable One Time Token Mode  --> Nein


Deine "App" hat dann eine Client-ID welche in der FHEM-Definition dem API-Key entspricht und einen Client-Secret und eine Redirect-URL

Das alles dann in FHEM "verwurschteln":define hcconn HomeConnectConnection API-KEY REDIRECT-URL CLIENT-SECRET
und dann ein set hcconn scanndevices

Wenn alles richtig ist, sollte dein Gerät angelegt werden.

Gruß Roland

alpine310

Hallo
wer kann mir helfen die Bäume zu verschieben, damit ich den Wald wieder sehe ::)....

ich habe alle Vorarbeiten gemacht wie es oben und im Wiki steht...hat soweit auch geklappt

anschließend
define hcconn HomeConnectConnection API-KEY REDIRECT-URL CLIENT-SECRET
mit meine Werten hat auch funktioniert

Nach klick auf Home_Connect_Login komme ich zur Login-Seite und kann mich auch einloggen.

Nach dem klick auf zulassen springt mein Browser zurück auf eine leere Seite mit der URL:
http://192.168.2.131:8083/fhem?cmd.Test=set%20hcconn%20auth%&code=eyJ4LXJlZyI6IkVVIiwieC1lbnYiOiJQUkQiLCJ0b2tlbiI6Ijg0OTVlNDYyLTkzN2EtNGNlMS05ZGM4LWQxZDk0ZjM4ZmZjYiIsImNsdHkiOiJwcml2YXRlIn0%3D&state=csrf_889157400654684&grant_type=authorization_code

Mein Modul hcconn hat weiterhin state=Login necessary

Hat jemand eine Idee wo der Fehler liegt?

Gruß Martin


RasPi3, HM Heizkörperthermosate, HM Fensterkontakte, HM Rolladenaktoren, HM-LED Dimmer, HM-Funktaster mit Display, Keymatic, Anbindung an Heizungsregelung SolvisControl2 mit SolvisSmartHomeServer, Anbindung an TA-UVR16x2 (für Luftkollektoren und Lüftung)

DJFS

Hallo,

ich bekomme immer folgenden Fehler
"Cannot load module HomeConnectConnection"

die Perl-Bibliothek "libswitch-perl" ist installiert:
:pi@raspberrypi:~ $ sudo apt-get install libswitch-perl
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.
Statusinformationen werden eingelesen.... Fertig
libswitch-perl ist schon die neueste Version (2.17-2).
0 aktualisiert, 0 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.

Was kann es denn noch sein?
Danke

FHEM PI

#18
Zitat von: alpine310 am 20 April 2021, 18:04:53
Hallo
wer kann mir helfen die Bäume zu verschieben, damit ich den Wald wieder sehe ::)....

ich habe alle Vorarbeiten gemacht wie es oben und im Wiki steht...hat soweit auch geklappt

anschließend
define hcconn HomeConnectConnection API-KEY REDIRECT-URL CLIENT-SECRET
mit meine Werten hat auch funktioniert

Nach klick auf Home_Connect_Login komme ich zur Login-Seite und kann mich auch einloggen.

Nach dem klick auf zulassen springt mein Browser zurück auf eine leere Seite mit der URL:
http://192.168.2.131:8083/fhem?cmd.Test=set%20hcconn%20auth%&code=eyJ4LXJlZyI6IkVVIiwieC1lbnYiOiJQUkQiLCJ0b2tlbiI6Ijg0OTVlNDYyLTkzN2EtNGNlMS05ZGM4LWQxZDk0ZjM4ZmZjYiIsImNsdHkiOiJwcml2YXRlIn0%3D&state=csrf_889157400654684&grant_type=authorization_code

Mein Modul hcconn hat weiterhin state=Login necessary

Hat jemand eine Idee wo der Fehler liegt?

Gruß Martin

Ich habe leider das gleiche Problem.
Hast du schon eine Lösung gefunden?

Jetzt läuft es bei mir.
Das Problem war die Sicherheitsfunktion csrfToken in FHEM!!!

Lösung:
attr WEB csrfToken myToken123

und dann an die redirectURL noch diesen Teil anhängen:

&fwcsrf=myToken123

xerion

Hallo ist es auch möglich selbst definierte Befehle zu senden? Ich habe einen Deckenlüfter der auch erkannt wird. ich kann aber z.B. nur einen Teil deer möglichen Befehle nutzen da anscheinend nicht mehr erkannt werden. Es gibt aber mehrere Möglichkeiten laut API Doku. Moment nutzte ich die "fehlenden" Befehle über ein NodeRed Modul würde das aber gerne alles über Fhem steuern wollen.
Jemand eine Idee was ich tun müsste ?

list:
Internals:
   DEF        hcconn SIEMENS-LR99CQS25-68A40E340118
   FUUID      613b7968-f33f-26f5-516f-384ab91443cd48a5
   NAME       LR99CQS25
   NR         672
   STATE      Idle
   TYPE       HomeConnect
   aliasname  Dunstabzugshaube
   brand      Siemens
   commandPrefix Cooking.Common.Program.Hood.
   eventChannelTimeout 1632052934
   haId       SIEMENS-LR99CQS25-########
   hcconn     hcconn
   programs   Automatic
   retrycounter 0
   type       Hood
   vib        LR99CQS25
   READINGS:
     2021-09-19 13:41:09   BSH.Common.Option.ElapsedProgramTime 0 seconds
     2021-09-19 13:41:17   BSH.Common.Root.ActiveProgram -
     2021-09-19 13:41:17   BSH.Common.Setting.PowerState BSH.Common.EnumType.PowerState.Off
     2021-09-17 19:11:24   BSH.Common.Status.LocalControlActive 0
     2021-09-19 13:41:17   BSH.Common.Status.OperationState BSH.Common.EnumType.OperationState.Inactive
     2021-09-17 19:11:24   BSH.Common.Status.RemoteControlActive 1
     2021-09-17 19:11:24   BSH.Common.Status.RemoteControlStartAllowed 1
     2021-09-19 13:41:09   Cooking.Common.Option.Hood.IntensiveLevel Cooking.Hood.EnumType.IntensiveStage.IntensiveStageOff
     2021-09-19 13:41:09   Cooking.Common.Option.Hood.VentingLevel Cooking.Hood.EnumType.Stage.FanStage01
     2021-09-17 13:12:32   Cooking.Common.Setting.Lighting 0
     2021-09-17 13:12:32   Cooking.Common.Setting.LightingBrightness 2 %
     2021-09-19 13:41:17   state           Idle
Attributes:
   alias      Dunstabzugshaube
   event-on-change-reading .*
   room       Home Connect,Kueche
   webCmd     BSH.Common.Root.SelectedProgram:startProgram:stopProgram
Ich würde mich  freuen, wenn du meinen Einladungscode für Tibber, der Stromanbieter, der dir hilft, deinen Stromverbrauch zu verstehen und zu reduzieren, nutzt: https://invite.tibber.com/5fc08jbs. So bekommen wir beide 50 Euro und 100 % Ökostrom / https://geld-fuer-eauto.de/ref/334561880

Prof. Dr. Peter Henning

Leider ist die Dokumentation ziemlich kryptisch - ich bekomme es jedenfalls noch nicht hin.

Wenn ich im HomeConnectConnection Device set hcconn LoginNecessary absetze, passiert - gar nichts. Keine Fehlermeldung, niente. _Was genau_ sollte denn passieren?

ClientID und ClientSecret sind beide gesetzt,

LG

pah

Schlimbo

#21
Hallo Pah,
bei "set hcconn LoginNecessary" passiert bei mir auch nichts, allerdings gibt es über der Befehlszeile noch eine zusätzliche "Home Connect Login" Schaltfläche, damit komme ich auf eine Login Seite von Home Connect.

Edit: gerade gesehen, dass es ja schon gelöst wurde: https://forum.fhem.de/index.php/topic,123893.0.html

Prof. Dr. Peter Henning

Und ich habe auch schon die Dokumentation im Wiki überarbeitet.

LG

pah

luke666s

#23
mal ne doofe Frage.... Funktioniert das Modul noch?
Nach der Neuerrungenschaft und dem manuellen Herunterladen, bekomme ich beim Anlegen des Devices
define hcconn HomeConnectConnection 7xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 http://192.168.0.xx:8083/fhem?cmd.Test=set%20hcconn%20auth%20 9xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx4
kommt nur nen Fehler:
Cannot load module HomeConnectConnection
im FHEM und im LOG...

2021.11.10 21:38:36 1: PERL WARNING: Bareword found where operator expected at ./FHEM/48_HomeConnectConnection.pm line 8, near ""en" data"
2021.11.10 21:38:36 1: PERL WARNING: (Missing operator before data?)
2021.11.10 21:38:36 1: PERL WARNING: Bareword found where operator expected at ./FHEM/48_HomeConnectConnection.pm line 8, near ""auto" data"
2021.11.10 21:38:36 1: PERL WARNING: Bareword found where operator expected at ./FHEM/48_HomeConnectConnection.pm line 8, near ""light" data"
2021.11.10 21:38:36 1: reload: Error:Modul 48_HomeConnectConnection deactivated:
Excessively long <> operator at ./FHEM/48_HomeConnectConnection.pm line 20.
2021.11.10 21:38:36 0: Excessively long <> operator at ./FHEM/48_HomeConnectConnection.pm line 20.



FHEM läuft im Docker und ist eigentlich aktuell....


Cheers[/s]

luke666s

OK... vergesst es.. WGET war dran schuld beim manuellen ziehen der Dateien :)

Prof. Dr. Peter Henning

Derzeit haben meine Geräte keine Verbindung zur BSH-Cloud, die Fehlermeldung lautet "Login necessary".

Das kennen wir ja schon, also "HomeConnect Login" angeklickt - und dann geht es mit den korrekten Credentials nicht.

Also versuche ich, das Passwort zurückzusetzen, gebe meine Mailadresse ein - aber eine Mail kommt bei mir nie an.

Dann stelle ich fest, dass der Login-Versuch umgeleitet wird. Er landet nämlich nicht bei

Zitathttps://api.home-connect.com/security/oauth/authorize

sondern bei

Zitathttps://api-rus.home-connect.com/security/oauth/authorize

Schlussfolgerung: Möglicherweise wurde der BSH-Server gehackt. Also bitte vorsichtig sein, bis sich die Lage geklärt hat.

LG

pah

Jamspoon


... der BSH-Server läuft wieder, aber das wird allen/ einigen schon aufgefallen sein  :)

Und eine kurze Frage hätte ich zum Modul. Ich besitze eine Kaffeevollautomat EQ9 und hätte gern gewußt, was sich so alles über das Modul anstellen läßt.
Das ich damit meine Kaffeesorten auswählen kann und dann per FHEM das Programm auch starten kann ist mir soweit bekannt, aber wie sieht es mit Funktionen bzw. Meldungen wie Bohnenbehälter auswählen, Satzbehälter voll, Wassertank leer oder Bohnenbehälter leer, aus? Kann man diese Funktionen irgendwie "aktivieren"?

Danke vorab.

Gruß André
Having trouble in Windows? Reboot! Having trouble in Linux? Be root!

Sascha_F

Hi @all: Sagt mal, wird euer Geschirrspüler auch nicht mehr aktualisiert? In der HomeConnect-App alles fein, aber in FHEM gibt es kein Lebenszeichen mehr. Auch in Alexa, Test über homeBridge und Smartthings liefert zum Geschirrspüler nur "offline". Wenn jemand Ideen hat, immer gern her damit, denn die Info, dass er fertig ist und ich ihn öffnen kann/sollte ist schon hilfreich ;-)


Hi André,

ich nutze in einem DOIF zum Beispiel folgendes, um die Getränke-Art zu bestimmen (mache ich, da so bei nicht definierten Dingen "unbekanntes Getränk" als Ergebnis gesetzt wird):
([CTL636EB6:BSH.Common.Root.ActiveProgram] eq "ConsumerProducts.CoffeeMaker.Program.Beverage.Coffee") (setreading $SELF Kaffeesorte Kaffee)

Im gleichen DOIF habe ich dann auch Definitionen, die mich über meine ECHO darüber informieren, dass ein Getränk fertig ist (und welches):

([CTL636EB6:BSH.Common.Status.OperationState] eq "BSH.Common.EnumType.OperationState.Finished" and [$SELF:Kaffeesorte] eq "Kaffee")


Mit Bohnenbehälter, Wasserbehälter und Tropfschale hatte ich auch schon einmal "rumgespielt", aber habe es nicht mehr aktiv (sehe ich ja, wenn ich das Getränk aus der Maschine nehme :)). Dazu hat es mit der Ausgabe bei mir nicht immer zuverlässig funktioniert, da die Meldungen ja i.d.R. zeitgleich mit der Aktualisierung der anderen States kommen (also auf meine o.g. DOIF-Dinge).

Müsste aber wie folgt sein:

Bohnenbehälter:
ConsumerProducts.CoffeeMaker.Event.BeanContainerEmpty <> BSH.Common.EnumType.EventPresentState.Off

Tropfschale:
ConsumerProducts.CoffeeMaker.Event.DripTrayFull <> BSH.Common.EnumType.EventPresentState.Off

Wassertank:
ConsumerProducts.CoffeeMaker.Event.WaterTankEmpty <> BSH.Common.EnumType.EventPresentState.Off

Viele Grüße
Sascha

Prof. Dr. Peter Henning

Nach diesem Erlebnis mit dem BSH-Server hoffe ich, dass jemand diesen Mist hackt und ein cloudfreier Zugriff möglich ist.

LG

pah

hoppel118

Moin Prof.,

welchen Mist meinst du genau?

Die api Links die du postest sind doch von der Domain her identisch. Wobei api-rus tatsächlich sehr verdächtig klingt.

Das würde bedeuten, dass jemand Zugriff auf die Domain hatte und die Subdomain api-rus erstellen konnte.

Hm... Gibts da irgendwelche Belege für? Oder von welchem Mist redest du genau?

Gruß Hoppel
Server: Openmediavault, XEON E3-1240L-v5, Supermicro X11SSH-CTF, 64GB ECC RAM, SSD, RAID-Z2
Homebridge | Alexa | Yowsup
Homematic | HomeConnect | MQTT | Philips Hue | Sonos | Unifi Network & Protect | vbus | Xiaomi