mirror of
https://github.com/ets-cfuhrman-pfe/EvalueTonSavoir.git
synced 2025-08-11 21:23:54 -04:00
Working
Quand le professeur créer le room il y a un delai avec aucune info puis ca afficher la classe donc petit bug
This commit is contained in:
parent
d37e6c540a
commit
db6fa947d7
4 changed files with 26 additions and 13 deletions
|
|
@ -43,12 +43,7 @@ class WebSocketService {
|
||||||
|
|
||||||
createRoom(roomName: string) {
|
createRoom(roomName: string) {
|
||||||
if (this.socket) {
|
if (this.socket) {
|
||||||
if(roomName){
|
this.socket.emit('create-room', roomName || undefined);
|
||||||
this.socket.emit('create-room', {roomName});
|
|
||||||
}
|
|
||||||
else{
|
|
||||||
this.socket.emit('create-room');
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,8 @@ services:
|
||||||
container_name: frontend
|
container_name: frontend
|
||||||
ports:
|
ports:
|
||||||
- "5173:5173"
|
- "5173:5173"
|
||||||
|
networks:
|
||||||
|
- quiz_network
|
||||||
restart: always
|
restart: always
|
||||||
|
|
||||||
backend:
|
backend:
|
||||||
|
|
@ -31,6 +33,8 @@ services:
|
||||||
FRONTEND_URL: "http://localhost:5173"
|
FRONTEND_URL: "http://localhost:5173"
|
||||||
depends_on:
|
depends_on:
|
||||||
- mongo
|
- mongo
|
||||||
|
networks:
|
||||||
|
- quiz_network
|
||||||
restart: always
|
restart: always
|
||||||
|
|
||||||
quizroom:
|
quizroom:
|
||||||
|
|
@ -42,9 +46,10 @@ services:
|
||||||
- "4500:4500"
|
- "4500:4500"
|
||||||
depends_on:
|
depends_on:
|
||||||
- backend
|
- backend
|
||||||
|
networks:
|
||||||
|
- quiz_network
|
||||||
restart: always
|
restart: always
|
||||||
|
|
||||||
# Ce conteneur sert de routeur pour assurer le bon fonctionnement de l'application
|
|
||||||
nginx:
|
nginx:
|
||||||
build:
|
build:
|
||||||
context: ./nginx
|
context: ./nginx
|
||||||
|
|
@ -55,9 +60,10 @@ services:
|
||||||
depends_on:
|
depends_on:
|
||||||
- backend
|
- backend
|
||||||
- frontend
|
- frontend
|
||||||
|
networks:
|
||||||
|
- quiz_network
|
||||||
restart: always
|
restart: always
|
||||||
|
|
||||||
# Ce conteneur est la base de données principale pour l'application
|
|
||||||
mongo:
|
mongo:
|
||||||
image: mongo
|
image: mongo
|
||||||
container_name: mongo
|
container_name: mongo
|
||||||
|
|
@ -66,9 +72,10 @@ services:
|
||||||
tty: true
|
tty: true
|
||||||
volumes:
|
volumes:
|
||||||
- mongodb_data:/data/db
|
- mongodb_data:/data/db
|
||||||
|
networks:
|
||||||
|
- quiz_network
|
||||||
restart: always
|
restart: always
|
||||||
|
|
||||||
# Ce conteneur assure que l'application est à jour en allant chercher s'il y a des mises à jours à chaque heure
|
|
||||||
watchtower:
|
watchtower:
|
||||||
image: containrrr/watchtower
|
image: containrrr/watchtower
|
||||||
container_name: watchtower
|
container_name: watchtower
|
||||||
|
|
@ -80,8 +87,14 @@ services:
|
||||||
- WATCHTOWER_DEBUG=true
|
- WATCHTOWER_DEBUG=true
|
||||||
- WATCHTOWER_INCLUDE_RESTARTING=true
|
- WATCHTOWER_INCLUDE_RESTARTING=true
|
||||||
- WATCHTOWER_SCHEDULE=0 0 5 * * * # At 5 am everyday
|
- WATCHTOWER_SCHEDULE=0 0 5 * * * # At 5 am everyday
|
||||||
|
networks:
|
||||||
|
- quiz_network
|
||||||
restart: always
|
restart: always
|
||||||
|
|
||||||
|
networks:
|
||||||
|
quiz_network:
|
||||||
|
driver: bridge
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
mongodb_data:
|
mongodb_data:
|
||||||
external: false
|
external: false
|
||||||
|
|
|
||||||
|
|
@ -17,8 +17,12 @@ export const setupWebsocket = (io: Server): void => {
|
||||||
totalConnections++;
|
totalConnections++;
|
||||||
console.log("A user connected:", socket.id, "| Total connections:", totalConnections);
|
console.log("A user connected:", socket.id, "| Total connections:", totalConnections);
|
||||||
|
|
||||||
socket.on("create-room", (sentRoomName?: string) => {
|
socket.on("create-room", (sentRoomName) => {
|
||||||
const roomName = sentRoomName ? sentRoomName.toUpperCase() : generateRoomName();
|
// Ensure sentRoomName is a string before applying toUpperCase()
|
||||||
|
const roomName = (typeof sentRoomName === "string" && sentRoomName.trim() !== "")
|
||||||
|
? sentRoomName.toUpperCase()
|
||||||
|
: generateRoomName();
|
||||||
|
|
||||||
if (!io.sockets.adapter.rooms.get(roomName)) {
|
if (!io.sockets.adapter.rooms.get(roomName)) {
|
||||||
socket.join(roomName);
|
socket.join(roomName);
|
||||||
socket.emit("create-success", roomName);
|
socket.emit("create-success", roomName);
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,8 @@ class DockerRoomProvider extends BaseRoomProvider {
|
||||||
HostPort: ""
|
HostPort: ""
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
},
|
||||||
|
NetworkMode: "evaluetonsavoir_quiz_network"
|
||||||
},
|
},
|
||||||
Env: [...options.env || [], `ROOM_ID=${roomId}`]
|
Env: [...options.env || [], `ROOM_ID=${roomId}`]
|
||||||
};
|
};
|
||||||
|
|
@ -33,7 +34,7 @@ class DockerRoomProvider extends BaseRoomProvider {
|
||||||
await container.start();
|
await container.start();
|
||||||
|
|
||||||
const containerInfo = await container.inspect();
|
const containerInfo = await container.inspect();
|
||||||
const containerIP = containerInfo.NetworkSettings.IPAddress;
|
const containerIP = containerInfo.NetworkSettings.Networks.evaluetonsavoir_quiz_network.IPAddress;
|
||||||
|
|
||||||
const host = `${containerIP}:4500`;
|
const host = `${containerIP}:4500`;
|
||||||
return await this.roomRepository.create(new Room(roomId, container_name, host, 0));
|
return await this.roomRepository.create(new Room(roomId, container_name, host, 0));
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue