matterbridge 3.0.4-dev-20250525-b1cbfb7 → 3.0.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 (163) hide show
  1. package/CHANGELOG.md +2 -2
  2. package/dist/cli.d.ts +29 -0
  3. package/dist/cli.d.ts.map +1 -0
  4. package/dist/cli.js +37 -2
  5. package/dist/cli.js.map +1 -0
  6. package/dist/cluster/export.d.ts +2 -0
  7. package/dist/cluster/export.d.ts.map +1 -0
  8. package/dist/cluster/export.js +2 -0
  9. package/dist/cluster/export.js.map +1 -0
  10. package/dist/defaultConfigSchema.d.ts +27 -0
  11. package/dist/defaultConfigSchema.d.ts.map +1 -0
  12. package/dist/defaultConfigSchema.js +23 -0
  13. package/dist/defaultConfigSchema.js.map +1 -0
  14. package/dist/deviceManager.d.ts +114 -0
  15. package/dist/deviceManager.d.ts.map +1 -0
  16. package/dist/deviceManager.js +94 -1
  17. package/dist/deviceManager.js.map +1 -0
  18. package/dist/frontend.d.ts +256 -0
  19. package/dist/frontend.d.ts.map +1 -0
  20. package/dist/frontend.js +363 -16
  21. package/dist/frontend.js.map +1 -0
  22. package/dist/helpers.d.ts +47 -0
  23. package/dist/helpers.d.ts.map +1 -0
  24. package/dist/helpers.js +51 -0
  25. package/dist/helpers.js.map +1 -0
  26. package/dist/index.d.ts +35 -0
  27. package/dist/index.d.ts.map +1 -0
  28. package/dist/index.js +27 -1
  29. package/dist/index.js.map +1 -0
  30. package/dist/logger/export.d.ts +2 -0
  31. package/dist/logger/export.d.ts.map +1 -0
  32. package/dist/logger/export.js +1 -0
  33. package/dist/logger/export.js.map +1 -0
  34. package/dist/matter/behaviors.d.ts +2 -0
  35. package/dist/matter/behaviors.d.ts.map +1 -0
  36. package/dist/matter/behaviors.js +2 -0
  37. package/dist/matter/behaviors.js.map +1 -0
  38. package/dist/matter/clusters.d.ts +2 -0
  39. package/dist/matter/clusters.d.ts.map +1 -0
  40. package/dist/matter/clusters.js +2 -0
  41. package/dist/matter/clusters.js.map +1 -0
  42. package/dist/matter/devices.d.ts +2 -0
  43. package/dist/matter/devices.d.ts.map +1 -0
  44. package/dist/matter/devices.js +2 -0
  45. package/dist/matter/devices.js.map +1 -0
  46. package/dist/matter/endpoints.d.ts +2 -0
  47. package/dist/matter/endpoints.d.ts.map +1 -0
  48. package/dist/matter/endpoints.js +2 -0
  49. package/dist/matter/endpoints.js.map +1 -0
  50. package/dist/matter/export.d.ts +5 -0
  51. package/dist/matter/export.d.ts.map +1 -0
  52. package/dist/matter/export.js +2 -0
  53. package/dist/matter/export.js.map +1 -0
  54. package/dist/matter/types.d.ts +3 -0
  55. package/dist/matter/types.d.ts.map +1 -0
  56. package/dist/matter/types.js +2 -0
  57. package/dist/matter/types.js.map +1 -0
  58. package/dist/matterbridge.d.ts +445 -0
  59. package/dist/matterbridge.d.ts.map +1 -0
  60. package/dist/matterbridge.js +747 -47
  61. package/dist/matterbridge.js.map +1 -0
  62. package/dist/matterbridgeAccessoryPlatform.d.ts +40 -0
  63. package/dist/matterbridgeAccessoryPlatform.d.ts.map +1 -0
  64. package/dist/matterbridgeAccessoryPlatform.js +34 -0
  65. package/dist/matterbridgeAccessoryPlatform.js.map +1 -0
  66. package/dist/matterbridgeBehaviors.d.ts +1398 -0
  67. package/dist/matterbridgeBehaviors.d.ts.map +1 -0
  68. package/dist/matterbridgeBehaviors.js +61 -4
  69. package/dist/matterbridgeBehaviors.js.map +1 -0
  70. package/dist/matterbridgeDeviceTypes.d.ts +629 -0
  71. package/dist/matterbridgeDeviceTypes.d.ts.map +1 -0
  72. package/dist/matterbridgeDeviceTypes.js +563 -15
  73. package/dist/matterbridgeDeviceTypes.js.map +1 -0
  74. package/dist/matterbridgeDynamicPlatform.d.ts +40 -0
  75. package/dist/matterbridgeDynamicPlatform.d.ts.map +1 -0
  76. package/dist/matterbridgeDynamicPlatform.js +34 -0
  77. package/dist/matterbridgeDynamicPlatform.js.map +1 -0
  78. package/dist/matterbridgeEndpoint.d.ts +1053 -0
  79. package/dist/matterbridgeEndpoint.d.ts.map +1 -0
  80. package/dist/matterbridgeEndpoint.js +903 -23
  81. package/dist/matterbridgeEndpoint.js.map +1 -0
  82. package/dist/matterbridgeEndpointHelpers.d.ts +2749 -0
  83. package/dist/matterbridgeEndpointHelpers.d.ts.map +1 -0
  84. package/dist/matterbridgeEndpointHelpers.js +172 -10
  85. package/dist/matterbridgeEndpointHelpers.js.map +1 -0
  86. package/dist/matterbridgePlatform.d.ts +294 -0
  87. package/dist/matterbridgePlatform.d.ts.map +1 -0
  88. package/dist/matterbridgePlatform.js +225 -7
  89. package/dist/matterbridgePlatform.js.map +1 -0
  90. package/dist/matterbridgeTypes.d.ts +196 -0
  91. package/dist/matterbridgeTypes.d.ts.map +1 -0
  92. package/dist/matterbridgeTypes.js +24 -0
  93. package/dist/matterbridgeTypes.js.map +1 -0
  94. package/dist/pluginManager.d.ts +273 -0
  95. package/dist/pluginManager.d.ts.map +1 -0
  96. package/dist/pluginManager.js +264 -3
  97. package/dist/pluginManager.js.map +1 -0
  98. package/dist/roboticVacuumCleaner.d.ts +82 -0
  99. package/dist/roboticVacuumCleaner.d.ts.map +1 -0
  100. package/dist/roboticVacuumCleaner.js +78 -3
  101. package/dist/roboticVacuumCleaner.js.map +1 -0
  102. package/dist/shelly.d.ts +153 -0
  103. package/dist/shelly.d.ts.map +1 -0
  104. package/dist/shelly.js +155 -7
  105. package/dist/shelly.js.map +1 -0
  106. package/dist/storage/export.d.ts +2 -0
  107. package/dist/storage/export.d.ts.map +1 -0
  108. package/dist/storage/export.js +1 -0
  109. package/dist/storage/export.js.map +1 -0
  110. package/dist/update.d.ts +58 -0
  111. package/dist/update.d.ts.map +1 -0
  112. package/dist/update.js +53 -0
  113. package/dist/update.js.map +1 -0
  114. package/dist/utils/colorUtils.d.ts +61 -0
  115. package/dist/utils/colorUtils.d.ts.map +1 -0
  116. package/dist/utils/colorUtils.js +205 -2
  117. package/dist/utils/colorUtils.js.map +1 -0
  118. package/dist/utils/commandLine.d.ts +58 -0
  119. package/dist/utils/commandLine.d.ts.map +1 -0
  120. package/dist/utils/commandLine.js +53 -0
  121. package/dist/utils/commandLine.js.map +1 -0
  122. package/dist/utils/copyDirectory.d.ts +32 -0
  123. package/dist/utils/copyDirectory.d.ts.map +1 -0
  124. package/dist/utils/copyDirectory.js +37 -1
  125. package/dist/utils/copyDirectory.js.map +1 -0
  126. package/dist/utils/createZip.d.ts +38 -0
  127. package/dist/utils/createZip.d.ts.map +1 -0
  128. package/dist/utils/createZip.js +42 -2
  129. package/dist/utils/createZip.js.map +1 -0
  130. package/dist/utils/deepCopy.d.ts +31 -0
  131. package/dist/utils/deepCopy.d.ts.map +1 -0
  132. package/dist/utils/deepCopy.js +38 -0
  133. package/dist/utils/deepCopy.js.map +1 -0
  134. package/dist/utils/deepEqual.d.ts +53 -0
  135. package/dist/utils/deepEqual.d.ts.map +1 -0
  136. package/dist/utils/deepEqual.js +71 -1
  137. package/dist/utils/deepEqual.js.map +1 -0
  138. package/dist/utils/export.d.ts +11 -0
  139. package/dist/utils/export.d.ts.map +1 -0
  140. package/dist/utils/export.js +1 -0
  141. package/dist/utils/export.js.map +1 -0
  142. package/dist/utils/hex.d.ts +48 -0
  143. package/dist/utils/hex.d.ts.map +1 -0
  144. package/dist/utils/hex.js +57 -0
  145. package/dist/utils/hex.js.map +1 -0
  146. package/dist/utils/isvalid.d.ts +102 -0
  147. package/dist/utils/isvalid.d.ts.map +1 -0
  148. package/dist/utils/isvalid.js +100 -0
  149. package/dist/utils/isvalid.js.map +1 -0
  150. package/dist/utils/network.d.ts +69 -0
  151. package/dist/utils/network.d.ts.map +1 -0
  152. package/dist/utils/network.js +76 -5
  153. package/dist/utils/network.js.map +1 -0
  154. package/dist/utils/wait.d.ts +52 -0
  155. package/dist/utils/wait.d.ts.map +1 -0
  156. package/dist/utils/wait.js +58 -9
  157. package/dist/utils/wait.js.map +1 -0
  158. package/dist/waterHeater.d.ts +75 -0
  159. package/dist/waterHeater.d.ts.map +1 -0
  160. package/dist/waterHeater.js +52 -0
  161. package/dist/waterHeater.js.map +1 -0
  162. package/npm-shrinkwrap.json +2 -2
  163. 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 class MatterbridgeEndpoint that extends the Endpoint class from the Matter.js library.
