Mauvaises dates d'emails IMAP récupérés dans Mail

Le Gognol

Dompteur de cordes
Club iGen
20 Avril 2001
3 927
327
49
Paris - Rex Club
gognolcommunication.online.fr
Tiens, ça fait bien longtemps que j'ai pas ouvert un sujet pour poser une question ! :rateau:

Suite à une fausse manipulation de ma part, un certain nombre de messages (de 2 comptes en IMAP, d'une part MobileMe et de l'autre Free) ont été supprimés de Mail sur mon Mac. Pas de panique, j'ai des sauvegardes, et en plus ceux en ligne n'ont pas été touchés. J'ai donc entrepris plusieurs façons de les récupérer :
- copie du dossier sauvegardé sur un disque /User/Library/Mail à la place de l'autre.
- récupération depuis Time Machine des comptes concernés.
- suppression des comptes dans Mail et recréation de ceux-ci pour forcer la récupération depuis les serveurs.
- création de ces comptes dans Mail sur une autre machine vierge fraîchement réinstallée et récupération depuis les serveurs.

Chacune de ces opérations s'est soldée par le même résultat : tous mes mails sont bien récupérés mais un certain nombre d'entre eux, aussi bien anciens que plus récents, sont datés du moment de la récupération, à la place de leur date d'origine. Pourtant ces informations sont bien correctes sur les différents supports de sauvegardes et en ligne. Ma question est donc simple : comment faire pour que Mail accepte enfin de dater ces messages par leur VRAIE date ! Merci par avance... :cool:

'+
 
Pour voir s'il s'agissait d'un bug de Mail ou non, j'ai testé Thunderbird avec l'un des comptes. Même problème...



---------- Nouveau message ajouté à 18h09 ---------- Le message précédent a été envoyé à 16h29 ----------

Bon j'ai fait une trouvaille intéressante... Il y a deux informations que l'on peut afficher dans Mail concernant la date des messages : la "date d'envoi" et la "date de réception". Normalement les 2 sont censées être identiques. En ce qui concerne mon problème, la "date d'envoi" est fausse (c'est celle de l'import), tandis que la "date de réception"est restée juste. Du coup, si dans Mail je choisis d'afficher cette colonne plutôt que l'autre, le problème n'est plus visible. Cependant, ce serait pas mal de trouver une sorte de script capable de remplacer la "date d'envoi" erronée par la "date de réception" qui est juste...

[edit]
J'ai trouvé un script ici :
http://www.gabrielserafini.com/blog/2006/12/18/fixing-mailapps-imap-date-problem-mostlygeek/

Je ne suis pas sûr d'avoir compris comment l'utiliser et si l'effet sera le bon, y'a-t-il un spécialiste dans la salle ? :D

'+
 
Dernière édition:
I'm back ! :D

Apparemment il est possible de modifier les mails manuellement avec un éditeur de texte. Sauf que je ne trouve pas à quel endroit et sous quelle forme les informations de dates sont mentionnées... Si quelqu'un peut me montrer ça... :cool:

'+
 
Bonjour

Les messages reçus sont enregistrés sous forme de fichiers .emlx , dans des dossiers du type :

(maison)/Bibliothèque/Mail/(nom du compte)/INBOX.mbox/Messages/

Dans ces fichiers, la date figure en toutes lettres à la suite du mot-clé « Date: », et peut être modifiée manuellement à l'aide d'un éditeur de texte. Toutefois, il est important de respecter strictement le format d'origine (sauts de ligne, espaces, virgules, abréviations, langue).

Par exemple :
Bloc de code:
Date: Sun, 11 Nov 2010 12:22:30 +0100
Bloc de code:
Date: Wed, 5 May 2011 11:09:36 +0200

Pour les jours, du samedi au vendredi :
Sat Sun Mon Tue Wed Thu Fri

Pour les mois, de janvier à décembre :
Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec

L'heure est au format hh:mm:ss (heures, minutes et secondes sur deux chiffres chacune).

Le dernier champ correspond au fuseau horaire dans lequel l'heure est comptée. «+0100» (= +1 heure) et «+0200» (= +2 heures) correspondent respectivement à l'heure d'hiver et l'heure d'été en France.
 
Dernière édition:
Merci ! :cool: Avant d'envoyer ma demande j'avais regardé rapidement et j'ai l'impression (ou j'ai mal cherché) que certains messages ne comportaient pas cette information (d'où peut être le problème de tri). Est-ce possible ? D'autre part, cette date dans la logique de Mail est elle la date d'envoi ou la date de réception ? Est-il possible de changer l'une ou l'autre selon ses besoins ?

'+
 
Dernière édition:
J'ai oublié de préciser que c'est la date d'envoi qui figure dans le champ « Date: ».

Quant à la date de réception, c'est celle précisée à la fin du champ « Received: » qui est utilisée, quand il y en a un (ou plusieurs) présent dans l'entête du message.

Toutefois, il est parfaitement possible que la date ne soit pas incluse dans le message. En effet, elle est fournie par le système de l'expéditeur (envoi), ou bien rajoutée par les serveurs de messagerie traversés (réception). Dans l'absolu un message pourrait très bien être acheminé sans que ni l'une ni l'autre de ces informations n'y figure, du fait d'un défaut de fonctionnement ou de configuration.
 
Ok merci ! Donc si ces dates n'y figurent pas, et que je les ajoute, mon problème devrait être résolu non ? On peut les mettre où on veut dans le fichier ?

'+
 
Je n'ai jamais essayé d'ajouter une date à la main a posteriori, donc je ne sais pas si cela peut être efficace ou au contraire gênant. Il faudrait essayer.

En revanche, la date doit impérativement être ajoutée dans l'entête du message. Cette entête est la partie constituée de toutes les lignes qui précèdent la première ligne vide du fichier. Les lignes suivantes sont considérées comme faisant partie du corps du message.

L'entête étant remplie du bas vers le haut durant le transfert (les lignes les plus récentes précèdent les plus anciennes dans le fichier), il serait peut-être préférable de mettre le champ « Received: » vers le début et le champ « Date: » plutôt vers la fin de l'entête.