homebridge-roborock-vacuum 2.2.4 → 2.2.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,16 @@
1
1
  # Changelog
2
2
 
3
+ ## 2.2.5
4
+
5
+ - **Fix (HAP/Matter)**: Real-time device messages are now routed to the accessory of the device they came from. Previously every push payload was fanned out to all accessories, so with two or more vacuums one robot could briefly show another robot's state, battery, or error in HomeKit
6
+ - **Fix (HAP)**: Unknown status values are no longer published to HomeKit. Before the first HomeData snapshot arrived, the battery could show 0% (with a normal low-battery flag) and the cleaning state could read as off; those characteristics now update only once the value is actually known, matching the guards the Matter accessories already had. The charging indicator also uses one consistent rule instead of two different comparisons in the create and update paths
7
+ - **Fix (HAP/Matter)**: "Washing the mop" (state 23) now counts as cleaning everywhere. The HAP accessory and the shared API each kept their own cleaning-state table that disagreed on this state, so during a mid-run mop wash the vacuum tile flapped between on and off as push and poll updates alternated
8
+ - **Fix (HAP)**: Removing outdated scene switches no longer skips every second one — the service list was being modified while it was iterated
9
+ - **Fix**: Sending a command to a device shared from another account now logs a warning instead of crashing the command handler (shared devices get an accessory but no control channel)
10
+ - **Change (efficiency)**: Removed a 1-per-second status poll per device whose results were never used (the timer now only exists for the opt-in current-room MQTT telemetry, which is its only consumer). Also removed periodic and startup requests whose responses fed nothing: `get_server_timer`, `get_timer`, `get_multi_maps_list`, the cleaning-history fetch (`get_clean_summary` plus up to 20 `get_clean_record` calls per device), an extra `get_status` round-trip in the room-mapping poll, a per-cycle firmware-update check, and a duplicate scene fetch at startup
11
+ - **Change (efficiency)**: Devices that go offline now stop being polled until they come back — the online flag from every HomeData refresh starts and stops the per-device intervals
12
+ - **Change (internal)**: Removed the inherited ioBroker object layer and other dead code from `roborockLib` (about 1,900 lines), including the unused map parser and packaging helper; the `jszip` dependency is gone. Plugin shutdown now also cancels in-flight request timers. The API surface consumed by the TypeScript plugin is now declared in `src/roborock_api.ts`, so lib-side renames fail the build instead of breaking HomeKit at runtime
13
+
3
14
  ## 2.2.4
4
15
 
5
16
  - **New Feature (HAP)**: Consumable life (filter, main brush, side brush) is now exposed as HomeKit FilterMaintenance services — remaining life in percent plus a "change filter" alert when a consumable drops to 5% or less. Services are only created for consumables the device actually reports, and their names follow the plugin language
