From 618d937257b21d5257c76d4978c824fad60565a3 Mon Sep 17 00:00:00 2001 From: Phuntsok Drak-pa Date: Sat, 17 Mar 2018 11:39:28 +0100 Subject: [PATCH 1/2] =?UTF-8?q?Mise=20=C3=A0=20jour=20protocole?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Parties inutiles du protocole retirées (notamment l’échange systématique de la version du protocole), et ajout d’une possibilité de faire une requête du nom des participants connectés. --- protocole.md | 53 ++++++++++++++++++++++++++++++++-------------------- 1 file changed, 33 insertions(+), 20 deletions(-) diff --git a/protocole.md b/protocole.md index a0567dc..00026e6 100644 --- a/protocole.md +++ b/protocole.md @@ -48,7 +48,7 @@ S->C Réponse à cette requête du serveur vers le client (serveur vers client), requête du nom d'utilisateur. ``` text -PROT NAME REQ +NAME REQ ``` ### Requête 1.4 @@ -58,7 +58,7 @@ C->S Réponse à la requête du serveur (client vers serveur), envoi du nom d’utilisateur. ``` text -PROT NAME +NAME ``` ### Requête 1.5 @@ -68,7 +68,7 @@ S->C Réponse du serveur si l'enregistrement du nom d'utilisateur s’est bien déroulé, immédiatement suivi par la [requête 1.9](#requête-18) ``` text -PROT NAME OK +NAME OK ``` ### Requête 1.6 @@ -78,7 +78,7 @@ S->C Réponse du serveur si l'enregistrement du nom d'utilisateur a rencontré une erreur (nom déjà utilisé,…) (serveur vers client). ``` text -PROT NAME FAILURE +NAME FAILURE ``` ### Requête 1.7 @@ -88,7 +88,7 @@ S->A Conjointement à la [requête 1.4](#requête-14), cette requête sera envoyée à tout autre client connecté pour les notifier de la connexion d’un nouvel utilisateur. ``` text -PROT JOIN +JOIN ``` ### Requête 1.8 @@ -98,7 +98,17 @@ S->C Requête confirmant au client sa connexion ``` text -PROT WELCOME +WELCOME +``` + +### Requête 1.9 + +S->C + +Réponse du serveur en cas de version de protocole différente + +```text +BAD PROT ``` Déconnexion du serveur @@ -116,7 +126,7 @@ Du client vers le serveur : notification de déconnexion du client au serveur. Du serveur vers le client : confirmation de déconnexion du client depuis le serveur. ``` text -PROT BYE +BYE ``` ### Requête 2.2 @@ -126,7 +136,7 @@ S->A Notification aux clients de la déconnexion d’un autre client. ``` text -PROT LOGOUT +LOGOUT ``` Ping @@ -141,7 +151,7 @@ S->A Envoi d’un ping du serveur vers chaque client. ``` text -PROT PING +PING ``` ### Requête 3.2 @@ -151,10 +161,11 @@ C->S Envoi de la réponse du client au serveur pour la [requête 3.1](#requête-31) ``` text -PROT PONG +PONG ``` ## Échange de messages + ### Échange de messages publics #### Requête 4.1.1 @@ -162,8 +173,9 @@ PROT PONG C->S Envoi depuis le client vers le serveur d’un message public + ``` text -PROT MSG +MSG ``` #### Requête 4.1.2 @@ -171,28 +183,29 @@ PROT MSG S->A Transmission d’un message d’un client vers les autres clients + ``` text -PROT FROM MSG +FROM MSG ``` -### Échange de messages privés +### Interactions salon de chat #### Requête 4.2.1 C->S -Transmission d’un message d’un client vers un autre client uniquement, spécifié par son nom d’utilisateur (client vers serveur) +Demande du client pour recevoir la liste des participants connectés -``` text -PROT PRIV TO MSG +```text +REQ CLIENTS ``` #### Requête 4.2.2 S->C -Transmission d’un message d’un client vers un autre client uniquement, spécifié par son nom d’utilisateur (serveur vers client) - -``` text -PROT PRIV FROM MSG +Réponse du client à la [requête 4.2.1](#requête-421) transmettant au client la liste des autres clients connectés +```text +LIST CLIENTS ``` +Comme mentionné au début de ce document, aucun caractère blanc n’est autorisé dans les pseudonymes afin qu’il n’y ait pas de collision avec le protocole. From 9fc51aeb21b24d2775493609f9ee224a9a836c5d Mon Sep 17 00:00:00 2001 From: Phuntsok Drak-pa Date: Wed, 21 Mar 2018 12:21:37 +0100 Subject: [PATCH 2/2] Minor update for PING-related requests --- protocole.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/protocole.md b/protocole.md index 00026e6..f8430a9 100644 --- a/protocole.md +++ b/protocole.md @@ -146,9 +146,9 @@ Vérification de la connexion des clients avec le serveur. Chaque minute, la req ### Requête 3.1 -S->A +S->A, C->S -Envoi d’un ping du serveur vers chaque client. +Envoi d’un ping du serveur vers chaque client ou d’un client vers le serveur. ``` text PING @@ -156,9 +156,9 @@ PING ### Requête 3.2 -C->S +C->S, S->C -Envoi de la réponse du client au serveur pour la [requête 3.1](#requête-31) +Envoi de la réponse du client au serveur ou du serveurs au client pour la [requête 3.1](#requête-31) ``` text PONG