matterbridge 3.1.4-dev-20250715-075e722 → 3.1.4

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.
Files changed (208) hide show
  1. package/CHANGELOG.md +7 -2
  2. package/README.md +25 -2
  3. package/dist/cli.d.ts +26 -0
  4. package/dist/cli.d.ts.map +1 -0
  5. package/dist/cli.js +91 -2
  6. package/dist/cli.js.map +1 -0
  7. package/dist/cliEmitter.d.ts +34 -0
  8. package/dist/cliEmitter.d.ts.map +1 -0
  9. package/dist/cliEmitter.js +30 -0
  10. package/dist/cliEmitter.js.map +1 -0
  11. package/dist/clusters/export.d.ts +2 -0
  12. package/dist/clusters/export.d.ts.map +1 -0
  13. package/dist/clusters/export.js +2 -0
  14. package/dist/clusters/export.js.map +1 -0
  15. package/dist/defaultConfigSchema.d.ts +28 -0
  16. package/dist/defaultConfigSchema.d.ts.map +1 -0
  17. package/dist/defaultConfigSchema.js +24 -0
  18. package/dist/defaultConfigSchema.js.map +1 -0
  19. package/dist/deviceManager.d.ts +112 -0
  20. package/dist/deviceManager.d.ts.map +1 -0
  21. package/dist/deviceManager.js +94 -1
  22. package/dist/deviceManager.js.map +1 -0
  23. package/dist/devices/batteryStorage.d.ts +48 -0
  24. package/dist/devices/batteryStorage.d.ts.map +1 -0
  25. package/dist/devices/batteryStorage.js +48 -1
  26. package/dist/devices/batteryStorage.js.map +1 -0
  27. package/dist/devices/evse.d.ts +75 -0
  28. package/dist/devices/evse.d.ts.map +1 -0
  29. package/dist/devices/evse.js +74 -10
  30. package/dist/devices/evse.js.map +1 -0
  31. package/dist/devices/export.d.ts +9 -0
  32. package/dist/devices/export.d.ts.map +1 -0
  33. package/dist/devices/export.js +2 -0
  34. package/dist/devices/export.js.map +1 -0
  35. package/dist/devices/heatPump.d.ts +47 -0
  36. package/dist/devices/heatPump.d.ts.map +1 -0
  37. package/dist/devices/heatPump.js +50 -2
  38. package/dist/devices/heatPump.js.map +1 -0
  39. package/dist/devices/laundryDryer.d.ts +87 -0
  40. package/dist/devices/laundryDryer.d.ts.map +1 -0
  41. package/dist/devices/laundryDryer.js +83 -6
  42. package/dist/devices/laundryDryer.js.map +1 -0
  43. package/dist/devices/laundryWasher.d.ts +242 -0
  44. package/dist/devices/laundryWasher.d.ts.map +1 -0
  45. package/dist/devices/laundryWasher.js +91 -7
  46. package/dist/devices/laundryWasher.js.map +1 -0
  47. package/dist/devices/roboticVacuumCleaner.d.ts +110 -0
  48. package/dist/devices/roboticVacuumCleaner.d.ts.map +1 -0
  49. package/dist/devices/roboticVacuumCleaner.js +89 -6
  50. package/dist/devices/roboticVacuumCleaner.js.map +1 -0
  51. package/dist/devices/solarPower.d.ts +40 -0
  52. package/dist/devices/solarPower.d.ts.map +1 -0
  53. package/dist/devices/solarPower.js +38 -0
  54. package/dist/devices/solarPower.js.map +1 -0
  55. package/dist/devices/waterHeater.d.ts +111 -0
  56. package/dist/devices/waterHeater.d.ts.map +1 -0
  57. package/dist/devices/waterHeater.js +82 -2
  58. package/dist/devices/waterHeater.js.map +1 -0
  59. package/dist/frontend.d.ts +304 -0
  60. package/dist/frontend.d.ts.map +1 -0
  61. package/dist/frontend.js +491 -49
  62. package/dist/frontend.js.map +1 -0
  63. package/dist/globalMatterbridge.d.ts +59 -0
  64. package/dist/globalMatterbridge.d.ts.map +1 -0
  65. package/dist/globalMatterbridge.js +47 -0
  66. package/dist/globalMatterbridge.js.map +1 -0
  67. package/dist/helpers.d.ts +48 -0
  68. package/dist/helpers.d.ts.map +1 -0
  69. package/dist/helpers.js +53 -0
  70. package/dist/helpers.js.map +1 -0
  71. package/dist/index.d.ts +33 -0
  72. package/dist/index.d.ts.map +1 -0
  73. package/dist/index.js +30 -1
  74. package/dist/index.js.map +1 -0
  75. package/dist/logger/export.d.ts +2 -0
  76. package/dist/logger/export.d.ts.map +1 -0
  77. package/dist/logger/export.js +1 -0
  78. package/dist/logger/export.js.map +1 -0
  79. package/dist/matter/behaviors.d.ts +2 -0
  80. package/dist/matter/behaviors.d.ts.map +1 -0
  81. package/dist/matter/behaviors.js +2 -0
  82. package/dist/matter/behaviors.js.map +1 -0
  83. package/dist/matter/clusters.d.ts +2 -0
  84. package/dist/matter/clusters.d.ts.map +1 -0
  85. package/dist/matter/clusters.js +2 -0
  86. package/dist/matter/clusters.js.map +1 -0
  87. package/dist/matter/devices.d.ts +2 -0
  88. package/dist/matter/devices.d.ts.map +1 -0
  89. package/dist/matter/devices.js +2 -0
  90. package/dist/matter/devices.js.map +1 -0
  91. package/dist/matter/endpoints.d.ts +2 -0
  92. package/dist/matter/endpoints.d.ts.map +1 -0
  93. package/dist/matter/endpoints.js +2 -0
  94. package/dist/matter/endpoints.js.map +1 -0
  95. package/dist/matter/export.d.ts +5 -0
  96. package/dist/matter/export.d.ts.map +1 -0
  97. package/dist/matter/export.js +3 -0
  98. package/dist/matter/export.js.map +1 -0
  99. package/dist/matter/types.d.ts +3 -0
  100. package/dist/matter/types.d.ts.map +1 -0
  101. package/dist/matter/types.js +3 -0
  102. package/dist/matter/types.js.map +1 -0
  103. package/dist/matterbridge.d.ts +444 -0
  104. package/dist/matterbridge.d.ts.map +1 -0
  105. package/dist/matterbridge.js +785 -51
  106. package/dist/matterbridge.js.map +1 -0
  107. package/dist/matterbridgeAccessoryPlatform.d.ts +42 -0
  108. package/dist/matterbridgeAccessoryPlatform.d.ts.map +1 -0
  109. package/dist/matterbridgeAccessoryPlatform.js +36 -0
  110. package/dist/matterbridgeAccessoryPlatform.js.map +1 -0
  111. package/dist/matterbridgeBehaviors.d.ts +1340 -0
  112. package/dist/matterbridgeBehaviors.d.ts.map +1 -0
  113. package/dist/matterbridgeBehaviors.js +61 -1
  114. package/dist/matterbridgeBehaviors.js.map +1 -0
  115. package/dist/matterbridgeDeviceTypes.d.ts +709 -0
  116. package/dist/matterbridgeDeviceTypes.d.ts.map +1 -0
  117. package/dist/matterbridgeDeviceTypes.js +579 -15
  118. package/dist/matterbridgeDeviceTypes.js.map +1 -0
  119. package/dist/matterbridgeDynamicPlatform.d.ts +42 -0
  120. package/dist/matterbridgeDynamicPlatform.d.ts.map +1 -0
  121. package/dist/matterbridgeDynamicPlatform.js +36 -0
  122. package/dist/matterbridgeDynamicPlatform.js.map +1 -0
  123. package/dist/matterbridgeEndpoint.d.ts +1250 -0
  124. package/dist/matterbridgeEndpoint.d.ts.map +1 -0
  125. package/dist/matterbridgeEndpoint.js +1106 -42
  126. package/dist/matterbridgeEndpoint.js.map +1 -0
  127. package/dist/matterbridgeEndpointHelpers.d.ts +3198 -0
  128. package/dist/matterbridgeEndpointHelpers.d.ts.map +1 -0
  129. package/dist/matterbridgeEndpointHelpers.js +322 -12
  130. package/dist/matterbridgeEndpointHelpers.js.map +1 -0
  131. package/dist/matterbridgePlatform.d.ts +310 -0
  132. package/dist/matterbridgePlatform.d.ts.map +1 -0
  133. package/dist/matterbridgePlatform.js +233 -0
  134. package/dist/matterbridgePlatform.js.map +1 -0
  135. package/dist/matterbridgeTypes.d.ts +195 -0
  136. package/dist/matterbridgeTypes.d.ts.map +1 -0
  137. package/dist/matterbridgeTypes.js +25 -0
  138. package/dist/matterbridgeTypes.js.map +1 -0
  139. package/dist/pluginManager.d.ts +291 -0
  140. package/dist/pluginManager.d.ts.map +1 -0
  141. package/dist/pluginManager.js +269 -3
  142. package/dist/pluginManager.js.map +1 -0
  143. package/dist/shelly.d.ts +174 -0
  144. package/dist/shelly.d.ts.map +1 -0
  145. package/dist/shelly.js +168 -7
  146. package/dist/shelly.js.map +1 -0
  147. package/dist/storage/export.d.ts +2 -0
  148. package/dist/storage/export.d.ts.map +1 -0
  149. package/dist/storage/export.js +1 -0
  150. package/dist/storage/export.js.map +1 -0
  151. package/dist/update.d.ts +59 -0
  152. package/dist/update.d.ts.map +1 -0
  153. package/dist/update.js +54 -0
  154. package/dist/update.js.map +1 -0
  155. package/dist/utils/colorUtils.d.ts +117 -0
  156. package/dist/utils/colorUtils.d.ts.map +1 -0
  157. package/dist/utils/colorUtils.js +263 -2
  158. package/dist/utils/colorUtils.js.map +1 -0
  159. package/dist/utils/commandLine.d.ts +59 -0
  160. package/dist/utils/commandLine.d.ts.map +1 -0
  161. package/dist/utils/commandLine.js +54 -0
  162. package/dist/utils/commandLine.js.map +1 -0
  163. package/dist/utils/copyDirectory.d.ts +33 -0
  164. package/dist/utils/copyDirectory.d.ts.map +1 -0
  165. package/dist/utils/copyDirectory.js +38 -1
  166. package/dist/utils/copyDirectory.js.map +1 -0
  167. package/dist/utils/createDirectory.d.ts +34 -0
  168. package/dist/utils/createDirectory.d.ts.map +1 -0
  169. package/dist/utils/createDirectory.js +33 -0
  170. package/dist/utils/createDirectory.js.map +1 -0
  171. package/dist/utils/createZip.d.ts +39 -0
  172. package/dist/utils/createZip.d.ts.map +1 -0
  173. package/dist/utils/createZip.js +47 -2
  174. package/dist/utils/createZip.js.map +1 -0
  175. package/dist/utils/deepCopy.d.ts +32 -0
  176. package/dist/utils/deepCopy.d.ts.map +1 -0
  177. package/dist/utils/deepCopy.js +39 -0
  178. package/dist/utils/deepCopy.js.map +1 -0
  179. package/dist/utils/deepEqual.d.ts +54 -0
  180. package/dist/utils/deepEqual.d.ts.map +1 -0
  181. package/dist/utils/deepEqual.js +72 -1
  182. package/dist/utils/deepEqual.js.map +1 -0
  183. package/dist/utils/export.d.ts +12 -0
  184. package/dist/utils/export.d.ts.map +1 -0
  185. package/dist/utils/export.js +1 -0
  186. package/dist/utils/export.js.map +1 -0
  187. package/dist/utils/hex.d.ts +49 -0
  188. package/dist/utils/hex.d.ts.map +1 -0
  189. package/dist/utils/hex.js +58 -0
  190. package/dist/utils/hex.js.map +1 -0
  191. package/dist/utils/isvalid.d.ts +103 -0
  192. package/dist/utils/isvalid.d.ts.map +1 -0
  193. package/dist/utils/isvalid.js +101 -0
  194. package/dist/utils/isvalid.js.map +1 -0
  195. package/dist/utils/network.d.ts +74 -0
  196. package/dist/utils/network.d.ts.map +1 -0
  197. package/dist/utils/network.js +81 -5
  198. package/dist/utils/network.js.map +1 -0
  199. package/dist/utils/spawn.d.ts +11 -0
  200. package/dist/utils/spawn.d.ts.map +1 -0
  201. package/dist/utils/spawn.js +18 -0
  202. package/dist/utils/spawn.js.map +1 -0
  203. package/dist/utils/wait.d.ts +56 -0
  204. package/dist/utils/wait.d.ts.map +1 -0
  205. package/dist/utils/wait.js +62 -9
  206. package/dist/utils/wait.js.map +1 -0
  207. package/npm-shrinkwrap.json +2 -2
  208. package/package.json +2 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"matterbridgeBehaviors.d.ts","sourceRoot":"","sources":["../src/matterbridgeBehaviors.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,31 @@
1
+ /**
2
+ * This file contains the behavior classes of Matterbridge.
3
+ *
4
+ * @file matterbridgeBehaviors.ts
5
+ * @author Luca Liguori
6
+ * @created 2024-11-07
7
+ * @version 1.3.0
8
+ * @license Apache-2.0
9
+ *
10
+ * Copyright 2024, 2025, 2026 Luca Liguori.
11
+ *
12
+ * Licensed under the Apache License, Version 2.0 (the "License");
13
+ * you may not use this file except in compliance with the License.
14
+ * You may obtain a copy of the License at
15
+ *
16
+ * http://www.apache.org/licenses/LICENSE-2.0
17
+ *
18
+ * Unless required by applicable law or agreed to in writing, software
19
+ * distributed under the License is distributed on an "AS IS" BASIS,
20
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21
+ * See the License for the specific language governing permissions and
22
+ * limitations under the License.
23
+ */
24
+ /* eslint-disable @typescript-eslint/no-namespace */
25
+ /* eslint-disable @typescript-eslint/no-unused-vars */
26
+ // @matter
1
27
  import { Behavior } from '@matter/main';
28
+ // @matter clusters
2
29
  import { BooleanStateConfiguration } from '@matter/main/clusters/boolean-state-configuration';
3
30
  import { ColorControl } from '@matter/main/clusters/color-control';
4
31
  import { FanControl } from '@matter/main/clusters/fan-control';
@@ -10,6 +37,7 @@ import { BooleanStateConfigurationServer } from '@matter/main/behaviors/boolean-
10
37
  import { OperationalState } from '@matter/main/clusters/operational-state';
11
38
  import { ModeBase } from '@matter/main/clusters/mode-base';
12
39
  import { ServiceArea } from '@matter/main/clusters/service-area';
40
+ // @matter behaviors
13
41
  import { IdentifyServer } from '@matter/main/behaviors/identify';
14
42
  import { OnOffServer } from '@matter/main/behaviors/on-off';
15
43
  import { LevelControlServer } from '@matter/main/behaviors/level-control';
@@ -162,6 +190,7 @@ export class MatterbridgeLiftWindowCoveringServer extends WindowCoveringServer.w
162
190
  super.goToLiftPercentage(request);
163
191
  }