3
+ *
4
+ * @file matterbridgeBehaviors.ts
5
+ * @author Luca Liguori
6
+ * @date 2024-11-07
7
+ * @version 1.0.0
8
+ *
9
+ * Copyright 2024, 2025, 2026 Luca Liguori.
10
+ *
11
+ * Licensed under the Apache License, Version 2.0 (the "License");
12
+ * you may not use this file except in compliance with the License.
13
+ * You may obtain a copy of the License at
14
+ *
15
+ * http://www.apache.org/licenses/LICENSE-2.0
16
+ *
17
+ * Unless required by applicable law or agreed to in writing, software
18
+ * distributed under the License is distributed on an "AS IS" BASIS,
19
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
20
+ * See the License for the specific language governing permissions and
21
+ * limitations under the License. *
22
+ */
23
+ /* eslint-disable @typescript-eslint/no-namespace */
24
+ /* eslint-disable @typescript-eslint/no-unused-vars */
25
+ /* eslint-disable @typescript-eslint/no-explicit-any */
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';
@@ -13,6 +40,7 @@ import { RvcRunMode } from '@matter/main/clusters/rvc-run-mode';
13
40
  import { RvcOperationalState } from '@matter/main/clusters/rvc-operational-state';
14
41
  import { ServiceArea } from '@matter/main/clusters/service-area';
