Aprenda Python: Criando seu Bot de Discord

POR CÓDIGO DA HORA • 13 MAIO 2025

Comunicação e APIs

A criação de bots no Discord exige o entendimento das Intents (Intenções). Elas funcionam como um filtro de segurança para que o Discord saiba quais dados seu bot está autorizado a receber.

Resolvendo o Erro de Intents

Se você receber o erro PrivilegedIntentsRequired, significa que seu código solicita dados (como o conteúdo das mensagens) que não foram autorizados no painel. Para corrigir:

  1. Acesse o portal de desenvolvedores.
  2. Vá em Bot -> Privileged Gateway Intents.
  3. Ative Message Content Intent e salve.

🛠️ Código do Bot isj

Este script configura as intenções necessárias para que o bot consiga ler comandos e responder no servidor.

import discord
from discord.ext import commands

# Configuração obrigatória de Intents
intents = discord.Intents.default()
intents.message_content = True  # Permite ler o conteúdo das mensagens
intents.members = True          # Permite gerenciar membros

bot = commands.Bot(command_prefix='!', intents=intents)

@bot.event
async def on_ready():
    print(f'✅ Bot {bot.user} conectado com sucesso!')

@bot.command()
async def ping(ctx):
    """Comando para testar a latência"""
    await ctx.send(f'🏓 Pong! Latência: {round(bot.latency * 1000)}ms')

# O Token deve ser mantido em sigilo total
bot.run('SEU_TOKEN_AQUI')

Segurança e Permissões

No painel do Discord, além das intenções, você define as Permissões do Bot. Para um bot de moderação, ele precisará de permissões para "Gerenciar Mensagens" ou "Expulsar Membros". Sempre siga o princípio do privilégio mínimo: dê apenas as permissões necessárias para o bot funcionar.