ceci decrit le nouveau format des news threade hotline:

la structure des news est la suivante:
root bundle -+---> 0 a N threads
             +---> 0 a N bundles

1 bundle contient de 0 a N threads

1 thread contient de 0 a N articles.

Les commandes suivantes existent:
---------------------------------

1) ouverture d'un bundle
------------------------

Client -> serveur:
------------------

HTL_HDR_BUNDLE_OPEN  ((guint32)0x00000172)
   HTL_DATA_NEWS_PATH ((guint16)0x0145) suivi d'un path.

Le path a la structure suivante:
1 mot: nombre de niveau (N)
N*:
	1 mot: 0xBF30
   1 octet: string len (M)
   M octets: level name 


Serveur -> client:
------------------

reponse de type task:
   HTL_DATA_THREAD_ENTRY  ((guint16)0x140)
	/* valable pour un bundle ou un thread */
		suivi dans le chunk de:
		1 octet: 0x01 pour un bundle
               0x0A pour un thread

		puis du nom de l'objet

	c'est tout;
	ou
	HTL_DATA_BUNDLE_ENTRY  ((guint16)0x143)
	/* valable pour un bundle ou un thread */
... le reste est faux:
     suivi dans le chunk de:
		1 mot: 0x0002 pour un bundle 
             0x0003 pour un thread

      Si c'est un bundle, on a ensuite:
      	1 mot: nombre d'entres dans le bundle
         1 octet: bundle name len (Z)
         Z octets: bundle name
         1 octet: (0x87, ou 0x00, non constant) ?

      Si c'est un thread, on a ensuite:
			1 mot: nombre d'articles presents dans le thread
         la suite d'octets suivante:
         75 03 3E E1 0B A6 11 D3 87 EA 00 40 95 03 92 3A 00 02 00 00 00 01
			ou
         CD E9 2E 43 99 2F 11 D3 A8 E6 8D 17 55 3A F3 22 00 00 00 02 00 00 00 01
         1 octet: thread name len (Z)
         Z octets: thread name
         02 00 00
			ou 
			4B 00 31


2) creation d'un nouveau bundle
-------------------------------

Client -> serveur:
------------------

HTL_HDR_BUNDLE_CREATE ((guint32)0x0000017D)
   HTL_DATA_NEWS_PATH ((guint16)0x0145) suivi d'un path.
   HTL_DATA_FILE suivi du nom du bundle

Serveur -> client:
------------------

reponse de type task.


2a) effacer un bundle ou un thread
----------------------------------

HTL_HDR_BUNDLE_OR_THREAD_DELETE
   HTL_DATA_NEWS_PATH ((guint16)0x0145) suivi d'un path.

Serveur -> client:
------------------

reponse de type task.

3) creation d'une nouvelle categorie
------------------------------------

Client -> serveur:
------------------

HTL_HDR_THREAD_CREATE ((guint32)0x0000017E)
   HTL_DATA_THREAD_NAME ((guint16)0x0142) suivi d'un nom de thread

Serveur -> client:
------------------

reponse de type task.


4) effacer un article
---------------------

HTL_HDR_ARTICLE_DELETE ((guint32)0x000019B)
   HTL_DATA_NEWS_PATH ((guint16)0x0145) suivi d'un path.
   HTL_DATA_ARTICLE_NUM ((guint16)0x0146) suivi d'un numero d'article 16 bits 
   HTL_DATA_NEWS_UNKNOWN ((guint16)0x0151) suivi d'un 16 bits = 0;

Serveur -> client:
------------------

reponse de type task.


5) poster un article dans un thread
-----------------------------------

HTL_HDR_ARTICLE_POST ((guint32)0x0000019A)
   HTL_DATA_NEWS_PATH ((guint16)0x0145) suivi d'un path.
   HTL_DATA_ARTICLE_NUM ((guint16)0x0146) suivi d'un numero d'article 16 bits  ????? pkoi ici ????
   HTL_ARTICLE_SUBJECT  ((guint16)0x0148) suivi du sujet de l'article
   HTL_DATA_NEWS_UNKNOWN2 ((guint16)0x014E) suivi d'un 16 bits = 0;
   HTL_ARTICLE_TYPE  ((guint16)0x0147) suivi d'une chaine text/plain
   HTL_ARTICLE_BODY  ((guint16)0x014D) suivi du contenu de l'article
   
 
Serveur -> client:
------------------

reponse de type task.


6) ouverture d'un thread
------------------------

HTL_HDR_THREAD_OPEN ((guint32)0x00000173)
   HTL_DATA_NEWS_PATH ((guint16)0x0145) suivi d'un path.

Serveur -> client:
------------------

reponse de type task:
avec:
   HTL_DATA_THREAD_CONTENT ((guint16)0x141)
    contenant:
       00 00 00 00 00 00
       1 mot: U*nombre d'articles dans le thread
       00 00
   
       puis U* la structure suivante:
       	1 long: numero d'article
       	07 CF ?? ??
       	date mac sur 4 octets
       	00 00 00 00 00 00 00 00 00 01
       	titre (precede d'un octet pour sa taille)
       	poster name (precede d'un octet pour sa taille)
       	type de fichier (precede d'un octet pour sa taille) "plain/text"
       	1 mot: taille du message

       

       
