matterbridge 3.0.3-dev-20250517-720018f → 3.0.3-dev-20250518-e0f532c
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 +2 -1
- package/dist/matterbridge.js +4 -3
- package/dist/matterbridgeDeviceTypes.js +43 -3
- package/npm-shrinkwrap.json +2 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -8,11 +8,12 @@ If you like this project and find it useful, please consider giving it a star on
|
|
|
8
8
|
<img src="bmc-button.svg" alt="Buy me a coffee" width="120">
|
|
9
9
|
</a>
|
|
10
10
|
|
|
11
|
-
## [3.0.3] - 2025-05
|
|
11
|
+
## [3.0.3] - 2025-05-18
|
|
12
12
|
|
|
13
13
|
### Added
|
|
14
14
|
|
|
15
15
|
- [virtual] Added virtual devices configuration mode in the Matterbridge Settings: 'Disabled', 'Light', 'Outlet', 'Switch', 'Mounted_switch'. Switch is not supported by Alexa. Mounted Switch is not supported by Apple.
|
|
16
|
+
- [deviceTypes] Added evse, waterHeater, solarPower, batteryStorage and heatPump device type.
|
|
16
17
|
|
|
17
18
|
### Changed
|
|
18
19
|
|
package/dist/matterbridge.js
CHANGED
|
@@ -214,6 +214,7 @@ export class Matterbridge extends EventEmitter {
|
|
|
214
214
|
}
|
|
215
215
|
async initialize() {
|
|
216
216
|
this.emit('initialize_started');
|
|
217
|
+
this.log = new AnsiLogger({ logName: 'Matterbridge', logTimestampFormat: 4, logLevel: hasParameter('debug') ? "debug" : "info" });
|
|
217
218
|
if (hasParameter('service'))
|
|
218
219
|
this.restartMode = 'service';
|
|
219
220
|
if (hasParameter('docker'))
|
|
@@ -240,7 +241,6 @@ export class Matterbridge extends EventEmitter {
|
|
|
240
241
|
this.environment.vars.set('path.root', path.join(this.matterbridgeDirectory, this.matterStorageName));
|
|
241
242
|
this.environment.vars.set('runtime.signals', false);
|
|
242
243
|
this.environment.vars.set('runtime.exitcode', false);
|
|
243
|
-
this.log = new AnsiLogger({ logName: 'Matterbridge', logTimestampFormat: 4, logLevel: hasParameter('debug') ? "debug" : "info" });
|
|
244
244
|
this.registerProcessHandlers();
|
|
245
245
|
try {
|
|
246
246
|
this.log.debug(`Creating node storage manager: ${CYAN}${this.nodeStorageName}${db}`);
|
|
@@ -1641,6 +1641,7 @@ export class Matterbridge extends EventEmitter {
|
|
|
1641
1641
|
async createAggregatorNode(storageContext) {
|
|
1642
1642
|
this.log.notice(`Creating ${await storageContext.get('storeId')} aggregator...`);
|
|
1643
1643
|
const aggregatorNode = new Endpoint(AggregatorEndpoint, { id: `${await storageContext.get('storeId')}` });
|
|
1644
|
+
this.log.info(`Created ${await storageContext.get('storeId')} aggregator`);
|
|
1644
1645
|
return aggregatorNode;
|
|
1645
1646
|
}
|
|
1646
1647
|
async addBridgedEndpoint(pluginName, device) {
|
|
@@ -1932,11 +1933,11 @@ export class Matterbridge extends EventEmitter {
|
|
|
1932
1933
|
this.log.info(`Created ${name}: ${path}`);
|
|
1933
1934
|
}
|
|
1934
1935
|
catch (err) {
|
|
1935
|
-
this.log.error(`Error creating ${name}: ${err}`);
|
|
1936
|
+
this.log.error(`Error creating dir ${name} path ${path}: ${err}`);
|
|
1936
1937
|
}
|
|
1937
1938
|
}
|
|
1938
1939
|
else {
|
|
1939
|
-
this.log.error(`Error accessing ${name}: ${err}`);
|
|
1940
|
+
this.log.error(`Error accessing dir ${name} path ${path}: ${err}`);
|
|
1940
1941
|
}
|
|
1941
1942
|
}
|
|
1942
1943
|
}
|
|
@@ -65,7 +65,7 @@ import { RefrigeratorAndTemperatureControlledCabinetMode } from '@matter/main/cl
|
|
|
65
65
|
import { ServiceArea } from '@matter/main/clusters/service-area';
|
|
66
66
|
import { TemperatureControl } from '@matter/main/clusters/temperature-control';
|
|
67
67
|
import { OtaSoftwareUpdateRequestor } from '@matter/main/clusters/ota-software-update-requestor';
|
|
68
|
-
import { OtaSoftwareUpdateProvider } from '@matter/main/clusters';
|
|
68
|
+
import { EnergyEvse, EnergyEvseMode, OtaSoftwareUpdateProvider, WaterHeaterManagement, WaterHeaterMode } from '@matter/main/clusters';
|
|
69
69
|
export var DeviceClasses;
|
|
70
70
|
(function (DeviceClasses) {
|
|
71
71
|
DeviceClasses["Node"] = "Node";
|
|
@@ -138,8 +138,8 @@ export const deviceEnergyManagement = DeviceTypeDefinition({
|
|
|
138
138
|
code: 0x050d,
|
|
139
139
|
deviceClass: DeviceClasses.Utility,
|
|
140
140
|
revision: 2,
|
|
141
|
-
requiredServerClusters: [DeviceEnergyManagement.Cluster.id
|
|
142
|
-
optionalServerClusters: [],
|
|
141
|
+
requiredServerClusters: [DeviceEnergyManagement.Cluster.id],
|
|
142
|
+
optionalServerClusters: [DeviceEnergyManagementMode.Cluster.id],
|
|
143
143
|
});
|
|
144
144
|
export const onOffLight = DeviceTypeDefinition({
|
|
145
145
|
name: 'MA-onofflight',
|
|
@@ -523,3 +523,43 @@ export const microwaveOven = DeviceTypeDefinition({
|
|
|
523
523
|
requiredServerClusters: [OperationalState.Cluster.id, MicrowaveOvenMode.Cluster.id, MicrowaveOvenControl.Cluster.id],
|
|
524
524
|
optionalServerClusters: [Identify.Cluster.id, FanControl.Cluster.id],
|
|
525
525
|
});
|
|
526
|
+
export const evse = DeviceTypeDefinition({
|
|
527
|
+
name: 'MA-evse',
|
|
528
|
+
code: 0x050c,
|
|
529
|
+
deviceClass: DeviceClasses.Simple,
|
|
530
|
+
revision: 2,
|
|
531
|
+
requiredServerClusters: [EnergyEvse.Cluster.id, EnergyEvseMode.Cluster.id],
|
|
532
|
+
optionalServerClusters: [Identify.Cluster.id, TemperatureMeasurement.Cluster.id],
|
|
533
|
+
});
|
|
534
|
+
export const waterHeater = DeviceTypeDefinition({
|
|
535
|
+
name: 'MA-waterheater',
|
|
536
|
+
code: 0x050f,
|
|
537
|
+
deviceClass: DeviceClasses.Simple,
|
|
538
|
+
revision: 1,
|
|
539
|
+
requiredServerClusters: [Thermostat.Cluster.id, WaterHeaterManagement.Cluster.id, WaterHeaterMode.Cluster.id],
|
|
540
|
+
optionalServerClusters: [Identify.Cluster.id],
|
|
541
|
+
});
|
|
542
|
+
export const solarPower = DeviceTypeDefinition({
|
|
543
|
+
name: 'MA-solarpower',
|
|
544
|
+
code: 0x0017,
|
|
545
|
+
deviceClass: DeviceClasses.Simple,
|
|
546
|
+
revision: 1,
|
|
547
|
+
requiredServerClusters: [],
|
|
548
|
+
optionalServerClusters: [Identify.Cluster.id],
|
|
549
|
+
});
|
|
550
|
+
export const batteryStorage = DeviceTypeDefinition({
|
|
551
|
+
name: 'MA-batterystorage',
|
|
552
|
+
code: 0x0018,
|
|
553
|
+
deviceClass: DeviceClasses.Simple,
|
|
554
|
+
revision: 1,
|
|
555
|
+
requiredServerClusters: [],
|
|
556
|
+
optionalServerClusters: [Identify.Cluster.id],
|
|
557
|
+
});
|
|
558
|
+
export const heatPump = DeviceTypeDefinition({
|
|
559
|
+
name: 'MA-heatpump',
|
|
560
|
+
code: 0x0309,
|
|
561
|
+
deviceClass: DeviceClasses.Simple,
|
|
562
|
+
revision: 1,
|
|
563
|
+
requiredServerClusters: [],
|
|
564
|
+
optionalServerClusters: [Identify.Cluster.id, Thermostat.Cluster.id],
|
|
565
|
+
});
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "matterbridge",
|
|
3
|
-
"version": "3.0.3-dev-
|
|
3
|
+
"version": "3.0.3-dev-20250518-e0f532c",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "matterbridge",
|
|
9
|
-
"version": "3.0.3-dev-
|
|
9
|
+
"version": "3.0.3-dev-20250518-e0f532c",
|
|
10
10
|
"license": "Apache-2.0",
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@matter/main": "0.13.0",
|
package/package.json
CHANGED