164
192
  async handleMovement(type, reversed, direction, targetPercent100ths) {
193
+ // Do nothing here, as the device will handle the movement
165
194
  }
166
195
  }
167
196
  export class MatterbridgeLiftTiltWindowCoveringServer extends WindowCoveringServer.with(WindowCovering.Feature.Lift, WindowCovering.Feature.PositionAwareLift, WindowCovering.Feature.Tilt, WindowCovering.Feature.PositionAwareTilt) {
@@ -201,6 +230,7 @@ export class MatterbridgeLiftTiltWindowCoveringServer extends WindowCoveringServ
201
230
  super.goToTiltPercentage(request);
202
231
  }
203
232
  async handleMovement(type, reversed, direction, targetPercent100ths) {
233
+ // Do nothing here, as the device will handle the movement
204
234
  }
205
235
  }
206
236
  export class MatterbridgeDoorLockServer extends DoorLockServer {
@@ -242,6 +272,8 @@ export class MatterbridgeFanControlServer extends FanControlServer.with(FanContr
242
272
  this.state.percentCurrent = Math.max(this.state.percentCurrent - 10, request.lowestOff ? 0 : 10);
243
273
  }
244
274
  device.log.debug('Set percentCurrent to:', this.state.percentCurrent);
275
+ // step is not implemented in matter.js
276
+ // super.step(request);
245
277
  }
