Serveur de Chat : Application Java Socket
Serveur de Chat : Application Java Socket
Page 1
INTRODUCTION
les gens et les idées "ensemble" malgré les barrières géographiques. La technologie
est disponible depuis des années mais son acceptation est relativement récente. Notre projet est
tout PC sur le réseau. Pour commencer à discuter, le client doit se connecter au serveur
où ils peuvent pratiquer deux types de discussion, publique (le message est
diffusé à tous les utilisateurs connectés) et privé (entre seulement 2 utilisateurs)
et lors de la dernière, des mesures de sécurité ont été prises.
Page 2
OBJECTIFS
La communication sur un réseau est un domaine où cet outil trouve une large utilisation.
Page 3
CATÉGORIE DE PROJET
PROGRAMMATION SOCKET-JAVA
Une prise est l'une des technologies les plus fondamentales de l'ordinateur.
réseautage. Les sockets permettent aux applications de communiquer en utilisant des normes.
mécanismes intégrés dans le matériel réseau et les systèmes d'exploitation. Bien que
le logiciel de réseau peut sembler être un phénomène "Web" relativement nouveau, socket
Page 4
ANALYSE DES SYSTÈMES
DFD (DIAGRAMME DE FLUX DE DONNÉES)
DEMANDE MONITEUR
SERVEUR DE DISCUSSION
ADMIN
LOGIN REÇOIT
ACCÈS REFUSÉ/ACCÉDÉ
ADMIN
ACCES AUTORISE
VALIDER
REFUSÉ
USERID &
UTILISATEUR
MOT DE PASSE
REQUEST FOR SERVER MONITEURS
NG DE
LOGIN BASE DE DONNÉES
SERVER
Page 5
DIAGRAMME E-R
Message_ID
Mesag_recievr_ID
Mesag_recieve_ID
A_un_o Message_ID
Sujet Message Message_reciver
r_beaucoup
Message_Text
Attachments_Id Reciver_ID
EXPLICATION DE LA PROGRAMMATION
Communication Client-Serveur
Le serveur est lié à un socket fixe et écoute les demandes de connexion des clients.
Les clients essaient de se connecter au serveur sur ce port et cet hôte prédéfini. Une fois que le
des canaux de communication sont mis en place, les deux parlent en termes d'objets définis comme des protocoles.
Lors de la réception de ces objets, le programme extrait ensuite les informations pertinentes et prend
actions appropriées. Toutes les communications se font par le serveur et peuvent modifier le protocole
paramètres si nécessaire.
Protocoles
Des protocoles auto-conçus ont été définis pour permettre les communications entre le serveur
et clients. Les protocoles ont principalement été définis comme des classes qui ont des paramètres requis.
Protocole de message
Page 6
Ceci définit comment les messages doivent être gérés entre les utilisateurs et le serveur.
L'utilisateur peut envoyer des messages publics et privés. Pour les messages privés, il est important
Champs
chambres
RecieverId–Id of the recipient. Useful only for private messages
SenderId–Id of sender. Useful only for private messages
Message–Text that the user wants to send
Protocole d'information client
Ceci est destiné à échanger des informations client entre l'utilisateur et le serveur.
Lorsqu'un nouveau client se connecte au serveur, ses informations pertinentes sont conservées dans
un objet de cette classe. D'autres utilisateurs sont notifiés de l'arrivée d'un nouveau client à l'aide de
Champs
Ce protocole est utilisé pour notifier un client qu'un autre client souhaite commencer un
discussion privée avec ça. Un message de ce type doit être envoyé avant toute conversation privée.
la conversation peut commencer. Ce message est envoyé lorsque l'utilisateur choisit de commencer un
expéditeur.
Champs
Page 7
ReceiverId – L'identifiant client de la machine cliente qui doit être notifiée.
Lorsqu'un nouvel utilisateur se connecte au serveur, tous les clients doivent en être informés.
arrivée. Également, lorsqu'un utilisateur se déconnecte, tous les utilisateurs doivent être avertis. Ceci
Champs
Protocole de déconnexion
Lorsqu'un utilisateur choisit de se déconnecter du système, le serveur et tous les autres utilisateurs
doit être notifié. Selon le choix des utilisateurs, la machine cliente locale envoie un
Champs
Page 8
Page 9
MODULES DU PROJET
[Link] SERVER:
[Link] CLIENT:
Page
10
enregistrement dans le fichier de configuration. Vous pouvez changer le nom d'hôte du serveur
et port.
5. Menu principal : Les options disponibles pour le serveur. Les options
include connect, disconnect, configure, exit, close current tab,
fermez tous les onglets, aide.
Page
11
TESTING
[Link] Description Étapes de test Résultat attendu
login_001 Verify that user Invoke application La page de connexion devrait
devrait être
affiché au
utilisateur.
Entrez le nom d'utilisateur et nul Un message devrait
utilisateur entrée
mot de passe
Nom d'utilisateur nul et un message devrait
Page
12
Entrez un nom d'utilisateur correct Un message „invalide
le mot de passe devrait
et mot de passe incorrect.
être affiché à
user.
entrer le destinataire
de l'expéditeur. côté.
Page
13
EXIGENCES EN MATÉRIEL ET LOGICIEL
EXIGENCES LOGICIELLES
Système d'exploitation : Windows 7
Frontend : Java
Éditeur : Netbeans
HARDWARE REQUIREMENTS
Page
14
AMÉLIORATION FUTURE & PORTEE
1. Informations sur la session de connexion : Nous pouvons inclure une fonctionnalité dans cette application
cela gardera un enregistrement de la session de connexion de l'utilisateur.
2. Messages hors ligne : L'utilisateur peut envoyer des messages à des amis même lorsqu'ils sont
hors ligne.
4. Base de données des profils : Les informations de profil de chaque utilisateur peuvent être stockées à
le serveur.
5. Délai de déconnexion : Cette fonctionnalité permet à l'utilisateur d'être connecté uniquement pour un
temps spécifique. Après la fin de cette période, l'utilisateur est automatiquement déconnecté
dehors.
Page
15