Jump to content

noemi

Membros
  • Contagem de Conteúdo

    3
  • Ingressou

  • Última visita

Informações Pessoais

  • Cidade
    Campo Alegre de Lourdes
  • Estado
    Bahia (BA)

Clientes & Parceiros

  • Você é um cliente TecnoSpeed?
    Não
  • Você é um parceiro da Casa do Desenvolvedor?
    Não

Visitantes Recentes do Perfil

O bloco de visitantes recentes está desativado e não está sendo mostrado a outros usuários.

Conquistas de noemi

0

Reputação na Comunidade

  1. Sim eu postei a resposta dos prints só que agora eu não sei como eu vou tar podendo estar alterado o apelido, já fiz de tudo o bot tem as devidas autorização para fazer as alterações.
  2. Eu tô fazendo um bot no Discord de interação ele basicamente fazer as perguntas e os usuários respondia depois ele pegava as informações como nome no jogo e ID e colocava como apelido era pra fica nesse formato (RC "nome no jogo" - "ID"), só que a única coisa que tava indo para o o apelido era (RC ""_"") uma pessoa me sugeriu colocar prints no código para ver oq estava acontecendo eu coloquei e é isso que parece e minha mente deu um branco não sei mais oq fazer 🤡 Código fonte (com os prints): import discord from discord.ext import commands from asyncio import sleep intents = discord.Intents.default() intents.members = True bot = commands.Bot(command_prefix='!', intents=intents) member_info = {} # Dicionário para armazenar as informações dos membros @bot.event async def on_ready(): print(f'Bot está online. Conectado como {bot.user.name}') @bot.event async def on_member_join(member): channel = discord.utils.get(member.guild.channels, name='bem-vindo') # Nome do canal de boas-vindas await channel.send(f'Bem-vindo, {member.mention}! Por favor, diga o seu nome no jogo:') print(f'Membro: {member} entrou no servidor') # Impressão para depuração # Função para verificar se a mensagem é do membro que entrou no servidor def check(m): return m.channel == channel and m.author == member try: async def get_response(prompt): await channel.send(prompt) response_msg = await bot.wait_for('message', check=check, timeout=30) return response_msg.content.strip() nome_jogo = await get_response("Por favor, diga o seu nome no jogo:") print(f'Nome do jogo fornecido: {nome_jogo}') # Impressão para depuração id_jogo = await get_response("Por favor, informe o seu ID:") print(f'ID do jogo fornecido: {id_jogo}') # Impressão para depuração responsavel = await get_response("Quem é o responsável pela sua contratação?") print(f'Responsável fornecido: {responsavel}') # Impressão para depuração await channel.send("Muito bem! Seu acesso foi liberado. Tenha um ótimo RP!") # Atualizar apelido no servidor member_info[member.id] = {'nome_jogo': nome_jogo, 'id_jogo': id_jogo, 'responsavel': responsavel} print(f'Informações do membro atualizadas: {member_info[member.id]}') # Impressão para depuração nickname = f'RC "{nome_jogo}" - "{id_jogo}"' print(f'Apelido a ser atualizado: {nickname}') # Impressão para depuração await member.edit(nick=nickname) print('Apelido atualizado com sucesso!') # Impressão para depuração # Aguardar 10 segundos e apagar as mensagens await sleep(10) await channel.purge(limit=5) # Define o número de mensagens que serão apagadas except Exception as e: print(f'Ocorreu um erro: {e}') bot.run('') E essa é a resposta dos prints: 2023-07-19 10:30:07 WARNING discord.ext.commands.bot Privileged message content intent is missing, commands may not work as expected. 2023-07-19 10:30:07 INFO discord.client logging in using static token 2023-07-19 10:30:08 INFO discord.gateway Shard ID None has connected to Gateway (Session ID: 3079c6e760e3d37bdd3916a7bddddcee). Bot está online. Conectado como BOT TEXT Membro: purple2752 entrou no servidor Nome do jogo fornecido: ID do jogo fornecido: Responsável fornecido: Informações do membro atualizadas: {'nome_jogo': '', 'id_jogo': '', 'responsavel': ''} Apelido a ser atualizado: RC "" - "" Apelido atualizado com sucesso! Se tiver como alguém me ajudar eu agradeço e urgente por favor
  3. Eu fiz um código só que estou enfrentado um problema basicamente estou fazendo um bot para o Discord no qual faz interação com os usuários que entra, ele faz algumas perguntas depois de fazer todas as perguntas o bot tem que alterar o apelido do servidor da pessoa que acabou de responder todas as perguntas, basicamente ele pega o nome da pessoa no jogo e id que o usuário falou e coloca como apelido para fica nesse formato (RC "nome no jogo" - "Id" só que o código só está alterando o apelido para (RC ""_"") e eu não sei mais oq fazer quem poder ajudar eu agradeço. Aqui estar o código para análise: import discord from discord.ext import commands from asyncio import sleep intents = discord.Intents.default() intents.members = True bot = commands.Bot(command_prefix='!', intents=intents) member_info = {} # Dicionário para armazenar as informações dos membros @bot.event async def on_ready(): print(f'Bot está online. Conectado como {bot.user.name}') @bot.event async def on_member_join(member): channel = discord.utils.get(member.guild.channels, name='bem-vindo') # Nome do canal de boas-vindas await channel.send(f'Bem-vindo, {member.mention}! Por favor, diga o seu nome no jogo:') def check(m): return m.channel == channel and m.author == member and isinstance(m.content, str) try: nome_jogo_msg = await bot.wait_for('message', check=check, timeout=30) nome_jogo = nome_jogo_msg.content await channel.send("Por favor, informe o seu ID:") id_msg = await bot.wait_for('message', check=check, timeout=30) id_jogo = id_msg.content await channel.send("Quem é o responsável pela sua contratação?") responsavel_msg = await bot.wait_for('message', check=check, timeout=30) responsavel = responsavel_msg.content await channel.send("Muito bem! Seu acesso foi liberado. Tenha um ótimo RP!") # Atualizar apelido no servidor nickname = f"RC \"{nome_jogo}\" - \"{id_jogo}\"" await member.edit(nick=nickname) # Aguardar 10 segundos e apagar as mensagens await sleep(10) await channel.purge(limit=5) # Define o número de mensagens que serão apagadas except Exception as e: print(f"Ocorreu um erro: {e}") bot.run('#')
×
×
  • Create New...