ADD support des conversations (pas fini)
[euphorik.git] / doc / protocole2.txt
index f691780..704dc6a 100644 (file)
@@ -17,7 +17,7 @@ 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.
+ * Dès qclientu'un nouveau message arrive, le serveurs débloque la connexion est envoie le ou les messages manquants.
  
 
 C. Protocole
@@ -55,6 +55,13 @@ s -> c
    <login>paul49</login>
    <email>paul@pierre.com</email>
    <css>css/lite.css</css>
+   <!-- L'ordre des conversations est le même que lors de la sauvegarde du profile -->
+   <!-- Comprend également la conversation principal, dans ce cas la racine est à 0 -->
+   <conversation>
+      <racine>4</racine>
+      <page>1</page>
+   </conversation>
+   <!-- [..] -->
    <information>blabla</information>
  </reponse>
  
@@ -78,12 +85,17 @@ c -> s
    <pseudo>Paul</pseudo>
    <email>paul@pierre.com</email>
    <css>css/dark.css</css>
+   <conversation>
+      <racine>4</racine>
+      <page>1</page>
+   </conversation>
+   <!-- [..] -->
  </action>
  
 s -> c
  <reponse name="profile">
    <statut>ok|pas ok</statut>
-   <information>balbla></information>
+   <information>balbla</information>
  </reponse>
 
 
@@ -91,24 +103,21 @@ C.4. 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)
+Page peut être omis, il a alors la valeur 1 (première page).
+dernierMessageId est en base 36 (l'histoire de rigoler un peu).
+Les conversations données sont définies dans le profile.
 
 c -> s
- <action name="refreshMessages">
-  <cookie>LKJDLAKSJBFLKASN</cookie>
-  <nombreMessage>10</nombreMessage>
-  <conversation num="0">
-   <racine>RE</racine> <!-- pas présent pour la conversation numéro 0 -->
-   <dernierMessageId>6ZR</dernierMessageId>
-   <page>1</page>
-  </converation>
-  <!-- [..] -->
- </action>
+   <action name="refreshMessages">
+      <cookie>LKJDLAKSJBFLKASN</cookie>
+      <nombreMessage>10</nombreMessage>
+      <dernierMessageId>6ZR</dernierMessageId>
+      <!-- [..] -->
+   </action>
  
 s -> c
    <reponse name="refreshMessages">
-      <conversation num="0"> <!-- num : le numéro de la conversation 0 = conversation principale -->
+      <conversation> <!-- les conversations sont ordrées, la première est la conversation principale -->
          <autresPages>true</autresPages> <!-- possède une ou plusieurs autres pages ? "true" ou "false" -->
          <message id="1F5">
             <date>Hier 17:26:54</date> <!-- date du message (format non formel) -->
@@ -132,7 +141,9 @@ s -> c
 ou
    <!-- modification d'un message -->
    <reponse name="modMessage">
-   TODO
+      <message id="1F5">\r
+         <contenu>Salut ++ poulpe</contenu> <!-- contient le message complet -->\r
+      </message>
    </reponse>
 ou
    <reponse name="refreshMessages">
@@ -143,23 +154,45 @@ ou
 C.5. Envoie message
 -------------------
 
-Un client envoie un message, le message peut répondre à un certain nombre d'autres messages.
-<reponses> n'est pas obligatoire.
+Le client envoie un message, le message peut répondre à un certain nombre d'autres messages.
+<reponses> n'est pas obligatoire.\r
+
 c -> s
- <action name="message">
-  <cookie>LKJDLAKSJBFLKASN</cookie>
-  <pseudo>Paul</pseudo> <!-- il est possible que la personne change de pseudo -->
-  <contenu>Bonjour</contenu>
-  <reponses>
-   <reponse id="RT5" />
-   <reponse id="39K" />
-   <!-- [..] -->
-  </reponses>
- </action>
  <action name="message">
+      <cookie>LKJDLAKSJBFLKASN</cookie>
+      <pseudo>Paul</pseudo> <!-- il est possible que la personne change de pseudo -->
+      <contenu>Bonjour</contenu>
+      <reponses>
+         <reponse id="RT5" />
+         <reponse id="39K" />
+         <!-- [..] -->
+      </reponses>
  </action>
  
 s -> c
- <reponse name="message">
-   <statut>ok|pas ok</statut>
- </reponse>
+   <reponse name="message">
+      <statut>ok|pas ok</statut>
+   </reponse>
\r
\r
+C.6 Ajout d'une correction d'un messages\r
+----------------------------------------\r
+\r
+Le client envoie un correctif sous la forme de texte supplémentaire à appondre au dernier messages.\r
+Le message est appondu avec un " +++ " devant, par exemple :\r
+> Gnome c'est mieux que KDE +++ Euh non ok, c'est faux\r
+\r
+c -> s\r
+   <action name="correction">\r
+      <cookie>LKJDLAKSJBFLKASN</cookie>\r
+      <correctif>Euh non ok, c'est faux</correctif>\r
+   </action>\r
+   \r
+s -> c\r
+   <reponse name="correction">\r
+      <statut>ok|pas ok</statut> <!-- pas ok en général lorsque l'utilisateur n'a pas encore posté de message -->\r
+   </reponse>\r
+\r
+\r
+