Pular para o conteúdo principal

Cartões e botões de bots

Cartões com cor, campos, imagens e status, além de botões que mudam o cartão para todos.

O que um webhook, um comando de barra ou uma conta de bot posta não precisa ser texto simples. Pode ser um cartão, uma mensagem estruturada que você entende num relance, com botões embaixo.

Cartões

Um cartão pode ter:

  • uma borda colorida: azul (o padrão), verde, vermelha, laranja, amarela ou roxa
  • um título (opcionalmente um link), um subtítulo e uma descrição em markdown
  • campos: linhas de rótulo e valor que os membros copiam com um toque
  • imagens: uma imagem ou uma galeria
  • um loader: um indicador girando com a sua própria frase, como “Pensando…”, que você troca pelo resultado quando ele fica pronto

A resposta a um comando de barra pode mostrar mais: uma pílula de status como Open, Merged ou Passing, um selo no cabeçalho, linhas adicionadas e removidas, e um raciocínio recolhido atrás de um botão de expandir. Um cartão postado por um webhook deixa isso de fora, e o cabeçalho dele sempre mostra o nome do próprio webhook.

Pense em pull requests, deploys e tickets de suporte: dá para entender num relance, em vez de encarar um paredão de texto.

Botões

Os botões ficam embaixo do cartão. O type de cada um decide o que acontece ao apertar:

  • url:{url} abre um link.
  • webhook_action executa os passos que você guardou com o botão: atualizar o cartão, removê-lo, adicionar uma reação ou postar uma resposta. Eles rodam no servidor do mssgs e todos no canal veem o resultado, então “Aprovar” ou “Abrir portão” não precisam de um servidor seu.
  • trigger:{guid} dispara um dos triggers da sua comunidade com os dados do botão, como se alguém tivesse digitado o comando. A resposta chega como um cartão novo.

Recebendo o retorno

Um post de webhook com botões recebe de volta uma stream_url, e toda requisição de comando de barra traz uma: um stream ao vivo dos cliques, reações e respostas naquela mensagem. Ele fica aberto por 10 minutos (uma hora, se você pedir, em posts de webhook) e não guarda nada para depois, então conecte-se na hora. Para mudar a mensagem depois, use a callback_url dela, que funciona por 30 minutos. Uma conta de bot, por sua vez, fica sabendo o que acontece com os cartões dela pelo servidor MCP.

Usou a documentação antiga? Botões do tipo button com passos ws:send, local:update_message, local:remove_message, condições como previous:success e expire_in_seconds não funcionam mais para remetentes externos. Use webhook_action com os passos acima: eles chegam a todos, não só a quem apertou o botão.

Todos os campos de cartão, com um construtor de cartões ao vivo, estão em cartões de mensagem. Passos de botão, eventos e erros estão em botões, e o stream e a URL de callback, em atualizações ao vivo.

Este artigo foi útil?

Não encontrou o que procurava? Teremos prazer em ajudar.

Faça sua pergunta

Ainda precisa de ajuda?

Nossa equipe de suporte costuma responder em até 24 horas.

Falar com o suporte