import { WebSocketGateway, SubscribeMessage, MessageBody, WebSocketServer, } from '@nestjs/websockets'; import { MessagesService } from './messages.service'; import { CreateMessageDto } from './dto/create-message.dto'; import { Server } from 'socket.io'; @WebSocketGateway(3001, { cors: true }) export class MessagesGateway { constructor(private readonly messagesService: MessagesService) {} @WebSocketServer() server: Server; @SubscribeMessage('createMessage') async create(@MessageBody() createMessageDto: CreateMessageDto) { const message = await this.messagesService.create(createMessageDto); if (message) { this.server.emit('message', message); } } }