Euphorik - minichat ------------------- A. Introduction --------------- Ce document a pour but de décrire la communication client-serveur du site euphorik. B. Principe ----------- Enregistrement: Authentification: Rafraichissement: * Le client envoie une demande au serveur avec l'id du dernier message (via XMLHttpRequest ou un function de JQuery) * Le serveur maintient la connexion bloqué si le client est à jour. * Dès qu'un nouveau message arrive, le serveurs débloque la connexion est envoie le ou les messages manquants. C. Protocole ------------ c : client s : server C.1. Demande de génération d'un nouveau captcha : ----------------------------------------------- Obsolète : les captchas ne sont plus utilisés c -> s s -> c img/tmp/b1b1b4e72e6f3d00e477cf37cced5851.jpg b1b1b4e72e6f3d00e477cf37cced5851 C.2. Login : ------------ le message du client est posté par la méthode POST et se nomme 'action'. c -> s (nouveau user) (Obsolète) b1b1b4e72e6f3d00e477cf37cced5851 LKJDLA ou (ne sert pour l'instant qu'a mettre à jour user.date_derniere_connexion) (si le login est faut, une temporisation est effectuée) LKJDLAKSJBFLKASN ou Paul IJKJDHHSAD9081238 ou (login et password peuvent être omis) Paul IJKJDHHSAD9081238 s -> c ( et pas obligatoire) enregistre|identifie|erreur LKJDLAKSJBFLKASN 7ZS Paul paul49 paul@pierre.com css/lite.css blabla C.3. Logout : ------------- c -> s LKJDLAKSJBFLKASN C.4. Profile : -------------- modification du profile, seul 'cookie' est obligatoire c -> s LKJDLAKSJBFLKASN paul49 IJKJDHHSAD9081238 Paul paul@pierre.com css/dark.css s -> c ok|pas ok balbla> C.5. Refresh messages : ----------------------- Si dernierMessageId est absent alors le client ne possède pas de message. Page peut être omis, il a alors la valeur 1 (première page) dernierMessageId est en base 36 (l'histoire de rigoler un peu) c -> s LKJDLAKSJBFLKASN 6ZR 10 1 s -> c 4 Hier 17:26:54 Paul paul_22 Salut ou raison C.6. Envoie message : --------------------- Un client envoie un message, le message peut répondre à un certain nombre d'autres messages. n'est pas obligatoire. c -> s LKJDLAKSJBFLKASN Paul Bonjour s -> c ok|pas ok