jpgorganizer / ioBroker.smartgarden

GARDENA smart system adapter for ioBroker
Other
21 stars 8 forks source link

Verbindungsprobleme #43

Closed andre-bu closed 2 years ago

andre-bu commented 2 years ago

Seit ein paar Tagen hat der Adapter Verbindungsprobleme. Ca. einmal am Tag ist bei "Verbunden mit Gerät oder Dienst" ein rotes Kreuz. Nach dem Reboot des Adapter funktioniert er wieder für einen Tag. Kann das mit der Änderung der API zusammenhängen die Husqvarna vor ein paar Tagen vorgenommen hat? Ich hab den Log Level mal auf 3 gesetzt. Sobald ich da was im LOG hab melde ich mich.

Octopus180 commented 2 years ago

Hallo Didi

Danke für die Anleitung. Habe heute die Berechtigung des Ordners ändern können. Jetzt konnte ich auch die Datei austauschen.

Mal schauen es jetzt wieder ohne Probleme läuft.

Gruß

bvol commented 2 years ago

@jpgorganizer Tausend Dank für Deinen Einsatz, ich teste die api.js nun unter [buanet/iobroker:latest]

Gundika commented 2 years ago

Vor ca. einer Woche die erste api datei erfolgreich ausgetauscht. Seid dem läuft der Adapter ohne Probleme. @jpgorganizer Herzlichen Dank für deine Hilfe.

jpgorganizer commented 2 years ago

Ich plane ein Update im Laufe der Woche (bis 30.4., vmtl. früher). Darin wird dann diese Anpassung enthalten sein. Sollte es noch Probleme damit geben, dann bitte bis 26.4.22 melden, denn dann muss ich ggfs. nochmals eine andere Lösung suchen und meinen Zeitplan überdenken. Danke für's Testen.

bvol commented 2 years ago

seit dem Einspielen der api.js vor drei Tagen keine Probleme mehr. Tut bei mir im docker wie es soll, danke!

jpgorganizer commented 2 years ago

@andre-bu Danke

@ALL
ich bereite gerade das Update vor. Wird aber wohl nicht auf's Wochenende reichen, aber Anfang/Mitte kommender Woche wird es veröffentlicht.

Surfjoerch commented 2 years ago

Hi zusammen

ich bekomme den Adapter gar nicht mehr zum laufen. Installiert ist der 1.0.5 mit ausgetauschter api.js

Das Ergebnis sieht wie folgt aus: image

Ich habe den Adapter bzw. die Instanz neu installiert und auch die APIs und den Application-Key auf der husqvarnagroup-Seite erneuert. Ich bin mit meinem Latein echt am Ende.

Hier noch das Log:

smartgarden.0 2022-05-02 12:48:51.645 error Error: request returned 400 Bad Request

smartgarden.0 2022-05-02 12:48:51.645 info 3/ Connection failure:..return with error

smartgarden.0 2022-05-02 12:48:51.644 info 3/ Connection failure.response.statusCode/Message=400/Bad Request

smartgarden.0 2022-05-02 12:48:51.643 info 3/ sgSetState: info.connection value=false ack=true

smartgarden.0 2022-05-02 12:48:51.504 info 3/ ---> State change by device: state sg.0.info.adapterversion changed: 1.0.5 (ack = true)

smartgarden.0 2022-05-02 12:48:51.501 info 3/ ---> State change by device: state sg.0.info.revision changed: Main: 2495 / API: y2506 (ack = true)

smartgarden.0 2022-05-02 12:48:51.495 info 3/ ---> State change by device: state sg.0.info.connection changed: false (ack = true)

smartgarden.0 2022-05-02 12:48:51.492 info 3/ ---> State change by device: state sg.0.info.connection changed: false (ack = true)

smartgarden.0 2022-05-02 12:48:51.482 info 3/ sgSetState: info.revision value=Main: 2495 / API: y2506 ack=true

smartgarden.0 2022-05-02 12:48:51.419 info 3/ Gardena Smart System Service hosts at: smart_host: https://api.smart.gardena.dev/ authentication_host: https://api.authentication.husqvarnagroup.dev/

smartgarden.0 2022-05-02 12:48:51.418 info 3/ connecting to Gardena Smart System Service ...

smartgarden.0 2022-05-02 12:48:51.417 info 3/ sgSetState: info.connection value=false ack=true

