SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

286 Plugins, 197 contribs sur SPIP-Zone, 284 visiteurs en ce moment

Accueil > Interactivité, échanges > Email, Newsletters, listes de diffusion > SPIP-Listes > SPIP-Listes-Cleaner > SPIP-Listes-Cleaner

SPIP-Listes-Cleaner

23 mai 2009 – par livier, Pierre ROUSSET – 26 commentaires

8 votes

SPIP-Listes-Cleaner est un plugin qui permet de nettoyer la base de donnée de SPIP-Listes en supprimant les emails non valide des mailing listes.

Il se connecte sur un compte pop ou imap et récupère les « failure delivery email », identifie l’email du destinataire et le supprime de la table spip_auteur_liste ainsi que de la table spip_auteur si il est en statut ’6forum’.

NÉCESSITE :
-  un hébergement avec php-imap d’activé.
-  le plugin CFG
-  le plugin SPIP-Listes
-  SPIP supérieur à 2.0.0

Le plugin peut être utilisé soit par SPIP-CRON (toutes les heures) soit par l’appel de la fonction action : spiplistescleaner (?action=spiplistescleaner).


SPIP-Listes-Cleaner is a plugin that allows you to clean the database SPIP-Listes removing invalid email mailing lists.

It connects to a POP or IMAP account and gets the « mail delivery failure », identifies the recipient’s email and removes it from spip_auteur_liste table and from spip_auteur table if it is status ’forum6’.

REQUIRES :
-  Hosting with the php-imap enabled.
-  CFG plugin
-  SPIP-Listes plugin
-  SPIP 2.0.0 or above

The plugin can be used by SPIP-CRON (called every hours) or by calling the function action : spiplistescleaner (?action=spiplistescleaner).


-  TRAC : http://zone.spip.org/trac/spip-zone/browser/_plugins_/spip-listes-cleaner
-  SVN : svn ://zone.spip.org/spip-zone/_plugins_/spip-listes-cleaner


Zip - 39.2 ko
SPIP-Listes-Cleaner v1.2
Zip - 39.3 ko
SPIP-Listes-Cleaner v1.1
Zip - 32.5 ko
SPIP-Listes-Cleaner v1.0

Voir en ligne : http://plugins.spip.net/spiplistesc...

Dernière modification de cette page le 27 mai 2015

Retour en haut de la page

Tout afficher

