Foro Confederac.io

Depurar cuentas inactivas en red.confederac.io

red.confederac.io tiene más de 700 cuentas creadas, la inmensa mayoría están inactivas y de estas estoy seguro de que otra inmensa mayoría están relacionadas con spam y/o con gente que no tenia ni pajolera idea sobre Confederac.io y sus principios.

Estas cuentas consumen recursos (si alguien siguió un centenar de cuentas y luego desapareció, estos toots siguen apareciendo en nuestra timeline confederada y ocupan espacio de disco) pero lo que me parece más importante es que representan un riesgo indefinido (no es extraño ver cuentas de spam dormidas durante semanas y meses que un buen día despiertan).

Total, que aquí hablamos sobre cómo mantener la lista de cuentas razonablemente saneada.

El mensaje enviado

Hola,

Este es un mensaje de las administradoras de https://red.confederac.io que recibes
porque hace más de un año que no te conectas a tu cuenta.

Estamos de limpieza. :slight_smile: Si quieres mantener tu cuenta, por favor conéctate en
los próximos 30 días para evitar que sea eliminada.

Para más información y preguntas, visita
https://la.confederac.io/t/depurar-cuentas-inactivas-en-red-confederac-io/42847

Saludos confederados,


Confederac.io

4 Likes

Em sembla correcte lo que vaig estar mirant que hi han molts conters inactius O que mai han estat actius i pense sinó seria millor borrarlos.

1 Like

Pels comptes inactius a l’administrador de Mastodont.cat ha fet un programet que avisa per correu electronic als comptes que fa un any que no es connecten. Que si no ho en un termini de 30 dies no es tornen a connectar el compte s’eliminiarà. I crec que a Anartist també l’han provat.

3 Likes

Gracias a esta nota de @fgali me puse en contacto con @spla, quien me dirigió a su programa:

He empezado, pero he topado con una piedra. Yo de Python nada, por lo que no sé dónde está el fallo:

Bug number 1 es siempre un honor. :slight_smile:

Seguiré informando.

2 Likes

Después de resolver el primer problema de arriba y un segundo, el envío se está realizando en estos momentos. Va 5-7 segundos por mensaje, y parece que esto va a llevar un rato. Si alguien ha recibido el correo (que incluye la URL a este tema) por favor que salude, para que sepamos que el script funciona. :smiley:

El mensaje está copiado en el primer post, aquí arriba.

Ahora que lleva unos 50 correos enviados, la verdad es que hay un buen porcentaje de direcciones de correo que parecen legítimas, no las típicas de spam. A ver si vamos a crear una nueva oleada de actividad a Mastodon sin que Twitter censure a nadie. :smiley:

Por supuesto que no iba a ser tan fácil. Después de un rato…

Traceback (most recent call last):
File “mailing.py”, line 357, in
server = smtplib.SMTP(smtp_host)
File “/usr/lib/python3.7/smtplib.py”, line 251, in init
(code, msg) = self.connect(host, port)
File “/usr/lib/python3.7/smtplib.py”, line 338, in connect
(code, msg) = self.getreply()
File “/usr/lib/python3.7/smtplib.py”, line 394, in getreply
raise SMTPServerDisconnected(“Connection unexpectedly closed”)
smtplib.SMTPServerDisconnected: Connection unexpectedly closed

Podría ser que Mailgun haya decido cortar con este spameo. Voy a ver.

(Al cabo de un rato)

Los logs de Mailgun muestran que los correos se están enviando. He vuelto a correr el script. Ha empezado con una buena ristra de errores

column "elapsed_days" of relation "mailing_table" does not exist
LINE 1: UPDATE mailing_table SET elapsed_days=('0 days 1205.964216 s...

Sospecho que cada error corresponde a uno de los usuarios con correo enviado antes de que se cortara el proceso. En fin, sea lo que sea se podrá solucionar con calma. Ahora lo que hay que conseguir es que todos los correos que tengan que salir sean enviados y queden registrados en la base de datos. Una vez hecho el envío bestia de hoy, cuando lo volvamos a hacer dentro de un mes serán muchas menos las cuentas afectadas (las que a día de hoy hace 11 meses que no se conectan).

1 Like

Gracias por usar Mailing y reportar los problemas que has tenido. Es lo mejor de crear programas y que otros lo usen. Ayuda a mejorarlo!

2 Likes

Gracias de nuevo por reportarme bugs. El error "column “elapsed_days” of relation “mailing_table” does not exist " también está solucionado:

Para aplicar las soluciones a los errores que me has reportado haz “git pull” en el directorio donde tengas instalado mailing. :wink:

1 Like

@spla muchas muchas gracias por estos scripts. Hacía tiempo que encontraba a faltar algo así.

Pregunta: tras hacer git pull y volver a correr db-setup.py sin cambiar config.txt… ¿Se mantendrá la tabla que ya existe, con la informació del mailing de ayer? Es decir, ¿si corro mailing.py de nuevo voy a enviar mensajes a las mismas personas o sólo a las que haya de diferencia entre ayer y hoy?

Si hay que empezar de nuevo no es un gran problema. Al fin y al cabo no hemos enviado nunca nada a estas usuarias. Es para preparar un tipo de mensaje u otro.

1 Like
  1. borra la base de datos nueva de mailing, como usuario mastodon haz:

dropdb mastodon_mailing

  1. ejecuta de nuevo:

python3 db-setup.py

  1. y ya cuando quieras arrancas el mailing con:

python3 mailing.py

2 Likes

He seguido todo los pasos y esta vez el script ha corrido bien a la primera.

Si he hecho bien la cuenta, en estos momentos hay 274 cuentas que no se han conectado en el último año. El 24 de junio (solsticio de verano) pasaré el script para borrar las cuentas de este grupo que no se hayan conectado.

@spla ¿Qué aconsejas, hacer limpieza manualmente así como una vez al mes o tener un cron diaro que envíe mensajes y borre a diario?

Creative Commons License