diff --git a/src/onebot/network/active-websocket.ts b/src/onebot/network/active-websocket.ts index 3419d9d4..b8aa4530 100644 --- a/src/onebot/network/active-websocket.ts +++ b/src/onebot/network/active-websocket.ts @@ -79,6 +79,12 @@ export class OB11ActiveWebSocketAdapter implements IOB11NetworkAdapter { }, }); + this.connection.on('ping', () => { + this.connection?.pong(); + }); + this.connection.on('pong', () => { + //this.logger.logDebug('[OneBot] [WebSocket Client] 收到pong'); + }); this.connection.on('open', () => { try { this.connectEvent(this.coreContext); diff --git a/src/onebot/network/passive-websocket.ts b/src/onebot/network/passive-websocket.ts index 9823e713..0ded05a9 100644 --- a/src/onebot/network/passive-websocket.ts +++ b/src/onebot/network/passive-websocket.ts @@ -50,6 +50,12 @@ export class OB11PassiveWebSocketAdapter implements IOB11NetworkAdapter { wsClient.on('message', (message) => { this.handleMessage(wsClient, message).then().catch(this.logger.logError); }); + wsClient.on('ping', () => { + wsClient.pong(); + }); + wsClient.on('pong', () => { + //this.logger.logDebug('[OneBot] [WebSocket Server] Pong received'); + }); wsClient.once('close', () => { this.wsClientsMutex.runExclusive(async () => { const index = this.wsClients.indexOf(wsClient);