246
278
  }
247
279
  export class MatterbridgeThermostatServer extends ThermostatServer.with(Thermostat.Feature.Cooling, Thermostat.Feature.Heating, Thermostat.Feature.AutoMode) {
@@ -265,6 +297,8 @@ export class MatterbridgeThermostatServer extends ThermostatServer.with(Thermost
265
297
  this.state.occupiedCoolingSetpoint = setpoint * 100;
266
298
  device.log.debug(`Set occupiedCoolingSetpoint to ${setpoint}`);
267
299
  }
300
+ // setpointRaiseLower is not implemented in matter.js
301
+ // super.setpointRaiseLower(request);
268
302
  }
269
303
  }
270
304
  export class MatterbridgeValveConfigurationAndControlServer extends ValveConfigurationAndControlServer.with(ValveConfigurationAndControl.Feature.Level) {
@@ -280,6 +314,8 @@ export class MatterbridgeValveConfigurationAndControlServer extends ValveConfigu
280
314
  this.state.openDuration = request.openDuration ?? this.state.defaultOpenDuration;
281
315
  if (this.state.openDuration === null)
282
316
  this.state.remainingDuration = null;
317
+ // open is not implemented in matter.js
318
+ // super.open(request);
283
319
  }
284
320
  close() {
285
321
  const device = this.endpoint.stateOf(MatterbridgeServer);
@@ -292,6 +328,8 @@ export class MatterbridgeValveConfigurationAndControlServer extends ValveConfigu
292
328
  this.state.currentLevel = 0;
293
329
  this.state.openDuration = null;
294
330
  this.state.remainingDuration = null;
331
+ // close is not implemented in matter.js
332
+ // super.close();
295
333
  }
