matterbridge 3.4.2-dev-20251206-00998e1 → 3.4.3-dev-20251206-06686b7
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 +22 -0
- package/README-SERVICE-LOCAL.md +3 -3
- package/README-SERVICE-OPT.md +3 -5
- package/README.md +8 -14
- package/dist/cli.js +2 -0
- package/dist/matterbridge.js +8 -8
- package/frontend/build/assets/index.js +4 -4
- package/frontend/build/assets/vendor_mui.js +1 -1
- package/frontend/package.json +1 -1
- package/npm-shrinkwrap.json +8 -7
- package/package.json +3 -3
- package/scripts/marked.mjs +132 -0
- package/scripts/markedFooter.html +42 -0
- package/scripts/markedHeader.html +78 -0
package/CHANGELOG.md
CHANGED
|
@@ -28,6 +28,28 @@ Advantages:
|
|
|
28
28
|
- individual plugin isolation in childbridge mode;
|
|
29
29
|
- ability to update the plugin in childbridge mode without restarting matterbridge;
|
|
30
30
|
|
|
31
|
+
## [3.4.3] - 2025-12-12
|
|
32
|
+
|
|
33
|
+
### Added
|
|
34
|
+
|
|
35
|
+
- [frontend]: Added homepage icon and link to https://matterbridge.io/.
|
|
36
|
+
|
|
37
|
+
### Changed
|
|
38
|
+
|
|
39
|
+
- [package]: Updated dependencies.
|
|
40
|
+
- [frontend]: Bumped `frontend` version to v.3.3.4.
|
|
41
|
+
- [package]: Changed homepage to https://matterbridge.io.
|
|
42
|
+
- [frontend]: Changed help link to https://matterbridge.io/README.html.
|
|
43
|
+
- [frontend]: Changed changelog link to https://matterbridge.io/CHANGELOG.html.
|
|
44
|
+
- [frontend]: Changed changelog icon to HistoryOutlinedIcon.
|
|
45
|
+
|
|
46
|
+
### Fixed
|
|
47
|
+
|
|
48
|
+
- [matterbridge]: Plugin version is now updated even if the plugin is disabled.
|
|
49
|
+
- [matterbridge]: Fixed default delay and fixed_delay to 120 seconds.
|
|
50
|
+
|
|
51
|
+
<a href="https://www.buymeacoffee.com/luligugithub"><img src="https://matterbridge.io/bmc-button.svg" alt="Buy me a coffee" width="80"></a>
|
|
52
|
+
|
|
31
53
|
## [3.4.2] - 2025-12-05
|
|
32
54
|
|
|
33
55
|
### Race condition
|
package/README-SERVICE-LOCAL.md
CHANGED
|
@@ -18,14 +18,14 @@
|
|
|
18
18
|
|
|
19
19
|
## Run matterbridge as a daemon with systemctl (Linux only) with local global node_modules
|
|
20
20
|
|
|
21
|
-
The advantage of this setup is that the global node_modules are private for the user and sudo is not required.
|
|
22
|
-
|
|
23
|
-
This configuration uses a private separate npm cache.
|
|
21
|
+
The advantage of this setup is that the global node_modules and npm cache are private for the user and sudo is not required.
|
|
24
22
|
|
|
25
23
|
The service runs rootless like the current user.
|
|
26
24
|
|
|
27
25
|
The storage position is compatible with the traditional setup (~/Matterbridge ~/.matterbridge ~/.mattercert).
|
|
28
26
|
|
|
27
|
+
Also various scripts don't work if you choose this configuration.
|
|
28
|
+
|
|
29
29
|
### First create the Matterbridge directories and set the correct permissions
|
|
30
30
|
|
|
31
31
|
This will create the required directories if they don't exist
|
package/README-SERVICE-OPT.md
CHANGED
|
@@ -18,9 +18,7 @@
|
|
|
18
18
|
|
|
19
19
|
## Run matterbridge as a daemon with systemctl (Linux only) with user matterbridge and private global node_modules
|
|
20
20
|
|
|
21
|
-
The advantage of this setup is that the global node_modules are private for matterbridge and sudo is not required.
|
|
22
|
-
|
|
23
|
-
This configuration uses a private separate npm cache.
|
|
21
|
+
The advantage of this setup is that the global node_modules and npm cache are private for matterbridge and sudo is not required.
|
|
24
22
|
|
|
25
23
|
The service runs with group and user matterbridge and the system has full protection.
|
|
26
24
|
|
|
@@ -28,7 +26,7 @@ The service runs with group and user matterbridge and the system has full protec
|
|
|
28
26
|
|
|
29
27
|
The storage position is **not compatible** with the traditional setup (~/Matterbridge ~/.matterbridge ~/.mattercert).
|
|
30
28
|
|
|
31
|
-
Also various
|
|
29
|
+
Also various scripts don't work if you choose this configuration.
|
|
32
30
|
|
|
33
31
|
### 1 - Create the matterbridge user and group
|
|
34
32
|
|
|
@@ -62,7 +60,7 @@ sudo chmod -R 755 /opt/matterbridge /opt/matterbridge/Matterbridge /opt/matterbr
|
|
|
62
60
|
# make sure the “bin” dir exists for global executables
|
|
63
61
|
sudo -u matterbridge mkdir -p /opt/matterbridge/.npm-global/bin
|
|
64
62
|
# ✅ Install matterbridge in the private global node_modules using the private npm cache
|
|
65
|
-
sudo -u matterbridge
|
|
63
|
+
sudo -u matterbridge npm install matterbridge --omit=dev --verbose --global --prefix=/opt/matterbridge/.npm-global --cache=/opt/matterbridge/.npm-cache
|
|
66
64
|
# ✅ Create a link to matterbridge bins
|
|
67
65
|
sudo ln -sf /opt/matterbridge/.npm-global/bin/matterbridge /usr/bin/matterbridge
|
|
68
66
|
sudo ln -sf /opt/matterbridge/.npm-global/bin/mb_mdns /usr/bin/mb_mdns
|
package/README.md
CHANGED
|
@@ -178,37 +178,31 @@ Home page
|
|
|
178
178
|
|
|
179
179
|
### Run matterbridge as a daemon with systemctl (Linux only)
|
|
180
180
|
|
|
181
|
-
Traditional configuration
|
|
181
|
+
Traditional configuration: [configuration](README-SERVICE.md)
|
|
182
182
|
|
|
183
|
-
[
|
|
183
|
+
or with local global node_modules and npm cache (no sudo required): [configuration](README-SERVICE-LOCAL.md)
|
|
184
184
|
|
|
185
|
-
or with
|
|
186
|
-
|
|
187
|
-
[Service configurations with local global node_modules](README-SERVICE-LOCAL.md)
|
|
188
|
-
|
|
189
|
-
or with user matterbridge and with private global node_modules (no sudo required)
|
|
190
|
-
|
|
191
|
-
[Service configurations with user matterbridge and private global node_modules](README-SERVICE-OPT.md)
|
|
185
|
+
or with user matterbridge and with private global node_modules and npm cache (no sudo required): [configuration](README-SERVICE-OPT.md)
|
|
192
186
|
|
|
193
187
|
### Run matterbridge as a system service with launchctl (macOS only)
|
|
194
188
|
|
|
195
|
-
[Launchctl
|
|
189
|
+
[Launchctl configuration](README-MACOS-PLIST.md)
|
|
196
190
|
|
|
197
191
|
### Run matterbridge with docker and docker compose
|
|
198
192
|
|
|
199
|
-
[Docker
|
|
193
|
+
[Docker configuration](README-DOCKER.md)
|
|
200
194
|
|
|
201
195
|
### Run matterbridge with podman
|
|
202
196
|
|
|
203
|
-
[Podman
|
|
197
|
+
[Podman configuration](README-PODMAN.md)
|
|
204
198
|
|
|
205
199
|
### Run matterbridge with nginx
|
|
206
200
|
|
|
207
|
-
[Nginx
|
|
201
|
+
[Nginx configuration](README-NGINX.md)
|
|
208
202
|
|
|
209
203
|
### Run matterbridge as an home assistant add-on with the official add-on
|
|
210
204
|
|
|
211
|
-
[Home assistant add-on
|
|
205
|
+
[Home assistant add-on configuration](https://github.com/Luligu/matterbridge-home-assistant-addon)
|
|
212
206
|
|
|
213
207
|
### Other Home Assistant Community Add-ons
|
|
214
208
|
|
package/dist/cli.js
CHANGED
|
@@ -165,6 +165,8 @@ function help() {
|
|
|
165
165
|
--service: enable the service mode (used in the linux systemctl configuration file and macOS launchctl plist)
|
|
166
166
|
--docker: enable the docker mode (used in the docker image)
|
|
167
167
|
--homedir: override the home directory (default the os homedir)
|
|
168
|
+
--delay [seconds]: set a delay in seconds before starting Matterbridge in the first 5 minutes from a reboot (default 120)
|
|
169
|
+
--fixed_delay [seconds]: set a fixed delay in seconds before starting Matterbridge (default 120)
|
|
168
170
|
`);
|
|
169
171
|
process.exit(0);
|
|
170
172
|
}
|
package/dist/matterbridge.js
CHANGED
|
@@ -485,12 +485,12 @@ export class Matterbridge extends EventEmitter {
|
|
|
485
485
|
plugin.enabled = false;
|
|
486
486
|
continue;
|
|
487
487
|
}
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
488
|
+
}
|
|
489
|
+
if ((await this.plugins.parse(plugin)) === null) {
|
|
490
|
+
this.log.error(`Error parsing plugin ${plg}${plugin.name}${er}. The plugin is disabled.`);
|
|
491
|
+
plugin.error = true;
|
|
492
|
+
plugin.enabled = false;
|
|
493
|
+
continue;
|
|
494
494
|
}
|
|
495
495
|
this.log.debug(`Creating node storage context for plugin ${plg}${plugin.name}${db}`);
|
|
496
496
|
plugin.nodeContext = await this.nodeStorage.createStorage(plugin.name);
|
|
@@ -653,13 +653,13 @@ export class Matterbridge extends EventEmitter {
|
|
|
653
653
|
}
|
|
654
654
|
if (hasParameter('delay') && os.uptime() <= 60 * 5) {
|
|
655
655
|
const { wait } = await import('./utils/wait.js');
|
|
656
|
-
const delay = getIntParameter('delay') ||
|
|
656
|
+
const delay = getIntParameter('delay') || 120;
|
|
657
657
|
this.log.warn('Delay switch found with system uptime less then 5 minutes. Waiting for ' + delay + ' seconds before starting matterbridge...');
|
|
658
658
|
await wait(delay * 1000, 'Race condition delay', true);
|
|
659
659
|
}
|
|
660
660
|
if (hasParameter('fixed_delay')) {
|
|
661
661
|
const { wait } = await import('./utils/wait.js');
|
|
662
|
-
const delay = getIntParameter('fixed_delay') ||
|
|
662
|
+
const delay = getIntParameter('fixed_delay') || 120;
|
|
663
663
|
this.log.warn('Fixed delay switch found. Waiting for ' + delay + ' seconds before starting matterbridge...');
|
|
664
664
|
await wait(delay * 1000, 'Fixed race condition delay', true);
|
|
665
665
|
}
|