Skip to content
Snippets Groups Projects
Commit a328ae01 authored by OUDJOUDI Mazis's avatar OUDJOUDI Mazis
Browse files

Upload New File

parent 40f46550
No related branches found
No related tags found
No related merge requests found
import socket
import threading
# Fonction pour gérer la connexion d'un client
def handle_client(client_socket, client_address):
while True:
try:
# Recevoir le message du client
message = client_socket.recv(1024).decode()
# Vérifier si le client a quitté la conversation
if message == 'quit':
print(f"Client {client_address} disconnected.")
break
# Transmettre le message à tous les autres clients
for client in clients:
if client != client_socket:
client.send(f"Client {client_address}: {message}".encode())
except ConnectionResetError:
# Gérer les erreurs de connexion
print(f"Client {client_address} disconnected.")
break
# Fonction pour démarrer le serveur
def start_server(host, port):
# Créer le socket du serveur
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_socket.bind((host, port))
server_socket.listen(5)
print(f"Server is running on {host}:{port}")
while True:
# Accepter les connexions des clients
client_socket, client_address = server_socket.accept()
print(f"Client {client_address} connected.")
# Ajouter le client à la liste des clients
clients.append(client_socket)
# Démarrer un nouveau thread pour gérer la connexion du client
client_thread = threading.Thread(target=handle_client, args=(client_socket, client_address))
client_thread.start()
# Demander à l'utilisateur de saisir l'adresse IP et le port
host = input("Entrez l'adresse IP du serveur : ")
port = int(input("Entrez le port du serveur : "))
# Démarrer le serveur avec les paramètres spécifiés
clients = []
start_server(host, port)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment