We’ve a default setup for the system to clean inactive users. I believe the default criteria are something like:
last_posted_at date (never posted),
TL0
not seen for (by default) 2 years
These criteria generally work very well in cleaning out the user base.
But is there a way to produce a list showing admins users that the system will delete in the future? We’d like to communicate with some highly valued but inactive users with reasons to stay with us.
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
But the wider use case is maybe interesting. We use email digests quite a lot because some of our community are valued but busy older people unlikely to post and less likely to log in. But they are very familiar with email and they like to remain updated.
But suddenly after 2 years and we can’t get back in touch with them.
Oh, I see. Basically, they read by email and browse logged off pretty much all the time.
I’m not sure how to handle that. Surely someone will have a good idea. A straightforward one would for them to at least post 1 message on the forum, though.
Also, note that digests are disabled for users that didn’t log in after 180 days (default value). The setting’s name is suppress digest email after days.
yes, exactly. It would be nice if they posted once. But imagine someone extremely time poor and really bad with technology. Yet highly valued. The digests are superb for them and the community knows they belong & doesn’t mind they don’t actively contribute online.