Vos commentaires

  • Le 25 janvier 2015 à 10:50, par Perline En réponse à : SPIP-Listes-Cleaner

    Bonjour,
    Ce plugin me paraît partir d’une excellente idée, mais comme il a déjà fait la remarque, un peu dangereux.
    Vu les divers problèmes évoqués dans ce forum, quelqu’un l’a-t-il récemment expérimenté ?
    Les versions ont-elles évolué suite aux remarques ?
    N’y a-t-il pas moyen de le changer un peu, en ne supprimant pas les mails dans les bases mais, par exemple :
    -  en modifiant l’auteur en « à la poubelle », qui ne le supprime pas de la base mais lui met simplement le statut poubelle,
    -  en envoyant un mail à l’expéditeur (que l’on renseigne dans SPIP listes), pour lui indiquer qu’il y a un problème avec tel ou tel mail. Au moins qu’il y a un problème, et le nec plus ultra sera de renvoyer le quel.
    Le dépannage du patron transformé est bien, mais quand on n’utilise pas de patron mais qu’on met un texte tel que ?
    Merci pour votre aide et le travail que vous donnez à la communauté :)

    • Le 25 janvier 2015 à 15:20, par livier En réponse à : SPIP-Listes-Cleaner

      Je ne suis pas sur que ce plugin soit toujours pertinent à utiliser. Vérifier les dates des dernières versions ... D’autres plugins ont été développés depuis.

      Maintenant, si Pierre viens me contredire en réaffirmant l’actualité du développement de ce plugin, je m’incline et lui présente mes excuses.

    Répondre à ce message

  • Le 22 février 2012 à 21:23, par eric En réponse à : SPIP-Listes-Cleaner

    Bonjour,

    J’ai testé ce plugin sur mon site création entreprise qio est toujours en version 1.8.2 car mon hébergeur OVH refuse l’envoi de mes newsletter car mes adresses abonnés sont erronées à plus de 5%. Or après balayage par ce plugin, le résultat reste le même. Quelqu’un aurait une idée de l’origine du problème ?

    Merci d’avance.

    • Le 22 février 2012 à 21:34, par livier En réponse à : SPIP-Listes-Cleaner

      Utiliser une solution de contournement.http://www.spip-contrib.net/SPIP-Li...

    • Le 22 février 2012 à 21:40, par livier En réponse à : SPIP-Listes-Cleaner

      M... Je peux pas rééditer mon message précédent
      le lien :

      http://www.spip-contrib.net/SPIP-Listes-Cleaner#forum433870

    • Le 3 avril 2013 à 18:47, par AlainF En réponse à : SPIP-Listes-Cleaner

      Bonjour,
      Info pour ceux dont les + de 5% d’erreurs ont été bloqués par OVH,
      la méthode à suivre est la suivante :
      -  dans votre compte OVH, partie Hébergement
      -  dans "autres services" choisir "suivi emails automatisés"
      -  suivant votre situation => "débloquer l’envoi des mails" et/ou "purger les messages"

      votre situation devient :
      « État du compte
      Statut : Envois acceptés »

      Cordialement, Alain

    Répondre à ce message

  • Le 7 décembre 2010 à 08:04, par Gil FOURGEAUD En réponse à : SPIP-Listes-Cleaner

    Bonjour,

    J’ai le message suivant :

    "Certificate failure for mail.monnomdedomaine.fr : self signed certificate : /C=US/ST=Virginia/L=Herndon/O=Parallels/OU=Plesk/CN=plesk/emailAddress=info@plesk.com

    Et je n’utilise pas ssl ..

    Merci de m’aider si vous le pouvez (et si vous le voulez)

    Répondre à ce message

  • Le 15 octobre 2010 à 14:28, par Julien Falconnet En réponse à : SPIP-Listes-Cleaner

    Voilà un plugin qui est très prometteur, et qui l’énorme avantage d’exister.
    Effectivement, s’il a trop de faux positifs c’est une catastrophe (qui a envie de perdre des clients qui existent réellement ?), mais d’expérience c’est inévitable, dès que l’on veut automatiser et vue la variabilité des réponses des serveurs.

    Pour la question que tout le monde se pose : Quels sont les mails qui provoquent la suppression d’un mail ?
    J’ai jeté un coup d’oeil sur le code (qui est très propre au passage, merci pour la lisibilité), et il semble que tout ce passe là :

    1. if (stristr($header, "report-type=delivery-status;") ||
    2. stristr($header, "Subject: failure notice") ||
    3. stristr($header, "Failed-Recipient") ||
    4. stristr($header, "X-Failed-Recipient")) {

    Télécharger

    Ce petit test sur le header va permettre de récupérer les emails qui vont servir de base à la suprression.

    Ensuite l’algo s’organise comme suit :
    -  récupération de l’adresse email
    -  récupération de l’utilisateur SPIP correspondant à cette adresse
    -  suppression de la table auteur_liste
    -  suppression de la table auteur_elargis.
    Selon lecritere $config[’option_delete_row’]
    -  soit on élimine l’auteur de la base (spip_auteur)
    -  soit on bascule l’auteur en statut 5poubelle s’il est en statut 6forum

    En conclusion
    Effectivement j’ai bien peur que ce plugin ne dégage TOUS les retours que ce soit des soft ou des hard bounce, c’est à dire aussi bien les adresse inexistantes que des quota dépassé ou des indications de spam ou des absences pour congé.

    Donc en l’état il me parait dangereux. Mais comme j’en ai besoin (et qu’il est en GPL), je vais devoir le modifier, si ça tente quelqu’un de m’accompagner.

    Par contre, est ce que quelqu’un aurait une bonne culture de la gestion des soft/hard bounce mail dans l’assemblée ? La mienne date un peu...

    • Le 15 octobre 2010 à 16:20, par livier En réponse à : SPIP-Listes-Cleaner

      Merci de vouloir te pencher sur l’amélioration de ce plugin, inutilisable en l’état.
      voir la solution que j’ai adapté :
      http://www.spip-contrib.net/SPIP-Listes-Cleaner#forum433870

      Pour répondre à ta question (de mémoire) :
      Mailman met des points en cas de retour de courriel avec erreur : 1 point pour erreur définitive et 0.5 pour des erreurs temporaires. Lorsqu’un correspondant arrive à un certain nombre de points (configurable) il peut être suspendu ou supprimé de la base. Au bout d’un certain temps (configurable) sans retour en erreur, le nombre de points d’un correspondant est remis à zéro (parce qu’il a recommencé à ouvrir ces courriels après les vacances par exemple). Il me semble qu’il y a encore un autre paramètre de configuration qui échappe présentement à ma mémoire.

      Proposition :
      Au moins dans un premier temps ou en option, rendre tout ceci manuel.
      Enregistrer les retours en erreurs dans une table en attribuant des points celon la cause
      Faire une page qui affiche la liste des « auteurs » ayant des points de retour d’erreur, permettre de consulter les enregistrements indiquant la cause de chaque et donner un lien rapide vers les différentes actions à envisager (suppression de la table, mise de l’auteur à la poubelle, désinscription des listes de diffusion, intervention pour corriger les courriel de l’auteur ou ses autres informations.
      Il faudrait aussi que cette page permette de gérer (voir et entreprendre des actions) les auteurs qui ... /n’ont pas de format de réception/ ont tel format de réception/ n’ont pas d’inscription sur une liste/ ont tel ou tel statut ...

      Avec cette page on aurais plus à gérer nos retours d’erreurs après chaque envoi sur la liste et nos actions manuelles seraient faciles à décider et à faire.

      Pour automatiser cela il pourrait être programmable que telle action
      (annulation du format de l’envoi, désinscription des listes, mise de l’auteur à la poubelle ou suppression de la base [ au choix]) soie entreprise automatiquement à l’atteinte d’un certain nombre de points (en dedans d’une certaine période, paramétrable aussi).

      J’espère que ma proposition est claire et raisonnablement facile à coder (pas pour moi en tout cas). Questions acceptée ici ou en privé.
      Encore merci aux codeurs qui mettent tout cela en ordre de fonctionnement et vive la GPL qui permet ces enrichissements ;-)

    Répondre à ce message

  • Le 14 juillet 2010 à 15:08, par joz En réponse à : SPIP-Listes-Cleaner

    Bonjour,

    je déconseil l’installation de ce plugin, il désactive beaucoup trop de souscriptions de newsletter. A mon avis il ne rempli pas bien sa tâche.

    joz

    • Le 1er septembre 2010 à 18:24, par bruno31 En réponse à : SPIP-Listes-Cleaner

      Bonjour

      Apparemment, l’auteur de ce plugin ne répond plus ?
      Et il n’y aurait aucune documentation sur les spécifications ?

      Comme beaucoup d’autres, je me pose des questions :
      -  Ce plugin ne va t’il pas supprimer des inscrits partis en vacances ?
      -  ou qui n’ont pas eu le temps de vider leur BAL ?
      -  ou dont le serveur de messagerie est temporairement HS ?

      Un utilisateur de ce plugin pourrait-il fournir ces quelques infos ?

    • Le 1er septembre 2010 à 18:44, par livier En réponse à : SPIP-Listes-Cleaner

      Au début du plugin j’avais contacté l’auteur parceque je n’arrivais pas à le faire fonctionner.
      Il semble qu’il aie développé cela pour un besoin spécifique sans faire un système de gestion des rebonds sophistiqué comme mailman par exemple. Le risque de désinscription excessivement massive est don bien réel, vous êtes prévenus.

      Solution perso :

      J’ai introduit le code suivant dans le squelette du patron de spiplistes :

      1. <a href="http://monsite.tld/ecrire/?exec=auteur_infos&id_auteur=_AUTEUR_ID_AUTEUR_&edit=oui"> . </a>

      Quand un serveur me renvoie un message d’erreur en renvoyant une copie du message (cas général) cela me donne un lien discret vers la page de gestion de l’inscrit concerné.

      Toute autre idée ou approche bienvenue ;-)

    • Le 1er septembre 2010 à 19:15, par bruno31 En réponse à : SPIP-Listes-Cleaner

      Bonjour livier

      Merci pour cette astuce. C’est pas automatique mais simple et efficace.

      Je ne comprends pas comment fonctionne : _AUTEUR_ID_AUTEUR_
      C’est une balise propre au patron ?

      Moi, j’ai mis :

      1. <a href="#URL_SITE_SPIP/spip.php?page=abonnement&d=#ENV{cookie_oubli}"> . </a>
    • Le 1er septembre 2010 à 19:44, par livier En réponse à : SPIP-Listes-Cleaner

      Les patrons de spip-listes ont une syntaxe particulière pour certaines variables

      _AUTEUR_ID_AUTEUR_ est une inspirée de ce que j’ai vu dans les patrons de spip-listes ... cela semble adapté à la situation car cela marche ;-)

      As tu testé et confirmé le fonctionnement ce que tu as mis toi même ?

    • Le 1er septembre 2010 à 19:52, par bruno31 En réponse à : SPIP-Listes-Cleaner

      J’ai testé ta solution avec _AUTEUR_ID_AUTEUR_ et cela n’a pas marché.

      Ma solution semble fonctionner. Mais je n’en suis pas sûr à 100%.
      Je confirmerai dans quelques jours après l’envoi de ma lettre d’infos.

    Répondre à ce message

  • Le 30 juin 2010 à 11:27, par Haqqtiviste En réponse à : SPIP-Listes-Cleaner

    bonjour

    avec spip 2.1 et Zpip, ça ne fonctionne pas, j’indique un imap à gmail sur lequel je reçois les messages d’erreur

    le plugin (avec ?action...) mouline 3 jours puis rien...
    merci

    Répondre à ce message

  • Le 14 mai 2010 à 19:15, par chris En réponse à : SPIP-Listes-Cleaner

    Bonjour,

    J’ai bien installé le plug, paramétré avec CFG, mais comment je fais pour lancer l’opération de nettoyage ?
    J’ai cherché des infos sur SPIP CRON, mais que dois-je faire avec cette balise, ou comment faire pour lancer la fonction spiplistescleaner (?action=spiplistescleaner).

    merci de votre aide

    Répondre à ce message

  • Le 22 février 2010 à 13:03, par joz En réponse à : SPIP-Listes-Cleaner

    Bonjour,

    j’ai installé votre plugin, mais malheureusement je recois un erreur :

    TLS/SSL failure for pop.monserveur.com : SSL negotiation failed

    j’ai configuré dans cfg comme dans mon thunderbird (où l’adresse fonctionne), avec
    Securité : none
    Option de sécurité : no valdate certificat

    Est-ce que vous savez pourquoi je recois cet erreur ? Puisque je n’employe pas TLS ni SSL ..

    Des idées qu’est-ce qui coince ?
    Merci pour vos lumières

    joz

    Répondre à ce message

  • Le 16 novembre 2009 à 12:45, par joz En réponse à : vacances ?

    Bonjour,

    avant d’installer ce plugin je voudrais bien savoir comment le Listes-Cleaner traite les réponses automatiques genre « je ne reçois pas votre message car je suis abtent du bureau pour 2 semaines ». Est ce que Listes-Cleaner distinge ce genre de réponse d’un réponse « failure notice » ou « Delivery Status Notification (Failure) » ?

    Je ne veux pas risque que mes abonnés ne peuvent pas partir tranquillement en vacances sans risquer d’être irradié de la mailing liste ;-)

    merci pour l’éclaircissement
    joz

    Répondre à ce message

  • Le 5 juin 2009 à 04:51, par Pierre ROUSSET En réponse à : SPIP-Listes-Cleaner

    Voilà tu es co-auteur de l’article, c’est avec grand plaisir que j’accepte ton aide. Par contre étant donné que j’ai développé ce plugin pour une boite Australienne dans laquelle je travail actuellement, il est important d’essayer d’avoir une copie exacte de la doc en Anglais (j’espère que cela n’est pas trop une grosse contrainte pour toi).

    Au moment ou j’écris le chargement automatique du plugin n’est pas passé à la version 1.2, Je reverrai cela demain ou la semaine prochaine ...

    => Peu être un bug ? Je n’ai eu aucun problèmes de mon coté.

    Le risque que les messages soient relevés par notre logiciel de messagerie avant d’avoir été traités par ton plugin existe toujours il me semble.

    => Je ne vois aucune solution viable à intégrer dans le plugin pour éviter cela. La 1re solution comme tu l’as dit est de faire un compte rebond dédié à cela. La deuxième est de paramétrer le client pop pour qu’il laisse les mails sur le serveur en attendant qu’ils soient supprimé sur le client (option disponible dans thunderbird par exemple).

    J’ai pas encore pu tester l’option « la méthode de suppression des auteurs » on en reparlera au besoin.

    => dans les deux méthodes les tables spip_auteurs_listes et spip_auteurs_elargis sont nettoyé, la seul différence est dans spip_auteurs où les enregistrements ne sont pas supprimé mais marqué « 5poubelle » en statu.

    Ton nettoyage de la table spip_auteurs_elargis va t’il aussi enlever les scories qui y sont actuellement ou juste pour les prochains nettoyages ?

    => Le nettoyage de la table spip_auteurs_elargis supprime bêtement les enregistrements lié a l’id d’un auteur. Mais j’ai peur de ne pas avoir compris ta question.

    L’utilisation du plugin pour nous est sur le long terme. Le « once shot » qui a motivé son développement initial ne correspond pas au besoin de maintenir une base d’abonnés sur le long terme. Le principe de la riposte graduée est préférable, Mailman offre une approche exemplaire sur cette question, tu peux t’en inspirer.

    => Que penses tu si je rajoute une option avec le nombre de bounces mail minimum reçu avant de supprimer l’auteur ?

    Mais le pire c,est que j’ai pas détecté si il m’avait bien fait le travail suite à mon dernier envoi. Je sais pas trop ou controler quoi pour savoir ce qui a coinçé. Pourrait il y avoir des points de contrôle ? un déroulement étape par étape du processus, un documentation plus précise pour que l’on s’y retrouve ... ?

    => Le plugin est sensé écrire dans les logs de spip mais j’ai remarqué que cela ne fonctionnait que quand SPIP-Listes-Cleaner est appelé par le CRON. Comment vois-tu l’implémentation de cette fonctionnalité ? Écrire le résultat de chaque étapes en html lors de l’appel de la fonction action serrait-elle suffisante ? Je n’ai malheureusement pas beaucoup de temps pour écrire de la documentation, je surf sur plein de projet en même temps, mais je reste ouvert à toutes évolutions.

    • Le 5 juin 2009 à 21:01, par livier En réponse à : SPIP-Listes-Cleaner

      Réponse rapide pour te permettre d’avancer, je n’aurai pas plus de temps avant la semaine prochaine.

      1.2 SVN [28993] = version maintenant installée automatiquement.

      Dans la page / ?exec=cfg&cfg=spiplistescleaner
      je ne vois pas les nouvelles options.

      Oui, il faut bien faire attention et configurer très bien au niveau du serveur de courriel pour que ça marche. >> mode d’emploi à rédiger.

      Y a t’il une possibilité de supprimer tous les auteurs absents de la table spip_auteurs et encore présents dans spip_auteurs_élargis ?

      C,est peut être pas mal de boulot, mais si on pouvait déclencher manuellement ton plugin puis suivre les étapes de son foctionnement, cela aiderais à le comprendre et à débugger des config qui dépendent de la config plugin/serveur. Idéalement on pourrait voir :
      -  l’établissement de la connexion avec le serveur
      -  les courriels qu’il y trouve
      -  ceux qu’il identifie comme étant à traiter
      -  l’action qu’il propose d’entreprendre ...
      -  la validation de ces actions pourrait être manuelle en période de test, automatisée ensuite.
      ce suivi serait bien placé dans les pages de gestion du plugin.

      Chaque bounce identifié pourrait donner des points, (idéalement plus de points si l’adresse est inconnue du serveur que la boite pleine). Si un courriel arrive avant ce maximum atteint, réduction ou remise à zéro des points. A un certain nombre de points, adresse supprimée ou mise à la corbeille (avec idication de la date et de la cause de la mise au panier).

      Il manque plus qu’une bonne page de suivi des auteurs pour identifier les auteurs bannis, donner la possibilité de les récupérer ou de les jetter, vérifier ceux qui ont des points de bannissement ....

      Mais j’imagines que c’est plus facile à demander qu’a programmer

      Je te reviens la semaine prochaine
      Merci pour le boulot

    • Le 13 novembre 2009 à 11:03, par pamillet En réponse à : SPIP-Listes-Cleaner

      pour la cohérence entre auteurs et auteurs_élargis, problème que j’ai rencontré aussi...

      je ne suis pas un pro de sql, mais un truc du genre

      delete * from spip_auteurs where not in (select * from `spipcont`.spip_auteurs_élargis where...)

      devrait marcher...

      c’est ce que j’ai fait une fois, mais je ne suis pas sûr de la syntaxe exacte...

      pam

    Répondre à ce message

