Externe Integration für DREAME Saug- und Wischroboter beantragen

Alles ist im Titel enthalten!

Hallo @Chris75!

Ich mach mich dran, aber ich habe keine Dreame-Ausrüstung, also wirst du mein offizieller Tester sein :wink:

@guim31 super, kein Problem, aber du musst mir sagen, wie ich es testen soll, denn ich habe keine andere Gladys-Instanz außer der in der Produktion!

Mach dir keine Sorgen, wir werden nichts kaputt machen :wink: Das ist ja gerade der Sinn von externen Integrationen, die Gladys selbst nicht beschädigen!

Ich werde dir sagen, wie man es macht

@Chris75 !

Erste Version der Dreame-Integration bereit zum Testen. Sie ist noch nicht im Katalog (sie wird in v1 aufgenommen, sobald sie validiert ist), aber sie lässt sich direkt von GitHub installieren. Also, du wirst mir sagen, ob sie funktioniert :slightly_smiling_face:

Installation (Gladys 4.86 oder neuer)

  1. In Integrationen, Karte « Von GitHub installieren », füge die Adresse https://github.com/guim31/gladys-dreame ein und klicke auf Installieren.
  2. In der Konfiguration der Integration, Feld Aktionen, fülle « Konto verknüpfen » aus: die E-Mail (oder die Telefonnummer) und das Passwort deines Dreamehome-Kontos, und die Region Europa. Wenn dein Konto mit Google, Apple oder einem per SMS erhaltenen Code erstellt wurde, hat es kein Passwort: lege zuerst eines in der Dreamehome-App fest.
  3. Registerkarte Entdeckung: füge deinen Roboter hinzu.

Das Passwort wird nie gespeichert: nur der Fingerabdruck, den die Dreamehome-App selbst sendet, wird gespeichert, um sich ohne erneute Abfrage zu verbinden. Updates werden dann über den üblichen Gladys-Button bereitgestellt.

Was du sehen solltest: den Status (aufladen, reinigen, zur Basis zurückkehren…), die Batterie, eine klare Fehlermeldung, die Saugkraft, die Tasten zur Basis zurückkehren, Pause und « lokalisieren », die Liste deiner Räume (die Auswahl eines startet die Reinigung), eine Taste pro Shortcut der Dreamehome-App, und den Verschleiß der Verbrauchsmaterialien (Bürsten, Filter, Wischtücher…).

Was mir helfen würde

  • Starte und stoppe eine Reinigung über die Dreamehome-App: verfolgt Gladys dies in Echtzeit?
  • Starte eine Reinigung, eine Rückkehr zur Basis, einen Raum und einen Shortcut über Gladys.
  • Vor allem: starte die Aktion « Diagnose » (selbes Aktionsfeld) und füge das Ergebnis hier ein. Es enthält keine E-Mail, keine Kennung, keinen Raumnamen: nur das Modell, die Firmware und die Rohdaten, die dein Roboter zurücksendet. Das wird mir sagen, ob alles zu deinem Modell passt.

Bekannte Einschränkung dieser ersten Version: die Wahl zwischen Saugen allein / Waschen und der Wasserfluss lassen sich noch nicht über Gladys einstellen. Ihre Kodierung variiert je nach Modell, und ich möchte nicht riskieren, deine Einstellungen zu überschreiben. In der Zwischenzeit erledigt ein Shortcut der Dreamehome-App das sehr gut.

@Pat, wenn du deinen Dreame-Saugwischer testen möchtest, bist du auch herzlich willkommen!

ok, ich werde es testen, in der Hoffnung, dass der Roboter nicht die Wände wäscht !!!

Das wäre ja cool! :grin:

Okay, es hängt beim Passworteingabe-Feld: Ich kann keine Zeichen eingeben!

Das fängt ja gut an :stuck_out_tongue:

Das ist korrigiert, du kannst „Update erzwingen“ ausführen, um die Version 0.2.1 zu erhalten :wink:

Hier ist mein erstes Feedback:

  • was funktioniert: « Betriebszustand », « Rückkehr zur Basis », « Roboter lokalisieren », « Status von: Filter, Seitenbürste, Hauptbürste, Sensoren, Batterie »,

  • was teilweise funktioniert:

  • « Pause »-Taste: Wenn der Roboter läuft, setzt ein Druck auf « Pause » ihn tatsächlich in den Pausenzustand. Allerdings lässt ein weiterer Druck ihn nicht wieder anlaufen

  • Fehlende Rubriken:

  • « Saugkraft »: Ich habe 4 Stufen: leise, standard, intensiv, max

  • « Waschkraft »: Ich habe 4 Stufen: schnell, standard, intensive Bodenreinigung, tiefenreinigung

  • « Raumliste »

  • « App-Shortcut-Taste »

