Neues Modul: BOTVAC (für Neato BotVac Connected)

Begonnen von vuffiraa, 02 April 2016, 22:12:29

Vorheriges Thema - Nächstes Thema

Faerylnahr

Zitat von: Faerylnahr am 29 August 2020, 17:08:16
...aber bei den Maps hakts bei mir. Ich habe es bisher mit startCleaning map und startCleaning map MAPNAME ausprobiert.
Nun die Frage: Was mache ich verkehrt?
@VuffiRaa: Hast du vielleicht einen Tipp dazu? Habs leider nach wie vor nicht ans Laufen bekommen :S

vuffiraa

Zitat von: Faerylnahr am 04 Oktober 2020, 10:15:24
@VuffiRaa: Hast du vielleicht einen Tipp dazu? Habs leider nach wie vor nicht ans Laufen bekommen :S

Der richtige Befehl wäre:
startCleaning map

Aber vielleicht ist es sinnvoll, wenn du hier mal ein List deines Gerätes in FHEM postest. Dann kann ich schauen, was du hast und was dort unterstützt wird.
Hier gibt es einige unterschiedliche Serviceversionen.

Gruß VuffiRaa
FHEM 5.8 auf Cubietruck, Raspi B+

Weinzierl KNX IP BAOS 770, Homematic, EnOcean

DerNeueUser

Hallo zusammen

Ich hätte noch mal eine Frage zu der Integration des Vorwerk Saugers. Ich nutze den Sauger mit der neuen MyKobolt App und würde ihn gerne in meinen fhem Server einbinden. Mit der aktuellen Version des Moduls ist das leider nur zusammen mit der alten App möglich.

Nun meine Frage, lässt sich das Anmeldeverfahren das für die neue App genutzt wird auch in das Modul integrieren?

Ich habe gesehen, das es für Homebridge eine Lösung gibt die eventuell auch hier passen könnte.

Hier der Link zu der entsprechenden Seite auf GitHub https://github.com/nicoh88/node-kobold.

Ellert

Die Integration der neuen Anmeldung würde ich auch begrüßen.
Es gibt im Moment gerade Störungen in  bei der Anmeldung: https://support.vorwerk.com/hc/de/articles/360014205140
Es ist ein aktuelles Problem, das Datum über dem Artikel ist auch ein Fehler von Vorwerk.

zife

Bin auch betroffen vom "Rauswurf" der Vorwerk-Sauger durch die neue App.Meine Programmierkenntnisse sind leider sehr begrenzt, stelle mich aber gerne als Tester zur Verfügung.
fhem mit EnOcean, Gardena, Vorwerk, Miele und Teufel/Raumfeld-Integration... nur meine Kinder wollen sich damit nicht anständig steuern lassen. Wer weiß Rat?

vuffiraa

Hallo Leute,

ich habe mal geschaut, was ich für die MyKobold Benutzer anbieten kann.
Dazu habe ich eine Entwicklerversion ins Git hochgeladen: https://github.com/fhem/BOTVAC/tree/dev
Im ReadMe ist unten beschrieben, wie man diese Version installiert.

Diese Version ist zum Testen der neuen Anmeldung der MyKobold App gedacht. Bitte nur installieren, wenn ihr eine Kobold besitzt und diesen bereits in der neuen App registriert habt. Also nur, wenn ihr momentan für den Sauger keine Daten in FHEM seht.

Die neue Anmeldung erfolgt durch:

  • set requestVerification
  • set sendVerification <code>

Also zuerst die Anmeldemail anfordern und dann den Code aus der Mail für die Anmeldung benutzen. Mich würde ein Log von der ganzen Prozedur interessieren, verbose = 4 sollte reichen. Im Log werden auch einige Tokens auftauchen, diese solltet ihr hier nicht posten, aber ich will wissen, ob sie da sind...

Einen schönen Abend!
VuffiRaa

FHEM 5.8 auf Cubietruck, Raspi B+

Weinzierl KNX IP BAOS 770, Homematic, EnOcean

Ellert

Die Anmeldung scheint zu funktionieren, get Products liefert einige Daten zurück.

Readings gibt es nicht ausser
Zitatstate     Password missing (see instructions)

