Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. [Tester gesucht] Roborock-API

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    [Tester gesucht] Roborock-API

    This topic has been deleted. Only users with topic management privileges can see it.
    • R
      rovo89 last edited by

      Hallo zusammen, ich fange gerade mit ioBroker an und habe festgestellt dass ich meinen neuen Roborock S7 nicht so wirklich gut einbinden kann. Alles was ich bisher gefunden habe setzt die Mi Home-App und ein schwierig zu beschaffendes Token voraus. Ich würde aber gerne bei der spezialisierten Roborock-App bleiben und habe mir die deswegen mal genauer angeschaut. Mit viel Detektivarbeit konnte ich die Aufrufe weitestgehend entschlüsseln.

      Herausgekommen sind dabei bisher zwei Skripte, die sich erstmal nur an technisch Versierte richten:
      https://gist.github.com/rovo89/dff47ed19fca0dfdda77503e66c2b7c7

      Mit node login.js 'user@example.org' 'password' meldet man sich zunächst bei euiot.roborock.com an und erhält ein JSON mit seinen Benutzerdaten. Die werden in userdata.json zwischengespeichert. Diese Daten enthalten u.a. URL und Anmeldedaten für eine zweite API (bei mir immer api-eu.roborock.com), von der hauptsächlich die Liste der Geräte abgerufen wird. Diese Infos enthalten u.a. die Device-ID und einen "localKey" - keine Ahnung ob das das Token wäre das man für andere Adapter braucht?!?

      Jedenfalls kann man anschließend node test.js ausführen, was anhand dieser Daten eine MQTT-Verbindung zu den Roborock-Servern herstellt. Es gibt pro Gerät ein "Input"-Topic zum Senden von Requests und ein "Output"-Topic zum Empfangen der Antworten. Letztendlich sind die Requests JSONs in der Art {"t":1657015047,"dps":{"101":"{\"id\":1,\"method\":\"get_prop\",\"params\":[\"get_status\"]}"}}, was wohl auch bei anderen Implementierungen der Fall ist. Das Ganze wird dann noch verschlüsselt, mit Headern versehen etc. und bei den Antworten genau umgekehrt. Karten (get_map_v1) sind nochmal zusätzlich verschlüsselt, am Ende kommen binäre Daten beginnend mit "rr" dabei heraus die auch im Mapviewer angezeigt werden können.

      Als Beispiel wird in dem Skript das erste Geräte nach dem Status und seiner Karte gefragt und die Daten angezeigt. Es ist also ein Proof of Concept, das später entweder ein eigenständiger Adapter oder Teil eines bestehenden werden soll. Wenn jemand dabei helfen möchte: sehr gerne!

      Mag jemand die Skripte mal testen? Voraussetzung sind nur ein Roborock, der in die Roborock-App (nicht Mi Home!) eingebunden ist, NodeJS (bei mir Version 16) und etwas technisches Verständnis. Skripte einfach herunterladen (oben rechts ist ein "Download ZIP"-Button) und wie beschrieben. Danke für euer Feedback!

      Meistertr S P Acgua 4 Replies Last reply Reply Quote 14
      • Meistertr
        Meistertr Developer @rovo89 last edited by

        @rovo89 ich bin unfassbar beeindruckt, ich habe Tage (wenn nicht sogar Wochen) davor gesessen und bin einfach nicht weiter gekommen. Meinen größten Respekt dafür!!! Das ist das wo ich schon seit 2 Jahren drauf warte. Würde es aber nicht in die Mihome app integrieren da Roborock und "Xiaomi" mittlerweile zu weit auseinander driften und ein Roborock Adapter eine bessere Wiedererkennung bietet.
        Werde es gleich Testen und mir ein Bild machen.

        wenn du möchtest kann ich gerne einen Basisadapter fertigmachen oder umgekehrt und ich untertütze wo ich kann,. An dem Projekt liegt mir sehr viel...

        da_Woody R 2 Replies Last reply Reply Quote 6
        • Meistertr
          Meistertr Developer last edited by

          Erster test verlief super. Habe 2 roborocks in der mihome und einen 'Schläfer' in der roborock app. Einen s7,s5 und einen s5max

          1 Reply Last reply Reply Quote 1
          • da_Woody
            da_Woody @Meistertr last edited by

            @meistertr sagte in [Tester gesucht] Roborock-API:

            wenn du möchtest kann ich gerne einen Basisadapter fertigmachen oder umgekehrt und ich untertütze wo ich kann,. An dem Projekt liegt mir sehr viel...

            das wäre sicher was feines! ich hab im moment wieder das canvas problem seit dem js update und somit wird die karte wieder mal nicht upgedatet. vllt ist das problem dann auch geschichte?

            Meistertr 1 Reply Last reply Reply Quote 0
            • Meistertr
              Meistertr Developer @da_Woody last edited by

              @da_woody das ist kein Fehler, liegt auch nicht am Adapter sondern an canvas selbst da offiziell nur eine geringe anzahl von Plattformen und Systemen unterstützt wird. wird aber auch dran gearbeitet und gehört hier nicht hin

              da_Woody 1 Reply Last reply Reply Quote 0
              • da_Woody
                da_Woody @Meistertr last edited by

                @meistertr ich hab ja nicht behauptet, daß es am adapter liegt. wollte auch keine diskussion darüber anzetteln, nur meine hoffnung zum ausdruck bringen, daß mit dem neuen adapter das problem erledigt ist.
                sorry, wenn du das falsch interpretiert hast. 🙂

                1 Reply Last reply Reply Quote 0
                • R
                  rovo89 @Meistertr last edited by

                  @meistertr sagte in [Tester gesucht] Roborock-API:

                  ich bin unfassbar beeindruckt, ich habe Tage (wenn nicht sogar Wochen) davor gesessen und bin einfach nicht weiter gekommen. Meinen größten Respekt dafür!!! Das ist das wo ich schon seit 2 Jahren drauf warte.

                  Hehe danke. Ich habe recht viel Erfahrung mit sowas, aber trotzdem hat es eine ganze Weile gedauert. Ich hatte schon befürchtet dass das Ergebnis keinen außer mich interessiert, weil erstmal keine Reaktion kam.

                  Würde es aber nicht in die Mihome app integrieren da Roborock und "Xiaomi" mittlerweile zu weit auseinander driften und ein Roborock Adapter eine bessere Wiedererkennung bietet.

                  OK, ich denke auch dass es nur wenig Überlappung gibt.

                  wenn du möchtest kann ich gerne einen Basisadapter fertigmachen oder umgekehrt und ich untertütze wo ich kann,. An dem Projekt liegt mir sehr viel...

                  Danke! Ich mache gerade verschiedene Sachen gleichzeitig, Priorität hat gerade dass ich meine selbstgebaute Bewässerung einbinde. Dafür habe ich schon mit dem Wizard die Struktur erstellt und schaue mir an dem Beispiel an wie die wichtigsten Sachen funktionieren. Danach würde ich dann damit anfangen, dass ich anhand der API die Objekte/States anlege. Wenn ich Fragen habe melde ich mich, insbesondere wie man den Login realisiert und die Daten sicher speichert wird bestimmt knifflig.

                  1 Reply Last reply Reply Quote 0
                  • Meistertr
                    Meistertr Developer last edited by

                    ich mache grade 2 sachen. Spiele mit der api, (hab ein modul aus dem code gemacht, was sich leicht in adapter einbinden lässt) und zum anderen arbeite ich gerade an der Kartendarstellung, da die neueren mehr dastellen können als die älteren geräte

                    D M-A Hueb 2 Replies Last reply Reply Quote 3
                    • D
                      DonToben @Meistertr last edited by

                      @meistertr
                      Sehr interessant, das alles zu lesen.

                      Wie ist eure Abschätzung? Wird es einen Adapter mit der Roborock Cloud für die Saugroboter geben, oder ist das technisch nicht möglich?

                      Danke und VG

                      Meistertr 1 Reply Last reply Reply Quote 0
                      • Meistertr
                        Meistertr Developer @DonToben last edited by

                        @dontoben 2022-08-06_06h27_11.png

                        D C 2 Replies Last reply Reply Quote 4
                        • D
                          DonToben @Meistertr last edited by

                          @meistertr said in [Tester gesucht] Roborock-API:

                          @dontoben 2022-08-06_06h27_11.png

                          Super, dann werde ich jetzt auch Roborock Kunde.
                          Echt Klasse, was hier hier in eurer Freizeit leistet. Respekt.

                          1 Reply Last reply Reply Quote 0
                          • D
                            DarkDevil last edited by

                            Lässt sich der Adapter schon irgendwie testen?

                            Meistertr 1 Reply Last reply Reply Quote 0
                            • Meistertr
                              Meistertr Developer @DarkDevil last edited by

                              @darkdevil ne noch nicht

                              1 Reply Last reply Reply Quote 0
                              • A
                                ArnoD last edited by

                                Habe mir eine Roborock S7 MaxV gekauft und habe diesen mit dem mihome-vacuum Adapter und der Xiaomi Home App in iobroker eingebunden.
                                Doch leider lassen sich dann einige Funktionen, die nur in der Roborock App verfügbar sind, nicht nutzen.

                                Hätte gerade versucht dafür eine Lösung zu finden und habe dieses Thema gefunden.
                                Ich habe sehr großes Interesse an diesem Adapter und könnte mit testen unterstützen, wenn es euch hilft.

                                1 Reply Last reply Reply Quote 0
                                • M-A Hueb
                                  M-A Hueb @Meistertr last edited by

                                  @meistertr

                                  Moin. Könntest du die Module zum download veereitsstellen? Würde gerne auch damit spielen. Danke

                                  da_Woody M-A Hueb 2 Replies Last reply Reply Quote 0
                                  • da_Woody
                                    da_Woody @M-A Hueb last edited by

                                    @m-a-hueb ersten post nicht gelesen? github... 😉

                                    1 Reply Last reply Reply Quote 0
                                    • H
                                      hausautomation.digital last edited by

                                      Da wartet mein S7+ schon lange!! Mit den anderen Adaptern und der China-Wolke bin ich nicht klar gekommen. Dann werde ich mal githup besuchen...

                                      1 Reply Last reply Reply Quote 0
                                      • M-A Hueb
                                        M-A Hueb @M-A Hueb last edited by

                                        @da_Woody ich meinte eigentlich den Adapter von @Meistertr

                                        da_Woody 1 Reply Last reply Reply Quote 0
                                        • da_Woody
                                          da_Woody @M-A Hueb last edited by

                                          @m-a-hueb sorry, aber auf github gibts halt die verschiedenen.
                                          hier gehts um dir robo-api, und nicht um xiaomi...

                                          M-A Hueb 1 Reply Last reply Reply Quote 0
                                          • M-A Hueb
                                            M-A Hueb @da_Woody last edited by

                                            @da_woody ich mein ja die roborock. Nur obs die Möglichkeit gibt die direkt als adapter via github zu installieren

                                            M-A Hueb 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            532
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            42
                                            81
                                            19279
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo