matterbridge-example-dynamic-platform 2.0.13-dev-20260303-d110404 → 2.0.13-dev-20260303-224d0bf

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
@@ -35,10 +35,11 @@ If you like this project and find it useful, please consider giving it a star on
35
35
 
36
36
  ### Added
37
37
 
38
- - [BridgedOutlet]: Add a bridged outlet with four individually controllable plugs that expose their names.
38
+ - [BridgedOutlet]: Add a bridged outlet with four individually named plugs.
39
39
  - [onOffMountedLegacy]: Add an onOff Mounted Switch legacy device.
40
40
  - [dimmerMountedLegacy]: Add a dimmer Mounted Switch legacy device.
41
- - [solarPower]: Add four panels.
41
+ - [solarPower]: Add four panels to the Solar Power.
42
+ - [soilSensor]: Add a Soil Sensor (Matter 1.5.0).
42
43
 
43
44
  ### Changed
44
45
 
package/README.md CHANGED
@@ -24,7 +24,7 @@
24
24
 
25
25
  Matterbridge dynamic platform example plugin is a template to develop your own plugin using the dynamic platform.
26
26
 
27
- It exposes 66 virtual devices:
27
+ It exposes 67 virtual devices:
28
28
 
29
29
  - a door contact sensor
30
30
  - a motion sensor
@@ -33,6 +33,7 @@ It exposes 66 virtual devices:
33
33
  - a humidity sensor
34
34
  - a pressure sensor
35
35
  - a flow sensor
36
+ - a soil sensor
36
37
  - a climate sensor with temperature, humidity and pressure
37
38
  - a mode select device
38
39
  - a switch with onOff cluster
package/dist/module.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { aggregator, airPurifier, airQualitySensor, bridgedNode, colorTemperatureLight, contactSensor, coverDevice, dimmableLight, dimmableMountedSwitch, dimmableOutlet, doorLockDevice, electricalSensor, extendedColorLight, fanDevice, flowSensor, genericSwitch, humiditySensor, lightSensor, MatterbridgeDynamicPlatform, MatterbridgeEndpoint, modeSelect, occupancySensor, onOffLight, onOffMountedSwitch, onOffOutlet, onOffSwitch, powerSource, pressureSensor, pumpDevice, rainSensor, smokeCoAlarm, temperatureSensor, thermostatDevice, waterFreezeDetector, waterLeakDetector, waterValve, } from 'matterbridge';
2
- import { AirConditioner, BasicVideoPlayer, BatteryStorage, Cooktop, Dishwasher, Evse, ExtractorHood, HeatPump, LaundryDryer, LaundryWasher, MicrowaveOven, Oven, Refrigerator, RoboticVacuumCleaner, SolarPower, Speaker, WaterHeater, } from 'matterbridge/devices';
2
+ import { AirConditioner, BasicVideoPlayer, BatteryStorage, Cooktop, Dishwasher, Evse, ExtractorHood, HeatPump, LaundryDryer, LaundryWasher, MicrowaveOven, Oven, Refrigerator, RoboticVacuumCleaner, SoilSensor, SolarPower, Speaker, WaterHeater, } from 'matterbridge/devices';
3
3
  import { debugStringify } from 'matterbridge/logger';
4
4
  import { AreaNamespaceTag, LocationTag, NumberTag, PositionTag, RefrigeratorTag, SwitchesTag, UINT16_MAX, UINT32_MAX } from 'matterbridge/matter';
5
5
  import { AirQuality, BooleanState, BridgedDeviceBasicInformation, CarbonDioxideConcentrationMeasurement, CarbonMonoxideConcentrationMeasurement, ColorControl, Descriptor, DeviceEnergyManagement, DoorLock, ElectricalEnergyMeasurement, ElectricalPowerMeasurement, EnergyEvse, EnergyEvseMode, FanControl, FlowMeasurement, FormaldehydeConcentrationMeasurement, IlluminanceMeasurement, LevelControl, NitrogenDioxideConcentrationMeasurement, OccupancySensing, OnOff, OnOffCluster, OperationalState, OvenMode, OzoneConcentrationMeasurement, Pm1ConcentrationMeasurement, Pm10ConcentrationMeasurement, Pm25ConcentrationMeasurement, PowerSource, PressureMeasurement, RadonConcentrationMeasurement, RelativeHumidityMeasurement, RelativeHumidityMeasurementCluster, RvcCleanMode, RvcOperationalState, RvcRunMode, SmokeCoAlarm, TemperatureMeasurement, Thermostat, ThermostatCluster, TotalVolatileOrganicCompoundsConcentrationMeasurement, WindowCovering, } from 'matterbridge/matter/clusters';
@@ -31,6 +31,7 @@ export class ExampleMatterbridgeDynamicPlatform extends MatterbridgeDynamicPlatf
31
31
  humidity;
32
32
  pressure;
33
33
  flow;
34
+ soil;
34
35
  select;
35
36
  climate;
36
37
  switch;
@@ -160,6 +161,8 @@ export class ExampleMatterbridgeDynamicPlatform extends MatterbridgeDynamicPlatf
160
161
  .createDefaultPowerSourceReplaceableBatteryClusterServer(80, PowerSource.BatChargeLevel.Ok, 3050, 'AA', 1, PowerSource.BatReplaceability.UserReplaceable)
