moving gateway logic in service
This commit is contained in:
@@ -45,9 +45,7 @@ export class ChatGateway
|
|||||||
async changeRoom(@ConnectedSocket() socket: socketDto, @MessageBody() room_name: string): Promise<void>
|
async changeRoom(@ConnectedSocket() socket: socketDto, @MessageBody() room_name: string): Promise<void>
|
||||||
{
|
{
|
||||||
console.log('- in changeRoom gateway');
|
console.log('- in changeRoom gateway');
|
||||||
socket.leave(socket.room);
|
await this.chatService.socketChangeRoom(socket, room_name);
|
||||||
socket.join(room_name);
|
|
||||||
socket.room = room_name;
|
|
||||||
|
|
||||||
console.log('- out changeRoom gateway');
|
console.log('- out changeRoom gateway');
|
||||||
}
|
}
|
||||||
@@ -56,9 +54,7 @@ export class ChatGateway
|
|||||||
async handleMessage(@ConnectedSocket() socket: socketDto, @MessageBody() message: string): Promise<void>
|
async handleMessage(@ConnectedSocket() socket: socketDto, @MessageBody() message: string): Promise<void>
|
||||||
{
|
{
|
||||||
console.log('- in handleMessage gateway');
|
console.log('- in handleMessage gateway');
|
||||||
socket.to(socket.room).emit('message', socket.username, message);
|
await this.chatService.socketIncommingMessage(socket, message);
|
||||||
let room_name = await this.chatService.getCurrentRoomName(socket.username);
|
|
||||||
await this.chatService.addMessageToRoom(room_name, socket.username, message);
|
|
||||||
|
|
||||||
console.log('- out handleMessage gateway');
|
console.log('- out handleMessage gateway');
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import { InjectRepository } from '@nestjs/typeorm';
|
|||||||
import { createRoomDto } from './dto/createRoom.dto';
|
import { createRoomDto } from './dto/createRoom.dto';
|
||||||
import { joinRoomDto } from './dto/joinRoom.dto';
|
import { joinRoomDto } from './dto/joinRoom.dto';
|
||||||
import { messagesDto } from './dto/messages.dto';
|
import { messagesDto } from './dto/messages.dto';
|
||||||
|
import { socketDto } from './dto/socket.dto';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
export class ChatService {
|
export class ChatService {
|
||||||
@@ -230,24 +231,43 @@ export class ChatService {
|
|||||||
|
|
||||||
|
|
||||||
/* GATEWAY EVENTS *****************************************
|
/* GATEWAY EVENTS *****************************************
|
||||||
|
|
||||||
async handleMessage()
|
|
||||||
{
|
|
||||||
console.log("-- in getUserByName service");
|
|
||||||
|
|
||||||
// socket.to(socket.room).emit('message', socket.username, message);
|
|
||||||
// let room_name = await this.chatService.getCurrentRoomName(socket.username);
|
|
||||||
// await this.chatService.addMessageToRoom(room_name, socket.username, message);
|
|
||||||
|
|
||||||
const user = await this.userRepository
|
|
||||||
.createQueryBuilder('user')
|
|
||||||
.where('user.username = :name', { name: username })
|
|
||||||
.getOne();
|
|
||||||
|
|
||||||
console.log("-- out getUserByName service");
|
|
||||||
return user;
|
|
||||||
}
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
async socketIncommingMessage(socket: socketDto, message: string): Promise<void>
|
||||||
|
{
|
||||||
|
console.log("-- in handleSocketIncommingMessage service");
|
||||||
|
|
||||||
|
socket.to(socket.room).emit('message', socket.username, message);
|
||||||
|
let room_name = await this.getCurrentRoomName(socket.username);
|
||||||
|
await this.addMessageToRoom(room_name, socket.username, message);
|
||||||
|
|
||||||
|
console.log("-- out handleSocketIncommingMessage service");
|
||||||
|
}
|
||||||
|
|
||||||
|
async socketChangeRoom(socket: socketDto, room_name: string): Promise<void>
|
||||||
|
{
|
||||||
|
console.log('-- in socketChangeRoom service');
|
||||||
|
|
||||||
|
socket.leave(socket.room);
|
||||||
|
socket.join(room_name);
|
||||||
|
socket.room = room_name;
|
||||||
|
|
||||||
|
console.log('-- out socketChangeRoom service');
|
||||||
|
}
|
||||||
|
|
||||||
|
async socketJoinRoom(socket: socketDto, room_name: string): Promise<void>
|
||||||
|
{
|
||||||
|
console.log('- in socketJoinRoom service');
|
||||||
|
|
||||||
|
socket.leave(socket.room);
|
||||||
|
socket.join(room_name);
|
||||||
|
socket.room = room_name;
|
||||||
|
let message = `${socket.username} has join the room`;
|
||||||
|
await socket.to(socket.room).emit('message', "SERVER", message);
|
||||||
|
await this.addMessageToRoom(room_name, "SERVER", message);
|
||||||
|
|
||||||
|
console.log('- out socketJoinRoom service');
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user