@@ -1 +1 @@
1
- {"version":3,"file":"dock_wash_matter_accessory.js","sourceRoot":"","sources":["../src/dock_wash_matter_accessory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dock_wash_matter_accessory.js","sourceRoot":"","sources":["../src/dock_wash_matter_accessory.ts"],"names":[],"mappings":"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"}
package/dist/platform.js CHANGED
@@ -201,28 +201,36 @@ class RoborockPlatform {
201
201
  return;
202
202
  }
203
203
  const self = this;
204
- self.roborockAPI.setDeviceNotify(function (id, homeData) {
205
- var _a, _b, _c;
204
+ self.roborockAPI.setDeviceNotify(function (id, homeData, duid) {
205
+ var _a;
206
206
  self.log.debug(`${id} notifyDeviceUpdater:${JSON.stringify(homeData)}`);
207
207
  if (id === "CloudMessage" || id === "LocalMessage") {
208
- // Transport messages carry no device id; unwrap the single-element
209
- // result array and translate schema-id dps fields once, then fan the
210
- // payload out to every accessory (HAP and Matter alike)
211
- // field-level guards make foreign payloads a no-op.
208
+ // Transport messages belong to one device: unwrap the single-element
209
+ // result array, translate schema-id dps fields once, and deliver the
210
+ // payload only to that device's accessories. Applying it to every
211
+ // accessory would make vacuum B show vacuum A's state and battery.
212
+ // A payload without a duid (older lib) falls back to the broadcast.
212
213
  const payload = Array.isArray(homeData) ? homeData[0] : homeData;
213
214
  if (!payload || typeof payload !== "object") {
214
215
  return;
215
216
  }
216
217
  const data = translateDpsFields(payload);
217
218
  for (const vacuum of self.vacuums) {
218
- vacuum.notifyDeviceUpdater(id, data);
219
+ if (duid === undefined || vacuum.duid === duid) {
220
+ vacuum.notifyDeviceUpdater(id, data);
221
+ }
219
222
  }
220
- for (const [duid, matterVacuum] of self.matterVacuums) {
223
+ for (const [matterDuid, matterVacuum] of self.matterVacuums) {
224
+ if (duid !== undefined && matterDuid !== duid) {
225
+ continue;
226
+ }
221
227
  matterVacuum.updateFromRoborockData(data);
222
- matterVacuum.updateSupportedAreas((_c = (_b = (_a = self.roborockAPI).getSegmentRooms) === null || _b === void 0 ? void 0 : _b.call(_a, duid)) !== null && _c !== void 0 ? _c : []);
228
+ matterVacuum.updateSupportedAreas((_a = self.roborockAPI.getSegmentRooms(matterDuid)) !== null && _a !== void 0 ? _a : []);
223
229
  }
224
- for (const dockWash of self.matterDockWash.values()) {
225
- dockWash.updateFromRoborockData(data);
230
+ for (const [dockDuid, dockWash] of self.matterDockWash) {
231
+ if (duid === undefined || dockDuid === duid) {
232
+ dockWash.updateFromRoborockData(data);
233
+ }
226
234
  }
227
235
  return;
228
236
  }
@@ -298,8 +306,8 @@ class RoborockPlatform {
298
306
  this.matterAccessories.set(accessory.UUID, accessory);
299
307
  }
300
308
  isSupportedDevice(model) {
301
- //model nust starts with "roborock.vacuum."
302
- return model.startsWith("roborock.vacuum.");
309
+ // model must start with "roborock.vacuum."
310
+ return typeof model === "string" && model.startsWith("roborock.vacuum.");
303
311
  }
304
312
  isSkippedDeviceId(deviceId) {
305
313
  return this.resolveProtocol(deviceId) === "skip";
@@ -494,7 +502,7 @@ class RoborockPlatform {
494
502
  : "because it is now published over Matter");
495
503
  continue;
496
504
  }
497
- const vacuum = self.roborockAPI.getVacuumDeviceData(cachedAccessory.context);
505
+ const vacuum = self.roborockAPI.getVacuumDeviceData(`${cachedAccessory.context}`);
498
506
  if (vacuum === undefined) {
499
507
  // This cached devices does not exist on the Roborock App account (anymore).
500
508
  this.unregisterCachedAccessory(cachedAccessory, "because it does not exist on the Roborock account anymore");
@@ -1 +1 @@
1
- {"version":3,"file":"platform.js","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"platform.js","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ /**
3
+ * Typed surface of the JavaScript Roborock API (roborockLib/roborockAPI.js)
4
+ * that this plugin actually consumes. The implementation is still untyped
5
+ * legacy code loaded via require(); this interface exists so a rename or
6
+ * signature change over there breaks the build here instead of HomeKit at
7
+ * runtime. Keep it in sync with roborockAPI.js when the surface changes.
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ //# sourceMappingURL=roborock_api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"roborock_api.js","sourceRoot":"","sources":["../src/roborock_api.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG"}
@@ -1 +1 @@
1
- {"version":3,"file":"scene_matter_accessory.js","sourceRoot":"","sources":["../src/scene_matter_accessory.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;AAGH,2CAA0C;AAC1C,mEAA8D;AAE9D,MAAM,cAAc,GAAG,IAAI,CAAC;AAE5B,MAAa,4BAA6B,SAAQ,2CAAmB;IAInE,YACE,GAAQ,EACR,GAAW,EACX,MAAW,EACX,KAAU,EACV,WAAmB,EACnB,WAAgB;;QAEhB,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CACb,6EAA6E,CAC9E,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE;YACd,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,IAAI,UAAU,KAAK,CAAC,EAAE,EAAE,CAAC;YAC9D,WAAW;YACX,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,WAAW;YAC1C,YAAY,EAAE,GAAG,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE,EAAE;YACxD,YAAY,EAAE,UAAU;YACxB,KAAK,EACH,CAAA,MAAA,WAAW,CAAC,mBAAmB,4DAAG,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC;gBACvD,MAAM,CAAC,YAAY;gBACnB,MAAM,CAAC,KAAK;gBACZ,OAAO;YACT,gBAAgB,EAAE,MAAM,CAAC,EAAE,IAAI,OAAO;YACtC,gBAAgB,EAAE,OAAO;YACzB,OAAO,EAAE;gBACP,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,OAAO,EAAE,KAAK,CAAC,EAAE;aAClB;YAED,QAAQ,EAAE;gBACR,KAAK,EAAE;oBACL,KAAK,EAAE,KAAK;iBACb;aACF;YAED,QAAQ,EAAE;gBACR,KAAK,EAAE;oBACL,EAAE,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE;oBAC/B,GAAG,EAAE,KAAK,IAAI,EAAE;wBACd,sCAAsC;oBACxC,CAAC;iBACF;aACF;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,EAAE,CAAC;QACxB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAEO,KAAK,CAAC,QAAQ;QACpB,IAAI,CAAC,OAAO,CAAC,mBAAmB,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAEhD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,QAAQ,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;YACjD,MAAM,IAAI,yBAAY,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;QAC5D,CAAC;QAED,UAAU,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CACxD,IAAI,CAAC,QAAQ,CAAC,+BAA+B,EAAE,GAAG,CAAC,CACpD,CAAC;QACJ,CAAC,EAAE,cAAc,CAAC,CAAC;IACrB,CAAC;CACF;AAzED,oEAyEC"}
1
+ {"version":3,"file":"scene_matter_accessory.js","sourceRoot":"","sources":["../src/scene_matter_accessory.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;AAGH,2CAA0C;AAC1C,mEAA8D;AAG9D,MAAM,cAAc,GAAG,IAAI,CAAC;AAE5B,MAAa,4BAA6B,SAAQ,2CAAmB;IAInE,YACE,GAAQ,EACR,GAAW,EACX,MAAW,EACX,KAAU,EACV,WAAmB,EACnB,WAAwB;;QAExB,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CACb,6EAA6E,CAC9E,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE;YACd,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,IAAI,UAAU,KAAK,CAAC,EAAE,EAAE,CAAC;YAC9D,WAAW;YACX,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,WAAW;YAC1C,YAAY,EAAE,GAAG,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE,EAAE;YACxD,YAAY,EAAE,UAAU;YACxB,KAAK,EACH,CAAA,MAAA,WAAW,CAAC,mBAAmB,4DAAG,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC;gBACvD,MAAM,CAAC,YAAY;gBACnB,MAAM,CAAC,KAAK;gBACZ,OAAO;YACT,gBAAgB,EAAE,MAAM,CAAC,EAAE,IAAI,OAAO;YACtC,gBAAgB,EAAE,OAAO;YACzB,OAAO,EAAE;gBACP,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,OAAO,EAAE,KAAK,CAAC,EAAE;aAClB;YAED,QAAQ,EAAE;gBACR,KAAK,EAAE;oBACL,KAAK,EAAE,KAAK;iBACb;aACF;YAED,QAAQ,EAAE;gBACR,KAAK,EAAE;oBACL,EAAE,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE;oBAC/B,GAAG,EAAE,KAAK,IAAI,EAAE;wBACd,sCAAsC;oBACxC,CAAC;iBACF;aACF;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,EAAE,CAAC;QACxB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAEO,KAAK,CAAC,QAAQ;QACpB,IAAI,CAAC,OAAO,CAAC,mBAAmB,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAEhD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,QAAQ,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;YACjD,MAAM,IAAI,yBAAY,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;QAC5D,CAAC;QAED,UAAU,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CACxD,IAAI,CAAC,QAAQ,CAAC,+BAA+B,EAAE,GAAG,CAAC,CACpD,CAAC;QACJ,CAAC,EAAE,cAAc,CAAC,CAAC;IACrB,CAAC;CACF;AAzED,oEAyEC"}
@@ -34,6 +34,10 @@ const CONSUMABLES = [
34
34
  // matches the Roborock app, which nags when a consumable is nearly used up.
35
35
  const CONSUMABLE_CHANGE_THRESHOLD = 5;
36
36
  class RoborockVacuumAccessory {
37
+ /** Device id this accessory belongs to (context holds the duid string). */
38
+ get duid() {
39
+ return `${this.accessory.context}`;
40
+ }
37
41
  constructor(platform, accessory) {
38
42
  var _a;
39
43
  this.platform = platform;
@@ -45,12 +49,13 @@ class RoborockVacuumAccessory {
45
49
  // Accessory Information
46
50
  // https://developers.homebridge.io/#/service/AccessoryInformation
47
51
  (_a = this.accessory
48
- .getService(this.platform.Service.AccessoryInformation)) === null || _a === void 0 ? void 0 : _a.setCharacteristic(this.platform.Characteristic.Manufacturer, "Roborock").setCharacteristic(this.platform.Characteristic.Model, this.platform.roborockAPI.getProductAttribute(accessory.context, "model") || "Unknown").setCharacteristic(this.platform.Characteristic.SerialNumber, this.platform.roborockAPI.getVacuumDeviceInfo(accessory.context, "sn") || "Unknown").setCharacteristic(this.platform.Characteristic.FirmwareRevision, this.platform.roborockAPI.getVacuumDeviceInfo(accessory.context, "fv") || "Unknown");
52
+ .getService(this.platform.Service.AccessoryInformation)) === null || _a === void 0 ? void 0 : _a.setCharacteristic(this.platform.Characteristic.Manufacturer, "Roborock").setCharacteristic(this.platform.Characteristic.Model, this.platform.roborockAPI.getProductAttribute(this.duid, "model") ||
53
+ "Unknown").setCharacteristic(this.platform.Characteristic.SerialNumber, `${this.platform.roborockAPI.getVacuumDeviceInfo(this.duid, "sn") || "Unknown"}`).setCharacteristic(this.platform.Characteristic.FirmwareRevision, `${this.platform.roborockAPI.getVacuumDeviceInfo(this.duid, "fv") || "Unknown"}`);
49
54
  this.services["Fan"] =
50
55
  this.accessory.getService(this.platform.Service.Fanv2) ||
51
56
  this.accessory.addService(this.platform.Service.Fanv2);
52
57
  // This is what is displayed as the default name on the Home app
53
- this.services["Fan"].setCharacteristic(this.platform.Characteristic.Name, this.platform.roborockAPI.getVacuumDeviceInfo(accessory.context, "name") || "Roborock Vacuum");
58
+ this.services["Fan"].setCharacteristic(this.platform.Characteristic.Name, `${this.platform.roborockAPI.getVacuumDeviceInfo(this.duid, "name") || "Roborock Vacuum"}`);
54
59
  this.services["Fan"]
55
60
  .getCharacteristic(this.platform.Characteristic.Active)
56
61
  .onSet(this.setActive.bind(this))
@@ -61,13 +66,9 @@ class RoborockVacuumAccessory {
61
66
  this.services["Battery"] =
62
67
  this.accessory.getService(this.platform.Service.Battery) ||
63
68
  this.accessory.addService(this.platform.Service.Battery);
64
- this.services["Battery"].setCharacteristic(this.platform.Characteristic.BatteryLevel, this.platform.roborockAPI.getVacuumDeviceStatus(accessory.context, "battery") || 0);
65
- this.services["Battery"].setCharacteristic(this.platform.Characteristic.StatusLowBattery, this.platform.roborockAPI.getVacuumDeviceStatus(accessory.context, "battery") < 20
66
- ? this.platform.Characteristic.StatusLowBattery.BATTERY_LEVEL_LOW
67
- : this.platform.Characteristic.StatusLowBattery.BATTERY_LEVEL_NORMAL);
68
- this.services["Battery"].setCharacteristic(this.platform.Characteristic.ChargingState, this.platform.roborockAPI.getVacuumDeviceStatus(accessory.context, "charge_status") == 1
69
- ? this.platform.Characteristic.ChargingState.CHARGING
70
- : this.platform.Characteristic.ChargingState.NOT_CHARGING);
69
+ // Battery/charging characteristics are seeded by the updateDeviceState()
70
+ // call below, which only publishes values that are actually known —
71
+ // publishing the "" unknown sentinel here would read as 0 % battery.
71
72
  // Initialize scene switches
72
73
  this.updateSceneSwitches();
73
74
  // Dock mop-wash switch (only on washing-capable docks)
@@ -83,11 +84,11 @@ class RoborockVacuumAccessory {
83
84
  */
84
85
  updateDockWashSwitch() {
85
86
  try {
86
- const supported = this.platform.roborockAPI.isDockWashSupported(this.accessory.context);
87
+ const supported = this.platform.roborockAPI.isDockWashSupported(this.duid);
87
88
  const existingService = this.accessory.getServiceById(this.platform.Service.Switch, "dock-wash");
88
89
  if (!supported) {
89
90
  if (existingService) {
90
- this.platform.log.debug(`Removing dock wash switch for device ${this.accessory.context}`);
91
+ this.platform.log.debug(`Removing dock wash switch for device ${this.duid}`);
91
92
  this.accessory.removeService(existingService);
92
93
  }
93
94
  this.dockWashService = undefined;
@@ -97,7 +98,7 @@ class RoborockVacuumAccessory {
97
98
  return;
98
99
  }
99
100
  const switchName = this.platform.roborockAPI.getTranslation("app_start_wash");
100
- this.platform.log.debug(`Adding dock wash switch '${switchName}' for device ${this.accessory.context}`);
101
+ this.platform.log.debug(`Adding dock wash switch '${switchName}' for device ${this.duid}`);
101
102
  const switchService = existingService ||
102
103
  this.accessory.addService(this.platform.Service.Switch, switchName, "dock-wash");
103
104
  switchService.setCharacteristic(this.platform.Characteristic.Name, switchName);
@@ -117,10 +118,10 @@ class RoborockVacuumAccessory {
117
118
  var _a;
118
119
  try {
119
120
  if (value) {
120
- await this.platform.roborockAPI.app_start_wash(this.accessory.context);
121
+ await this.platform.roborockAPI.app_start_wash(this.duid);
121
122
  }
122
123
  else {
123
- await this.platform.roborockAPI.app_stop_wash(this.accessory.context);
124
+ await this.platform.roborockAPI.app_stop_wash(this.duid);
124
125
  }
125
126
  }
126
127
  catch (error) {
@@ -132,10 +133,10 @@ class RoborockVacuumAccessory {
132
133
  return this.isWashing();
133
134
  }
134
135
  isWashing() {
135
- return this.isWashingState(this.platform.roborockAPI.getVacuumDeviceStatus(this.accessory.context, "state"));
136
+ return this.isWashingState(this.platform.roborockAPI.getVacuumDeviceStatus(this.duid, "state"));
136
137
  }
137
138
  isWashingState(state) {
138
- return MOP_WASHING_STATES.includes(state);
139
+ return MOP_WASHING_STATES.includes(Number(state));
139
140
  }
140
141
  updateDockWashState(state) {
141
142
  var _a;
@@ -144,32 +145,46 @@ class RoborockVacuumAccessory {
144
145
  updateDeviceState() {
145
146
  var _a;
146
147
  try {
147
- this.services["Fan"].updateCharacteristic(this.platform.Characteristic.Active, this.platform.roborockAPI.isCleaning(this.platform.roborockAPI.getVacuumDeviceStatus(this.accessory.context, "state"))
148
- ? this.platform.Characteristic.Active.ACTIVE
149
- : this.platform.Characteristic.Active.INACTIVE);
150
- this.services["Battery"].updateCharacteristic(this.platform.Characteristic.BatteryLevel, this.platform.roborockAPI.getVacuumDeviceStatus(this.accessory.context, "battery") || 0);
151
- this.services["Battery"].updateCharacteristic(this.platform.Characteristic.StatusLowBattery, this.platform.roborockAPI.getVacuumDeviceStatus(this.accessory.context, "battery") < 20
152
- ? this.platform.Characteristic.StatusLowBattery.BATTERY_LEVEL_LOW
153
- : this.platform.Characteristic.StatusLowBattery.BATTERY_LEVEL_NORMAL);
154
- this.services["Battery"].updateCharacteristic(this.platform.Characteristic.ChargingState, this.platform.roborockAPI.getVacuumDeviceStatus(this.accessory.context, "charge_status") != 0
155
- ? this.platform.Characteristic.ChargingState.CHARGING
156
- : this.platform.Characteristic.ChargingState.NOT_CHARGING);
157
- this.updateDockWashState(this.platform.roborockAPI.getVacuumDeviceStatus(this.accessory.context, "state"));
148
+ // getVacuumDeviceStatus returns "" while a value is unknown (no
149
+ // HomeData yet, or the model's schema lacks the field). Skip those
150
+ // updates instead of publishing garbage like 0 % battery — the Matter
151
+ // accessories already guard the same way.
152
+ const state = this.platform.roborockAPI.getVacuumDeviceStatus(this.duid, "state");
153
+ if (state !== "") {
154
+ this.services["Fan"].updateCharacteristic(this.platform.Characteristic.Active, this.platform.roborockAPI.isCleaning(state)
155
+ ? this.platform.Characteristic.Active.ACTIVE
156
+ : this.platform.Characteristic.Active.INACTIVE);
157
+ this.updateDockWashState(state);
158
+ }
159
+ const rawBattery = this.platform.roborockAPI.getVacuumDeviceStatus(this.duid, "battery");
160
+ const battery = Number(rawBattery);
161
+ if (rawBattery !== "" && Number.isFinite(battery)) {
162
+ this.services["Battery"].updateCharacteristic(this.platform.Characteristic.BatteryLevel, battery);
163
+ this.services["Battery"].updateCharacteristic(this.platform.Characteristic.StatusLowBattery, battery < 20
164
+ ? this.platform.Characteristic.StatusLowBattery.BATTERY_LEVEL_LOW
165
+ : this.platform.Characteristic.StatusLowBattery.BATTERY_LEVEL_NORMAL);
166
+ }
167
+ const chargeStatus = this.platform.roborockAPI.getVacuumDeviceStatus(this.duid, "charge_status");
168
+ if (chargeStatus !== "") {
169
+ this.services["Battery"].updateCharacteristic(this.platform.Characteristic.ChargingState, Number(chargeStatus) != 0
170
+ ? this.platform.Characteristic.ChargingState.CHARGING
171
+ : this.platform.Characteristic.ChargingState.NOT_CHARGING);
172
+ }
158
173
  // The firmware version (fv) may be missing from the first HomeData
159
174
  // snapshot and changes after device OTA updates, so refresh it on
160
175
  // every poll instead of trusting the constructor-time value.
161
- const firmwareVersion = this.platform.roborockAPI.getVacuumDeviceInfo(this.accessory.context, "fv");
176
+ const firmwareVersion = this.platform.roborockAPI.getVacuumDeviceInfo(this.duid, "fv");
162
177
  if (firmwareVersion) {
163
178
  (_a = this.accessory
164
- .getService(this.platform.Service.AccessoryInformation)) === null || _a === void 0 ? void 0 : _a.updateCharacteristic(this.platform.Characteristic.FirmwareRevision, firmwareVersion);
179
+ .getService(this.platform.Service.AccessoryInformation)) === null || _a === void 0 ? void 0 : _a.updateCharacteristic(this.platform.Characteristic.FirmwareRevision, `${firmwareVersion}`);
165
180
  }
166
- this.updateStatusFault(this.platform.roborockAPI.getVacuumDeviceStatus(this.accessory.context, "error_code"));
181
+ this.updateStatusFault(this.platform.roborockAPI.getVacuumDeviceStatus(this.duid, "error_code"));
167
182
  // Cloud-reported online flag; anything but an explicit false counts as
168
183
  // online so an unknown value never flags a healthy device.
169
- this.services["Fan"].updateCharacteristic(this.platform.Characteristic.StatusActive, this.platform.roborockAPI.getVacuumDeviceInfo(this.accessory.context, "online") !== false);
184
+ this.services["Fan"].updateCharacteristic(this.platform.Characteristic.StatusActive, this.platform.roborockAPI.getVacuumDeviceInfo(this.duid, "online") !==
185
+ false);
170
186
  this.updateConsumables();
171
- this.platform.log.debug("Device state is " +
172
- this.state_code_to_state(this.platform.roborockAPI.getVacuumDeviceStatus(this.accessory.context, "state")));
187
+ this.platform.log.debug("Device state is " + this.state_code_to_state(Number(state)));
173
188
  }
174
189
  catch (e) {
175
190
  this.platform.log.error("Error updating device state: " + e);
@@ -190,7 +205,7 @@ class RoborockVacuumAccessory {
190
205
  updateConsumables() {
191
206
  var _a, _b;
192
207
  for (const consumable of CONSUMABLES) {
193
- const rawLife = this.platform.roborockAPI.getVacuumDeviceStatus(this.accessory.context, consumable.code);
208
+ const rawLife = this.platform.roborockAPI.getVacuumDeviceStatus(this.duid, consumable.code);
194
209
  const life = Number(rawLife);
195
210
  if (rawLife === "" || rawLife == null || !Number.isFinite(life)) {
196
211
  continue;
@@ -218,16 +233,16 @@ class RoborockVacuumAccessory {
218
233
  updateSceneSwitches() {
219
234
  try {
220
235
  // Get scenes for this device
221
- const deviceScenes = this.platform.roborockAPI.getScenesForDevice(this.accessory.context);
236
+ const deviceScenes = this.platform.roborockAPI.getScenesForDevice(this.duid);
222
237
  // Check if scenes have changed
223
238
  if (this.scenesChanged(deviceScenes)) {
224
- this.platform.log.debug(`Updating scene switches for device ${this.accessory.context}`);
239
+ this.platform.log.debug(`Updating scene switches for device ${this.duid}`);
225
240
  // Remove existing scene switches that are no longer available
226
241
  // Add new scene switches
227
242
  for (const scene of deviceScenes) {
228
243
  try {
229
244
  const sceneId = scene.id.toString();
230
- const sceneName = scene.name.replaceAll(" ", "_");
245
+ const sceneName = scene.name.replace(/ /g, "_");
231
246
  if (!this.sceneServices.has(sceneId) && scene.enabled) {
232
247
  this.platform.log.debug(`Adding scene switch for: ${scene.name} (ID: ${sceneId})`);
233
248
  const switchService = this.accessory.getServiceById(this.platform.Service.Switch, `scene-${sceneId}`) ||
@@ -246,8 +261,10 @@ class RoborockVacuumAccessory {
246
261
  this.platform.log.error(`Error processing scene ${scene.name}: ${e}`);
247
262
  }
248
263
  }
249
- //Remove scene switches that are no longer available
250
- this.accessory.services.forEach((service) => {
264
+ // Remove scene switches that are no longer available. Iterate a
265
+ // copy: removeService splices the live services array, and mutating
266
+ // it mid-forEach skips the element after every removed one.
267
+ [...this.accessory.services].forEach((service) => {
251
268
  var _a;
252
269
  if (service instanceof this.platform.Service.Switch &&
253
270
  ((_a = service.subtype) === null || _a === void 0 ? void 0 : _a.startsWith("scene-"))) {
@@ -323,7 +340,7 @@ class RoborockVacuumAccessory {
323
340
  if (id == "CloudMessage" || id == "LocalMessage") {
324
341
  this.platform.log.debug(`Updating accessory with ${id} data: ` + JSON.stringify(data));
325
342
  if (data.hasOwnProperty("state")) {
326
- this.services["Fan"].updateCharacteristic(this.platform.Characteristic.Active, this.isCleaningState(data.state)
343
+ this.services["Fan"].updateCharacteristic(this.platform.Characteristic.Active, this.platform.roborockAPI.isCleaning(data.state)
327
344
  ? this.platform.Characteristic.Active.ACTIVE
328
345
  : this.platform.Characteristic.Active.INACTIVE);
329
346
  this.updateDockWashState(data.state);
@@ -365,11 +382,11 @@ class RoborockVacuumAccessory {
365
382
  try {
366
383
  this.platform.log.debug("Setting active to " + value);
367
384
  if (value == this.platform.Characteristic.Active.ACTIVE) {
368
- await this.platform.roborockAPI.app_start(this.accessory.context);
385
+ await this.platform.roborockAPI.app_start(this.duid);
369
386
  }
370
387
  else {
371
- await this.platform.roborockAPI.app_stop(this.accessory.context);
372
- await this.platform.roborockAPI.app_charge(this.accessory.context);
388
+ await this.platform.roborockAPI.app_stop(this.duid);
389
+ await this.platform.roborockAPI.app_charge(this.duid);
373
390
  }
374
391
  this.services["Fan"].updateCharacteristic(this.platform.Characteristic.Active, value);
375
392
  }
@@ -414,25 +431,10 @@ class RoborockVacuumAccessory {
414
431
  return RoborockStateCodes[code] || "Unknown";
415
432
  }
416
433
  isCleaning() {
417
- return this.isCleaningState(this.platform.roborockAPI.getVacuumDeviceStatus(this.accessory.context, "state"));
418
- }
419
- isCleaningState(state) {
420
- switch (state) {
421
- case 4: // Remote Control
422
- case 5: // Cleaning
423
- case 6: // Returning Dock
424
- case 7: // Manual Mode
425
- case 11: // Spot Cleaning
426
- case 15: // Docking
427
- case 16: // Go To
428
- case 17: // Zone Clean
429
- case 18: // Room Clean
430
- case 23: // Washing the mop
431
- case 26: // Going to wash the mop
432
- return true;
433
- default:
434
- return false;
435
- }
434
+ // Single source of truth for the cleaning-state table is
435
+ // roborockAPI.isCleaning — a local copy here diverged from it once and
436
+ // made push and poll updates flap the Fan Active characteristic.
437
+ return this.platform.roborockAPI.isCleaning(this.platform.roborockAPI.getVacuumDeviceStatus(this.duid, "state"));
436
438
  }
437
439
  }
438
440
  exports.default = RoborockVacuumAccessory;
@@ -1 +1 @@
1
- {"version":3,"file":"vacuum_accessory.js","sourceRoot":"","sources":["../src/vacuum_accessory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vacuum_accessory.js","sourceRoot":"","sources":["../src/vacuum_accessory.ts"],"names":[],"mappings":"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"}