161
162
  .addRequiredClusterServers();
162
163
  this.flow = await this.addDevice(this.flow);
164
+ this.soil = new SoilSensor('Soil Sensor', 'SOI000067', { soilMoistureMeasuredValue: 45 });
165
+ this.soil = await this.addDevice(this.soil);
163
166
  this.climate = new MatterbridgeEndpoint([bridgedNode, powerSource], { id: 'Climate' }, this.config.debug)
164
167
  .createDefaultBridgedDeviceBasicInformationClusterServer('Climate', 'CLI00008', 0xfff1, 'Matterbridge', 'Matterbridge Climate')
165
168
  .createDefaultPowerSourceReplaceableBatteryClusterServer(90, PowerSource.BatChargeLevel.Ok, 2990, '2 x AA', 2, PowerSource.BatReplaceability.UserReplaceable)
@@ -1366,10 +1369,10 @@ export class ExampleMatterbridgeDynamicPlatform extends MatterbridgeDynamicPlatf
1366
1369
  ], EnergyEvse.State.PluggedInCharging, EnergyEvse.SupplyState.ChargingEnabled, EnergyEvse.FaultState.NoError, 220_000, 10_000, 2_200_000, 1_000_000, 500_000, 32_000_000);
1367
1370
  this.evse = await this.addDevice(this.evse);
1368
1371
  this.solarPower = new SolarPower('Solar Power', 'SOL00046', 220_000, 10_000, 2200_000, 2_200_000, 0, 500_000);
1369
- this.solarPower.addPanel('Panel 1', 1);
1370
- this.solarPower.addPanel('Panel 2', 2);
1371
- this.solarPower.addPanel('Panel 3', 3);
1372
- this.solarPower.addPanel('Panel 4', 4);
1372
+ this.solarPower.addPanel('Panel 1', NumberTag.One);
1373
+ this.solarPower.addPanel('Panel 2', NumberTag.Two);
1374
+ this.solarPower.addPanel('Panel 3', NumberTag.Three);
1375
+ this.solarPower.addPanel('Panel 4', NumberTag.Four);
1373
1376
  this.solarPower = (await this.addDevice(this.solarPower));
1374
1377
  this.batteryStorage = new BatteryStorage('Battery Storage', 'BST00047', 75, PowerSource.BatChargeLevel.Ok, 220_000, 10_000, 2_200_000, 1_000_000, 2_000_000, -2_000_000, 3_000_000);
1375
1378
  this.batteryStorage = await this.addDevice(this.batteryStorage);
@@ -17,6 +17,7 @@
17
17
  "ui:widget": "hidden"
18
18
  },
19
19
  "whiteList": {
20
+ "title": "White List",
20
21
  "description": "Only the devices in the list will be exposed. If the list is empty, all the devices will be exposed.",
21
22
  "type": "array",
22
23
  "items": {
@@ -26,6 +27,7 @@
26
27
  "selectFrom": "name"
27
28
  },
28
29
  "blackList": {
30
+ "title": "Black List",
29
31
  "description": "The devices in the list will not be exposed. If the list is empty, no devices will be excluded.",
30
32
  "type": "array",
31
33
  "items": {
@@ -35,21 +37,25 @@
35
37
  "selectFrom": "name"
36
38
  },
37
39
  "useInterval": {
40
+ "title": "Use Interval",
38
41
  "description": "Use interval to refresh the devices",
39
42
  "type": "boolean",
40
43
  "default": true
41
44
  },
42
45
  "enableServerRvc": {
46
+ "title": "Enable Server RVC",
43
47
  "description": "Enable the Robot Vacuum Cleaner in server mode (Apple Home will crash unless you use this mode!)",
44
48
  "type": "boolean",
45
49
  "default": true
46
50
  },
47
51
  "debug": {
52
+ "title": "Debug",
48
53
  "description": "Enable the debug for the plugin (development only)",
49
54
  "type": "boolean",
50
55
  "default": false
51
56
  },
52
57
  "unregisterOnShutdown": {
58
+ "title": "Unregister on Shutdown",
53
59
  "description": "Unregister all devices on shutdown (development only)",
54
60
  "type": "boolean",
55
61
  "default": false
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "matterbridge-example-dynamic-platform",
3
- "version": "2.0.13-dev-20260303-d110404",
3
+ "version": "2.0.13-dev-20260303-224d0bf",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "matterbridge-example-dynamic-platform",
9
- "version": "2.0.13-dev-20260303-d110404",
9
+ "version": "2.0.13-dev-20260303-224d0bf",
10
10
  "license": "Apache-2.0",
11
11
  "dependencies": {
12
12
  "node-ansi-logger": "3.2.0",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "matterbridge-example-dynamic-platform",
3
- "version": "2.0.13-dev-20260303-d110404",
3
+ "version": "2.0.13-dev-20260303-224d0bf",
4
4
  "description": "Matterbridge dynamic plugin",
5
5
  "author": "https://github.com/Luligu",
6
6
  "license": "Apache-2.0",