Como posso listar os usuários que o sistema excluirá em breve?

Temos uma configuração padrão para o sistema limpar usuários inativos. Acredito que os critérios padrão sejam algo como:

  • data de last_posted_at (nunca postou),
  • TL0
  • não visto por (por padrão) 2 anos

Esses critérios geralmente funcionam muito bem na limpeza da base de usuários.

Mas existe uma maneira de produzir uma lista mostrando usuários administradores que o sistema excluirá no futuro? Gostaríamos de nos comunicar com alguns usuários altamente valorizados, mas inativos, com motivos para permanecer conosco.

1 curtida

Olá Amicable!

Usando o explorador de dados, a consulta seria:

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

Isso parece muito útil. Eu não sabia sobre o explorador de dados, então começarei por lá. Muito obrigado pela sua solução :+1:

Por curiosidade, qual é o propósito? Os administradores geralmente estão ativos, postam e fazem login.

editar: Talvez eu tenha entendido mal esta parte:

:slight_smile:

Neste caso, basta remover and admin = true da consulta SQL.


Atualizei o código SQL diretamente.

1 curtida

É para uma lista que mostra usuários administradores nós.

Mas o caso de uso mais amplo pode ser interessante. Usamos resumos por e-mail com bastante frequência porque alguns de nossos membros da comunidade são valiosos, mas idosos e ocupados, com pouca probabilidade de postar e menos ainda de fazer login. Mas eles estão muito familiarizados com e-mail e gostam de se manter atualizados.

Mas, de repente, após 2 anos :boom: e não conseguimos mais entrar em contato com eles.

Ah, entendi. Basicamente, eles leem por e-mail e navegam desconectados praticamente o tempo todo.

Não tenho certeza de como lidar com isso. Certamente alguém terá uma boa ideia. Uma ideia simples seria que eles postassem pelo menos 1 mensagem no fórum, embora.

Além disso, observe que os resumos são desativados para usuários que não fizeram login após 180 dias (valor padrão). O nome da configuração é suprimir e-mail de resumo após dias.

1 curtida

Sim, exatamente. Seria bom se eles postassem uma vez. Mas imagine alguém com pouquíssimo tempo e muito ruim com tecnologia. No entanto, muito valorizado. Os resumos são excelentes para eles e a comunidade sabe que eles pertencem e não se importa que eles não contribuam ativamente online.

Você pode alterar o nível de confiança deles e bloqueá-lo para um valor diferente de 0. :slight_smile:
Isso os impedirá de serem selecionados pelos trabalhos de limpeza de usuários inativos.

2 curtidas

As soluções mais simples são as melhores :tada:

1 curtida

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