Hier das Log:
Zitat2020.11.02 05:21:41 2: BOTVAC set VR300 requestVerification
2020.11.02 05:21:41 4: BOTVAC VR300: Read password from file
2020.11.02 05:21:41 3: BOTVAC VR300: No password in file
2020.11.02 05:21:41 4: BOTVAC VR300: REQ requestVerification
2020.11.02 05:21:41 4: BOTVAC VR300: RCV requestVerification
2020.11.02 05:21:41 4: BOTVAC VR300: RES requestVerification - {"_id":"GELÖSCHT","email":"GELÖSCHT","email_verified":false}
2020.11.02 05:22:08 4: BOTVAC VR300: Read password from file
2020.11.02 05:22:08 3: BOTVAC VR300: No password in file
2020.11.02 05:22:08 4: BOTVAC VR300: register account
2020.11.02 05:22:08 4: BOTVAC VR300: successors 0: messages,getRobotState, 1: messages,getSchedule
2020.11.02 05:22:08 4: BOTVAC VR300: Read password from file
2020.11.02 05:22:08 3: BOTVAC VR300: No password in file
2020.11.02 05:22:08 4: BOTVAC VR300: REQ sessions
2020.11.02 05:22:08 4: BOTVAC VR300: successors 0: messages,getRobotState, 1: messages,getSchedule
2020.11.02 05:22:26 2: BOTVAC set VR300 sendVerification GELÖSCHT
2020.11.02 05:22:26 4: BOTVAC VR300: Read password from file
2020.11.02 05:22:26 3: BOTVAC VR300: No password in file
2020.11.02 05:22:26 4: BOTVAC VR300: REQ sendVerification/GELÖSCHT
2020.11.02 05:22:28 4: BOTVAC VR300: RCV sendVerification/GELÖSCHT
2020.11.02 05:22:28 4: BOTVAC VR300: RES sendVerification/GELÖSCHT - {"access_token":"GELÖSCHT","id_token":"GELÖSCHT","scope":"openid profile email","expires_in":86400,"token_type":"Bearer"}
2020.11.02 05:22:28 4: BOTVAC VR300: Read password from file
2020.11.02 05:22:28 3: BOTVAC VR300: No password in file
2020.11.02 05:22:28 4: BOTVAC VR300: REQ profileLogin
2020.11.02 05:22:28 4: BOTVAC VR300: RCV profileLogin
2020.11.02 05:22:28 4: BOTVAC VR300: RES profileLogin - {"contactDetails":{"email":"GELÖSCHT","allowContactByPhone":false,"allowContactByEmail":false,"allowContactByVisitation":false},"verificationDetails":{"emailVerified":true,"phoneVerified":false},"consents":[{"id":GELÖSCHT,"status":"VALID","state":"ACCEPTED","configuration":{"id":3,"type":"TOS","name":"Terms of services","version":"1.0","url":"https://kobold-docs.s3.eu-central-1.amazonaws.com/Nutzungsbedingungen_MyKobold_App_1_0.pdf","effectiveDate":"2019-10-29","mandatory":true,"enabled":true}},{"id":239297,"status":"VALID","state":"ACCEPTED","configuration":{"id":67,"type":"PP","name":"Data privacy","version":"3.0","url":"https://kobold-docs.s3.eu-central-1.amazonaws.com/int/privacy-policy-DE_3_0.pdf","effectiveDate":"2020-08-21","mandatory":true,"enabled":true}}],"reminders":[{"id":34730,"reminderId":"YEARLY_SERVICE","frequencyPeriod":"P1Y","desiredDate":"2021-08-29","notificationEnabled":true}],"profileLevel":{"points":0,"level":0},"profileSettings":{"robotsImportPerformed":true,"registered":false,"market":"DE"}}
2020.11.02 05:22:28 4: BOTVAC VR300: Read password from file
2020.11.02 05:22:28 3: BOTVAC VR300: No password in file
2020.11.02 05:22:28 4: BOTVAC VR300: REQ getProducts
2020.11.02 05:22:28 4: BOTVAC VR300: RCV getProducts
2020.11.02 05:22:28 4: BOTVAC VR300: RES getProducts - [{"id":106847,"productId":"VR220","name":"James","purchaseDate":GELÖSCHT,"serialNo":"GELÖSCHT","reminders":[{"id":154182,"reminderId":"VR220-VR200-SB-REPLACEMENT_PART","productId":106847,"frequencyPeriod":"P10M","desiredDate":"2021-06-29","notificationEnabled":false,"configuration":{"id":"VR220-VR200-SB-REPLACEMENT_PART","productId":"VR220-VR200-SB","name":"VR200/VR300 Seitenbürste (Empfohlene Verschleissprüfung)","categoryId":"REPLACEMENT_PART","initialFrequency":"P10M","shopTargetUrl":"https://kobold.vorwerk.de/shop/seitenbuerste-vr200?utm_source=Mykobold&utm_medium=App&utm_campaign=Organic_App_Mykobold_Performance_Mykobold_App_Accessories_mykobold-spare-parts&utm_content=Performance_Mykobold_mykobold-spare-parts_x_x_x","helpUrl":"https://support.vorwerk.com/hc/de/articles/360003557439"}}]}]

