Afficheur-AREA  1.1
BTS SNIR LaSalle Avignon 2021
protocole.md
Aller à la documentation de ce fichier.
1 # Protocole AREA 2021
2 
3 Version 1.0
4 
5 État : validé le 05/06/2021 par Thierry Vaira
6 
7 Ce document détaille le protocole de communication entre les différents modules du projet AREA, chaque section décrit les échanges entre deux modules.
8 
9 Le contenu d’une trame est uniquement composé de caractères ASCII standard. Les trames sont constituées de différents champs délimités par `;`.
10 
11 Le premier champ d’une trame indique l’identifiant de l’expéditeur (MOBILE_AREA ou NET_AREA ou AFFICHEUR_AREA).
12 
13 Le délimiteur de fin des trames est `\r\n`.
14 
15 ## Net AREA <-> Mobile AREA
16 
17 - Transmission :
18 
19  Détection d’une séquence de NET : `NET_AREA; NET\r\n`
20 
21 - Réception :
22 
23  Remettre le compteur de NET à 0 : `MOBILE_AREA;RAZ_COMPTEUR_NET\r\n`
24  Initialisation d’une séquence de détection NET : `MOBILE_AREA;SERVICE\r\n`
25 
26 ## Mobile AREA <-> Afficheur AREA
27 
28 Liste des différents types de trame :
29 
30 - démarrage d'une rencontre : `0` = `RENCONTRE`
31 - informations d’une partie : `1` = `INFO_PARTIE`
32 - score d’une partie : `2` = `SCORE`
33 - état d’une partie : `3` = `ETAT_PARTIE`
34 - détection d’un NET : `4` = `NET`
35 
36 Envoi des informations d’une rencontre : `MOBILE_AREA;0;NOM_CLUB_A;NOM_CLUB_B\r\n`
37 
38 Envoi des informations d’une partie : `MOBILE_AREA;1;ID_PARTIE;NOM_JOUEUR_A;PRENOM_JOUEUR_A;[NOM_DEUXIEME_JOUEUR_A];[PRENOM_DEUXIEME_JOUEUR_A];NOM_JOUEUR_B;PRENOM_JOUEUR_B;[NOM_DEUXIEME_JOUEUR_B];[PRENOM_DEUXIEME_JOUEUR_B]\r\n`
39 
40 Gestion du score d’une partie : `MOBILE_AREA;2;ID_PARTIE;POINTS_JOUEUR_A;POINTS_JOUEUR_B;NB_MANCHES_GAGNEES_JOUEUR_A;NB_MANCHES_GAGNEES_JOUEUR_B\r\n`
41 
42 Démarrer / Terminer une partie : `MOBILE_AREA;3;ID_PARTIE;ETAT\r\n`
43 
44 Le champs `ETAT` peut prendre deux valeurs :
45 
46 - La partie est démarrée: `DEMARREE`
47 - La partie est terminée : `TERMINEE`
48 
49 Détection d’un NET : `MOBILE_AREA;4;ID_PARTIE\r\n`
50 
51 ## Mobile AREA <-> Score AREA
52 
53 Liste des différents types de trame :
54 
55 - position du joueur A : `0`
56 - score d’une partie : `2`
57 - état d’une partie : `3`
58 - détection d’un NET : `4`
59 
60 Position du joueur A : `MOBILE_AREA;0;POSITION\r\n`
61 
62 Le champs POSITION peut prendre deux valeurs :
63 
64 - `GAUCHE`
65 - `DROITE`
66 
67 Gestion du score d’une partie : Identique à la trame pour le module Afficheur_AREA
68 
69 Démarrer / Terminer une partie : Identique à la trame pour le module Afficheur_AREA
70 
71 Détection d’un NET : Identique à la trame pour le module Afficheur_AREA
72