matterbridge 1.1.8 → 1.1.10
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 +18 -0
- package/README.md +20 -4
- package/dist/cli.d.ts +22 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +45 -5
- package/dist/cli.js.map +1 -1
- package/dist/index.js +4 -2
- package/dist/index.js.map +1 -1
- package/dist/matterbridge.d.ts +38 -3
- package/dist/matterbridge.d.ts.map +1 -1
- package/dist/matterbridge.js +458 -72
- package/dist/matterbridge.js.map +1 -1
- package/dist/matterbridgeAccessoryPlatform.d.ts +9 -0
- package/dist/matterbridgeAccessoryPlatform.d.ts.map +1 -1
- package/dist/matterbridgeAccessoryPlatform.js +13 -0
- package/dist/matterbridgeAccessoryPlatform.js.map +1 -1
- package/dist/matterbridgeDevice.d.ts +3 -0
- package/dist/matterbridgeDevice.d.ts.map +1 -1
- package/dist/matterbridgeDevice.js +137 -6
- package/dist/matterbridgeDevice.js.map +1 -1
- package/dist/matterbridgeDynamicPlatform.d.ts +9 -0
- package/dist/matterbridgeDynamicPlatform.d.ts.map +1 -1
- package/dist/matterbridgeDynamicPlatform.js +13 -0
- package/dist/matterbridgeDynamicPlatform.js.map +1 -1
- package/frontend/build/asset-manifest.json +6 -6
- package/frontend/build/index.html +1 -1
- package/frontend/build/static/css/main.3804969f.css +2 -0
- package/frontend/build/static/css/main.3804969f.css.map +1 -0
- package/frontend/build/static/js/main.82822a11.js +3 -0
- package/frontend/build/static/js/main.82822a11.js.map +1 -0
- package/package.json +2 -1
- package/frontend/build/static/css/main.ff2b240c.css +0 -2
- package/frontend/build/static/css/main.ff2b240c.css.map +0 -1
- package/frontend/build/static/js/main.157c9cd1.js +0 -3
- package/frontend/build/static/js/main.157c9cd1.js.map +0 -1
- /package/frontend/build/static/js/{main.157c9cd1.js.LICENSE.txt → main.82822a11.js.LICENSE.txt} +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,24 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
|
|
5
|
+
## [1.1.10] - 2024-03-15
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
|
|
9
|
+
- [matterbridge]: added unregisterAllDevices() to the platforms
|
|
10
|
+
- [matterbridge]: added unregisterDevice(device: MatterbridgeDevice) to the platforms
|
|
11
|
+
- [frontend]: Enable and disable plugin are now available. Restart Matteerbridge after.
|
|
12
|
+
- [frontend]: Frontend got updated to 0.8.2.
|
|
13
|
+
|
|
14
|
+
## [1.1.9] - 2024-03-15
|
|
15
|
+
|
|
16
|
+
### Added
|
|
17
|
+
|
|
18
|
+
- [frontend]: Selecting a plugin in the home page show the corresponding QR code.
|
|
19
|
+
- [frontend]: Settings page now controll the global logger level.
|
|
20
|
+
- [frontend]: Restart from the header is available.
|
|
21
|
+
- [frontend]: Frontend got updated to 0.8.1.
|
|
22
|
+
|
|
5
23
|
## [1.1.8] - 2024-03-15
|
|
6
24
|
|
|
7
25
|
### Added
|
package/README.md
CHANGED
|
@@ -174,21 +174,37 @@ The easiest way is to clone:
|
|
|
174
174
|
|
|
175
175
|
Then change the name, version, description and author in the package.json.
|
|
176
176
|
|
|
177
|
-
Add your plugin logic in platform.ts
|
|
177
|
+
Add your plugin logic in platform.ts.
|
|
178
178
|
|
|
179
|
-
|
|
179
|
+
## MatterbridgeDynamicPlatform and MatterbridgeAccessoryPlatform api
|
|
180
|
+
|
|
181
|
+
### async onStart(reason?: string)
|
|
180
182
|
The method onStart() is where you have to create your MatterbridgeDevice and add all needed clusters and command handlers.
|
|
181
183
|
|
|
182
184
|
The MatterbridgeDevice class has the create cluster methods already done and all command handlers needed (see plugin examples).
|
|
183
185
|
|
|
184
186
|
The method is called when Matterbridge load the plugin.
|
|
185
187
|
|
|
186
|
-
### onConfigure()
|
|
188
|
+
### async onConfigure()
|
|
187
189
|
The method onConfigure() is where you can configure or initialize your device.
|
|
188
190
|
|
|
189
191
|
The method is called when the platform is commissioned.
|
|
190
192
|
|
|
191
|
-
### onShutdown(reason?: string)
|
|
193
|
+
### async onShutdown(reason?: string)
|
|
192
194
|
The method onShutdown() is where you have to eventually cleanup some resources.
|
|
193
195
|
|
|
194
196
|
The method is called when Matterbridge is shutting down.
|
|
197
|
+
|
|
198
|
+
### async registerDevice(device: MatterbridgeDevice)
|
|
199
|
+
After you created your device, add it to the platform.
|
|
200
|
+
|
|
201
|
+
### async unregisterDevice(device: MatterbridgeDevice)
|
|
202
|
+
You can unregister one or more device.
|
|
203
|
+
|
|
204
|
+
### async unregisterAllDevices()
|
|
205
|
+
You can unregister all devices you added.
|
|
206
|
+
|
|
207
|
+
It can me be useful to call this method from onShutdown if you don't want to keep all the devices.
|
|
208
|
+
|
|
209
|
+
## MatterbridgeDevice api
|
|
210
|
+
|
package/dist/cli.d.ts
CHANGED
|
@@ -1,3 +1,25 @@
|
|
|
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.10
|
|
9
|
+
*
|
|
10
|
+
* Copyright 2023, 2024 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
|
+
*/
|
|
2
24
|
export {};
|
|
3
25
|
//# sourceMappingURL=cli.d.ts.map
|
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;;;;GAqBG"}
|
package/dist/cli.js
CHANGED
|
@@ -1,13 +1,53 @@
|
|
|
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.10
|
|
9
|
+
*
|
|
10
|
+
* Copyright 2023, 2024 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
|
+
//import wtf from 'wtfnode';
|
|
2
26
|
import { Matterbridge } from './matterbridge.js';
|
|
27
|
+
let instance;
|
|
3
28
|
async function main() {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
29
|
+
console.log('CLI: Matterbridge.loadInstance() called');
|
|
30
|
+
instance = await Matterbridge.loadInstance(true);
|
|
31
|
+
registerHandlers();
|
|
32
|
+
console.log('CLI: Matterbridge.loadInstance() exited');
|
|
33
|
+
}
|
|
34
|
+
function registerHandlers() {
|
|
35
|
+
instance.on('shutdown', async () => shutdown());
|
|
36
|
+
instance.on('restart', async () => restart());
|
|
37
|
+
}
|
|
38
|
+
async function shutdown() {
|
|
39
|
+
console.log('CLI: received shutdown event, exiting...');
|
|
40
|
+
//wtf.dump();
|
|
41
|
+
process.exit(0);
|
|
42
|
+
}
|
|
43
|
+
async function restart() {
|
|
44
|
+
console.log('CLI: received restart event, loading...');
|
|
45
|
+
//wtf.dump();
|
|
46
|
+
instance = await Matterbridge.loadInstance(true);
|
|
47
|
+
registerHandlers();
|
|
7
48
|
}
|
|
8
49
|
process.title = 'matterbridge';
|
|
9
50
|
main().catch((error) => {
|
|
10
|
-
|
|
11
|
-
console.error(`Failed to initialize Matterbridge from cli: ${error}`);
|
|
51
|
+
console.error(`CLI: Matterbridge.loadInstance() failed with error: ${error}`);
|
|
12
52
|
});
|
|
13
53
|
//# sourceMappingURL=cli.js.map
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,+BAA+B;AAC/B,4BAA4B;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,IAAI,QAAkC,CAAC;AAEvC,KAAK,UAAU,IAAI;IACjB,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;IACvD,QAAQ,GAAG,MAAM,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACjD,gBAAgB,EAAE,CAAC;IACnB,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,gBAAgB;IACvB,QAAS,CAAC,EAAE,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;IACjD,QAAS,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;AACjD,CAAC;AAED,KAAK,UAAU,QAAQ;IACrB,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;IACxD,aAAa;IACb,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,KAAK,UAAU,OAAO;IACpB,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;IACvD,aAAa;IACb,QAAQ,GAAG,MAAM,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACjD,gBAAgB,EAAE,CAAC;AACrB,CAAC;AAED,OAAO,CAAC,KAAK,GAAG,cAAc,CAAC;AAE/B,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,uDAAuD,KAAK,EAAE,CAAC,CAAC;AAChF,CAAC,CAAC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -36,11 +36,13 @@ export * from './ColorControlServer.js';
|
|
|
36
36
|
export * from './TvocCluster.js';
|
|
37
37
|
async function main() {
|
|
38
38
|
// eslint-disable-next-line no-console
|
|
39
|
-
console.log('
|
|
39
|
+
console.log('MAIN: Matterbridge.loadInstance() called');
|
|
40
40
|
await Matterbridge.loadInstance();
|
|
41
|
+
// eslint-disable-next-line no-console
|
|
42
|
+
console.log('MAIN: Matterbridge.loadInstance() exited');
|
|
41
43
|
}
|
|
42
44
|
main().catch((error) => {
|
|
43
45
|
// eslint-disable-next-line no-console
|
|
44
|
-
console.error(`
|
|
46
|
+
console.error(`MAIN: Matterbridge.loadInstance() failed with error: ${error}`);
|
|
45
47
|
});
|
|
46
48
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,8BAA8B,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,cAAc,qCAAqC,CAAC;AACpD,cAAc,sCAAsC,CAAC;AACrD,cAAc,kCAAkC,CAAC;AACjD,cAAc,uCAAuC,CAAC;AAEtD,cAAc,gBAAgB,CAAC;AAE/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oCAAoC,CAAC;AACnD,cAAc,kCAAkC,CAAC;AACjD,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AAEjC,KAAK,UAAU,IAAI;IACjB,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,8BAA8B,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,cAAc,qCAAqC,CAAC;AACpD,cAAc,sCAAsC,CAAC;AACrD,cAAc,kCAAkC,CAAC;AACjD,cAAc,uCAAuC,CAAC;AAEtD,cAAc,gBAAgB,CAAC;AAE/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oCAAoC,CAAC;AACnD,cAAc,kCAAkC,CAAC;AACjD,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AAEjC,KAAK,UAAU,IAAI;IACjB,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;IACxD,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;IAClC,sCAAsC;IACtC,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;AAC1D,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,sCAAsC;IACtC,OAAO,CAAC,KAAK,CAAC,wDAAwD,KAAK,EAAE,CAAC,CAAC;AACjF,CAAC,CAAC,CAAC"}
|
package/dist/matterbridge.d.ts
CHANGED
|
@@ -20,7 +20,9 @@
|
|
|
20
20
|
* See the License for the specific language governing permissions and
|
|
21
21
|
* limitations under the License. *
|
|
22
22
|
*/
|
|
23
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
23
24
|
import { MatterbridgeDevice } from './matterbridgeDevice.js';
|
|
25
|
+
import EventEmitter from 'events';
|
|
24
26
|
interface SystemInformation {
|
|
25
27
|
ipv4Address: string;
|
|
26
28
|
ipv6Address: string;
|
|
@@ -37,12 +39,14 @@ interface SystemInformation {
|
|
|
37
39
|
/**
|
|
38
40
|
* Represents the Matterbridge application.
|
|
39
41
|
*/
|
|
40
|
-
export declare class Matterbridge {
|
|
42
|
+
export declare class Matterbridge extends EventEmitter {
|
|
41
43
|
systemInformation: SystemInformation;
|
|
42
44
|
homeDirectory: string;
|
|
43
45
|
rootDirectory: string;
|
|
44
46
|
matterbridgeDirectory: string;
|
|
47
|
+
matterbridgePluginDirectory: string;
|
|
45
48
|
matterbridgeVersion: string;
|
|
49
|
+
matterbridgeLatestVersion: string;
|
|
46
50
|
globalModulesDir: string;
|
|
47
51
|
bridgeMode: 'bridge' | 'childbridge' | 'controller' | '';
|
|
48
52
|
debugEnabled: boolean;
|
|
@@ -52,7 +56,8 @@ export declare class Matterbridge {
|
|
|
52
56
|
private registeredDevices;
|
|
53
57
|
private nodeStorage;
|
|
54
58
|
private nodeContext;
|
|
55
|
-
private
|
|
59
|
+
private expressApp;
|
|
60
|
+
private expressServer;
|
|
56
61
|
private storageManager;
|
|
57
62
|
private matterbridgeContext;
|
|
58
63
|
private mattercontrollerContext;
|
|
@@ -67,7 +72,7 @@ export declare class Matterbridge {
|
|
|
67
72
|
* If an instance already exists, return that instance.
|
|
68
73
|
* @returns The loaded instance of the Matterbridge class.
|
|
69
74
|
*/
|
|
70
|
-
static loadInstance(
|
|
75
|
+
static loadInstance(initialize?: boolean): Promise<Matterbridge>;
|
|
71
76
|
/**
|
|
72
77
|
* Initializes the Matterbridge application.
|
|
73
78
|
*
|
|
@@ -79,6 +84,13 @@ export declare class Matterbridge {
|
|
|
79
84
|
* @returns A Promise that resolves when the initialization is complete.
|
|
80
85
|
*/
|
|
81
86
|
initialize(): Promise<void>;
|
|
87
|
+
/**
|
|
88
|
+
* Spawns a child process with the given command and arguments.
|
|
89
|
+
* @param command - The command to execute.
|
|
90
|
+
* @param args - The arguments to pass to the command (default: []).
|
|
91
|
+
* @returns A promise that resolves when the child process exits successfully, or rejects if there is an error.
|
|
92
|
+
*/
|
|
93
|
+
private spawnCommand;
|
|
82
94
|
/**
|
|
83
95
|
* Parses the command line arguments and performs the corresponding actions.
|
|
84
96
|
* @private
|
|
@@ -98,6 +110,10 @@ export declare class Matterbridge {
|
|
|
98
110
|
* When either of these signals are received, the cleanup method is called with an appropriate message.
|
|
99
111
|
*/
|
|
100
112
|
private registerSignalHandlers;
|
|
113
|
+
/**
|
|
114
|
+
* Restarts the process by spawning a new process and exiting the current process.
|
|
115
|
+
*/
|
|
116
|
+
private restartProcess;
|
|
101
117
|
/**
|
|
102
118
|
* Performs cleanup operations before shutting down Matterbridge.
|
|
103
119
|
* @param message - The reason for the cleanup.
|
|
@@ -124,6 +140,14 @@ export declare class Matterbridge {
|
|
|
124
140
|
* @returns {Promise<void>} - A promise that resolves when the storage process is started.
|
|
125
141
|
*/
|
|
126
142
|
addBridgedDevice(pluginName: string, device: MatterbridgeDevice): Promise<void>;
|
|
143
|
+
removeBridgedDevice(pluginName: string, device: MatterbridgeDevice): Promise<void>;
|
|
144
|
+
/**
|
|
145
|
+
* Removes all bridged devices associated with a specific plugin.
|
|
146
|
+
*
|
|
147
|
+
* @param pluginName - The name of the plugin.
|
|
148
|
+
* @returns A promise that resolves when all devices have been removed.
|
|
149
|
+
*/
|
|
150
|
+
removeAllBridgedDevices(pluginName: string): Promise<void>;
|
|
127
151
|
/**
|
|
128
152
|
* Starts the storage process based on the specified storage type and name.
|
|
129
153
|
* @param {string} storageType - The type of storage to start (e.g., 'disk', 'json').
|
|
@@ -228,6 +252,17 @@ export declare class Matterbridge {
|
|
|
228
252
|
* Stops the Matter server and associated controllers.
|
|
229
253
|
*/
|
|
230
254
|
private stopMatter;
|
|
255
|
+
/**
|
|
256
|
+
* Retrieves the latest version of a package from the npm registry.
|
|
257
|
+
* @param packageName - The name of the package.
|
|
258
|
+
* @returns A Promise that resolves to the latest version of the package.
|
|
259
|
+
*/
|
|
260
|
+
private getLatestVersion;
|
|
261
|
+
/**
|
|
262
|
+
* Retrieves the path to the global Node.js modules directory.
|
|
263
|
+
* @returns A promise that resolves to the path of the global Node.js modules directory.
|
|
264
|
+
*/
|
|
265
|
+
private getGlobalNodeModules;
|
|
231
266
|
/**
|
|
232
267
|
* Logs the node and system information.
|
|
233
268
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"matterbridge.d.ts","sourceRoot":"","sources":["../src/matterbridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG
|
|
1
|
+
{"version":3,"file":"matterbridge.d.ts","sourceRoot":"","sources":["../src/matterbridge.ts"],"names":[],"mappings":"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"}
|