15
42
  import { WaterHeaterManagement } from '@matter/main/clusters/water-heater-management';
43
+ // @matter behaviors
16
44
  import { IdentifyServer } from '@matter/main/behaviors/identify';
17
45
  import { OnOffServer } from '@matter/main/behaviors/on-off';
18
46
  import { LevelControlServer } from '@matter/main/behaviors/level-control';
@@ -35,7 +63,7 @@ import { WaterHeaterManagementServer } from '@matter/main/behaviors/water-heater
35
63
  export class MatterbridgeServerDevice {
36
64
  log;
37
65
  commandHandler;
38
- device;
66
+ device; // Will be a plugin device
39
67
  endpointId = undefined;
40
68
  endpointNumber = undefined;
41
69
  constructor(log, commandHandler, device) {
@@ -311,6 +339,7 @@ export class MatterbridgeLiftWindowCoveringServer extends WindowCoveringServer.w
311
339
  super.goToLiftPercentage({ liftPercent100thsValue });
312
340
  }
313
341
  async handleMovement(type, reversed, direction, targetPercent100ths) {
342
+ // Do nothing here, as the device will handle the movement
314
343
  }
315
344
  }
316
345
  export class MatterbridgeLiftTiltWindowCoveringServer extends WindowCoveringServer.with(WindowCovering.Feature.Lift, WindowCovering.Feature.PositionAwareLift, WindowCovering.Feature.Tilt, WindowCovering.Feature.PositionAwareTilt) {
@@ -345,6 +374,7 @@ export class MatterbridgeLiftTiltWindowCoveringServer extends WindowCoveringServ
345
374
  super.goToTiltPercentage({ tiltPercent100thsValue });
346
375
  }
