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
- Acesse o Portal do Desenvolvedor Discord
Abra seu navegador e visite discord.com/developers/applications. Faça login com sua conta Discord. - 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. - 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. - 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. - 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. - 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
- Instale o discord.py
Abra um prompt de comando ou terminal. Execute o comando:pip install discord.py. Se você usa Python 3 especificamente, executepip3 install discord.py. - Crie um Novo Arquivo Python
Abra seu editor de código e crie um arquivo chamadowelcome_bot.py. Salve-o em uma pasta que você possa encontrar facilmente.
Passo 3: Escrever o Código do Bot
- 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 - Entenda o código
O script importa a biblioteca discord, habilita a intenção members e cria uma instância do bot. O eventoon_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. - 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. - Substitua os placeholders
Edite o valor deWELCOME_CHANNEL_IDcom o ID numérico que você copiou. SubstituaSEU_TOKEN_AQUIpelo token que você copiou do Portal do Desenvolvedor.
Passo 4: Executar o Bot
- Inicie o bot
No prompt de comando ou terminal, navegue até a pasta que contémwelcome_bot.py. Execute:python welcome_bot.pyoupython3 welcome_bot.py. Você deve ver uma mensagem comoMeuBotDeBoasVindas conectou ao Discord! - 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.