matterbridge 2.0.0-edge1 → 2.1.0-dev.1
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 +36 -3
- package/README.md +1 -1
- package/dist/cli.js +0 -26
- package/dist/cluster/export.js +0 -2
- package/dist/defaultConfigSchema.js +0 -23
- package/dist/deviceManager.js +2 -27
- package/dist/frontend.js +99 -245
- package/dist/index.js +2 -33
- package/dist/logger/export.js +0 -1
- package/dist/matter/export.js +0 -7
- package/dist/matterbridge.js +99 -710
- package/dist/matterbridgeAccessoryPlatform.js +0 -33
- package/dist/matterbridgeBehaviors.js +42 -32
- package/dist/matterbridgeDeviceTypes.js +90 -84
- package/dist/matterbridgeDynamicPlatform.js +0 -33
- package/dist/matterbridgeEndpoint.js +992 -2454
- package/dist/matterbridgePlatform.js +11 -130
- package/dist/matterbridgeTypes.js +0 -25
- package/dist/pluginManager.js +7 -251
- package/dist/storage/export.js +0 -1
- package/dist/utils/colorUtils.js +2 -205
- package/dist/utils/export.js +0 -1
- package/dist/utils/utils.js +10 -255
- package/frontend/build/asset-manifest.json +3 -3
- package/frontend/build/index.html +1 -1
- package/frontend/build/static/js/{main.ea28015b.js → main.26dbf9b9.js} +3 -3
- package/frontend/build/static/js/main.26dbf9b9.js.map +1 -0
- package/npm-shrinkwrap.json +97 -79
- package/package.json +2 -4
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js.map +0 -1
- package/dist/cluster/export.d.ts.map +0 -1
- package/dist/cluster/export.js.map +0 -1
- package/dist/defaultConfigSchema.d.ts.map +0 -1
- package/dist/defaultConfigSchema.js.map +0 -1
- package/dist/deviceManager.d.ts +0 -46
- package/dist/deviceManager.d.ts.map +0 -1
- package/dist/deviceManager.js.map +0 -1
- package/dist/frontend.d.ts +0 -98
- package/dist/frontend.d.ts.map +0 -1
- package/dist/frontend.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/logger/export.d.ts.map +0 -1
- package/dist/logger/export.js.map +0 -1
- package/dist/matter/export.d.ts.map +0 -1
- package/dist/matter/export.js.map +0 -1
- package/dist/matterbridge.d.ts +0 -357
- package/dist/matterbridge.d.ts.map +0 -1
- package/dist/matterbridge.js.map +0 -1
- package/dist/matterbridgeAccessoryPlatform.d.ts.map +0 -1
- package/dist/matterbridgeAccessoryPlatform.js.map +0 -1
- package/dist/matterbridgeBehaviors.d.ts +0 -123
- package/dist/matterbridgeBehaviors.d.ts.map +0 -1
- package/dist/matterbridgeBehaviors.js.map +0 -1
- package/dist/matterbridgeDeviceTypes.d.ts +0 -109
- package/dist/matterbridgeDeviceTypes.d.ts.map +0 -1
- package/dist/matterbridgeDeviceTypes.js.map +0 -1
- package/dist/matterbridgeDynamicPlatform.d.ts.map +0 -1
- package/dist/matterbridgeDynamicPlatform.js.map +0 -1
- package/dist/matterbridgeEndpoint.d.ts +0 -1167
- package/dist/matterbridgeEndpoint.d.ts.map +0 -1
- package/dist/matterbridgeEndpoint.js.map +0 -1
- package/dist/matterbridgePlatform.d.ts +0 -154
- package/dist/matterbridgePlatform.d.ts.map +0 -1
- package/dist/matterbridgePlatform.js.map +0 -1
- package/dist/matterbridgeTypes.d.ts.map +0 -1
- package/dist/matterbridgeTypes.js.map +0 -1
- package/dist/pluginManager.d.ts +0 -238
- package/dist/pluginManager.d.ts.map +0 -1
- package/dist/pluginManager.js.map +0 -1
- package/dist/storage/export.d.ts.map +0 -1
- package/dist/storage/export.js.map +0 -1
- package/dist/utils/colorUtils.d.ts.map +0 -1
- package/dist/utils/colorUtils.js.map +0 -1
- package/dist/utils/export.d.ts.map +0 -1
- package/dist/utils/export.js.map +0 -1
- package/dist/utils/utils.d.ts +0 -221
- package/dist/utils/utils.d.ts.map +0 -1
- package/dist/utils/utils.js.map +0 -1
- package/frontend/build/static/js/main.ea28015b.js.map +0 -1
- /package/frontend/build/static/js/{main.ea28015b.js.LICENSE.txt → main.26dbf9b9.js.LICENSE.txt} +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -15,17 +15,38 @@ Tamer (https://github.com/tammeryousef1006) has created the Matterbridge Discord
|
|
|
15
15
|
|
|
16
16
|
### Breaking Changes
|
|
17
17
|
|
|
18
|
-
Starting from v. 2.0.0 Matterbridge is running only in mode edge (no parameter needed).
|
|
19
|
-
The legacy old api have been
|
|
18
|
+
Starting from v. 2.0.0 Matterbridge is running only in mode edge (no parameter needed and no badge in the frontend).
|
|
19
|
+
The legacy old api have been removed.
|
|
20
20
|
|
|
21
21
|
The frontend has a new dark and light mode. The dark mode is now the default mode.
|
|
22
22
|
It is possible to change the mode (Classic, Dark or Light) in Settings, Matterbridge settings.
|
|
23
23
|
|
|
24
|
-
## [2.
|
|
24
|
+
## [2.1.0.dev.1] - 2025-01-26
|
|
25
|
+
|
|
26
|
+
### Added
|
|
27
|
+
|
|
28
|
+
- [matterbridge]: Add MatterbridgeModeSelectServer.
|
|
29
|
+
- [frontend]: Add api/advertise to turn on matter advertising in bridge mode.
|
|
30
|
+
- [frontend]: Frontend v.2.4.0.
|
|
31
|
+
|
|
32
|
+
### Changed
|
|
33
|
+
|
|
34
|
+
- [package]: Update dependencies.
|
|
35
|
+
- [package]: Update matter.js to 0.12.0.
|
|
36
|
+
- [package]: Removed legacy imports.
|
|
37
|
+
|
|
38
|
+
### Fixed
|
|
39
|
+
|
|
40
|
+
<a href="https://www.buymeacoffee.com/luligugithub">
|
|
41
|
+
<img src="./yellow-button.png" alt="Buy me a coffee" width="120">
|
|
42
|
+
</a>
|
|
43
|
+
|
|
44
|
+
## [2.0.0] - 2025-01-20
|
|
25
45
|
|
|
26
46
|
### Added
|
|
27
47
|
|
|
28
48
|
- [behavior]: Added MatterbridgeValveConfigurationAndControlServer behavior with open close command.
|
|
49
|
+
- [matterbridge]: Added /memory endpoint for debugging memory use.
|
|
29
50
|
|
|
30
51
|
### Changed
|
|
31
52
|
|
|
@@ -33,8 +54,20 @@ It is possible to change the mode (Classic, Dark or Light) in Settings, Matterbr
|
|
|
33
54
|
- [factoryreset]: Now it deletes also the backup files and backup directories.
|
|
34
55
|
- [mattebridge]: Restyled the Matterbridge class and created the Frontend class that manages the frontend express and websocket api calls.
|
|
35
56
|
- [frontend]: Frontend v.2.3.12.
|
|
57
|
+
- [iconView]: Improved render for energySensor adding voltage, current and power.
|
|
58
|
+
- [iconView]: Improved render for PowerSource adding battery voltage.
|
|
59
|
+
- [jest]: Refactor all tests for edge.
|
|
60
|
+
- [frontend]: WebSocketProvider added a startTimeout of 300 sec. to start ping.
|
|
61
|
+
- [frontend]: WebSocketProvider changed pingIntervalSeconds to 60 sec. and offlineTimeoutSeconds to 50 sec.
|
|
62
|
+
- [frontend]: Search on select is no more case sensitive.
|
|
63
|
+
- [matterbridge]: Deferred memory intensive tasks after initialization.
|
|
64
|
+
- [package]: Optimized all imports from matter.js.
|
|
36
65
|
- [package]: Update dependencies.
|
|
37
66
|
|
|
67
|
+
### Fixed
|
|
68
|
+
|
|
69
|
+
- [sessions]: Fixed the case when Active session was not reporting correctly.
|
|
70
|
+
|
|
38
71
|
<a href="https://www.buymeacoffee.com/luligugithub">
|
|
39
72
|
<img src="./yellow-button.png" alt="Buy me a coffee" width="120">
|
|
40
73
|
</a>
|
package/README.md
CHANGED
|
@@ -414,7 +414,7 @@ So far is the only controller supporting some Matter 1.2 and 1.3 device type:
|
|
|
414
414
|
|
|
415
415
|
Electrical measurements:
|
|
416
416
|
|
|
417
|
-
- electrical measurements from EveHistoryCluster (used in Matterbridge plugins)
|
|
417
|
+
- electrical measurements from EveHistoryCluster (used in old Matterbridge plugins)
|
|
418
418
|
- electricalSensor code 0x0510 with clusters: ElectricalPowerMeasurement and ElectricalEnergyMeasurement
|
|
419
419
|
|
|
420
420
|
Other supported cluster:
|
package/dist/cli.js
CHANGED
|
@@ -1,27 +1,4 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
/**
|
|
3
|
-
* This file contains the CLI entry point of Matterbridge.
|
|
4
|
-
*
|
|
5
|
-
* @file cli.ts
|
|
6
|
-
* @author Luca Liguori
|
|
7
|
-
* @date 2023-12-29
|
|
8
|
-
* @version 1.0.11
|
|
9
|
-
*
|
|
10
|
-
* Copyright 2023, 2024, 2025 Luca Liguori.
|
|
11
|
-
*
|
|
12
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
13
|
-
* you may not use this file except in compliance with the License.
|
|
14
|
-
* You may obtain a copy of the License at
|
|
15
|
-
*
|
|
16
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
17
|
-
*
|
|
18
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
19
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
20
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
21
|
-
* See the License for the specific language governing permissions and
|
|
22
|
-
* limitations under the License. *
|
|
23
|
-
*/
|
|
24
|
-
/* eslint-disable no-console */
|
|
25
2
|
import { Matterbridge } from './matterbridge.js';
|
|
26
3
|
let instance;
|
|
27
4
|
const cli = '\u001B[32m';
|
|
@@ -57,13 +34,10 @@ async function restart() {
|
|
|
57
34
|
async function update() {
|
|
58
35
|
if (process.argv.includes('-debug'))
|
|
59
36
|
console.log(cli + 'CLI: received update event, updating...' + rs);
|
|
60
|
-
// TODO: Implement update logic outside of matterbridge
|
|
61
37
|
instance = await Matterbridge.loadInstance(true);
|
|
62
38
|
registerHandlers();
|
|
63
39
|
}
|
|
64
40
|
process.title = 'matterbridge';
|
|
65
|
-
// Run the main function
|
|
66
41
|
main().catch((error) => {
|
|
67
42
|
console.error(er + `CLI: Matterbridge.loadInstance() failed with error: ${error}` + rs);
|
|
68
43
|
});
|
|
69
|
-
//# sourceMappingURL=cli.js.map
|
package/dist/cluster/export.js
CHANGED
|
@@ -1,25 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* This file contains the default config for the plugins.
|
|
3
|
-
*
|
|
4
|
-
* @file defaultConfigSchema.ts
|
|
5
|
-
* @author Luca Liguori
|
|
6
|
-
* @date 2024-05-07
|
|
7
|
-
* @version 1.0.1
|
|
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
1
|
export const zigbee2mqtt_config = {
|
|
24
2
|
name: 'matterbridge-zigbee2mqtt',
|
|
25
3
|
type: 'DynamicPlatform',
|
|
@@ -85,4 +63,3 @@ export const shelly_config = {
|
|
|
85
63
|
debugWs: false,
|
|
86
64
|
unregisterOnShutdown: false,
|
|
87
65
|
};
|
|
88
|
-
//# sourceMappingURL=defaultConfigSchema.js.map
|
package/dist/deviceManager.js
CHANGED
|
@@ -1,27 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* This file contains the DeviceManager class.
|
|
3
|
-
*
|
|
4
|
-
* @file devices.ts
|
|
5
|
-
* @author Luca Liguori
|
|
6
|
-
* @date 2024-07-26
|
|
7
|
-
* @version 1.0.8
|
|
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
|
-
// NodeStorage and AnsiLogger modules
|
|
24
|
-
import { AnsiLogger, BLUE, er, TimestampFormat } from 'node-ansi-logger';
|
|
1
|
+
import { AnsiLogger, BLUE, er } from './logger/export.js';
|
|
25
2
|
import { dev } from './matterbridgeTypes.js';
|
|
26
3
|
export class DeviceManager {
|
|
27
4
|
_devices = new Map();
|
|
@@ -31,7 +8,7 @@ export class DeviceManager {
|
|
|
31
8
|
constructor(matterbridge, nodeContext) {
|
|
32
9
|
this.matterbridge = matterbridge;
|
|
33
10
|
this.nodeContext = nodeContext;
|
|
34
|
-
this.log = new AnsiLogger({ logName: 'DeviceManager', logTimestampFormat:
|
|
11
|
+
this.log = new AnsiLogger({ logName: 'DeviceManager', logTimestampFormat: 4, logLevel: matterbridge.log.logLevel });
|
|
35
12
|
this.log.debug('Matterbridge device manager starting...');
|
|
36
13
|
}
|
|
37
14
|
get length() {
|
|
@@ -77,7 +54,6 @@ export class DeviceManager {
|
|
|
77
54
|
}
|
|
78
55
|
catch (error) {
|
|
79
56
|
this.log.error(`Error processing forEach device ${dev}${device.deviceName}${er} serialNumber ${BLUE}${device.serialNumber}${er} uniqueId: ${BLUE}${device.uniqueId}${er}:`, error);
|
|
80
|
-
// throw error;
|
|
81
57
|
}
|
|
82
58
|
});
|
|
83
59
|
await Promise.all(tasks);
|
|
@@ -89,4 +65,3 @@ export class DeviceManager {
|
|
|
89
65
|
this.log.logLevel = logLevel;
|
|
90
66
|
}
|
|
91
67
|
}
|
|
92
|
-
//# sourceMappingURL=deviceManager.js.map
|