Evento de webhook `post_type`

Estou integrando com o webhook e, quando recebo um evento Post, temos o campo post_type. Como posso encontrar a lista de tipos? Temos documentação sobre eventos de webhook?

Em resumo, estou querendo descobrir se o usuário fez um comentário, compartilhou uma postagem ou outro evento relacionado.

1 curtida

Talvez isso deva ser documentado aqui: Configure webhooks that trigger on Discourse events to integrate with external services.

Você pode obter os tipos de post do console do Rails executando Post.types. Isso retorna

:regular=>1, :moderator_action=>2, :small_action=>3, :whisper=>4

Qualquer postagem regular no site terá seu campo post_type definido como 1 (regular).

O tipo de postagem 2 (moderator_actions) é para postagens que são geradas quando os moderadores lidam com sinalizações na fila de revisão. Eu acho que é a única vez que esse tipo de postagem é usado.

O tipo de postagem 3 (small_actions) é para postagens que são geradas automaticamente quando um tópico é aberto, fechado, etc.

O tipo de postagem 4 é para posts sussurrados.

1 curtida

Entendido.

Existe alguma forma de saber se o usuário criou uma postagem ou apenas respondeu a outra postagem?
E temos o evento quando o usuário compartilha um tópico/postagem?

@Lucas_Alves … deve ser tão frustrante não receber instruções, mas também não encontrar nenhuma documentação sobre isso. Tipo, pelo menos, para mim é frustrante.

Agora, como encontrei seu post aqui, que era exatamente o que eu estava procurando, deixe-me compartilhar como detecto se é um “comentário” (estritamente falando, um POST que é um FOLLOW UP de qualquer tipo ao TÓPICO)

  1. o post_type é 1
  2. o post_number é maior que 1
  3. a version é 1

Se você quiser obter especificamente apenas respostas a um outro comentário específico, você pode usar reply_to_post_number (se não estiver vazio, esse é o número do post ao qual se está respondendo)

Espero que isso ajude, e eu gostaria que o Discourse chamasse essa propriedade do objeto de comment, não post, assim como eles chamam like para ações de Curtir!

1 curtida