2 votes

Sans télécharger le contenu réel de chaque message, existe-t-il un moyen de déterminer si un courriel sur deux serveurs IMAP est le même ?

J'essaie de migrer du courrier entre deux serveurs IMAP et je veux m'assurer qu'en cas de nouvelle tentative, un message en double ne sera pas migré à nouveau. Ce que j'aimerais, c'est interroger chaque serveur IMAP pour obtenir quelque chose d'équivalent au md5 de l'email brut, afin de pouvoir comparer les emails qui ont été migrés et ceux qui ne l'ont pas été.

Est-ce que quelque chose comme cela est possible dans IMAP4 ? Je vois l'UID, mais il semble qu'il soit unique au serveur, et pas vraiment un identifiant unique du contenu.

2voto

Seth Points 18568

Les Message-IDs devraient être uniques, mais ce n'est pas garanti du tout, et il y a beaucoup de programmes de messagerie cassés sur la planète. Si vous devez être absolument certain, vérifiez vous-même la somme de contrôle. Dans les autres cas, l'identifiant de message peut et doit être suffisant.

2voto

Shane Madden Points 112034

Il reste encore un peu de téléchargement à faire, mais essayez d'aller chercher BODY.PEEK[HEADER] du message pour n'obtenir que la section de l'en-tête, et comparez la Message-ID en-tête.

1voto

Coding Gorilla Points 1928

Vous voudrez probablement vérifier la valeur de l'en-tête "Message-ID". Ce n'est pas tout à fait la même chose qu'un MD5 de l'ensemble du message, mais chaque message unique devrait avoir une valeur d'ID unique ; on peut donc supposer que si vous voyez un ID de message sur le serveur de destination, le message a déjà été copié.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X