Ich habe « die 3 Shortcut-Tasten » nicht getestet, weil ich nicht weiß, was das bedeutet?
Ich habe « den Betriebsmodus » nicht getestet, weil ich nicht weiß, was das bedeutet?
Ich habe « den Reinigungsmodus » nicht getestet, weil ich nicht weiß, was das bedeutet?

Ich sende dir die Diagnose in der nächsten Nachricht

Dreame-Diagnose (gladys-dreame 0.2.1, Node v24.21.0)
Konto: verknüpft, Region eu (Europa)
Geräte im Konto: 1 (1 Roboterstaubsauger)

Roboter 1: dreame.vacuum.r2449a (bekanntes Modell)
Firmware: 4.3.9_1771; Zustandszählung: neu
Gerätelistenfelder: battery, bindDomain, btnMode, calltag, createTime, customName, devBindTime, deviceInfo, did, featureCode, featureCode2, groupId, groupName, groupType, id, keyDefine, lang, latestStatus, mac, master, masterName, masterUid, masterUid2UUID, model, online, permissions, property, region, roomName, sharedStatus, sharedTimes, sn, subModel, updateTime, vendor, ver, videoStatus
Online (Geräteliste): true
Echtzeitkanal: verbunden, 441 Nachricht(en) empfangen
Beantwortete Eigenschaften: 17/32
Werte: 2.1=13 2.2=0 3.1=100 3.2=1 4.1=14 4.4=1 4.5=2 4.7=0 4.17=0 4.23=3841 4.25=0 9.2=70 10.2=14 11.1=3 16.1=84 30.2=0

Danke @Chris75, super Rückmeldung! Gute Nachricht: Die Verbindung und die Echtzeitfunktion funktionieren (441 Nachrichten von deinem Roboter erhalten :+1:).

Einige Erklärungen, weil Gladys einen generischen Namen anzeigt, wenn eine Funktion allein ihrer Art ist:

  • Betriebsmodus = Reinigung starten / stoppen (Reinigen / Pause).
  • Reinigungsmodus = die Saugkraft: Leise = leise, Auto = Standard, Tiefenreinigung = intensiv, Saugen = max (die anderen Optionen der Liste werden abgelehnt).
  • Text = die Fehlermeldung des Roboters.
  • Die 3 Buttons « Shortcut - … » sind deine Shortcuts der Dreamehome-App (Reinigung 1, Zimmerreinigung…): Ein Klick startet den Shortcut mit allen Einstellungen. Du kannst es testen!

Du kannst diese Zeilen in der Konfiguration deiner Box im Dashboard umbenennen.

Die Version 0.2.2 ist gerade erschienen (Update-Button der Integration):

  • Pause: Ein zweiter Klick startet den Roboter jetzt neu.
  • Neue Liste « Reinigungsroute »: Schnell / Standard / Intensiv / Tiefenreinigung. Ist das das, was du mit „Waschkraft“ meinst? Du musst den Roboter im Tab Entdeckung entfernen und wieder hinzufügen, um ihn erscheinen zu sehen.

Bei den Räumen fehlt mir das Ende der Diagnose: Der Ergebnisblock scrollt, du hast nur den oberen Teil kopiert. Führe die Diagnose nach dem Update erneut durch, scrolle den Block bis nach unten (oder klicke darauf und drücke Strg+A) und füge alles ein, besonders die Zeilen « Map ».

Hier mein zweites Feedback:

  • Die „Pause/Weiter“-Taste funktioniert gut

  • Der „Kurztaste - Reinigung 1“-Knopf funktioniert gut (die anderen beiden habe ich nicht getestet)

  • Der „Reinigungsmodus“ entspricht der „Saugkraft“ (Name ändern, falls möglich) und in der Liste, falls du die Namen ändern kannst, „auto“ in „Standard“, „tiefenreinigung“ in „intensiv“, „saugen“ in „max“. Entferne aus dieser Liste „schnell“, „geräuscharm“, „Wischfunktion“, die nichts tun. Sortiere diese Liste in dieser Reihenfolge: leise, standard, intensiv, max

  • Die Liste „Auswahl“, die du „Reinigungsroute“ nennst, entspricht „Bodenwäsche“ (Name ändern, falls möglich): Die vier Einträge „schnell“, „standard“, „intensiv“, „tiefenreinigung“ sind korrekt und in der richtigen Reihenfolge

  • Es fehlt also die Liste der Räume

  • In der Saugeinstellung gibt es eine Einstellung, die „Route“ heißt, mit zwei Werten: Schnell und Standard

