Skip to content

Commit

Permalink
Dev 2.1.5-dev.7
Browse files Browse the repository at this point in the history
  • Loading branch information
Luligu committed Feb 10, 2025
1 parent 47d0ae7 commit 088ba1e
Show file tree
Hide file tree
Showing 4 changed files with 11 additions and 11 deletions.
3 changes: 1 addition & 2 deletions frontend/src/components/Test.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,14 @@ import { WebSocketContext } from './WebSocketProvider';
import { UiContext } from './UiProvider';
import { Connecting } from './Connecting';
import { SystemInfoTable } from './SystemInfoTable';
import { MatterbridgeInfoTable } from './MatterbridgeInfoTable';
// import { debug } from '../App';
const debug = true;

function Test() {
// WebSocket context
const { online, sendMessage, addListener, removeListener, getUniqueId } = useContext(WebSocketContext);
// Ui context
const { showSnackbarMessage, closeSnackbar } = useContext(UiContext);
const { showSnackbarMessage } = useContext(UiContext);

// Local states
const [settings, setSettings] = useState(null);
Expand Down
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "matterbridge",
"version": "2.1.5-dev.6",
"version": "2.1.5-dev.7",
"description": "Matterbridge plugin manager for Matter",
"author": "https://github.com/Luligu",
"license": "Apache-2.0",
Expand Down
13 changes: 7 additions & 6 deletions src/matterbridge.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1201,6 +1201,9 @@ export class Matterbridge extends EventEmitter {
for (const plugin of this.plugins) {
await this.removeAllBridgedEndpoints(plugin.name);
}
this.log.debug('Waiting for the MessageExchange to finish...');
await new Promise((resolve) => setTimeout(resolve, 1000)); // Wait 1 second for MessageExchange to finish
this.log.debug('Cleaning up and shutting down...');
await this.cleanup('unregistered all devices and shutting down...', false);
}

Expand Down Expand Up @@ -1270,6 +1273,8 @@ export class Matterbridge extends EventEmitter {

// Stopping matter server nodes
this.log.notice(`Stopping matter server nodes in ${this.bridgeMode} mode...`);
this.log.debug('Waiting for the MessageExchange to finish...');
await new Promise((resolve) => setTimeout(resolve, 1000)); // Wait 1 second for MessageExchange to finish
if (this.bridgeMode === 'bridge') {
if (this.serverNode) {
await this.stopServerNode(this.serverNode);
Expand Down Expand Up @@ -1398,7 +1403,7 @@ export class Matterbridge extends EventEmitter {
if (message === 'updating...') {
this.log.info('Cleanup completed. Updating...');
Matterbridge.instance = undefined;
this.emit('update'); // Restart the process but the update has been done before
this.emit('update'); // Restart the process but the update has been done before. TODO move all updates to the cli
} else if (message === 'restarting...') {
this.log.info('Cleanup completed. Restarting...');
Matterbridge.instance = undefined;
Expand Down Expand Up @@ -2189,10 +2194,6 @@ export class Matterbridge extends EventEmitter {
private async stopServerNode(matterServerNode: ServerNode): Promise<void> {
if (!matterServerNode) return;
this.log.notice(`Closing ${matterServerNode.id} server node`);
/*
await matterServerNode.close();
this.log.info(`Closed ${matterServerNode.id} server node`);
*/

// Helper function to add a timeout to a promise
const withTimeout = <T>(promise: Promise<T>, ms: number): Promise<T> => {
Expand All @@ -2211,7 +2212,7 @@ export class Matterbridge extends EventEmitter {
};

try {
await withTimeout(matterServerNode.close(), 30000); // 30 seconds timeout
await withTimeout(matterServerNode.close(), 30000); // 30 seconds timeout to allow slow devices to close gracefully
this.log.info(`Closed ${matterServerNode.id} server node`);
} catch (error) {
this.log.error(`Failed to close ${matterServerNode.id} server node: ${error instanceof Error ? error.message : error}`);
Expand Down

0 comments on commit 088ba1e

Please sign in to comment.