bombardi

#757
Das kommt bei mir nach dem SendVerification
2020.11.03 11:58:40 2: BOTVAC set WallE sendVerification VERCODE
2020.11.03 11:58:40 4: BOTVAC WallE: Read password from file
2020.11.03 11:58:40 4: BOTVAC WallE: REQ sendVerification/VERCODE
2020.11.03 11:58:41 4: BOTVAC WallE: RCV sendVerification/VERCODE
2020.11.03 11:58:41 4: BOTVAC WallE: RES sendVerification/VERCODE - {"access_token":"XX","scope":"openid profile email","expires_in":86400,"token_type":"Bearer"}
2020.11.03 11:58:41 4: BOTVAC WallE: Read password from file
2020.11.03 11:58:41 4: BOTVAC WallE: REQ profileLogin
2020.11.03 11:58:41 4: BOTVAC WallE: RCV profileLogin
2020.11.03 11:58:41 4: BOTVAC WallE: RES profileLogin - {"contactDetails":{"email":"MAILADR","allowContactByPhone":false,"allowContactByEmail":false,"allowContactByVisitation":false},"verificationDetails":
{"emailVerified":true,"phoneVerified":false},"consents":
[{"id":GELÖSCHT,"status":"VALID","state":"ACCEPTED","configuration":{"id":67,"type":"PP","name":"Data privacy","version":"3.0","url":
"https://kobold-docs.s3.eu-central-1.amazonaws.com/int/privacy-policy-DE_3_0.pdf","effectiveDate":"2020-08-21","mandatory":true,"enabled":true}},
{"id":172749,"status":"VALID","state":"ACCEPTED","configuration":{"id":3,"type":"TOS","name":"Terms of services","version":"1.0","url":
"https://kobold-docs.s3.eu-central-1.amazonaws.com/Nutzungsbedingungen_MyKobold_App_1_0.pdf","effectiveDate":"2019-10-29","mandatory":true,"enabled":true}}],"reminders":
[{"id":33733,"reminderId":"YEARLY_SERVICE","frequencyPeriod":"P1Y","desiredDate":"2021-08-28","notificationEnabled":true}],"profileLevel":{"points":0,"level":0},"profileSettings":
{"robotsImportPerformed":true,"registered":false,"market":"DE"}}
2020.11.03 11:58:41 4: BOTVAC WallE: Read password from file
2020.11.03 11:58:41 4: BOTVAC WallE: REQ getProducts
2020.11.03 11:58:41 4: BOTVAC WallE: RCV getProducts
2020.11.03 11:58:41 4: BOTVAC WallE: RES getProducts - [{"id":104474,"productId":"VR220","name":"Wall-E","purchaseDate":GELÖSCHT,"serialNo":"GELÖSCHT","reminders":
[{"id":150446,"reminderId":"VR220-VR200-SB-REPLACEMENT_PART","productId":104474,"frequencyPeriod":"P10M","desiredDate":"2021-06-28","notificationEnabled":false,"configuration":
{"id":"VR220-VR200-SB-REPLACEMENT_PART","productId":"VR220-VR200-SB","name":
"VR200/VR300 Seitenbürste (Empfohlene Verschleissprüfung)","categoryId":"REPLACEMENT_PART","initialFrequency":"P10M","shopTargetUrl":
"https://kobold.vorwerk.de/shop/seitenbuerste-vr200?utm_source=Mykobold&utm_medium=App&utm_campaign=
Organic_App_Mykobold_Performance_Mykobold_App_Accessories_mykobold-spare-parts&utm_content=Performance_Mykobold_mykobold-spare-parts_x_x_x",
"helpUrl":"https://support.vorwerk.com/hc/de/articles/360003557439"}}]}]
2020.11.03 11:58:41 4: BOTVAC WallE: Read password from file
2020.11.03 11:58:41 4: BOTVAC WallE: REQ messages/getRobotState
2020.11.03 11:58:41 4: BOTVAC WallE: successors 0: messages,getSchedule
2020.11.03 11:58:42 4: BOTVAC WallE: RCV messages/getRobotState
2020.11.03 11:58:42 4: BOTVAC WallE: successors 0: messages,getSchedule

Es wäre super, wenn du die Verbindung wieder aufbauen kannst.
Teste auch gerne.

LG
Bombardi

vuffiraa