Ich sende dir die vollständige Diagnose in der nächsten Nachricht

Dreame Diagnose (gladys-dreame 0.2.2, Node v24.21.0)
Konto: verknüpft, Region eu (Europa)
Geräte auf dem Konto: 1 (1 Roboterstaubsauger)

Roboter 1: dreame.vacuum.r2449a (bekanntes Modell)
Firmware: 4.3.9_1771; Zustandszählung: neu
Gerätelistenfelder: battery, bindDomain, btnMode, calltag, createTime, customName, devBindTime, deviceInfo, did, featureCode, featureCode2, groupId, groupName, groupType, id, keyDefine, lang, latestStatus, mac, master, masterName, masterUid, masterUid2UUID, model, online, permissions, property, region, roomName, sharedStatus, sharedTimes, sn, subModel, updateTime, vendor, ver, videoStatus
Online (Geräteliste): true
Echtzeitkanal: verbunden, 691 Nachricht(en) empfangen
Eigenschaften beantwortet: 18/33
Werte: 2.1=8 2.2=68 3.1=100 3.2=1 4.1=14 4.4=1 4.5=1 4.7=0 4.17=0 4.23=3842 4.25=2 9.2=69 10.2=14 11.1=3 16.1=83 30.2=0
Fehlend: 18.1 17.1 19.2 20.1 24.1 25.2 26.2 29.2 31.2 32.1 33.2 35.2 36.2 37.2 38.2
Einstellungen (4.50): DetergentNote=1 MeticulousTwist=-7 LacuneMopScalable=0 SmartAutoMop=-1 MopScalable2=0 ExtrFreq=2 SuperWash=0 SuctionMax=0 MonitorPromptLevel=2 RobotCarpetPressEnable=-1 PetPartClean=0 MonitorHumanFollow=0 MopEffectSwitch=1 SmartHost=0 MopEffectState=2 MopExtrSwitch=1 UVLight=1 MopScalableVersion=0 FluctuationConfirmResult=0 StainIdentify=1 SbrushExtrSwitch=1 LessColl=1 AutoDry=1 CarpetOnlyClean=1 CleanType=0 SmartDrying=0 SmartCharge=1 FluctuationTestResult=0 MopFullyScalable=1 SmartAutoWash=0 CarpetFineClean=0 HotWash=1 BackWashType=1 MaterialDirectionClean=0 FillinLight=1 CleanRoute=1
Gladys-Zustand berechnet: 6
Shortcuts: 3
Räume: 0 (Typen -; 0 mit einem benutzerdefinierten Namen)
Karte IV: bekannt
Karte: Kartenanfrage akzeptiert, Standort in der Antwort: Dateiname
Karte: Kartendatei heruntergeladen (19788 Zeichen)
Karte: Karte decodiert: 325x251, 0 Raum(e)

Danke @Chris75, deine vollständige Diagnose hat mir den Schlüssel gegeben :+1:

  • Räume : Deine Karte kommt gut an, aber in deinem Modell ist die Liste der Räume in der gespeicherten Karte verschachtelt, eingebettet in die aktuelle Karte. Die 0.2.3 holt sie von dort.
  • Saugkraft : Die Liste „Reinigungsmodus“ ist eine Liste, die von Gladys vorgegeben wird (ich kann ihre Auswahl weder umbenennen noch entfernen). Ich habe sie durch eine echte Liste „Saugkraft“ ersetzt: Leise, Standard, Intense, Max, in dieser Reihenfolge.
  • „Bodenwäsche“ : Die Liste heißt jetzt so wie in deiner App. Der „Weg“ Schnell/Standard auf der Saugseite ist dieselbe Einstellung: bei reiner Saugkraft bietet die App nur diese beiden Werte an.

Um es zu nutzen: Aktualisiere die Integration, dann lösche und füge den Roboter im Entdeckungs-Tab hinzu (die neuen Listen erscheinen nur bei der Erstellung des Geräts). Sag mir, ob deine Räume angezeigt werden, und teste eine Raumreinigung. Wenn sie noch fehlen, schick mir einfach die „Karte“-Zeilen der Diagnose.

