X-Git-Url: http://git.euphorik.ch/?p=euphorik.git;a=blobdiff_plain;f=doc%2Fprotocole3.txt;h=99776a48b3c6d3ebafe66655aef7dc792e197832;hp=c9411c245870270ac319cbcb52f3687165879de3;hb=eae50232e73fca26d6f631c8177cbea649e5036e;hpb=7104a1fd2d69ecbe294470fa79f41452a88ed5a0 diff --git a/doc/protocole3.txt b/doc/protocole3.txt index c9411c2..99776a4 100644 --- a/doc/protocole3.txt +++ b/doc/protocole3.txt @@ -40,39 +40,57 @@ Message ok g } -=== Login === -Le mot de passe est hashé en md5. -L'action 'register' permet de créer un nouvel utilisateur. +=== Enregistrement et authentification === +Permet de créer un nouvel utilisateur. +"login" et "password" peuvent ne pas être fournis avec un message de type "register", dans ce cas l'utilisateur ne pourra s'authentifier qu'a l'aide de son cookie. +Le mot de passe est hashé en md5. -c -> s - { - "action" : "authentification", - "login" : "Paul", - "password" : "IJKJDHHSAD9081238" +c -> s + { + "action" : "authentification", + "login" : "paul", + "password" : "IJKJDHHSAD9081238" } -ou - { - "action" : "authentification", - "cookie" : "LKJDLAKSJBFLKASN" +ou + { + "action" : "authentification", + "cookie" : "LKJDLAKSJBFLKASN" } -ou - { - "action" : "register", - "login" : "Paul", - "password" : "IJKJDHHSAD9081238" +ou + { + "action" : "register", + "login" : "paul", + "password" : "IJKJDHHSAD9081238" } -s -> c - { - "reply" : "login", - "status" : "registration_ok" | "authentification_ok", +s -> c + { + "reply" : "register" | "authentification", + "status" : "auth_not_registered", + "cookie" : "LKJDLAKSJBFLKASN", + "id" : 193, + "css" : "css/1/euphorik.css", + "main_page" : 1 + } +ou + { + "reply" : "register" | "authentification", + "status" : "auth_registered", "cookie" : "LKJDLAKSJBFLKASN", "id" : 193, - "pseudo" : "Paul", + "nick" : "Paul", "login" : "paul49", "email" : "paul@pierre.com", - "css" : "css/3/euphorik.css", - "main_page" : 1 + "css" : "css/3/euphorik.css", + "nick_format" : "nick" | "login" | "nick_login", + "main_page" : 1, + "conversations" : [ + { + "racine" : 123, + "page" : 1 + } + ], + "ek_master" : true | false } @@ -91,36 +109,45 @@ c -> s "cookie" : "LKJDLAKSJBFLKASN", "login" : "paul49", "password" : "IJKJDHHSAD9081238", - "pseudo" : "Paul", + "nick" : "Paul", "email" : "paul@pierre.com", - "css" : "css/3/euphorik.css", - "main_page" : 1 + "css" : "css/3/euphorik.css", + "nick_format" : "nick" | "login" | "nick_login", + "main_page" : 1, + "conversations" : [ + { + "root" : 123, + "page" : 1 + } + ] } s -> c ou - - -TODO : -c -> s - { - "action" : "set_conversation", - - } + === Wait event === Si "last_message_id" est absent alors le client ne possède pas de message. -Les conversations données sont définies dans le profile. +Si "main_page" est absent alors est vaut 1. +"cookie" n'est pas obligatoire. c -> s { - "action" : "wait_event", + "action" : "wait_event", + "page" : "chat" "cookie" : "LKJDLAKSJBFLKASN", - "message_count" : 10, - "troll" : 45, - "last_message_id" : 163 + "message_count" : 10, + "last_message_id" : 163, + "main_page" : 1 + "conversations" : [ + { + "racine" : 123, + "page" : 1, + "last_message_id" : 4 (pas obligatoire) + } + ] } s -> c @@ -132,21 +159,25 @@ Le format de la date n'est pas formel. "conversations" : [ { "last_page" : true | false, - "messages" : [ - "id" : 54, - "date" : "Hier 17:26:54", - "system" : true | false, - "owner" : true | false, - "answered" : true | false, - "is_a_reply" : true | false, - "nick" : "Paul", - "login" : "paul_22", - "content" : "Salut", - "answer_to" : [ - { "id" : 123, "pseudo" : "Pierre", "login" : "pierre_45" } - ] + "messages" : [ + { + "id" : 54, + "user_id" : 344, + "date" : "Hier 17:26:54", + "system" : true | false, + "owner" : true | false, + "answered" : true | false, + "is_a_reply" : true | false, + "nick" : "Paul", + "login" : "paul_22", + "content" : "Salut", + "answer_to" : [ + { "id" : 123, "nick" : "Pierre", "login" : "pierre_45" } + ] + "ek_master" : true | false + } ] - } + } ... ] } @@ -156,31 +187,20 @@ ou "message_id" : 123, "contenu" : "Salut +++ poulpe" } -ou - { - "reply" : "error", - "error_message" : "blabla" - } +ou + -=== Envoie d'un troll === +=== Envoie d'un troll === +TODO c -> s { "action" : "put_troll", "cookie" : "LKJDLAKSJBFLKASN", "content" : "Un bon troll velu !" } - -s -> c - { - "reply" : "ok" | "error", - "error_message" : "blabla" - } - === Modification d'un troll === TODO -=== Demande de trolls === -TODO === Suppression d'un troll === TODO === Noter un troll === @@ -196,16 +216,44 @@ c -> s "cookie" : "LKJDLAKSJBFLKASN", "nick" : "Paul", "content" : "Bonjour", - "Troll" : 45, "answer_to" : [ 345, 532, ... ] } -s -> c - { - "reply" : "ok" | "error", - "error_message" : "blabla" +s -> c + +ou + + + +=== Slapage === + +c -> s + { + "action" : "slap", + "cookie" : "LKJDLAKSJBFLKASN", + "user_id" : 67 } - + +s -> c + +ou + + + +=== Bannissement === + +c -> s + { + "action" : "ban", + "cookie" : "LKJDLAKSJBFLKASN", + "duration" : 15, // en minute + "user_id" : 67 + } + +s -> c + +ou + === Ajout d'une correction d'un messages === Le client envoie un correctif sous la forme de texte supplémentaire à appondre au dernier messages.