5 État : validé le 05/06/2021 par Thierry Vaira
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.
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 `;`.
11 Le premier champ d’une trame indique l’identifiant de l’expéditeur (MOBILE_AREA ou NET_AREA ou AFFICHEUR_AREA).
13 Le délimiteur de fin des trames est `\r\n`.
15 ## Net AREA <-> Mobile AREA
19 Détection d’une séquence de NET : `NET_AREA; NET\r\n`
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`
26 ## Mobile AREA <-> Afficheur AREA
28 Liste des différents types de trame :
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`
36 Envoi des informations d’une rencontre : `MOBILE_AREA;0;NOM_CLUB_A;NOM_CLUB_B\r\n`
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`
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`
42 Démarrer / Terminer une partie : `MOBILE_AREA;3;ID_PARTIE;ETAT\r\n`
44 Le champs `ETAT` peut prendre deux valeurs :
46 - La partie est démarrée: `DEMARREE`
47 - La partie est terminée : `TERMINEE`
49 Détection d’un NET : `MOBILE_AREA;4;ID_PARTIE\r\n`
51 ## Mobile AREA <-> Score AREA
53 Liste des différents types de trame :
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`
60 Position du joueur A : `MOBILE_AREA;0;POSITION\r\n`
62 Le champs POSITION peut prendre deux valeurs :
67 Gestion du score d’une partie : Identique à la trame pour le module Afficheur_AREA
69 Démarrer / Terminer une partie : Identique à la trame pour le module Afficheur_AREA
71 Détection d’un NET : Identique à la trame pour le module Afficheur_AREA