AutoMod

Premium
Voltar à documentação

Automações

Crie fluxos personalizados de gatilhos, condições e ações que reagem a quase tudo no seu servidor, além de duas formas de se conectar ao mundo externo.

Como funciona

Toda automação tem três partes: exatamente um gatilho que a inicia, condições opcionais que precisam passar antes e uma lista ordenada de ações que rodam depois. As automações podem ler dados do gatilho, como a mensagem enviada ou o membro que entrou, e reutilizá-los em condições e ações com tokens {variable}, igual aos comandos personalizados e às respostas automáticas.

Crie automações com IA

Em vez de usar o editor, você pode deixar um assistente de IA montar a automação para você. Baixe o guia abaixo: um único arquivo Markdown que explica ao assistente cada gatilho, condição, ação, variável e limite, incluindo o formato de importação. Funciona com ChatGPT, Claude, Gemini e qualquer outro assistente que leia um arquivo de texto.

  1. Baixe o guia e anexe a uma nova conversa com o seu assistente de IA. Se ele não aceitar anexos ou recusar arquivos .md, renomeie o arquivo para .txt ou cole o conteúdo no chat.
  2. Descreva o que você quer com palavras simples, por exemplo "postar em um canal quando entrar uma conta com menos de uma semana". O assistente responde com um resumo, as variáveis que precisam ser criadas antes, um bloco de JSON e uma checklist.
  3. No painel, abra Automações → Importar, cole o JSON e importe. Depois escolha os canais e cargos (eles nunca vêm junto), rode uma vez em Testes e logs e ative.
Baixar o guia para IA

Gatilhos

Toda automação tem exatamente um gatilho: o evento que a inicia. Você pode escolher entre quase tudo o que o AutoMod observa, além de um webhook de entrada e de ser chamada por outra automação.

GatilhoCategoriaComeça quando…
Mensagem enviadaMensagensUm membro envia uma mensagem, opcionalmente em canais específicos. Use condições para detectar links, convites, anexos, palavras-chave e mais.
Mensagem editada / excluídaMensagensUma mensagem é editada, excluída ou excluída em massa.
Reação adicionada / removidaMensagensUma reação é adicionada, removida ou limpa de uma mensagem.
Membro entrouMembrosUm membro entra no servidor ou passa na triagem de membros.
Membro saiuMembrosUm membro sai, é expulso ou é banido.
Membro atualizadoMembrosO apelido, o avatar, o nome de usuário ou o castigo de um membro muda.
Cargo adicionado / removidoMembrosUm cargo é adicionado ou removido de um membro.
Servidor impulsionadoMembrosUm membro começa ou para de impulsionar o servidor.
Estado de voz alteradoVozUm membro entra, sai, muda de canal, se silencia ou transmite na voz.
Ação de moderação aplicadaModeraçãoUma advertência, silenciamento, expulsão, banimento ou caso é criado. O membro punido é o usuário que dispara.
Limite de moderação atingidoModeraçãoO número de advertências ou casos de um membro chega a um valor definido.
Filtro acionadoModeraçãoO filtro de palavras, convites, spam, golpes, raids ou o AutoMod nativo pega algo.
Agendamento disparadoIntegraçõesUm agendamento cron, um intervalo, uma data única, um aniversário ou um aniversário de entrada é atingido.
Webhook de entradaIntegraçõesUm serviço externo envia uma requisição HTTP para a URL única desta automação.
Chamada por outra automaçãoControle de fluxoEsta automação só roda quando é chamada pela ação "Chamar automação" de outra automação.
Membro subiu de nívelMembrosO XP de um membro chega a um novo nível pelo plugin Níveis, não importa como esse XP foi ganho.
Assinatura alteradaMembrosAlgo acontece com uma assinatura paga do plugin Monetização: compra, renovação, cancelamento, pagamento com falha, fim, reembolso, presente ou gorjeta.
Botão, menu ou formulário usadoMensagensUm botão, menu de seleção ou formulário enviado por outra automação é usado. O componente escolhe esta automação como destino.
Comando de barra usadoMensagensUm membro usa o comando de barra próprio desta automação, com as opções que você definir.
Evento de liveIntegraçõesAlgo acontece no seu canal conectado da Twitch ou da Kick, como um novo seguidor, uma inscrição, uma raid ou a live começando.

Webhooks de entrada