smartgarden.0 2022-05-02 12:48:51.414 info 3/ connectToGardena...

smartgarden.0 2022-05-02 12:48:51.413 info 3/ getConnection...

smartgarden.0 2022-05-02 12:48:51.346 info starting. Version 1.0.5 in /opt/iobroker/node_modules/iobroker.smartgarden, node: v12.22.12, js-controller: 4.0.23

jpgorganizer commented 2 years ago

@Surfjoerch pls check Username + Password

Surfjoerch commented 2 years ago

@jpgorganizer

Done - leider nichts Neues.

Ich habe auch das Script von Gardena probiert: curl -X POST -d "grant_type=password&client_id=dxxx&username="Username"&password="password" https://api.authentication.husqvarnagroup.dev/v1/oauth2/token

Hat Folgendes zurückgegeben:

{"access_token":"xxxscope":"sg-integration-api:read iam:read amc:api sg-integration-api:write","expires_in":86399,"refresh_token":"xxx","provider":"husqvarna","user_id":"xxx","token_type":"Bearer"}

xxx sind jeweils Platzhalter ;-)

bvol commented 2 years ago

@Surfjoerch Blöde Frage: Deine Application auf der Husqvarna Cloud (https://developer.husqvarnagroup.cloud/apps) ist aktiv und hat auch die korrekten APIs konfiguriert?

image

jpgorganizer commented 2 years ago

@Surfjoerch really sure that username, password, apikey are correct? Then it should work.

@bvol Automower Connect API is not necessary

Surfjoerch commented 2 years ago

hmm, "korrekten APIs" wie könnten denn falsche APIs konfiguriert sein?

Und: Ist die Reihenfolge entscheidend? 1. API anlegen 2. Key erzeugen?

Ich prüfe das noch einmal...

jpgorganizer commented 2 years ago

@Surfjoerch dein curl Kommando hat doch funktioniert, also kann es nicht grundsätzlich an deinen Zugangsdaten liegen. Deshalb kontrollieren ...

andre-bu commented 2 years ago

Hast du es nach dieser Anleitung gemacht? Hab inzwischen mehrere Accounts so angelegt. Funktionieren alle.

https://developer.husqvarnagroup.cloud/docs/getting-started

Surfjoerch @.***> schrieb am Mo., 2. Mai 2022, 15:00:

hmm, "korrekten APIs" wie könnten denn falsche APIs konfiguriert sein?

Und: Ist die Reihenfolge entscheidend? 1. API anlegen 2. Key erzeugen?

Ich prüfe das noch einmal...

— Reply to this email directly, view it on GitHub https://github.com/jpgorganizer/ioBroker.smartgarden/issues/43#issuecomment-1114819030, or unsubscribe https://github.com/notifications/unsubscribe-auth/AT4HP4QKTTNC2HQG3CZLUJTVH7GW7ANCNFSM5SM7T3DA . You are receiving this because you were mentioned.Message ID: @.***>

Surfjoerch commented 2 years ago

Ich habe eben eine 2. Instanz angelegt, sowohl bei Gardena (nach der Anleitung) und eben auch auf dem Rasp. Das Curl Kommando hat auch wieder funktioniert. Leider aber wieder das gleiche Ergebnis. Noch eine Info: Die Instanz hat ja schon einmal funktioniert (wie bei vielen anderen hier auch...)

Cosmicbase commented 2 years ago

So nach Tagen der Abstinenz mein Feedback. Alles läuft bis jetzt tadellos. API ausgetauscht und läuft. Hatte den Adapter neu installiert, API Key bei Husqvarna erneuert und API. Js ausgetauscht.

Bis jetzt läuft der Adapter durch. Hoffe das bei den anderen auch alles soweit funktioniert.

reutli commented 2 years ago

@ALL

Ich bin mit dem o.a. Patch noch nicht ganz glücklich und habe deshalb noch eine andere Lösung gesucht. Diese läuft nun seit kanpp 2 Tagen bei mir in drei Produktiv-Installationen.

Diese Version lege ich hier mal bei. Wäre gut zu testen. Einfach auch wieder die api.js austauschen und den Adapter neu starten.

Fehler/ Fragen gerne hier posten. Ich werde allerdings in den kommenden 2 Wochen nicht oder nur sehr verzögert reagieren können. Somit müsst Ihr euch dann leider gedulden.

y_api.zip

Hi, das heisst diese Anpassung ist bisher nicht in eine Version eingeflossen? Die 1.0.5 muss also damit noch gepatcht werden, korrekt?

Hermann1968 commented 2 years ago

Hi, habe gestern die neue API rein kopiert und seit dem ist der Adapter stabil. Schaut gut aus! Danke!

jpgorganizer commented 2 years ago

@ALL Ich bin mit dem o.a. Patch noch nicht ganz glücklich und habe deshalb noch eine andere Lösung gesucht. Diese läuft nun seit kanpp 2 Tagen bei mir in drei Produktiv-Installationen. Diese Version lege ich hier mal bei. Wäre gut zu testen. Einfach auch wieder die api.js austauschen und den Adapter neu starten. Fehler/ Fragen gerne hier posten. Ich werde allerdings in den kommenden 2 Wochen nicht oder nur sehr verzögert reagieren können. Somit müsst Ihr euch dann leider gedulden. y_api.zip

Hi, das heisst diese Anpassung ist bisher nicht in eine Version eingeflossen? Die 1.0.5 muss also damit noch gepatcht werden, korrekt?

ja, richtig. Wobei ich morgen (Mittwoch) den Patch ins latest-release bringen werde. Falls du dich also noch gedulden willst. Ich habe soweit alles fertig. Möchte es aber heute noch bei mir testen. :-)

