925 B
925 B
Exercice : chat multi-utilisateurs avec pseudo
Consigne
Créez un système de chat qui permet à plusieurs clients de se connecter en même temps à un serveur. Chaque client choisit un pseudo à la connexion, et tous les messages sont diffusés à l'ensemble des participants avec le pseudo de l'expéditeur.
Fonctionnalités attendues :
- Le serveur accepte plusieurs connexions simultanées (un thread par client)
- À la connexion, le client envoie son pseudo en premier message
- Le serveur annonce l'arrivée du nouveau participant à tous les autres
- Quand un client envoie un message, le serveur le redistribue à tous les autres clients (pas à l'expéditeur)
- Quand un client se déconnecte (ou tape
quit), le serveur prévient les autres - Le client utilise deux threads : un pour envoyer, un pour recevoir (comme dans la version full-duplex)
Exemple d'échange vu par un client :