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