jpgorganizer commented 2 years ago

@Surfjoerch

Noch eine Info: Die Instanz hat ja schon einmal funktioniert (wie bei vielen anderen hier auch...)

und was hast du dann geändert? Hier im issue ging es um ständige Verbindungsabbrüche, aber du kommst gar nicht rein. Der Wiederaufbau der Verbindung hat immer geklappt. Und das ist mit den hier veröffentlichten Patches nun auch gefixed und kommt morgen ins latest.

Surfjoerch commented 2 years ago

...also, ich vermute, dass ich anfangs auch nur sporadische Abbrüche hatte. Auch aus anderen Gründen habe ich den ioBroker neu installiert. Alle anderen Adapter funktionieren wie vorher, nur smartgarden halt nicht. Wie auch vor der Neuinstallation von ioBroker komme ich nicht über das "Lebenszeichen" hinaus. Ich habe inzwischen den Adapter neu installiert und auch einen neuen Account bei Gardena mit neuer App angelegt - immer mit dem selben Ergebnis...

Das Curl funktioniert immer...

jpgorganizer commented 2 years ago

mmer mit dem selben Ergebnis...

dann wirst du wohl auch noch andere Dinge mal ändern müssen. Hast du ein komplexes Passwort? Ungewöhnliche Zeichen drin?

reutli commented 2 years ago

@ALL Ich bin mit dem o.a. Patch noch nicht ganz glücklich und habe deshalb noch eine andere Lösung gesucht. Diese läuft nun seit kanpp 2 Tagen bei mir in drei Produktiv-Installationen. Diese Version lege ich hier mal bei. Wäre gut zu testen. Einfach auch wieder die api.js austauschen und den Adapter neu starten. Fehler/ Fragen gerne hier posten. Ich werde allerdings in den kommenden 2 Wochen nicht oder nur sehr verzögert reagieren können. Somit müsst Ihr euch dann leider gedulden. y_api.zip

Hi, das heisst diese Anpassung ist bisher nicht in eine Version eingeflossen? Die 1.0.5 muss also damit noch gepatcht werden, korrekt?

ja, richtig. Wobei ich morgen (Mittwoch) den Patch ins latest-release bringen werde. Falls du dich also noch gedulden willst. Ich habe soweit alles fertig. Möchte es aber heute noch bei mir testen. :-)

Natürlich konnte ich nicht warten ;o) Hat jetzt korrekt und sauber einen reconnect gemacht:


