Como Criar um Bot de Boas-Vindas para Servidores Discord
🔍 WiseChecker

Como Criar um Bot de Boas-Vindas para Servidores Discord

Bots de boas-vindas recebem automaticamente novos membros ao entrarem no seu servidor Discord. Sem um bot de boas-vindas, novos usuários podem se sentir perdidos ou ignorados em um servidor grande. Este artigo explica como criar um bot de boas-vindas personalizado usando a API de bots do Discord e uma linguagem de programação simples como Python. Você aprenderá as etapas exatas para configurar um bot que envia uma mensagem de boas-vindas em um canal escolhido.

Principais Pontos: Construindo um Bot de Boas-Vindas para Discord

  • Portal do Desenvolvedor Discord > Applications > New Application: Registre seu bot e obtenha o token do bot.
  • Permissões do Bot > Send Messages e Read Message History: Necessárias para o bot postar mensagens de boas-vindas em um canal.
  • Evento on_member_join da biblioteca discord.py do Python: O evento que aciona seu bot quando um novo usuário entra no servidor.

O que um Bot de Boas-Vindas Faz e o que Você Precisa Antes de Construir

Um bot de boas-vindas do Discord escuta o evento on_member_join. Quando um novo membro entra no servidor, o bot envia uma mensagem personalizável para um canal específico. A mensagem pode incluir a menção do membro, as regras do servidor ou um link para um guia.

Antes de começar a programar, você precisa destes itens:

  • Uma conta Discord e um servidor onde você tenha a permissão Manage Server.
  • Python 3.8 ou superior instalado no seu computador. Baixe em python.org.
  • Um editor de código como Notepad++ ou Visual Studio Code.
  • Familiaridade básica com a linha de comando ou terminal.

Este guia usa a biblioteca discord.py versão 2.3.0. O bot será executado na sua máquina local. Para disponibilidade 24/7, você precisará hospedá-lo em um serviço de nuvem como Heroku ou um Raspberry Pi.

Passos para Construir e Implantar Seu Bot de Boas-Vindas

Passo 1: Registrar uma Aplicação de Bot no Portal do Desenvolvedor Discord

  1. Acesse o Portal do Desenvolvedor Discord
    Abra seu navegador e visite discord.com/developers/applications. Faça login com sua conta Discord.
  2. Crie uma Nova Aplicação
    Clique no botão New Application no canto superior direito. Dê um nome à sua aplicação, como “Meu Bot de Boas-Vindas”. Clique em Create.
  3. Vá para a Seção Bot
    Na barra lateral esquerda, clique em Bot. Em seguida, clique em Add Bot e confirme. Isso cria seu usuário bot.
  4. Copie o Token do Bot
    Na seção Token, clique em Reset Token e depois em Copy. Guarde este token em um local seguro. Você o usará no seu código Python. Nunca compartilhe este token.
  5. Defina as Permissões do Bot
    Role para baixo até a seção Bot Permissions. Marque Send Messages e Read Message History. Opcionalmente, marque Embed Links se quiser enviar embeds ricos. O portal gerará um inteiro de permissão. Copie esse inteiro.
  6. Convide o Bot para o Seu Servidor
    Na barra lateral esquerda, clique em OAuth2 > URL Generator. Em Scopes, marque bot. Em Bot Permissions, cole o inteiro de permissão que você copiou. A URL gerada aparece na parte inferior. Copie-a, cole no seu navegador e siga as instruções para adicionar o bot ao seu servidor.

Passo 2: Configurar Seu Ambiente Python

  1. Instale o discord.py
    Abra um prompt de comando ou terminal. Execute o comando: pip install discord.py. Se você usa Python 3 especificamente, execute pip3 install discord.py.
  2. Crie um Novo Arquivo Python
    Abra seu editor de código e crie um arquivo chamado welcome_bot.py. Salve-o em uma pasta que você possa encontrar facilmente.