Répondre à cet article

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Mailsubscribers

    16 janvier 2013 – 274 commentaires

    Ce plugin permet de gérer les inscriptions (ou abonnements) à la diffusion de contenu par email. Mailsubscribers permet de gérer les inscriptions par Opt-in simple ou double et la désinscription par URL. Ce plugin gère également plusieurs listes (...)

  • noiZetier v2

    9 novembre 2012 – 36 commentaires

    Le noiZetier offre une interface d’administration permettant d’insérer au choix des éléments modulaires de squelettes (noisettes) et de les ajouter ainsi à ses squelettes. Compatibilité La version 2 du noizetier fonctionne sous SPIP 3. Elle est (...)

  • cirr : plugin « rédacteur restreint »

    29 octobre 2010 – 60 commentaires

    Ce plugin « cirr : rédacteur restreint » permet d’affecter des rubriques aux rédacteurs et modifie les droits afin qu’un rédacteur restreint (ou un administrateur restreint) voit dans l’espace privé uniquement les rubriques qui lui sont affectées (et leur (...)

  • Un retour d’expérience d’utilisation de Formidable

    26 octobre – commentaires

    Il s’agissait de créer un formulaire d’inscription à un évènement modérer les inscriptions dans le privé publier les inscriptions dans le public Nous avons discuté de cette présentation lors de l’apéro SPIP du 15 février 2016 à la Cantine (...)

  • Métas +

    3 décembre – 14 commentaires

    Améliorez l’indexation de vos articles dans les moteurs et leur affichage sur les réseaux sociaux grâce aux métadonnées Dublin Core, Open Graph et Twitter Card. Installation Activer le plugin dans le menu dédié. Dans le panel de configuration, (...)

Ça spipe par là