-
-
Notifications
You must be signed in to change notification settings - Fork 31
Description
Type of Request
New Device Support
Device Model
roborock.vacuum.ss09
Device Firmware Version
3.10.92
Is your feature request related to a problem?
beim Debuggen des Adapters mit einem neuen Roborock Q10 ist mir aufgefallen, warum das Gerät vom Adapter komplett ignoriert wird (das Log zeigt nach erfolgreichem Login nur localDevices: {} und es wird auch kein unknown model Fehler ausgegeben).
Die Ursache:
Roborock hat bei den neuesten Modellen offenbar die Datenstruktur in der Cloud umgebaut:
Das Array "devices": [] ist jetzt komplett leer. Da der Adapter aktuell durch dieses Array iteriert, findet er logischerweise keinen Sauger.
Das neue Gerät liegt stattdessen in einem neuen Array namens "products": [...].
Die Steuerung der neuen Modelle läuft anscheinend über ein komplett neues RPC-Schema. Die ganzen Datenpunkte und Befehle (wie fan_power, water_box_mode, start_clean_task) sind jetzt direkt im schema-Array als Liste mit eigenen IDs (101, 102, 123 etc.) definiert.
Gerätedetails:
Name: Roborock Q10 Series
Model-ID: roborock.vacuum.ss09
HomeData JSON:
Hier ist mein anonymisierter HomeData String, den ich direkt aus der API-Antwort (getUserData / HTTP 200) extrahiert habe. Man sieht sehr gut die leere devices-Liste und die neue products-Struktur:
JSON
{"id":1234567,"name":"My Home","lon":null,"lat":null,"geoName":null,"products":[{"id":"XXXXXXXXXXXXXXXXXXXXXX","name":"Roborock Q10 Series","model":"roborock.vacuum.ss09","iconUrl":null,"attribute":null,"capability":0,"category":"robot.vacuum.cleaner","schema":[{"id":101,"name":"RPC Request","code":"rpc_request","mode":"rw","type":"RAW","property":"null"},{"id":102,"name":"RPC Response","code":"rpc_response","mode":"rw","type":"RAW","property":"null"},{"id":120,"name":"错误代码","code":"error_code","mode":"ro","type":"ENUM","property":"null"},{"id":121,"name":"设备状态","code":"state","mode":"ro","type":"VALUE","property":"null"},{"id":122,"name":"设备电量","code":"battery","mode":"ro","type":"ENUM","property":"null"},{"id":123,"name":"吸力档位","code":"fan_power","mode":"rw","type":"ENUM","property":"null"},{"id":124,"name":"拖地档位","code":"water_box_mode","mode":"rw","type":"RAW","property":"null"},{"id":125,"name":"主刷寿命","code":"main_brush_life","mode":"ro","type":"ENUM","property":"null"},{"id":126,"name":"边刷寿命","code":"side_brush_life","mode":"ro","type":"ENUM","property":"null"},{"id":127,"name":"滤网寿命","code":"filter_life","mode":"ro","type":"ENUM","property":"null"},{"id":135,"name":"离线原因","code":"offline_status","mode":"ro","type":"ENUM","property":"null"},{"id":136,"name":"清洁次数","code":"clean_times","mode":"rw","type":"ENUM","property":"null"},{"id":137,"name":"扫拖模式","code":"cleaning_preference","mode":"rw","type":"ENUM","property":"null"},{"id":138,"name":"清洁任务类型","code":"clean_task_type","mode":"ro","type":"ENUM","property":"null"},{"id":139,"name":"返回基站类型","code":"back_type","mode":"ro","type":"ENUM","property":"null"},{"id":140,"name":"基站任务类型","code":"dock_task_type","mode":"ro","type":"ENUM","property":"null"},{"id":141,"name":"清洁进度","code":"cleaning_progress","mode":"ro","type":"ENUM","property":"null"},{"id":142,"name":"窜货信息","code":"fc_state","mode":"ro","type":"RAW","property":"null"},{"id":201,"name":"启动清洁任务","code":"start_clean_task","mode":"wo","type":"ENUM","property":"null"},{"id":202,"name":"返回基站任务","code":"start_back_dock_task","mode":"wo","type":"ENUM","property":"null"},{"id":203,"name":"启动基站任务","code":"start_dock_task","mode":"wo","type":"ENUM","property":"null"},{"id":204,"name":"暂停任务","code":"pause","mode":"wo","type":"RAW","property":"null"},{"id":205,"name":"继续任务","code":"resume","mode":"wo","type":"RAW","property":"null"},{"id":206,"name":"结束任务","code":"stop","mode":"wo","type":"RAW","property":"null"},{"id":207,"name":"用户改善计划","code":"ceip","mode":"rw","type":"ENUM","property":"{\"range\": [\"0,1\"]}"}]}],"devices":[],"receivedDevices":[],"rooms":[]}
Wenn ich die neue Struktur später mit meinem Gerät im ioBroker testen soll, gebt mir gerne Bescheid.
Describe the solution you'd like
Der Adapter müsste erweitert werden, um die neue products-Struktur und das dazugehörige RPC-Schema von Roborock auszulesen.
- Das Array
"devices": []ist bei den neuen Modellen komplett leer. - Das neue Gerät liegt stattdessen in einem Array namens "
products": [...]. - Die Steuerung läuft über ein neues RPC-Schema (Datenpunkte wie
fan_power,start_clean_tasketc. sind im schema-Array mit IDs definiert).
Describe alternatives you've considered
No response
Additional context / Screenshots / Logs
No response
Checklist
- I have searched for existing feature requests (issues) to avoid duplicates.
- I agree to provide feedback or test the feature if implemented.