Vous êtes attentif à la réputation de vos IPs d’envoi d’e-mails mais vous n’avez pas envie de vous rendre sur Senderscore.org pour vérifier vos IPs une par une ?
Pour automatiser ce traitement, déclarons une fonction qui prend par exemple en paramètre une IP et vous renvoie le SenderScore de celle-ci.
- On commence par déclarer la variable $score qui accueillera le résultat final.
- Ensuite, il faut inverser l’IP pour transformer par exemple 1.2.3.4 en 4.3.2.1
- On récupère les enregistrements DNS de 4.3.2.1.score.senderscore.com, qui vont ressembler à quelque chose comme ceci : Array ( [0] => Array ( [host] => 4.3.2.1.score.senderscore.com [class] => IN [ttl] => 9 [type] => A [ip] => 127.0.4.99 ) )
- Le tableau associatif renvoyé contient un index « IP ». Le score est ce qui se trouve sur le dernier octet de l’IP 127.0.4.99… soit 99. Il suffit de nettoyer un peu la chaîne et de retourner le score.
- Répéter avec autant d’IPs que nécessaire.
function checkScore($ip) { //on initialise l'IP qui va accueillir le score $score = '--'; //on inverse l'IP pour transformer 1.2.3.4 en 4.3.2.1 $parts = explode('.', $ip); $parts = array_reverse($parts); $ip_reverse = implode('.', $parts); //soumission de l'IP inversée et récupération d'un tableau associatif $dns_record = dns_get_record($ip_reverse.'.score.senderscore.com'); //si le tableau n'est pas vide, cela signifie qu'on a un score lié à cette IP et on le récupère après nettoyage de la chaîne, sinon cela signifie que Return Path n'a pas (encore ?) constaté de trafic sur votre IP if(!empty($dns_record)) $score = str_replace('127.0.4.', '',$dns_record[0]['ip']); return $score; }
Pour aller plus loin…
Vous pouvez par la suite automatiser cette tâche via un CRON pour vous envoyer par e-mail tous les matins les scores de vos IPs. Egalement pour un résultat visuel, pourquoi pas créer une fonction qui colorise le score obtenu (de vert à rouge, comme sur le site de Return Path). Il s’agit ici d’un début de tableau de bord « délivrabilité » pour le monitoring de vos IPs à compléter avec des informations comme les blacklists ou d’autres services équivalents à SenderScore.
Mike
Oct 30, 2014 -
Les scores que j’obtiens ne correspondant pas à ceux que j’obtiens via le site internet de senderscore, une idée de pourquoi ?
Merci
Mathieu
Nov 4, 2014 -
Bonjour Mike,
Les différences sont-elles grandes ? Comme il s’agit de requêtes DNS, comme souvent avec les DNS il est possible qu’il y ai un petit délai entre le moment où l’enregistrement est changé et le moment où celui-ci apparaît réellement de votre côté.
Mathieu.