296
334
  }
297
335
  export class MatterbridgeSmokeCoAlarmServer extends SmokeCoAlarmServer.with(SmokeCoAlarm.Feature.SmokeAlarm, SmokeCoAlarm.Feature.CoAlarm) {
@@ -300,6 +338,8 @@ export class MatterbridgeSmokeCoAlarmServer extends SmokeCoAlarmServer.with(Smok
300
338
  device.log.info(`Testing SmokeCOAlarm (endpoint ${this.endpoint.maybeId}.${this.endpoint.maybeNumber})`);
301
339
  device.commandHandler.executeHandler('selfTestRequest', { request: {}, cluster: SmokeCoAlarmServer.id, attributes: this.state, endpoint: this.endpoint });
302
340
  device.log.debug(`MatterbridgeSmokeCoAlarmServer: selfTestRequest called`);
341
+ // selfTestRequest is not implemented in matter.js
342
+ // super.selfTestRequest();
303
343
  }
304
344
  }
305
345
  export class MatterbridgeBooleanStateConfigurationServer extends BooleanStateConfigurationServer.with(BooleanStateConfiguration.Feature.Visual, BooleanStateConfiguration.Feature.Audible, BooleanStateConfiguration.Feature.SensitivityLevel) {
@@ -308,10 +348,13 @@ export class MatterbridgeBooleanStateConfigurationServer extends BooleanStateCon
308
348
  device.log.info(`Enabling/disabling alarm ${request.alarmsToEnableDisable} (endpoint ${this.endpoint.maybeId}.${this.endpoint.maybeNumber})`);
309
349
  device.commandHandler.executeHandler('enableDisableAlarm', { request, cluster: BooleanStateConfigurationServer.id, attributes: this.state, endpoint: this.endpoint });
310
350
  device.log.debug(`MatterbridgeBooleanStateConfigurationServer: enableDisableAlarm called`);
351
+ // enableDisableAlarm is not implemented in matter.js
352
+ // super.enableDisableAlarm(request);
311
353
  }
