# PM / nuture após tag adicionada

**URL:** https://meta.discourse.org/t/pm-nuture-after-tag-added/295122
**Category:** Feature
**Tags:** automation
**Created:** [Fevereiro 12, 2024, 8:43pm UTC](https://meta.discourse.org/t/pm-nuture-after-tag-added/295122 "2024-02-12T20:43:25Z")
**Posts on this page:** 1
**Page:** 1

<div class="post-metadata">

### Author: ![ganncamp](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ganncamp/32/106199_2.png) [@ganncamp](https://meta.discourse.org/u/ganncamp)
#### Post date: [Fevereiro 12, 2024, 8:43pm UTC](https://meta.discourse.org/t/pm-nuture-after-tag-added/295122/1 "2024-02-12T20:43:25Z")

</div>

Ao analisar os padrões de comportamento do usuário, recentemente começamos a prestar atenção em quando os usuários respondem a si mesmos. Quando um usuário responde à sua própria OP em um tópico, é um `#bump` ou um `#self-solve`? Escrevi um relatório para

> **Encontre tópicos onde os usuários respondem a si mesmos.**
>
> ```plaintext
> -- Objetivo: mostrar tópicos onde os usuários respondem a si mesmos
> 
> WITH
> 
> SonarSourcers AS (
> SELECT u.id AS user_id
> FROM groups g
> INNER JOIN group_users gu ON g.id=gu.group_id
> INNER JOIN users u ON u.id = gu.user_id
> WHERE g.name='sonarsourcers'
> ),
> 
> Tagged_topics AS (
> SELECT tt.topic_id
> FROM topic_tags tt
> JOIN tags t on t.id=tt.tag_id
> WHERE name in ('me-too', 'bump', 'self-solve')
> ),
> 
> -- encontrar tópicos 'regulares' criados por usuários normais
> topic_user AS (
> SELECT id as topic_id, user_id, created_at
> FROM topics
> LEFT JOIN SonarSourcers ss USING(user_id)
> LEFT JOIN tagged_topics tt on topics.id = tt.topic_id
> WHERE ss.user_id IS NULL -- omitir tópicos iniciados por SonarSourcers
> AND tt.topic_id IS NULL -- omitir tópicos marcados como me-too, bump ou self-solve
> AND visible = TRUE
> AND archived = FALSE
> AND archetype='regular'
> AND deleted_at IS NULL
> AND created_at::DATE > '2023-07-01'
> ),
> 
> -- encontrar a primeira resposta não-OP para tópicos de usuários
> min_response AS (
> SELECT p.topic_id, tu.created_at, MIN(post_number) as post_number
> FROM posts p
> JOIN topic_user tu USING(topic_id)
> WHERE p.post_type = 1
> -- AND p.user_id = tu.user_id
> AND p.post_number > 1
> AND p.hidden = false
> AND p.deleted_at IS NULL
> GROUP BY topic_id, tu.created_at
> )
> 
> SELECT p.topic_id, p.user_id, mr.created_at::DATE as thread_date
> FROM posts p
> JOIN min_response mr ON p.topic_id = mr.topic_id AND p.post_number=mr.post_number
> LEFT JOIN SonarSourcers ss ON p.user_id=ss.user_id
> LEFT JOIN user_badges ub on p.id = ub.post_id and ub.badge_id=110
> WHERE ss.user_id IS NULL -- eliminar tópicos onde SonarSourcer é o primeiro a responder
> AND ub.user_id IS NULL -- eliminar tópicos onde um distintivo já foi concedido
> ORDER BY mr.created_at DESC
> 
> ```

Nós revisamos os resultados regularmente para categorizar os tópicos adicionando uma tag `#bump` ou `#self-solve` (o que remove o tópico do relatório).

E agora gostaríamos de expandir isso enviando uma PM de “nutrição” para os usuários que se auto-resolvem, dizendo algo como:

> Parabéns por resolver seu problema e obrigado por compartilhar suas descobertas. Seus colegas na comunidade certamente acharão isso útil no futuro. E se você quiser emprestar ainda mais sua experiência, aqui está como você pode começar…

**Agora, à pergunta** : Podemos encontrar os usuários relevantes, com base nas tags em seus tópicos. E podemos certamente enviar essas mensagens manualmente (e estamos fazendo isso, até agora).

Mas existe alguma automação que possamos implementar em torno de

- selecionar os usuários (sim, podemos escrever outro relatório para isso…)
- enviar a mensagem