O gatilho Webhook de entrada dá a uma automação sua própria URL. Envie um HTTP POST de qualquer serviço externo (um serviço de formulários, um provedor de pagamentos, o seu próprio backend) e a automação roda com o corpo, os cabeçalhos e a origem da solicitação disponíveis como variáveis {http.*} em cada condição e ação.

Limites de taxa, nos dois sentidos

O endpoint público do webhook tem limite de taxa por URL e por IP de origem antes de qualquer outra coisa, incluindo consultas, verificação de assinatura e leitura do corpo. Uma enxurrada contra uma URL, ou uma varredura por várias URLs adivinhadas, não consegue deixar o resto do app lento. Além disso, toda automação tem um intervalo mínimo integrado de 1 s entre execuções, mesmo sem tempo de espera configurado, então um gatilho movimentado nunca roda sem limite.

Segurança também na saída

A ação Solicitação HTTP segue o mesmo padrão ao contrário: só URLs https:// são permitidas, o IP de destino é resolvido e verificado de novo a cada redirecionamento, e endereços de loopback, privados, link-local e de metadados da nuvem são recusados. Uma automação nunca pode ser usada para alcançar a infraestrutura interna.

Condições

As condições decidem se as ações de uma automação rodam ou não. Adicione quantas precisar e escolha se todas devem corresponder (E) ou só uma (OU). Sem nenhuma, as ações sempre rodam quando o gatilho dispara.

CondiçãoCategoriaVerifica…
Tem cargosMembrosVerifica se o usuário tem algum, todos ou nenhum dos cargos selecionados.
Identidade do usuárioMembrosVerifica se o usuário é um usuário comum, um bot, um webhook ou tem o avatar padrão.
Idade da conta / tempo como membroMembrosVerifica a idade da conta do usuário ou há quanto tempo ele é membro.
Tem permissãoMembrosVerifica se o usuário tem uma permissão específica do Discord.
Hierarquia de cargosMembrosCompara o cargo mais alto do moderador com o cargo mais alto do alvo (para gatilhos de ação de moderação).
Contador do usuárioMembrosVerifica as advertências, casos, nível ou XP de um usuário.
Estado do usuárioMembrosVerifica se o usuário está impulsionando, de castigo, silenciado ou em um canal de voz.
Conteúdo da mensagemMensagensCompara o texto da mensagem com um valor, um padrão ou uma lista de palavras.
Formato da mensagemMensagensVerifica o tamanho, a proporção de maiúsculas, o número de emojis, os caracteres repetidos ou texto zalgo.
A mensagem contémMensagensVerifica se a mensagem contém um link, um convite, um anexo, um embed ou menções suficientes.
Semelhança de mensagensMensagensCompara a mensagem com as últimas mensagens do usuário para detectar spam repetido.
No canalCanaisVerifica se isso aconteceu em um canal, uma categoria ou um tópico específicos.
Janela de horárioContextoVerifica o dia da semana e a hora do dia, no fuso horário do seu servidor.
Estado do servidorContextoVerifica o número de membros, o nível de impulso, um recurso do servidor ou o modo raid.
Rajada de eventosContextoVerifica se eventos demais aconteceram em pouco tempo.
Variável salvaEstado e variáveisVerifica o valor de qualquer variável salva por esta ou por outra automação.
Tempo de espera desta automaçãoEstado e variáveisVerifica se esta automação rodou pela última vez dentro de um período definido.
Expressão personalizadaContextoEscreva uma expressão diretamente para o que as outras condições não cobrem.

Ações

As ações rodam em ordem, de cima para baixo, quando as condições passam. A maioria age direto no Discord, como enviar mensagens, aplicar cargos ou punir membros. O grupo Controle de fluxo permite que uma automação ramifique, repita, espere, pare antes ou chame outra automação.