Nochmals danke für deine Tests, ich gebe zu, dass du mir blindlings die Augen ersetzst!! :wink:

Ich gebe zu, ich weiß nicht, wie du es schaffst, eine Integration zu entwickeln, ohne das Gerät zu besitzen! Jedenfalls Respekt
Neue Tests meiner Augen!

Alles funktioniert jetzt richtig, aber hier sind die möglichen Änderungen:

Zuerst hier, wie die genauen Einstellungen in der Dreame-App aussehen
Einstellungen für die Saugkraft:


Es fehlen also die Einstellungen
« Maximale Saugkraft »: Ja/Nein
« Route »: 2 Werte « ohne Umfang » und « mit Umfang »

Einstellungen für die Bodenwäsche:


Es fehlen also die Einstellungen
« Feuchtigkeit des Wischmopps »: Schieberegler von 1 bis 32
« Häufigkeit der Wischmopp-Reinigung »: Es gibt 3 Optionen: « pro Zone » Schieberegler von 10 bis 35, « pro Stunde », « pro Raum »
wobei, wenn man « pro Zone » wählt, ein Schieberegler von 10 bis 35 die m² anzeigt

Der Geräte « Betriebsmodus » hat 3 Zustände:

  • « Ruhe »: Beendet die laufende Aufgabe
  • « Reinigen »: Startet eine Reinigung, aber ich weiß nicht welche: Saugen? Wischen? Welche Räume?
  • « Kartieren »: Macht nichts

Der Geräte « Raum zu reinigen »: Startet in dem ausgewählten Raum ein Saugen oder Wischen, je nach Einstellung in der Dreame-App:


Es wäre gut, wenn man mehrere Räume auswählen könnte?

Könnte man schließlich mehr als 3 Verknüpfungen haben?

@Chris75 du weißt, ich habe nichts damit zu tun, ich frage Claude Code, und er macht… ALLES :sweat_smile:

Ich schaue mir alle deine Rückmeldungen an!

@Chris75 deine Screenshots der App waren genau das, was wir brauchten :+1:

Für die 0.2.4, mit denselben Bezeichnungen wie in der App:

  • Reinigungsmodus: Saugen, Bodenwäsche, Saugen und Bodenwäsche, Bodenwäsche nach dem Saugen, Reinigung der Räume anpassen. Diese Einstellung entscheidet, was „Reinigen“ macht: das ganze Haus in diesem Modus.
  • Maximale Saugkraft: ein Schalter (gilt für die nächste Reinigung, wie in der App).
  • Feuchtigkeit des Wischmopps: ein Schieberegler von 1 bis 32.
  • Häufigkeit der Moppwäsche: Pro Zone, Pro Stunde oder Pro Raum, mit zwei Schiebereglern: die m² (10 bis 35) und die Minuten. Jeder wirkt, wenn seine Häufigkeit gewählt ist.
  • Route: das ist sein echter Name in der App, in beiden Modi. Beim Saugen allein existieren nur Schnell und Standard, daher wechselt das Wechseln in den Saugmodus eine Route Intensiv oder Tiefenreinigung auf Standard, wie in der App.
  • Mehrere Räume: ein Schalter „Auswahl - Raum“ pro Raum, dann der Button Auswahl reinigen. Deine Auswahl wird von einer Reinigung zur nächsten beibehalten.

Für „Kartieren“: das wird absichtlich nicht verwaltet, da eine Kartierung, die von Gladys aus gestartet wurde, deine Karte überschreiben könnte. Sie bleibt in der App.
Für die Shortcuts: die Integration übernimmt alle von der App. Wenn du weitere erstellst, werden sie angezeigt.

Um es zu nutzen: Aktualisiere die Integration, dann im Tab Entdeckung, klicke Aktualisieren auf dem Roboter (kein Löschen mehr nötig). Wenn der Button nicht erscheint, klicke zuerst „Suchen“.

Was ich gerne von dir getestet hätte:

  1. Ändere den Reinigungsmodus in Gladys und überprüfe, ob die App folgt;
  2. Ändere die Feuchtigkeit und die Häufigkeit der Moppwäsche (und ihren Schieberegler);
  3. Wähle 2 Räume aus und Auswahl reinigen.

Und sende mir die Diagnose vollständig: sie zeigt jetzt die Zeilen „Model capabilities“ und „Mop settings“ an.