smartgarden.0 | 2022-05-03 18:41:12.110 | info | 1/ on_open: ### connected ###
-- | -- | -- | --
smartgarden.0 | 2022-05-03 18:41:11.826 | info | 1/ reconnectWithRefreshToken: get_websocket ... websocket ok
smartgarden.0 | 2022-05-03 18:41:11.823 | info | 1/ get_websocket successful: response.statusCode/Message=201/Created
smartgarden.0 | 2022-05-03 18:41:11.371 | info | 1/ get_websocket ...
smartgarden.0 | 2022-05-03 18:41:11.370 | info | 1/ reconnectWithRefreshToken: expires_in/timeout/factor:86399 / 86485 / 1.001
smartgarden.0 | 2022-05-03 18:41:11.370 | info | 1/ reconnectWithRefreshToken: refresh_token changed
smartgarden.0 | 2022-05-03 18:41:11.369 | info | 1/ reconnectWithRefreshToken: access token changed
smartgarden.0 | 2022-05-03 18:41:11.369 | info | 1/ reconnectWithRefreshToken: successful response.statusCode/Message=200/OK
smartgarden.0 | 2022-05-03 18:41:11.093 | info | 1/ reconnectWithRefreshToken!!!!
smartgarden.0 | 2022-05-03 18:41:11.092 | info | 1/ on_close: try reconnectWithRefreshToken
smartgarden.0 | 2022-05-03 18:41:11.091 | info | 1/ on_close: ### closed ### close.code=1001 close.reason=Going away

...

smartgarden.0 | 2022-05-03 16:41:11.115 | info | 1/ on_open: ### connected ###
-- | -- | -- | --
smartgarden.0 | 2022-05-03 16:41:10.850 | info | 1/ reconnectWithRefreshToken: get_websocket ... websocket ok
smartgarden.0 | 2022-05-03 16:41:10.846 | info | 1/ get_websocket successful: response.statusCode/Message=201/Created
smartgarden.0 | 2022-05-03 16:41:10.403 | info | 1/ get_websocket ...
smartgarden.0 | 2022-05-03 16:41:10.403 | info | 1/ reconnectWithRefreshToken: expires_in/timeout/factor:86396 / 86482 / 1.001
smartgarden.0 | 2022-05-03 16:41:10.402 | info | 1/ reconnectWithRefreshToken: refresh_token changed
smartgarden.0 | 2022-05-03 16:41:10.402 | info | 1/ reconnectWithRefreshToken: access token changed
smartgarden.0 | 2022-05-03 16:41:10.402 | info | 1/ reconnectWithRefreshToken: successful response.statusCode/Message=200/OK
smartgarden.0 | 2022-05-03 16:41:03.487 | info | 1/ reconnectWithRefreshToken!!!!
smartgarden.0 | 2022-05-03 16:41:03.486 | info | 1/ on_close: try reconnectWithRefreshToken
smartgarden.0 | 2022-05-03 16:41:03.486 | info | 1/ on_close: ### closed ### close.code=1001 close.reason=Going away

Das mit den zwei Stunden dann Verlust der 'connection' stimmt also wohl. Hoffe, dass er jetzt stabil läuft.

Bleibt noch eine Frage: Welche mower holt er denn über die API rein? Wohl keine Husqvarna, obwohl aus dem gleichen Haus? In der Gardena App habe ich den Husqvarna Mower drin?!

Surfjoerch commented 2 years ago

...das komplexe Passwort hast Du mir schon vor ca. 3 Jahren ausgetrieben ;-)

Mir fehlt grad der Ansatz was ich noch machen kann...

jpgorganizer commented 2 years ago

@Surfjoerch

Mir fehlt grad der Ansatz was ich noch machen kann...

Da es wohl mit dem curl-Kommando geht, tippe ich weiterhin auf Username, Passwort, APIkey, ...

geh mal in deine api.js und such darin mal nach function connect. Etwa 28 Zeilen weiter unten sind zwei Zeilen auskommentiert. Die Zeilen beginnen mit //ju.adapterloginfo. Diese Zeilen schreiben deine Login-Daten im Klartext ins Log. Mach mal vorne die Kommentarzeichen // weg und starte den Adapter. Dann prüf mal, ob diese Angaben im Log mit deinen Daten übereinstimmen. Beim Passwort und APIkey ist hintendran ein Punkt . damit man sieht, ob da ein Leerzeichen dran ist.

Ich will diese Zeilen aber nie in irgendeinem Post sehen!!!! Denk dran die Kommentarzeichen anschließend wieder zu setzen

jpgorganizer commented 2 years ago

ich schließe dieses Issue nun. Der Patch kommt heute.