Passo 3: Escrever o Código do Bot

  1. Cole o seguinte código em welcome_bot.py
    import discord
    from discord.ext import commands
    
    intents = discord.Intents.default()
    intents.members = True
    
    bot = commands.Bot(command_prefix='!', intents=intents)
    
    WELCOME_CHANNEL_ID = 123456789012345678  # Substitua pelo ID do seu canal
    
    @bot.event
    async def on_ready():
        print(f'{bot.user} conectou ao Discord!')
    
    @bot.event
    async def on_member_join(member):
        channel = bot.get_channel(WELCOME_CHANNEL_ID)
        if channel is not None:
            await channel.send(f'Bem-vindo ao servidor, {member.mention}!')
    
    bot.run('SEU_TOKEN_AQUI')  # Substitua pelo token do seu bot
    
  2. Entenda o código
    O script importa a biblioteca discord, habilita a intenção members e cria uma instância do bot. O evento on_member_join é acionado quando um novo usuário entra. Ele envia uma mensagem de boas-vindas para o canal cujo ID você especificar. Substitua o ID do canal e o token do bot pelos seus próprios valores.
  3. Encontre o ID do seu canal de boas-vindas
    No Discord, abra seu servidor. Clique com o botão direito no canal onde deseja as mensagens de boas-vindas e selecione Copy ID. Se não vir esta opção, vá em User Settings > Advanced e ative Developer Mode.
  4. Substitua os placeholders
    Edite o valor de WELCOME_CHANNEL_ID com o ID numérico que você copiou. Substitua SEU_TOKEN_AQUI pelo token que você copiou do Portal do Desenvolvedor.

Passo 4: Executar o Bot

  1. Inicie o bot
    No prompt de comando ou terminal, navegue até a pasta que contém welcome_bot.py. Execute: python welcome_bot.py ou python3 welcome_bot.py. Você deve ver uma mensagem como MeuBotDeBoasVindas conectou ao Discord!
  2. Teste o bot
    Abra seu servidor Discord. Convide um usuário de teste ou use uma segunda conta para entrar. O bot deve postar uma mensagem de boas-vindas no canal designado.

Erros Comuns e Limitações ao Construir um Bot de Boas-Vindas

O bot não responde a novos membros

A causa mais comum é a falta da intenção members. No Portal do Desenvolvedor Discord, vá em Bot > Privileged Gateway Intents e ative Server Members Intent. Em seguida, reinicie seu bot. Confirme também que o bot tem a permissão Send Messages no canal de destino.

O bot fica offline após fechar o terminal

O bot só funciona enquanto seu script Python estiver em execução. Para mantê-lo online 24/7, você precisa hospedá-lo em uma plataforma de nuvem como Heroku, AWS ou um servidor dedicado. Alternativamente, use um Raspberry Pi que fique ligado o tempo todo.

A mensagem de boas-vindas não menciona o novo usuário

Verifique se você usou member.mention na string da mensagem. Se você digitou member.name, a mensagem mostrará o nome de usuário sem um ping. Verifique também se o bot tem a permissão Mention @everyone, @here, and All Roles se quiser usar menções de cargo.

O bot envia mensagens de boas-vindas duplicadas

Isso geralmente acontece se você executar várias instâncias do mesmo script do bot. Feche todas as janelas do terminal e execute apenas uma instância. Verifique também se você não adicionou o bot ao servidor duas vezes com tokens diferentes.

Opções de Bot de Boas-Vindas: Mensagem Personalizada vs Embed vs Serviço Externo

Item Bot Python Personalizado Embed do Discord Bot de Terceiros (ex.: MEE6)
Complexidade de configuração Requer programação e hospedagem Mesmo que o bot personalizado, mas com código de embed Sem programação, convide e configure
Personalização Controle total sobre mensagem, formatação e lógica Formatação rica com cores, campos e imagens Limitado ao que o bot oferece
Custo Gratuito (se hospedar na própria máquina) Gratuito Plano gratuito geralmente limitado; premium custa dinheiro
Disponibilidade Depende da sua hospedagem Mesmo que o bot personalizado Hospedado pelo serviço, geralmente 24/7
Exemplo de caso de uso Servidor com regras de boas-vindas exclusivas Cartão de boas-vindas estiloso com logotipo do servidor Configuração rápida para uma comunidade pequena

Agora você pode construir um bot de boas-vindas que cumprimenta novos membros automaticamente. Em seguida, tente adicionar uma mensagem privada para o novo usuário com as regras do servidor. Uma dica avançada é usar o recurso Embed do Discord no seu bot para uma mensagem de boas-vindas mais polida. Crie um objeto discord.Embed, defina uma cor, adicione uma miniatura do ícone do seu servidor e envie para o canal para um visual profissional.