Mobile-DARTS  1.1
BTS SNIR LaSalle Avignon 2021
Protocole DARTS

Version : 1.0

Avis : validé le 11/06/2021 par Thierry VAIRA

Format général des trames

Type de contenu : Caractères ASCII

Délimiteurs

  • Début : $DARTS
  • Fin : \r\n
  • Champ de début : ;

Liste des trames

  • Trame de début : START
  • Trame de touche : HIT
  • Trame de joueur suivant : NEXT
  • Trame de fin : END
  • Trame de réinitialisation : RESET
  • Trame d'acquittement : OK

Sens des trames

  • Émetteur : Application mobile Darts, Module cible Darts.
  • Récepteur : ihm Darts, Application mobile Darts, Module cible Darts.

Voir diagramme des échanges

Format détaillé des trames

  • Trame début :

    Format : $DARTS;START;TYPE_PARTIE;NB_JOUEURS[;NOMS]\r\n Exemple : $DARTS;START;501;2;Billy;Robert\r\n

Types de partie : 301 301_DOUBLE_OUT 501 501_DOUBLE_OUT

Remarque : les champs entre crochets [] sont optionnels.

  • Trame de touche :

    Format : $DARTS;HIT;valeurTouche;multiplicateurTouche;ID\r\n

Les valeurs possibles pour valeurTouche sont :

  • Les secteurs 1 à 20 ;
  • Le centre de la cible (la bulle ou Bull’s Eye) ;
  • Les valeurs possibles pour multiplicateurTouche sont : 1, 2 (double) et 3 (triple)
  • Les valeurs possibles pour ID sont : 0 à 2

Exemples :

$DART;HIT;25;2;0\r\n -> Fléchette bullseye (50 points)
$DART;HIT;25;1;0\r\n -> Fléchette demi-bulle (25 points)
Les simples :
$DART;HIT;1;1;0\r\n -> 1 pts
...
$DART;HIT;20;1;0\r\n -> 20 pts
$DART;HIT;25;1;0\r\n -> 20 pts
Les doubles :
$DART;HIT;1;2;0\r\n -> 2 pts
...
$DART;HIT;20;2;0\r\n
$DART;HIT;25;2;0\r\n
$DART;HIT;20;2;0\r\n -> 40 pts
Les triples :
$DART;HIT;1;3;0\r\n -> 3 pts
...
$DART;HIT;20;3;0\r\n -> 60 pts
  • Trame d'acquittement :

    Format : $DARTS;OK\r\n

Remarque : Les trames de touche sont acquittées avec les modules cible et mobile.

  • Trame de réinitialisation :

    Format : $DARTS;RESET\r\n

Remarque : La trame RESET permet de réinitialiser le module cible en cas d’erreur ou à la fin d’une partie. Cela permet d’annuler une partie en cours.

  • Trame de fin :

    Format : $DARTS;END;(LE GAGNANT)\r\n

  • Trame de joueur suivant :

    Format : $DARTS;NEXT\r\n

Echanges

echanges.png