fix: wire activity.logged event to WebSocket broadcast

Add @OnEvent('activity.logged') listener in EventsGateway to bridge
EventEmitter2 → WebSocket activity:new broadcast. Restores real-time
activity push without reintroducing circular dependency.
This commit is contained in:
2026-04-08 14:14:01 +09:00
parent d8f2818e59
commit 58843db298

View File

@@ -10,6 +10,7 @@ import { Server, Socket } from 'socket.io';
import { Logger } from '@nestjs/common';
import { JwtService } from '@nestjs/jwt';
import { ConfigService } from '@nestjs/config';
import { OnEvent } from '@nestjs/event-emitter';
interface SocketUserPayload {
username?: string;
@@ -101,6 +102,12 @@ export class EventsGateway
this.server.emit('activity:new', { item, ts: Date.now() });
}
/** EventEmitter2에서 activity.logged 수신 → WebSocket 브로드캐스트 */
@OnEvent('activity.logged')
handleActivityLogged(record: unknown) {
this.broadcastActivity(record);
}
/** 연결된 클라이언트 수 */
getClientCount(): number {
return this.server?.sockets?.sockets?.size ?? 0;