347
376
  async handleMovement(type, reversed, direction, targetPercent100ths) {
377
+ // Do nothing here, as the device will handle the movement
348
378
  }
349
379
  }
350
380
  export class MatterbridgeDoorLockServer extends DoorLockServer {
@@ -391,6 +421,8 @@ export class MatterbridgeFanControlServer extends FanControlServer.with(FanContr
391
421
  this.state.percentCurrent = Math.max(this.state.percentCurrent - 10, lowestOff ? 0 : 10);
392
422
  }
393
423
  device.log.debug('Set percentCurrent to:', this.state.percentCurrent);
424
+ // step is not implemented in matter.js
425
+ // super.step();
394
426
  }
395
427
  }
396
428
  export class MatterbridgeThermostatServer extends ThermostatServer.with(Thermostat.Feature.Cooling, Thermostat.Feature.Heating, Thermostat.Feature.AutoMode) {
@@ -411,6 +443,8 @@ export class MatterbridgeThermostatServer extends ThermostatServer.with(Thermost
411
443
  this.state.occupiedCoolingSetpoint = setpoint * 100;
412
444
  device.log.debug(`Set occupiedCoolingSetpoint to ${setpoint}`);
413
445
  }
446
+ // setpointRaiseLower is not implemented in matter.js
447
+ // super.setpointRaiseLower();
414
448
  }
415
449
  }
416
450
  export class MatterbridgeValveConfigurationAndControlServer extends ValveConfigurationAndControlServer.with(ValveConfigurationAndControl.Feature.Level) {
@@ -420,6 +454,8 @@ export class MatterbridgeValveConfigurationAndControlServer extends ValveConfigu
420
454
  device.open({ openDuration, targetLevel });
421
455
  this.state.targetLevel = targetLevel ?? 100;
422
456
  this.state.currentLevel = targetLevel ?? 100;
457
+ // open is not implemented in matter.js
458
+ // super.open();
423
459
  }
424
460
  close() {
425
461
  const device = this.agent.get(MatterbridgeServer).state.deviceCommand;
@@ -427,6 +463,8 @@ export class MatterbridgeValveConfigurationAndControlServer extends ValveConfigu
427
463
  device.close();
428
464
  this.state.targetLevel = 0;
429
465
  this.state.currentLevel = 0;
466
+ // close is not implemented in matter.js
467
+ // super.close();
430
468
  }
431
469
  }
432
470
  export class MatterbridgeSmokeCoAlarmServer extends SmokeCoAlarmServer.with(SmokeCoAlarm.Feature.SmokeAlarm, SmokeCoAlarm.Feature.CoAlarm) {
@@ -434,6 +472,8 @@ export class MatterbridgeSmokeCoAlarmServer extends SmokeCoAlarmServer.with(Smok
434
472
  const device = this.agent.get(MatterbridgeServer).state.deviceCommand;
435
473
  device.log.debug(`MatterbridgeSmokeCoAlarmServer: selfTestRequest called`);
436
474
  device.selfTestRequest();
475
+ // selfTestRequest is not implemented in matter.js
476
+ // super.selfTestRequest();
437
477
  }
438
478
  }
439
479
  export class MatterbridgeBooleanStateConfigurationServer extends BooleanStateConfigurationServer.with(BooleanStateConfiguration.Feature.Visual, BooleanStateConfiguration.Feature.Audible, BooleanStateConfiguration.Feature.SensitivityLevel) {
@@ -441,10 +481,13 @@ export class MatterbridgeBooleanStateConfigurationServer extends BooleanStateCon
441
481
  const device = this.agent.get(MatterbridgeServer).state.deviceCommand;
442
482
  device.log.debug(`MatterbridgeBooleanStateConfigurationServer: enableDisableAlarm called`);
443
483
  device.enableDisableAlarm({ alarmsToEnableDisable });
484
+ // enableDisableAlarm is not implemented in matter.js
485
+ // super.enableDisableAlarm({ alarmsToEnableDisable });
444
486
  }