Schönen guten Abend!

Die nächste Runde für die mutigen Koboldbesitzer  ;)

Die neue Version im Git liest jetzt noch mehr Daten über die neue Schnittstelle. Damit sollten auch wieder Daten im Modul zu sehen sein. Wie weit die Steuerung wieder geht, müsst ihr mal testen.

Ansonsten sollte es eigentlich ohne neue Anmeldung funktionieren, aber wenn es hakt, einfach noch mal die Anmeldung über die Email durchspielen.

Viele Grüße,
VuffiRaa
FHEM 5.8 auf Cubietruck, Raspi B+

Weinzierl KNX IP BAOS 770, Homematic, EnOcean

Ellert

Sieht schon ziemlich gut aus. Ich habe nicht alles getestet.

findMe o.k.
map_.* Readings vorhanden
get statistics o.k. für alle 20 maps o.k.

Aufgefallen ist mir, dass das Reading total_charges fehlt.

Die Services werden auf den ersten Blick auch alle angeboten.
Zitat
2020.11.10 20:02:40 4: BOTVAC VR300: RES messages/getRobotState - {"version":1,"reqId":"0","result":"ok","data": {},"error":null,"alert":null,"state":1,"action":0,"cleaning": {"category":0,"mode":2,"modifier":1,"navigationMode":1,"spotWidth":0,"spotHeight":0},"details": {"isCharging":true,"isDocked":true,"isScheduleEnabled":true,"dockHasBeenSeen":false,"charge":98},"availableCommands": {"start":true,"stop":false,"pause":false,"resume":false,"goToBase":false},"availableServices": {"findMe":"basic-1","generalInfo":"basic-1","houseCleaning":"basic-4","IECTest":"advanced-1","logCopy":"basic-1","manualCleaning":"basic-1","maps":"basic-2","preferences":"basic-2","schedule":"basic-2","softwareUpdate":"basic-1","spotCleaning":"basic-1","wifi":"basic-1"},"meta": {"modelName":"VR220","firmware":"4.6.1-102"}}

choenig

Hi,

da wollte ich gerade antworten, da hat das Forum mir mitgeteilt, dass jemand 'schneller' war  ;)

Mit dem dev-Modul läuft mein VR200 jetzt auch wieder und ist steuerbar *juhu* (also mindestens `startCleaning` und `stop`, mehr brauch ich nicht) :)

Vielen Dank!
LG
Christian

vuffiraa

Zitat von: Ellert am 10 November 2020, 20:30:31
Sieht schon ziemlich gut aus. Ich habe nicht alles getestet.

findMe o.k.
map_.* Readings vorhanden
get statistics o.k. für alle 20 maps o.k.

Aufgefallen ist mir, dass das Reading total_charges fehlt.

Die Services werden auf den ersten Blick auch alle angeboten.

Schön zu lesen, dass es wieder geht  :)

Das fehlende Reading gehört zum Service generalInfo. Kannst du mal schauen, wie die Antwort auf die entsprechende Anfrage aussieht? Im Log sollte etwas stehen, wie RES messages/getGeneralInfo. Das Stück JSON danach interessiert mich.

Viele Grüße,
VuffiRaa
FHEM 5.8 auf Cubietruck, Raspi B+

Weinzierl KNX IP BAOS 770, Homematic, EnOcean

Ellert

Zitat von: vuffiraa am 10 November 2020, 21:45:16
Schön zu lesen, dass es wieder geht  :)

Das fehlende Reading gehört zum Service generalInfo. Kannst du mal schauen, wie die Antwort auf die entsprechende Anfrage aussieht? Im Log sollte etwas stehen, wie RES messages/getGeneralInfo. Das Stück JSON danach interessiert mich.

Viele Grüße,
VuffiRaa
Hat sich erledigt, das Reading batteryTotalCharges und alle anderen battery.* Readings sind inzwischen aufgetaucht.

Danke für die Anpassungen.

Ellert

Nach einem FHEM Neustart gibt es noch den Hinweis
Zitatstate: Password missing (see instructions)

Für die neue Anmeldevariante ist der Hinweis ja nicht mehr relevant.

bombardi

Nachdem es jetzt auch bei mir problemlos funktioniert noch eine Frage.
Muss man weiter den Dev Zweig verwenden oder ist jetzt alles auch mit dem Master Zweig integriert.
Sonst muss ich nach einem "Update all" immer nochmal daran denken den DEV Zweig nachzuladen.
Oder gibt es eine Möglichkeit die ich übersehen/überlesen habe, dass er zum Update immer den DEV Zweig verwendet ?