@Surfjoerch , bist du auch im Forum? Dann sollten wir ggfs. dort weitermachen, denn dein Problem scheint mir nicht dieses Problem hier zu sein. Und es sieht auch nicht danach aus, als ob dieses Problem mehrere User haben.

Surfjoerch commented 2 years ago

@jpgorganizer Für mich entspannend, für Dich sicher interessant: Ich habe heute das Update auf 1.0.6 gemacht und es läuft jetzt :-), direkt nach dem Update und Neustart des Adapters.

So oder so, besten Dank für Deine Unterstützung - die hat ja auf jeden Fall geholfen!

Gundika commented 2 years ago

@jpgorganizer vielen Dank für das update. habe die 1.0.5 version komplett gelöscht und die 1.0.6 anschließend neu aufgespielt. nach eingabe der zugangsdaten in den einstellungen sowie dem api-key hat alles fehlerfrei funktioniert. danke für deine Unterstützung 👍

roller25 commented 2 years ago

Wieso wird mir im IoBroker kein Update angezeigt??

Cosmicbase commented 2 years ago

@jpgorganizer

Vielen Dank für das Update. Bei mir hat zwar der manuelle Austausch der api.js auch geholfen. Aber offiziell ist natürlich immer besser. Wollen hoffen das Du und der Adapter uns lange erhalten bleiben. 👌🙃

bvol commented 2 years ago

patch 1.0.6 ist erst im latest, noch nicht im stable. Da musst Du wohl kurz das repository wechseln, kann nach Einspielen wieder auf stable gewechselt werden.

Am 05.05.2022 um 21:05 schrieb roller25 @.***>:

 Wieso wird mir im IoBroker kein Update angezeigt??

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you were mentioned.

stevie77 commented 2 years ago

Wie ist denn dieser Mechanismus? Wann und von was abhängig wechselt dann eine Version von latest nach stable, so dass man sie ohne Umstellung bekommt?

roller25 commented 2 years ago

recht einfach im Iobroker auf Adapter, dort oben in der Leiste auf den katzenkopf (Installieren aus eigener URL), dann auf github und nach smartgarden suchen. anschließend Adapter neu starten und fertig ;-)

Gruß Michael

bvol commented 2 years ago

@roller25 es geht noch einfacher: Auf Werkzeugschlüssel klicken -> Repositories -> Häkchen bei "beta" setzen -> Auf Adapter gehen -> "Adapter auf Updates prüfen" -> den gewünschten Adapter aktualisieren -> zurück auf Repositories wechseln -> Häkchen wieder bei "stable" setzen -> Feddich

stevie77 commented 2 years ago

Falls das Antworten auf meine Fragen waren: Danke, aber ich wusste bereits, wie man aus latest installiert. Ich hatte nur einmal vergessen das wieder zurück zu stellen und hatte mir dann gleich eine unfertige Version des ioBroker-Admin gezogen, die man auch nicht wieder loswerden konnte. ;-) Mich würde interessieren, wie der Entwickler seinen Code von latest zu stable bringt oder wie das passiert. Wenn man ne Weile warten muss, bis eine Adapter-Version von latest zu stable wechselt, ist das ein Automatismus? Oder reviewt das jemand (ioBroker-Team?) und veröffentlicht es erst dann in stable?

jpgorganizer commented 2 years ago

Mich würde interessieren, wie der Entwickler seinen Code von latest zu stable bringt oder wie das passiert. Wenn man ne Weile warten muss, bis eine Adapter-Version von latest zu stable wechselt, ist das ein Automatismus? Oder reviewt das jemand (ioBroker-Team?) und veröffentlicht es erst dann in stable?

Für jetzt: das kommt schon noch. Aber erst sollte es auch einige Installationen davon geben und idealerweise auch keine Fehlermeldungen :-)

roller25 commented 2 years ago

@bvol o.k. auch nicht schlecht, aber hier führen wohl mehr Wege zur Lösung ;-)

Seitdem Update kein Abbruch!!

DANKE

bvol commented 2 years ago

@jpgorganizer smargarden 1.0.6 aus dem latest läuft bei mir im docker iobroker stabil.

THX!

Am 06.05.2022 um 20:03 schrieb roller25 @.***>:

 @bvol o.k. auch nicht schlecht, aber hier führen wohl mehr Wege zur Lösung ;-)

Seitdem Update kein Abbruch!!

DANKE

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you were mentioned.