312
354
  }
313
355
  export class MatterbridgeSwitchServer extends SwitchServer {
314
356
  initialize() {
357
+ // Do nothing here, as the device will handle the switch logic: we need to convert something like "single" into the appropriate sequence of state changes and events
315
358
  }
316
359
  }
317
360
  export class MatterbridgeOperationalStateServer extends OperationalStateServer {
@@ -320,7 +363,7 @@ export class MatterbridgeOperationalStateServer extends OperationalStateServer {
320
363
  device.log.debug('MatterbridgeOperationalStateServer initialized: setting operational state to Stopped');
321
364
  this.state.operationalState = OperationalState.OperationalStateEnum.Stopped;
322
365
  this.state.operationalError = { errorStateId: OperationalState.ErrorState.NoError, errorStateLabel: 'No error', errorStateDetails: 'Fully operational' };
323
- super.initialize();
366
+ super.initialize(); // Error handling logic is handled in matter.js
324
367
  }
325
368
  pause() {
326
369
  const device = this.endpoint.stateOf(MatterbridgeServer);
@@ -329,6 +372,8 @@ export class MatterbridgeOperationalStateServer extends OperationalStateServer {
329
372
  device.log.debug('MatterbridgeOperationalStateServer: pause called setting operational state to Paused');
330
373
  this.state.operationalState = OperationalState.OperationalStateEnum.Paused;
331
374
  this.state.operationalError = { errorStateId: OperationalState.ErrorState.NoError, errorStateLabel: 'No error', errorStateDetails: 'Fully operational' };
375
+ // pause is not implemented in matter.js
376
+ // return super.pause();
332
377
  return {
333
378
  commandResponseState: { errorStateId: OperationalState.ErrorState.NoError, errorStateLabel: 'No error', errorStateDetails: 'Fully operational' },
334
379
  };
@@ -340,6 +385,8 @@ export class MatterbridgeOperationalStateServer extends OperationalStateServer {
340
385
  device.log.debug('MatterbridgeOperationalStateServer: stop called setting operational state to Stopped');
341
386
  this.state.operationalState = OperationalState.OperationalStateEnum.Stopped;
342
387
  this.state.operationalError = { errorStateId: OperationalState.ErrorState.NoError, errorStateLabel: 'No error', errorStateDetails: 'Fully operational' };
388
+ // stop is not implemented in matter.js
389
+ // return super.stop();
343
390
  return {
344
391
  commandResponseState: { errorStateId: OperationalState.ErrorState.NoError, errorStateLabel: 'No error', errorStateDetails: 'Fully operational' },
345
392
  };
@@ -351,6 +398,8 @@ export class MatterbridgeOperationalStateServer extends OperationalStateServer {
351
398
  device.log.debug('MatterbridgeOperationalStateServer: start called setting operational state to Running');
352
399
  this.state.operationalState = OperationalState.OperationalStateEnum.Running;
353
400
  this.state.operationalError = { errorStateId: OperationalState.ErrorState.NoError, errorStateLabel: 'No error', errorStateDetails: 'Fully operational' };
401
+ // start is not implemented in matter.js
402
+ // return super.start();
354
403
  return {
355
404
  commandResponseState: { errorStateId: OperationalState.ErrorState.NoError, errorStateLabel: 'No error', errorStateDetails: 'Fully operational' },
356
405
  };
@@ -362,6 +411,8 @@ export class MatterbridgeOperationalStateServer extends OperationalStateServer {
362
411
  device.log.debug('MatterbridgeOperationalStateServer: resume called setting operational state to Running');
363
412
  this.state.operationalState = OperationalState.OperationalStateEnum.Running;
364
413
  this.state.operationalError = { errorStateId: OperationalState.ErrorState.NoError, errorStateLabel: 'No error', errorStateDetails: 'Fully operational' };
414
+ // resume is not implemented in matter.js
415
+ // return super.resume();
365
416
  return {
366
417
  commandResponseState: { errorStateId: OperationalState.ErrorState.NoError, errorStateLabel: 'No error', errorStateDetails: 'Fully operational' },
367
418
  };
@@ -382,6 +433,7 @@ export class MatterbridgeServiceAreaServer extends ServiceAreaServer {
382
433
  this.state.selectedAreas = request.newAreas;
383
434
  device.log.debug(`MatterbridgeServiceAreaServer selectAreas called with: ${request.newAreas.map((area) => area.toString()).join(', ')}`);
384
435
  return super.selectAreas(request);
436
+ // return { status: ServiceArea.SelectAreasStatus.Success, statusText: 'Succesfully selected new areas' };
385
437
  }
386
438
  }
387
439
  export class MatterbridgeModeSelectServer extends ModeSelectServer {
@@ -399,12 +451,18 @@ export class MatterbridgeDeviceEnergyManagementServer extends DeviceEnergyManage
399
451
  device.log.info(`Adjusting power to ${request.power} duration ${request.duration} cause ${request.cause} (endpoint ${this.endpoint.maybeId}.${this.endpoint.maybeNumber})`);
400
452
  device.commandHandler.executeHandler('powerAdjustRequest', { request, cluster: DeviceEnergyManagementServer.id, attributes: this.state, endpoint: this.endpoint });
401
453
  device.log.debug(`MatterbridgeDeviceEnergyManagementServer powerAdjustRequest called with power ${request.power} duration ${request.duration} cause ${request.cause}`);
454
+ // The implementation is responsible for setting the device accordingly with the powerAdjustRequest command
455
+ // powerAdjustRequest is not implemented in matter.js
456
+ // return super.powerAdjustRequest();
402
457
  }
403
458
  cancelPowerAdjustRequest() {
404
459
  const device = this.endpoint.stateOf(MatterbridgeServer);
405
460
  device.log.info(`Cancelling power adjustment (endpoint ${this.endpoint.maybeId}.${this.endpoint.maybeNumber})`);
406
461
  device.commandHandler.executeHandler('cancelPowerAdjustRequest', { cluster: DeviceEnergyManagementServer.id, attributes: this.state, endpoint: this.endpoint });
407
462
  device.log.debug(`MatterbridgeDeviceEnergyManagementServer cancelPowerAdjustRequest called`);
463
+ // The implementation is responsible for setting the device accordingly with the cancelPowerAdjustRequest command
464
+ // cancelPowerAdjustRequest is not implemented in matter.js
465
+ // return super.cancelPowerAdjustRequest();
408
466
  }
409
467
  }
410
468
  export class MatterbridgeDeviceEnergyManagementModeServer extends DeviceEnergyManagementModeServer {
@@ -420,5 +478,7 @@ export class MatterbridgeDeviceEnergyManagementModeServer extends DeviceEnergyMa
420
478
  this.state.currentMode = request.newMode;
421
479
  device.log.debug(`MatterbridgeDeviceEnergyManagementModeServer changeToMode called with newMode ${request.newMode} => ${supported.label}`);
422
480
  return super.changeToMode(request);
481
+ // return { status: ModeBase.ModeChangeStatus.Success, statusText: 'Success' };
423
482
  }
424
483
  }
484
+ //# sourceMappingURL=matterbridgeBehaviors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"matterbridgeBehaviors.js","sourceRoot":"","sources":["../src/matterbridgeBehaviors.ts"],"names":[],"mappings":"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"}