Cron pour purger votre install multi utilisateurs de TinyTinyRSS

Ce script intervient suite à une demande Luc de Framasoft, qui gère le serveur de Framanews. Voici son cahier des charges :

Un plugin qui regarde les utilisateurs non connectés depuis plus de 3 mois, qui leur envoie un mail leur disant en substance : « Nous vous remercions de l'attention que vous avez porté à Framanews en vous inscrivant, mais vous ne vous êtes pas connectés depuis trois mois, et nous aurions besoin d'un peu de place. Si vous ne vous connectez pas d'ici 3 jours, nous fermerons votre compte. Vous recevrez encore 2 mails, et un 3e mail viendra confirmer la fermeture de votre compte. Vous trouverez ci-joint l'export OPML de vos flux. Ce fichier vous permettra de réimporter vos flux dans un lecteur de flux RSS.

Amicalement, toussa.»

Avec l'export OPML en pièce jointe à chaque mail. Et au bout du dernier mail, bam, ça dégage le compte.

Si la personne se connecte, ça annule le compteur.

Le code se trouve sur mon compte github : ttrss-purge-accounts.

Tout est paramétrable dans common.php :

INACTIVE_FOR : délai maximal pour notifier l'utilisateur (en jours). Par défaut, 90.
COUNTER_PATH : chemin où on va stocker le compteur de chaque utilisateur. 
WARNING_NUMBERS : nombre d'emails de prévention envoyés avant suppression. Par défaut, 3.
BETWEEN_CHECK : délai (en jours) entre deux emails à envoyer à un utilisateur. Par défaut, 2. 
EMAIL_ADMIN : email d'envoi. 
WARN_EMAIL_SUBJECT : sujet du mail de prévention. 
WARN_EMAIL_CONTENT : contenu du mail de prévention. 
DELETE_EMAIL_SUBJECT : sujet du mail de suppression. 
DELETE_EMAIL_CONTENT : contenu du mail de suppression.

La liste des choses qu'il reste à faire :

  • transformer ce script en plugin Tiny Tiny RSS. En l'état, le script fonctionne, mais n'est pas user friendly pour les utilisateurs de TTRSS. Le convertir en plugin permettrait à un plus grand nombre de l'utiliser.
  • supprimer le fichier de compteur quand l'utilisateur se connecte entre deux notifications.
  • supprimer les fichiers de compteur et d'export quand on a envoyé le mail de suppression.
  • joindre le fichier OPML à chaque envoi et pas seulement lors du mail de suppression.

Toute personne souhaitant apporter son aide sur ce projet est forcément la bienvenue. Surtout pour convertir ce code en plugin pour TTRSS. Si vous avez déjà fait ça, ça m'aiderait pas mal en fait.

Vus : 1118
Publié par Nicolas Lœuillet : 125