¿Cómo podría listar los usuarios que el sistema eliminará pronto?

Tenemos una configuración predeterminada para que el sistema elimine a los usuarios inactivos. Creo que los criterios predeterminados son algo así como:

  • fecha de last_posted_at (nunca publicó),
  • TL0
  • no visto durante (por defecto) 2 años

Estos criterios funcionan muy bien en general para limpiar la base de usuarios.

Pero, ¿hay alguna forma de producir una lista que muestre a los usuarios administradores que el sistema eliminará en el futuro? Nos gustaría comunicarnos con algunos usuarios muy valorados pero inactivos con razones para quedarse con nosotros.

1 me gusta

¡Hola Amicable!

Usando el explorador de datos, la consulta sería:

WITH posts_by_user AS (
    SELECT COUNT(*) AS posts, user_id
    FROM posts
    GROUP BY user_id
)
SELECT 
    u.id,
    u.username_lower AS "username",
    u.created_at,
    u.last_seen_at
FROM users u
LEFT JOIN posts_by_user pbu ON pbu.user_id = u.id
WHERE u.active = true and u.trust_level = 0
AND posts IS NULL
ORDER BY u.id

Eso parece muy útil. No sabía lo del explorador de datos, así que empezaré por ahí. Muchas gracias por tu solución :+1:

Por curiosidad, ¿cuál es el propósito? Los administradores suelen estar activos, publicar e iniciar sesión.

edición: Puede que haya entendido mal esta parte:

:slight_smile:

En este caso, simplemente elimina and admin = true de la consulta SQL.


He actualizado el código SQL directamente.

1 me gusta

Es para una lista que muestra usuarios administradores nosotros.

Pero el caso de uso más amplio podría ser interesante. Utilizamos resúmenes por correo electrónico con bastante frecuencia porque algunos de nuestros miembros son personas mayores valiosas pero ocupadas, poco propensas a publicar y menos propensas a iniciar sesión. Pero están muy familiarizados con el correo electrónico y les gusta mantenerse actualizados.

Pero de repente, después de 2 años :boom: y no podemos volver a contactar con ellos.

Ya veo. Básicamente, leen por correo electrónico y navegan desconectados casi todo el tiempo.

No estoy seguro de cómo manejar eso. Seguramente alguien tendrá una buena idea. Una idea sencilla sería que al menos publicaran un mensaje en el foro.

Además, ten en cuenta que los resúmenes se desactivan para los usuarios que no han iniciado sesión después de 180 días (valor predeterminado). El nombre de la configuración es suppress digest email after days (suprimir correo electrónico de resumen después de días).

1 me gusta

Sí, exactamente. Sería bueno si publicaran una vez. Pero imagina a alguien extremadamente pobre en tiempo y muy malo con la tecnología. Sin embargo, muy valorado. Los resúmenes son excelentes para ellos y la comunidad sabe que pertenecen y no les importa que no contribuyan activamente en línea.

Puedes cambiar su nivel de confianza y bloquearlo a un valor distinto de 0. :slight_smile:
Evitará que sean seleccionados por los trabajos de limpieza de usuarios inactivos.

2 Me gusta

Las soluciones más sencillas son las mejores :tada:

1 me gusta

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.