diff --git a/packages/hydrojudge/src/hosts/hydro.ts b/packages/hydrojudge/src/hosts/hydro.ts index 39f0c8a9f..409b196fe 100644 --- a/packages/hydrojudge/src/hosts/hydro.ts +++ b/packages/hydrojudge/src/hosts/hydro.ts @@ -198,6 +198,10 @@ export default class Hydro implements Session { : '{"key":"ping"}'; setInterval(() => this.ws?.send?.(content), 30000); this.ws.on('message', (data) => { + if (data.toString() === 'ping') { + this.ws.send('pong'); + return; + } const request = JSON.parse(data.toString()); if (request.language) this.language = request.language; if (request.task) queue.add(() => new JudgeTask(this, request.task).handle().catch((e) => log.error(e)));