Files
gauvainboiche ce1f0e513a feat: Semaine 9
2026-05-15 16:24:56 +02:00

44 lines
1.2 KiB
Python

import socket
import threading
from env_var import SERVER_PORT, CLIENT_PORT
from utils import receive_messages, send_messages
server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
server.bind(("localhost", SERVER_PORT))
server.listen(5)
print("👥 Chat démarré, en attente de client...")
client, client_address = server.accept()
print(f"Client connecté : {client_address}")
try:
username_msg = client.recv(1024).decode("utf-8")
if username_msg.startswith("USERNAME:"):
client_username = username_msg.split(":", 1)[1]
print(f"{client_username} a rejoint le salon.")
else:
client_username = "Anonyme"
except:
client_username = "Anonyme"
print(f"⚠️ Impossible de recevoir le pseudo du client.")
print(f"🤝 Clavardage démarré sur port {SERVER_PORT}.")
thread_recv = threading.Thread(target=receive_messages, args=(client,))
thread_send = threading.Thread(target=send_messages, args=(client, "[SERVEUR]"))
thread_recv.daemon = False
thread_send.daemon = True
thread_recv.start()
thread_send.start()
thread_recv.join()
thread_send.join()
client.close()
server.close()
print(f"{client_username} s'est déconnecté. Serveur fermé.")