Internet Message Access Protocol

Norme utilisée par Up ! Mail

La norme Internet Message Access Protocol (IMAP) permet de manipuler les boîtes aux lettres ainsi qu'envoyer un courrier électronique d'un client vers un serveur ou qu'en recevoir depuis un serveur vers un client.

La communication au format Internet Message Access Protocol (IMAP) s'effectue sur un flux dont le transport est TCP-IP. Ce flux est texte ou binaire.

La communication est à l'initiative du client : il pose une ou plusieurs requêtes et le serveur répond en asynchrone. La conversation n'est pas synchrone mais différée. Le port d'écoute du serveur est usuellement 143.

Les lignes d'une requête commencent par une étiquette les identifiants de façon unique étant donné que la conversation est asynchone entre le client et le serveur.

Les lignes de la requête sont terminées par les caractères retour chariot \r et retour chariot \n.

La dernière ligne de la commande APPEND est suivie par le contenu du courrier électronique au format Rfc 822.

Voici le format des données :

La réponse à la requête est une ou plusieurs lignes de texte comportant :

Les lignes de la réponse sont terminées par les caractères saut de ligne \r et retour chariot \n.

Verbes d'Internet Message Access Protocol

Verbes de FETCH ou UID FETCH

Verbes de SEARCH ou UID SEARCH

Verbes de STORE ou UID STORE

Syntaxe d'une conversation au format Internet Message Access Protocol

Commandes : Commande : ListeProprietes : ListeProprietes2 : Propriete : CommandePartiel : PageDeCodes : ListeDeCommandesRecherche : CommandeRecherche : CommandePropriete :

Exemple d'une conversation au format Internet Message Access Protocol

Cette conversation comporte que le flux de contrôle vu du client :

ID00001 CAPABILITY\r\n ID00002 LOGIN MonUtilisateur MonMotDePasse\r\n ID00003 SELECT "INBOX" "*"\r\n ID00004 LIST "INBOX" "*"\r\n ID00005 FETCH 1:3 RFC822\r\n ID00006 APPEND (\Seen) "documents" {128}\r\n ...\r\n ID00007 LOGOUT\r\n ID00008 CLOSE\r\n