matterbridge-example-dynamic-platform 3.0.4-dev-20260906-2c181fe → 3.0.4-dev-20260913-29dba72
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 +3 -1
- package/dist/module.js +6 -3
- package/npm-shrinkwrap.json +2 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -33,12 +33,14 @@ If you like this project and find it useful, please consider giving it a star on
|
|
|
33
33
|
|
|
34
34
|
### Breaking changes
|
|
35
35
|
|
|
36
|
-
- [matterbridge]: Require matterbridge v.3.10.
|
|
36
|
+
- [matterbridge]: Require matterbridge v.3.10.10 with matter v.1.6.0.
|
|
37
37
|
|
|
38
38
|
### Added
|
|
39
39
|
|
|
40
40
|
- [platform]: Add `RfidLock` device: a door lock with the User, PinCredential, and RfidCredential (RID) features, testing the `numberOfRfidUsersSupported` parameter of `createUserPinDoorLockClusterServer()` (Matter 1.6.0 § 5.2.4). `SetCredential`, `GetCredentialStatus`, and `ClearCredential` already handle `DoorLock.CredentialType.Rfid` generically in `MatterbridgeDoorLockServer`, so no RFID-specific command handlers were needed for this device.
|
|
41
41
|
- [Oven]/[Refrigerator]: Add a `TemperatureAlarm` example to the demo cabinets.
|
|
42
|
+
- [devcontainer]: Upgrade the `Dev Container` to v.2.1.0, using the Node.js and Bun stack.
|
|
43
|
+
- [Momentary switch]: Report `productId` `0x8000` on the composed `Momentary switch` bridged device, so Home Assistant's `(vendorId, productId)` allowlist can match the `ha_entitylabel` FixedLabels on `switch4`/`switch5`/`switch6` (requires matterbridge's `createDefaultBridgedDeviceBasicInformationClusterServer()` optional `productId` parameter).
|
|
42
44
|
|
|
43
45
|
### Changed
|
|
44
46
|
|
package/dist/module.js
CHANGED
|
@@ -99,8 +99,8 @@ export class ExampleMatterbridgeDynamicPlatform extends MatterbridgeDynamicPlatf
|
|
|
99
99
|
constructor(matterbridge, log, config) {
|
|
100
100
|
super(matterbridge, log, config);
|
|
101
101
|
this.config = config;
|
|
102
|
-
if (typeof this.verifyMatterbridgeVersion !== 'function' || !this.verifyMatterbridgeVersion('3.10.
|
|
103
|
-
throw new Error(`This plugin requires Matterbridge version >= "3.10.
|
|
102
|
+
if (typeof this.verifyMatterbridgeVersion !== 'function' || !this.verifyMatterbridgeVersion('3.10.10')) {
|
|
103
|
+
throw new Error(`This plugin requires Matterbridge version >= "3.10.10". Please update Matterbridge from ${this.matterbridge.matterbridgeVersion} to the latest version in the frontend.`);
|
|
104
104
|
}
|
|
105
105
|
this.log.info('Initializing platform:', this.config.name);
|
|
106
106
|
}
|
|
@@ -1527,7 +1527,7 @@ export class ExampleMatterbridgeDynamicPlatform extends MatterbridgeDynamicPlatf
|
|
|
1527
1527
|
.createDefaultTvocMeasurementClusterServer(100);
|
|
1528
1528
|
this.airQuality = await this.addDevice(this.airQuality);
|
|
1529
1529
|
this.momentarySwitch = new MatterbridgeEndpoint([bridgedNode, powerSource], { id: 'Momentary switch composed' }, this.config.debug)
|
|
1530
|
-
.createDefaultBridgedDeviceBasicInformationClusterServer('Momentary switch', 'MOS00041', 0xfff1, 'Matterbridge', 'Matterbridge Momentary Switch')
|
|
1530
|
+
.createDefaultBridgedDeviceBasicInformationClusterServer('Momentary switch', 'MOS00041', 0xfff1, 'Matterbridge', 'Matterbridge Momentary Switch', 1, '1.0.0', 1, '1.0.0', 'Matter Bridged Endpoint', 'https://matterbridge.io', 1, 0x8000)
|
|
1531
1531
|
.createDefaultPowerSourceReplaceableBatteryClusterServer(50, PowerSource.BatChargeLevel.Ok, 2900, 'CR2450', 1);
|
|
1532
1532
|
fireAndForget(this.momentarySwitch.addFixedLabel('composed', 'Compound device'), this.log, `Failed to add fixed label`);
|
|
1533
1533
|
this.momentarySwitch
|
|
@@ -1605,14 +1605,17 @@ export class ExampleMatterbridgeDynamicPlatform extends MatterbridgeDynamicPlatf
|
|
|
1605
1605
|
await switch4.addFixedLabel('room', 'Living Room');
|
|
1606
1606
|
await switch4.addFixedLabel('switch', 'Switch 4');
|
|
1607
1607
|
await switch4.addFixedLabel('button', 'Button 4');
|
|
1608
|
+
await switch4.addFixedLabel('ha_entitylabel', 'Switch 4');
|
|
1608
1609
|
await switch5.addFixedLabel('name', 'Switch 5');
|
|
1609
1610
|
await switch5.addFixedLabel('room', 'Living Room');
|
|
1610
1611
|
await switch5.addFixedLabel('switch', 'Switch 5');
|
|
1611
1612
|
await switch5.addFixedLabel('button', 'Button 5');
|
|
1613
|
+
await switch5.addFixedLabel('ha_entitylabel', 'Switch 5');
|
|
1612
1614
|
await switch6.addFixedLabel('name', 'Switch 6');
|
|
1613
1615
|
await switch6.addFixedLabel('room', 'Living Room');
|
|
1614
1616
|
await switch6.addFixedLabel('switch', 'Switch 6');
|
|
1615
1617
|
await switch6.addFixedLabel('button', 'Button 6');
|
|
1618
|
+
await switch6.addFixedLabel('ha_entitylabel', 'Switch 6');
|
|
1616
1619
|
}
|
|
1617
1620
|
this.latchingSwitch = new MatterbridgeEndpoint([genericSwitch, bridgedNode, powerSource], { id: 'Latching switch' }, this.config.debug)
|
|
1618
1621
|
.createDefaultBridgedDeviceBasicInformationClusterServer('Latching switch', 'LAS00042', 0xfff1, 'Matterbridge', 'Matterbridge LatchingSwitch')
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "matterbridge-example-dynamic-platform",
|
|
3
|
-
"version": "3.0.4-dev-
|
|
3
|
+
"version": "3.0.4-dev-20260913-29dba72",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "matterbridge-example-dynamic-platform",
|
|
9
|
-
"version": "3.0.4-dev-
|
|
9
|
+
"version": "3.0.4-dev-20260913-29dba72",
|
|
10
10
|
"license": "Apache-2.0",
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"node-ansi-logger": "3.3.1",
|
package/package.json
CHANGED