Merge pull request #2 from Phundrak/dev-protocole

Dev protocole
This commit is contained in:
Phuntsok Drak-pa 2018-03-21 12:52:21 +01:00 committed by GitHub
commit 7fe491a8db
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -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. Réponse à cette requête du serveur vers le client (serveur vers client), requête du nom d'utilisateur.
``` text ``` text
PROT <version> NAME REQ NAME REQ
``` ```
### Requête 1.4 ### Requête 1.4
@ -58,7 +58,7 @@ C->S
Réponse à la requête du serveur (client vers serveur), envoi du nom dutilisateur. Réponse à la requête du serveur (client vers serveur), envoi du nom dutilisateur.
``` text ``` text
PROT <version> NAME <username> NAME <username>
``` ```
### Requête 1.5 ### Requête 1.5
@ -68,7 +68,7 @@ S->C
Réponse du serveur si l'enregistrement du nom d'utilisateur sest bien déroulé, immédiatement suivi par la [requête 1.9](#requête-18) Réponse du serveur si l'enregistrement du nom d'utilisateur sest bien déroulé, immédiatement suivi par la [requête 1.9](#requête-18)
``` text ``` text
PROT <version> NAME OK NAME OK
``` ```
### Requête 1.6 ### 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). Réponse du serveur si l'enregistrement du nom d'utilisateur a rencontré une erreur (nom déjà utilisé,…) (serveur vers client).
``` text ``` text
PROT <version> NAME FAILURE NAME FAILURE
``` ```
### Requête 1.7 ### 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 dun nouvel utilisateur. 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 dun nouvel utilisateur.
``` text ``` text
PROT <version> JOIN <username> JOIN <username>
``` ```
### Requête 1.8 ### Requête 1.8
@ -98,7 +98,17 @@ S->C
Requête confirmant au client sa connexion Requête confirmant au client sa connexion
``` text ``` text
PROT <version> 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 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. Du serveur vers le client : confirmation de déconnexion du client depuis le serveur.
``` text ``` text
PROT <version> BYE BYE
``` ```
### Requête 2.2 ### Requête 2.2
@ -126,7 +136,7 @@ S->A
Notification aux clients de la déconnexion dun autre client. Notification aux clients de la déconnexion dun autre client.
``` text ``` text
PROT <version> LOGOUT <username> LOGOUT <username>
``` ```
Ping Ping
@ -136,25 +146,26 @@ Vérification de la connexion des clients avec le serveur. Chaque minute, la req
### Requête 3.1 ### Requête 3.1
S->A S->A, C->S
Envoi dun ping du serveur vers chaque client. Envoi dun ping du serveur vers chaque client ou dun client vers le serveur.
``` text ``` text
PROT <version> PING PING
``` ```
### Requête 3.2 ### 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 ``` text
PROT <version> PONG PONG
``` ```
## Échange de messages ## Échange de messages
### Échange de messages publics ### Échange de messages publics
#### Requête 4.1.1 #### Requête 4.1.1
@ -162,8 +173,9 @@ PROT <version> PONG
C->S C->S
Envoi depuis le client vers le serveur dun message public Envoi depuis le client vers le serveur dun message public
``` text ``` text
PROT <version> MSG <message> MSG <message>
``` ```
#### Requête 4.1.2 #### Requête 4.1.2
@ -171,6 +183,30 @@ PROT <version> MSG <message>
S->A S->A
Transmission dun message dun client vers les autres clients Transmission dun message dun client vers les autres clients
``` text ``` text
PROT <version> FROM <username> MSG <message> FROM <username> MSG <message>
``` ```
### Interactions salon de chat
#### Requête 4.2.1
C->S
Demande du client pour recevoir la liste des participants connectés
```text
REQ CLIENTS
```
#### Requête 4.2.2
S->C
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 <nombre de clients> <noms clients séparés par un espace>
```
Comme mentionné au début de ce document, aucun caractère blanc nest autorisé dans les pseudonymes afin quil ny ait pas de collision avec le protocole.
=======