445
487
  }
446
488
  export class MatterbridgeSwitchServer extends SwitchServer {
447
489
  initialize() {
490
+ // Do nothing here, as the device will handle the switch logic: we need to convert something like "single" into the oppropriate states and events sequences
448
491
  }
449
492
  }
450
493
  export class MatterbridgeOperationalStateServer extends OperationalStateServer {
@@ -460,6 +503,7 @@ export class MatterbridgeOperationalStateServer extends OperationalStateServer {
460
503
  device.pause();
461
504
  this.state.operationalState = OperationalState.OperationalStateEnum.Paused;
462
505
  this.state.operationalError = { errorStateId: OperationalState.ErrorState.NoError, errorStateLabel: 'No error', errorStateDetails: 'Fully operational' };
506
+ // pause is not implemented in matter.js
463
507
  return {
464
508
  commandResponseState: { errorStateId: OperationalState.ErrorState.NoError, errorStateLabel: 'No error', errorStateDetails: 'Fully operational' },
465
509
  };
@@ -470,6 +514,7 @@ export class MatterbridgeOperationalStateServer extends OperationalStateServer {
470
514
  device.stop();
471
515
  this.state.operationalState = OperationalState.OperationalStateEnum.Stopped;
472
516
  this.state.operationalError = { errorStateId: OperationalState.ErrorState.NoError, errorStateLabel: 'No error', errorStateDetails: 'Fully operational' };
517
+ // stop is not implemented in matter.js
473
518
  return {
474
519
  commandResponseState: { errorStateId: OperationalState.ErrorState.NoError, errorStateLabel: 'No error', errorStateDetails: 'Fully operational' },
475
520
  };
@@ -480,6 +525,7 @@ export class MatterbridgeOperationalStateServer extends OperationalStateServer {
480
525
  device.start();
481
526
  this.state.operationalState = OperationalState.OperationalStateEnum.Running;
482
527
  this.state.operationalError = { errorStateId: OperationalState.ErrorState.NoError, errorStateLabel: 'No error', errorStateDetails: 'Fully operational' };
528
+ // start is not implemented in matter.js
483
529
  return {
484
530
  commandResponseState: { errorStateId: OperationalState.ErrorState.NoError, errorStateLabel: 'No error', errorStateDetails: 'Fully operational' },
485
531
  };
@@ -490,11 +536,13 @@ export class MatterbridgeOperationalStateServer extends OperationalStateServer {
490
536
  device.resume();
491
537
  this.state.operationalState = OperationalState.OperationalStateEnum.Running;
492
538
  this.state.operationalError = { errorStateId: OperationalState.ErrorState.NoError, errorStateLabel: 'No error', errorStateDetails: 'Fully operational' };
539
+ // resume is not implemented in matter.js
493
540
  return {
494
541
  commandResponseState: { errorStateId: OperationalState.ErrorState.NoError, errorStateLabel: 'No error', errorStateDetails: 'Fully operational' },
495
542
  };
496
543
  }
497
544
  }
545
+ /** ********************************************* roboticVacuumCleaner **********************************************************/
498
546
  export class MatterbridgeRvcRunModeServer extends RvcRunModeServer {
499
547
  changeToMode({ newMode }) {
500
548
  const device = this.endpoint.stateOf(MatterbridgeServer).deviceCommand;
@@ -539,7 +587,7 @@ export class MatterbridgeRvcOperationalStateServer extends RvcOperationalStateSe
539
587
  const device = this.endpoint.stateOf(MatterbridgeServer).deviceCommand;
540
588
  device.log.info('MatterbridgeRvcOperationalStateServer: pause called setting operational state to Paused and currentMode to Idle');
541
589
  device.pause();
542
- this.agent.get(MatterbridgeRvcRunModeServer).state.currentMode = 1;
590
+ this.agent.get(MatterbridgeRvcRunModeServer).state.currentMode = 1; // RvcRunMode.ModeTag.Idle
543
591
  this.state.operationalState = RvcOperationalState.OperationalState.Paused;
544
592
  this.state.operationalError = { errorStateId: RvcOperationalState.ErrorState.NoError, errorStateLabel: 'No Error', errorStateDetails: 'Fully operational' };
545
593
  return {
@@ -550,7 +598,7 @@ export class MatterbridgeRvcOperationalStateServer extends RvcOperationalStateSe
550
598
  const device = this.endpoint.stateOf(MatterbridgeServer).deviceCommand;
551
599
  device.log.info('MatterbridgeRvcOperationalStateServer: resume called setting operational state to Running and currentMode to Cleaning');
552
600
  device.resume();
553
- this.agent.get(MatterbridgeRvcRunModeServer).state.currentMode = 2;
601
+ this.agent.get(MatterbridgeRvcRunModeServer).state.currentMode = 2; // RvcRunMode.ModeTag.Cleaning
554
602
  this.state.operationalState = RvcOperationalState.OperationalState.Running;
555
603
  this.state.operationalError = { errorStateId: RvcOperationalState.ErrorState.NoError, errorStateLabel: 'No Error', errorStateDetails: 'Fully operational' };
556
604
  return {
@@ -558,10 +606,11 @@ export class MatterbridgeRvcOperationalStateServer extends RvcOperationalStateSe
558
606
  };
559
607
  }
560
608
  goHome() {
609
+ // const device = this.agent.get(MatterbridgeServer).state.deviceCommand;
561
610
  const device = this.endpoint.stateOf(MatterbridgeServer).deviceCommand;
562
611
  device.log.info('MatterbridgeRvcOperationalStateServer: goHome called setting operational state to Docked and currentMode to Idle');
563
612
  device.goHome();
564
- this.agent.get(MatterbridgeRvcRunModeServer).state.currentMode = 1;
613
+ this.agent.get(MatterbridgeRvcRunModeServer).state.currentMode = 1; // RvcRunMode.ModeTag.Idle
565
614
  this.state.operationalState = RvcOperationalState.OperationalState.Docked;
566
615
  this.state.operationalError = { errorStateId: RvcOperationalState.ErrorState.NoError, errorStateLabel: 'No Error', errorStateDetails: 'Fully operational' };
567
616
  return {
@@ -587,18 +636,25 @@ export class MatterbridgeServiceAreaServer extends ServiceAreaServer {
587
636
  return { status: ServiceArea.SelectAreasStatus.Success, statusText: 'Succesfully selected new areas' };
588
637
  }
589
638
  }
639
+ /** ********************************************* waterHeater **********************************************************/
590
640
  export class MatterbridgeWaterHeaterManagementServer extends WaterHeaterManagementServer {
591
641
  boost({ boostInfo }) {
592
642
  const device = this.endpoint.stateOf(MatterbridgeServer).deviceCommand;
593
643
  device.boost({ boostInfo });
594
644
  device.log.info(`MatterbridgeWaterHeaterManagementServer boost called with: ${JSON.stringify(boostInfo)}`);
595
645
  this.state.boostState = WaterHeaterManagement.BoostState.Active;
646
+ // The plugin is responsible for setting the device accordingly with the boostInfo of the boost command
647
+ // super.boost({ boostInfo });
648
+ // boost is not implemented in matter.js
596
649
  }
597
650
  cancelBoost() {
598
651
  const device = this.endpoint.stateOf(MatterbridgeServer).deviceCommand;
599
652
  device.cancelBoost();
600
653
  device.log.info(`MatterbridgeWaterHeaterManagementServer cancelBoost called`);
601
654
  this.state.boostState = WaterHeaterManagement.BoostState.Inactive;
655
+ // The plugin is responsible for setting the device accordingly with the cancelBoost command
656
+ // super.cancelBoost();
657
+ // cancelBoost is not implemented in matter.js
602
658
  }
603
659
  }
604
660
  export class MatterbridgeWaterHeaterModeServer extends WaterHeaterModeServer {
@@ -615,3 +671,4 @@ export class MatterbridgeWaterHeaterModeServer extends WaterHeaterModeServer {
615
671
  return { status: ModeBase.ModeChangeStatus.Success, statusText: 'Success' };
616
672
  }
617
673
  }
674
+ //# sourceMappingURL=matterbridgeBehaviors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"matterbridgeBehaviors.js","sourceRoot":"","sources":["../src/matterbridgeBehaviors.ts"],"names":[],"mappings":"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"}