maitretarot-devel-fr
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Maitretarot-devel-fr] nouveau protocol + nouveau client


From: Philippe Brochard
Subject: [Maitretarot-devel-fr] nouveau protocol + nouveau client
Date: 20 Oct 2003 22:03:00 +0200
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.3

Bonjour à tous,

j'ai quelques petites remarques à propos du nouveau protocole :

voici une session standard en telnet (commentée) :

---------------------------------------------------------------------
prog:[mt_cltk_client]$ telnet localhost 2552
Trying 127.0.0.1...
Connected to elcflo.
Escape character is '^]'.
ASK_nick
SAY_nick plop
ASK_game
SAY_game toto
SAY_game CREATE toto
ERROR Syntax\ error:\ Create\ a\ game,\ or\ join\ it\ as\ a\ player\ or\ a\ 
watcher' '
SAY_game CREATE bellote 4 titi
INFO Invalid\ game\ type
' '
SAY_game CREATE Tarot 4 titi
INFO game\ 'Tarot':\ game\ created' '
INFO Waiting\ for\ the\ other\ players' '
Connection closed by foreign host.
----------------------------------------------------------------------

Premiere chose, il y a des lignes ou des espaces en trop (je les aient mis
entre ' '). Ce n'est pas trop genant (il suffit de faire des tests sur la
chaine avec les espaces).

Par contre ce que je trouve plus embettant, c'est le manque de
message du serveur :

Quand on fait une faute de frappe lors du SAY_game, le serveur
ne repond rien, a moins d'avoir mis une commande (CREATE|JOIN|WATCH),
ce n'est pas trop grave parce qu'on est sensé connaitre la syntaxe
de la commande SAY_game.

Ce qui serai bien, c'est que lorsqu'on fait une erreur lors du SAY_game
(et des autres commandes), c'est que le serveur renvoi un ASK_game pour
indiqué au client ou il en est.
Pour l'instant le client fait avec ce qui existe (cad boucle jusqu'a
ce qu'il reçoive l'info "INFO game\ 'Tarot':\ game\ created ").
Alors qu'il me semble plus judicieux de ne pas faire de boucle de test
et de recommencer le SAY_game tant que le serveur renvoi un ASK_game
(cette boucle etant la boucle principale existante).

Donc la nouvelle mouture du protocole devrait plutot ressembler à ça :

----------------------------------------------------------------------
prog:[mt_cltk_client]$ telnet localhost 2552
Trying 127.0.0.1...
Connected to elcflo.
Escape character is '^]'.
ASK_nick
SAY_nick plop
ASK_game
SAY_game toto
+ERROR Syntax .... (=> mais pas obligatoire)
+ASK_game
SAY_game CREATE toto
ERROR Syntax\ error:\ Create\ a\ game,\ or\ join\ it\ as\ a\ player\ or\ a\ 
watcher
+ASK_game
SAY_game CREATE bellote 4 titi
INFO Invalid\ game\ type
+ASK_game
SAY_game CREATE Tarot 4 titi
INFO game\ 'Tarot':\ game\ created
INFO Waiting\ for\ the\ other\ players
Connection closed by foreign host.
----------------------------------------------------------------------


Voila, sinon, pour l'instant j'ai fait un nouveau client qui
marche avec le protocole actuel jusqu'a la phase choix du jeu.

il est ici :

        http://hocwp.free.fr/maitretarot

prendre mt_cltk_client.x.x.x.tar.gz

pour l'utiliser : dans le repertoire mt_cltk_client :

        clisp mt_cltk_client.lisp <--help>


Philippe

-- 
Philippe Brochard    <address@hidden>
                      http://hocwp.free.fr

-=-= http://www.gnu.org/home.fr.html =-=-




reply via email to

[Prev in Thread] Current Thread [Next in Thread]