feat: Semaine 9
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
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é.")
|
||||
Reference in New Issue
Block a user