matterbridge 3.0.6-dev-20250610-56cd483 → 3.0.6-dev-20250611-6f49811
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/dist/evse.js +7 -7
- package/dist/matterbridge.js +2 -0
- package/dist/matterbridgeEndpoint.js +6 -6
- package/npm-shrinkwrap.json +2 -2
- package/package.json +1 -1
package/dist/evse.js
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { EnergyEvseServer } from '@matter/main/behaviors/energy-evse';
|
|
2
2
|
import { EnergyEvseModeServer } from '@matter/main/behaviors/energy-evse-mode';
|
|
3
3
|
import { EnergyEvse, EnergyEvseMode } from '@matter/main/clusters';
|
|
4
|
+
import { DeviceEnergyManagement } from '@matter/main/clusters/device-energy-management';
|
|
4
5
|
import { ModeBase } from '@matter/main/clusters/mode-base';
|
|
5
6
|
import { MatterbridgeEndpoint } from './matterbridgeEndpoint.js';
|
|
6
7
|
import { MatterbridgeServer } from './matterbridgeBehaviors.js';
|
|
7
8
|
import { deviceEnergyManagement, electricalSensor, evse, powerSource } from './matterbridgeDeviceTypes.js';
|
|
8
9
|
export class Evse extends MatterbridgeEndpoint {
|
|
9
|
-
constructor(name, serial, currentMode, supportedModes, state, supplyState, faultState) {
|
|
10
|
+
constructor(name, serial, currentMode, supportedModes, state, supplyState, faultState, absMinPower, absMaxPower) {
|
|
10
11
|
super([evse, powerSource, electricalSensor, deviceEnergyManagement], { uniqueStorageKey: `${name.replaceAll(' ', '')}-${serial.replaceAll(' ', '')}` }, true);
|
|
11
12
|
this.createDefaultIdentifyClusterServer()
|
|
12
13
|
.createDefaultBasicInformationClusterServer(name, serial, 0xfff1, 'Matterbridge', 0x8000, 'Matterbridge EVSE')
|
|
@@ -14,7 +15,7 @@ export class Evse extends MatterbridgeEndpoint {
|
|
|
14
15
|
.createDefaultPowerTopologyClusterServer()
|
|
15
16
|
.createDefaultElectricalPowerMeasurementClusterServer()
|
|
16
17
|
.createDefaultElectricalEnergyMeasurementClusterServer()
|
|
17
|
-
.createDefaultDeviceEnergyManagementCluster()
|
|
18
|
+
.createDefaultDeviceEnergyManagementCluster(DeviceEnergyManagement.EsaType.Evse, false, DeviceEnergyManagement.EsaState.Online, absMinPower, absMaxPower)
|
|
18
19
|
.createDefaultEnergyEvseClusterServer(state, supplyState, faultState)
|
|
19
20
|
.createDefaultEnergyEvseModeClusterServer(currentMode, supportedModes)
|
|
20
21
|
.addRequiredClusterServers();
|
|
@@ -22,7 +23,7 @@ export class Evse extends MatterbridgeEndpoint {
|
|
|
22
23
|
createDefaultEnergyEvseClusterServer(state, supplyState, faultState) {
|
|
23
24
|
this.behaviors.require(MatterbridgeEnergyEvseServer, {
|
|
24
25
|
state: state ?? EnergyEvse.State.NotPluggedIn,
|
|
25
|
-
supplyState: supplyState ?? EnergyEvse.SupplyState.
|
|
26
|
+
supplyState: supplyState ?? EnergyEvse.SupplyState.ChargingEnabled,
|
|
26
27
|
faultState: faultState ?? EnergyEvse.FaultState.NoError,
|
|
27
28
|
chargingEnabledUntil: 0,
|
|
28
29
|
circuitCapacity: 0,
|
|
@@ -37,10 +38,9 @@ export class Evse extends MatterbridgeEndpoint {
|
|
|
37
38
|
createDefaultEnergyEvseModeClusterServer(currentMode, supportedModes) {
|
|
38
39
|
this.behaviors.require(MatterbridgeEnergyEvseModeServer, {
|
|
39
40
|
supportedModes: supportedModes ?? [
|
|
40
|
-
{ label: '
|
|
41
|
-
{ label: '
|
|
42
|
-
{ label: '
|
|
43
|
-
{ label: 'Home-to-vehicle and Vehicle-to-home', mode: 4, modeTags: [{ value: EnergyEvseMode.ModeTag.V2X }] },
|
|
41
|
+
{ label: 'On demand', mode: 1, modeTags: [{ value: EnergyEvseMode.ModeTag.Manual }] },
|
|
42
|
+
{ label: 'Scheduled', mode: 2, modeTags: [{ value: EnergyEvseMode.ModeTag.TimeOfUse }] },
|
|
43
|
+
{ label: 'Solar charging', mode: 3, modeTags: [{ value: EnergyEvseMode.ModeTag.SolarCharging }] },
|
|
44
44
|
],
|
|
45
45
|
currentMode: currentMode ?? 1,
|
|
46
46
|
});
|
package/dist/matterbridge.js
CHANGED
|
@@ -204,12 +204,14 @@ export class Matterbridge extends EventEmitter {
|
|
|
204
204
|
servers.push(plugin.serverNode);
|
|
205
205
|
}
|
|
206
206
|
}
|
|
207
|
+
await Promise.resolve();
|
|
207
208
|
await this.cleanup('destroying instance...', false);
|
|
208
209
|
this.log.info(`Dispose ${servers.length} MdnsService...`);
|
|
209
210
|
for (const server of servers) {
|
|
210
211
|
await server.env.get(MdnsService)[Symbol.asyncDispose]();
|
|
211
212
|
this.log.info(`Closed ${server.id} MdnsService`);
|
|
212
213
|
}
|
|
214
|
+
await Promise.resolve();
|
|
213
215
|
await new Promise((resolve) => {
|
|
214
216
|
setTimeout(resolve, 500);
|
|
215
217
|
});
|
|
@@ -1043,14 +1043,14 @@ export class MatterbridgeEndpoint extends Endpoint {
|
|
|
1043
1043
|
});
|
|
1044
1044
|
return this;
|
|
1045
1045
|
}
|
|
1046
|
-
createDefaultDeviceEnergyManagementCluster() {
|
|
1046
|
+
createDefaultDeviceEnergyManagementCluster(esaType = DeviceEnergyManagement.EsaType.Other, esaCanGenerate = false, esaState = DeviceEnergyManagement.EsaState.Online, absMinPower = 0, absMaxPower = 0) {
|
|
1047
1047
|
this.behaviors.require(DeviceEnergyManagementServer.with(DeviceEnergyManagement.Feature.PowerForecastReporting), {
|
|
1048
1048
|
forecast: null,
|
|
1049
|
-
esaType
|
|
1050
|
-
esaCanGenerate
|
|
1051
|
-
esaState
|
|
1052
|
-
absMinPower
|
|
1053
|
-
absMaxPower
|
|
1049
|
+
esaType,
|
|
1050
|
+
esaCanGenerate,
|
|
1051
|
+
esaState,
|
|
1052
|
+
absMinPower,
|
|
1053
|
+
absMaxPower,
|
|
1054
1054
|
});
|
|
1055
1055
|
return this;
|
|
1056
1056
|
}
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "matterbridge",
|
|
3
|
-
"version": "3.0.6-dev-
|
|
3
|
+
"version": "3.0.6-dev-20250611-6f49811",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "matterbridge",
|
|
9
|
-
"version": "3.0.6-dev-
|
|
9
|
+
"version": "3.0.6-dev-20250611-6f49811",
|
|
10
10
|
"license": "Apache-2.0",
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@matter/main": "0.14.0",
|
package/package.json
CHANGED