#python #python-3.x #bots #discord.py #discord.py-rewrite
#python #python-3.x #боты #discord.py
Вопрос:
Я пытался создать сообщение о присоединении к участнику в discord.py (Переписать) Я получаю сообщение об ошибке. Первая моя команда приведена ниже.
@bot.event
async def on_member_join(member):
guild = member.guild
channel = (553090886683197451)
message ='Hello {}, Welcome to {} Discord server, We hope u good day at our server. Also please read the rules carefully'.format(member.mention, guild.name)
await user.send(channel, message)
Ошибка приведена ниже
line 15, in on_member_join
await user.send(channel, message)
NameError: name 'user' is not defined
я хочу, чтобы мой бот отправил сообщение на определенный канал и сообщение, которое я написал выше. кто-нибудь мог бы помочь, это было бы здорово!.
Комментарии:
1. Что вы ожидаете от этого? Вы либо хотите сделать,
await member.send(message)
чтобы отправить личное сообщение пользователю, либоawait member.guild.get_channel(channel).send(message)
отправить сообщение на какой-либо канал объявлений.2. Спасибо, сэр, но я нашел решение
Ответ №1:
В отличие от асинхронной версии, вы должны сначала найти канал, используя get_channel()
метод
@bot.event
async def on_member_join(member):
channel = bot.get_channel(553090886683197451)
guild=member.guild
message ='Hello {}, Welcome to {} Discord server, We hope u good day at our server. Also please read the rules carefully'.format(member.mention, guild.name)
await channel.send(message)
И, как упоминал Патрик Хоу, вы бы сделали member.send()
с личным сообщением