Je suis Charlie

Autres trucs

Accueil

Seulement les RFC

Seulement les fiches de lecture

Ève

RFC 5256: INTERNET MESSAGE ACCESS PROTOCOL - SORT AND THREAD EXTENSIONS

Date de publication du RFC : Juin 2008
Auteur(s) du RFC : M. Crispin (Panda Programming), K. Murchison (Carnegie Mellon University)
Chemin des normes
Réalisé dans le cadre du groupe de travail IETF imapext
Première rédaction de cet article le 10 juin 2008


Le protocole IMAP d'accès aux boîtes aux lettres distantes s'étoffe dans toutes les directions. Ce RFC normalise les extensions permettant au serveur IMAP de faire le tri des messages lui-même, avant de les envoyer chez le client.

Un serveur IMAP peut être simpliste, laissant le client faire l'essentiel du travail, par exemple de tri des messages pour les afficher dans l'ordre souhaité par l'utilisateur. Mais certains serveurs IMAP, par exemple ceux qui stockent les messages dans une base de données SQL peuvent aussi faire ce travail facilement et les extensions SORT et THREAD permettent à un client de demander ce tri. C'est utile pour certains clients (cf. RFC 1733) et cela garantit aux utilisateurs un tri standard.

La section 2 du RFC présente d'abord quelques termes de base. Ainsi, 2.1 explique le concept de « sujet de base ». Le sujet des messages (dans le champ Subject:) étant parfois modifié en cours de discussion (notamment par l'ajout des caractères indiquant une réponse, typiquement Re: ), le tri par sujet doit se faire sur le sujet de base, pas sur le contenu littéral du sujet. Ce sujet de base s'obtient notamment en décodant les séquences du RFC 2047 et en supprimant les Re:  ou Fwd:  initiaux. (La section 2.1 précise bien que, vue la fantaisie avec laquelle certains logiciels modifient le sujet, on n'atteindra pas 100 % de succès.)

La section 3 contient la définition formelle des deux nouvelles extensions. La nouvelle commande SORT pourra indiquer le critère de tri, parmi un ensemble pré-défini (date, expéditeur, taille, sujet, etc). Si on trie selon l'expéditeur, seulement la partie locale de l'adresse (addr-mailbox) est utilisée donc par exemple l'expéditeur de mes messages, pour ce tri, sera stephane+blog et pas stephane+blog@bortzmeyer.org et encore moins Stéphane Bortzmeyer <stephane+blog@bortzmeyer.org>. Trier sur le nom affiché, par exemple, ouvrirait des possibilités très intéressantes pour les amateurs d'internationalisation. Ainsi, la liste suivante (tel qu'elle serait triée par un tri alphabétique stupide) :

  • Bandou Mitsugoro
  • Mao Zedong
  • Mark R. Crispin
  • Nishimura Aiko
  • Pedro Castro Gomez

peut être triée de nombreuses façons. Un tri qui croirait être malin en utilisant le nom de famille donnerait :

  • Nishimura Aiko
  • Mark R. Crispin
  • Pedro Castro Gomez
  • Bandou Mitsugoro
  • Mao Zedong

alors que le tri correct, tenant compte de la position du nom de famille dans les différentes cultures, serait :

  • Bandou Mitsugoro
  • Pedro Castro Gomez
  • Mark R. Crispin
  • Mao Zedong
  • Nishimura Aiko

Les auteurs ont jugé que demander à implémenter un tel tri, internationalement correct, serait trop exiger. Le tri se fait donc seulement sur le nom de la boîte aux lettres.

Plusieurs critères peuvent être spécifiés, chacun servant de clé successive pour départager les ex-aequo. Par exemple, à la commande IMAP :

TAG145 SORT (SUBJECT FROM DATE) UTF-8 ALL

le serveur triera selon le sujet, puis selon l'expéditeur (à sujet identique), puis selon la date si les deux premiers critères donnent le même résultat.

La nouvelle commande THREAD, quant à elle, permet d'organiser les messages en fils (threads) de discussion, selon les références (la méthode normale, avec les champs References: et In-Reply-To:) ou selon le sujet (« rangement du pauvre », pour le cas où les références manquent). Notons qu'une telle méthode nécessite que les utilisateurs se servent du courrier correctement et, par exemple, ne volent pas les fils.

La section 4 décrit les réponses possibles à ces deux commandes et la section 5 donne la grammaire formelle en ABNF.

Désolé, je n'ai pas encore cherché quels serveurs IMAP mettaient en œuvre les nouvelles extensions mais elles sont apparemment largement déployées sur le terrain depuis de nombreuses années (l'extension SORT est annoncée dans la réponse CAPABILITY de beaucoup de serveurs IMAP, cf. section 7.2.1 du RFC 3501 pour cette réponse).


Téléchargez le RFC 5256

Version PDF de cette page (mais vous pouvez aussi imprimer depuis votre navigateur, il y a une feuille de style prévue pour cela)

Source XML de cette page (cette page est distribuée sous les termes de la licence GFDL)