Comment fait TB pour obtenir le message-id d'un envoi ?

Vous cherchez une alternative viable et sécurisée pour votre courrier ? Une conjuration s'est abattue sur vous et vous ne réussissez pas à trouver réponse satisfaisante à propos de Mozilla Thunderbird ? Cliquez donc par là…

Modérateur : J2m06

christophe charron
Gecko
Messages : 73
Inscription : 02 févr. 2006, 19:36

Comment fait TB pour obtenir le message-id d'un envoi ?

Message par christophe charron »

Bonjour,
J'ai noté, en observant les entêtes des courriels envoyés par TB, que figurait le "Message-ID" renseigné par le serveur SMTP (j'imagine) utilisé pour envoyé le courriel. Quelqu'un a-t'il connaissance de la manipulation faite pour l'obtenir ? En effet, je me suis aperçu, qu'avec mon programme en php permettant d'envoyer des mails, à l'aide de la fonction mail(), dès lors que j'alimentais moi-même le message id, une grande partie des destinataires considérait mon envoi comme du spam. Si je l'enlève, plus de souci. J'ai donc fait (pompé et arranga à ma sauce) un petit script, très simple, pour dialoguer avec le serveur smtp via les sockets. Il fonctionne dans la mesure où il envoie correctement mes courriels mais je n'ai nulle part trouvé dans la rfc 821 http://abcdrfc.free.fr/rfc-vf/rfc821.html de commande permettant de demander au serveur l'id qui m'est indispensable pour suivre une conversation !! Donc comment TB procède-t'il et est-il envisageable d'appliquer ce procédé à ma communication via socket.

Pour info, le script tout simple en php

Code : Tout sélectionner

<?php
header('Content-type: text/plain; charset=utf-8');
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); // Date in the past
$eol="\n";
$today = date("D M j G:i:s T Y");
$from="<moi@orange.fr>";
$to="<moi@gmail.com>";
$reply="<meserreurs@christophe-charron.org>";
$subject="Test 09 socket local orange -> $today";
$msg=$subject;
mailto($from , $to , $reply , $subject , $msg); 
function mailto($from, $to, $reply, $subject, $msg) { 
  echo "Envoi d'un mail à $to";
  echo $eol; 
  $headers = "MIME-Version: 1.0\r\n"; 
  $headers .= "Content-type: text/plain; charset=utf-8\r\n"; 
  $headers .= "Reply-To: $reply\r\n"; 
  $headers .= "X-Mailer: Mes mimines"; 
  $connection = fsockopen ("smtp.orange.fr", 25, &$errno, &$errstr, 1); 
  if (!$connection) { 
    echo "$errstr ($errno) $eol"; 
  } else { 
    $res1=fgets($connection, 256); 
    if(substr($res1, 0, 3) != "220") {echo "1 Ouverture error : $res1 $eol";} else {echo "1 Ouverture ok : $res1 $eol";} 
    fputs($connection, "HELO localhost\n"); 
    $res2=fgets($connection, 256); 
    if(substr($res2, 0, 3) != "250") {echo "2 HELO error : $res2 $eol";} else {echo "2 HELO ok : $res2 $eol";}
    fputs($connection, "MAIL FROM: $from\n"); 
    $res3=fgets($connection, 256); 
    if(substr($res3, 0, 3) != "250") {echo "3 MAIL error : $res3 $eol";} else {echo "3 MAIL ok : $res3 $eol";}
    fputs($connection, "RCPT TO: $to\n"); 
    $res4=fgets($connection, 256); 
    if(substr($res4, 0, 3) != "250") {echo "4 RCPT error : $res4 $eol";} else {echo "4 RCPT ok : $res4 $eol";}
    fputs($connection, "DATA\n"); 
    $res5=fgets($connection, 256); 
    if(substr($res5, 0, 3) != "354") {echo "5 DATA error : $res5 $eol";} else {echo "5 DATA ok : $res5 $eol";}
    fputs($connection, "TO: $to\nFrom: $reply\nSubject:$subject\n$headers\n\n$msg\n.\n"); 
    $res6=fgets($connection, 256); 
    if(substr($res6, 0, 3) != "250") {echo "6 TO error : $res6 $eol";} else {echo "6 TO ok : $res6 $eol";}
    fputs($connection, "QUIT\n"); 
    $res7=fgets($connection, 256); 
    if(substr($res7, 0, 3) != "221") {echo "7 QUIT error : $res7 $eol";} else {echo "8 QUIT ok : $res1 $eol";}
    fclose ($connection);
  } 
  if(substr($res1, 0, 3) == "220" && substr($res2, 0, 3) == "250" && substr($res3,0, 3) == "250" && substr($res4, 0, 3) == "250" && substr($res5, 0, 3) == "354" && substr($res6, 0, 3) == "250" && substr($res7, 0, 3) == "221") echo "message envoyé correctement$eol"; 
} 
?>
Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1.7) Gecko/20070914 Firefox/2.0.0.7
Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Ahrefs [Bot], Google [Bot] et 24 invités