AçãoCategoriaFaz…
Enviar mensagemMensagensEnvia uma mensagem para um canal, por DM, em um tópico ou como resposta, opcionalmente com identidade de webhook.
Editar / excluir mensagemMensagensEdita, exclui, fixa, desafixa ou publica (crosspost) uma mensagem específica, indicada pelo link. Use {tokens} no link para agir na mensagem que disparou a automação.
Limpar mensagensMensagensExclui mensagens em massa em um canal, com filtro opcional.
Adicionar / remover reaçãoMensagensAdiciona, remove ou limpa reações na mensagem que disparou a automação.
Criar tópicoCanaisCria um tópico ou uma postagem de fórum.
Punir membroModeraçãoAdverte, castiga, expulsa, bane, aplica softban, banimento temporário ou silencia o alvo.
Revogar puniçãoModeraçãoRemove uma advertência, um castigo, um banimento ou um silenciamento.
Registrar caso de moderaçãoModeraçãoCria um caso com um tipo de caso real e um motivo, ou adiciona uma nota a um caso existente pelo número.
Adicionar cargoMembrosDá um cargo ao alvo, opcionalmente por um tempo limitado.
Remover cargoMembrosTira um cargo do alvo.
Modificar membroMembrosDefine um apelido, desconecta, move ou silencia no servidor o alvo na voz.
Modificar canalCanaisTranca, destranca, define o modo lento, muda o tema ou edita as permissões.
Definir variávelEstado e variáveisDefine, aumenta, diminui, adiciona ao fim ou limpa uma variável salva.
EsperarControle de fluxoPausa a cadeia por um tempo fixo antes de continuar.
Ramificação (se / senão)Controle de fluxoDivide em um grupo de condições aninhado com etapas próprias.
LoopControle de fluxoRepete um número limitado de etapas aninhadas.
PararControle de fluxoImpede que o resto da cadeia rode, opcionalmente só se uma condição for atendida.
Chamar automaçãoControle de fluxoChama outra automação como sub-rotina, opcionalmente esperando ela terminar.
Requisição HTTPIntegraçõesChama qualquer URL externa. A resposta JSON vira variáveis.
Adicionar XPMembrosDá XP ao alvo pelo plugin Níveis, se ele estiver ativado neste servidor.
Responder à interaçãoMensagensAtualiza a mensagem clicada, responde (opcionalmente só visível para o usuário), abre um formulário ou confirma em silêncio.
Gerar imagemMensagensGera um dos seus modelos de imagem para esta execução e usa como {images.name} em uma mensagem posterior.
Ler valor de membro / rankingEstado e variáveisLê o valor por usuário de outro membro, a posição dele ou uma lista dos melhores em um token.

Variáveis armazenadas

Variáveis são valores com nome (textos, números, booleanos, listas ou JSON) compartilhados no servidor inteiro e mantidos entre execuções e automações. Use a ação Definir variável para criar, incrementar, decrementar, adicionar a uma lista ou limpar uma, e leia com uma condição Variável armazenada ou com um token {variable_name} em qualquer outro lugar. Dê um TTL a uma variável e ela é zerada automaticamente quando esse tempo passa.

Linguagem de expressões

A condição Expressão personalizada cobre tudo o que as outras condições não conseguem expressar. É uma linguagem de expressões JSON pequena e segura que nunca executa código. Toda expressão tem o formato {"op": [arg, ...]} e pode ser aninhada.

Linguagem de fórmulas

As fórmulas calculam valores como o total de uma mão, uma carta aleatória, uma porcentagem de progresso ou uma lista de botões. Elas parecem expressões em Python, são avaliadas com segurança pelo bot (nunca executadas como código) e têm limite de tamanho e de trabalho, então uma fórmula não consegue travar nada.

Segurança e limites

Toda automação roda dentro de um envelope de segurança fixo que não pode ser desligado, então um fluxo mal configurado nunca consegue derrubar seu servidor nem rodar para sempre:

Sem autodisparoAs ações nunca podem disparar de novo o próprio gatilho desta automação.
Intervalo mínimo entre execuçõesMesmo sem um tempo de espera abaixo, uma execução é ignorada se a anterior foi há menos de 1 s. É uma proteção contra gatilhos em excesso, não substitui um tempo de espera de verdade.
Limite da cadeia de açõesUma execução realiza no máximo 20 ações.
Tempo limite de execuçãoUma execução para automaticamente após 15000 ms.
Limite de iterações do loopUm loop pode se repetir no máximo 50 vezes.
Limite de profundidade de chamadasAs automações podem se aninhar em no máximo 3 níveis.

Cada automação também tem seu próprio tempo de espera entre execuções e pode se desativar sozinha depois de um número de falhas seguidas, para que uma integração quebrada não continue falhando em silêncio.

Testes e logs

A aba Testes e logs faz uma simulação da automação com um evento de exemplo fornecido por você e mostra cada etapa de gatilho, condição, controle e ação, incluindo um jeito de simular uma falha no meio, sem mexer no seu servidor. Execuções recentes guarda um histórico das execuções reais com resultado e duração.

Limites

LimiteFreePremium
Automações5100
Condições por automação520
Ações por automação520
Variáveis10300

As automações podem ser organizadas em até 20 grupos em qualquer plano.