等待消息 on_member_join 使用检查 (discord.py) |解决了
Wait for Message on_member_join using checks (discord.py) | SOLVED
我想等会员私信。我正在尝试将 check
参数用于 client.wait_for()
方法,但我似乎无法获取它。我尝试将支票作为 response.author
,但不会工作,因为我刚刚分配了 response
。此外,当成员使用 on_member_join
加入时,我正在执行此操作,该成员接受 member
参数(例如 async def on_member_join(member)
。有人知道如何正确执行此操作吗?任何答案将不胜感激!
这里是代码:
await member.send('What is your student number? ')
response = await client.wait_for('message')
student_number = response.content
向wait_for
添加检查函数时,该检查函数将接收到的消息作为参数。这意味着它将检查机器人收到的每条消息,将它们全部传递给您的检查功能,并等待其中一个进行检查 return True
.
@client.event()
async def on_member_join(member):
def check(message):
return message.author.id == member.id and message.guild is None
await member.send('What is your student number?')
response = await client.wait_for('message', check=check)
student_number = response.content
请注意我的示例如何确保 guild
是 None
,正如您明确提到的等待私人消息。
我想等会员私信。我正在尝试将 check
参数用于 client.wait_for()
方法,但我似乎无法获取它。我尝试将支票作为 response.author
,但不会工作,因为我刚刚分配了 response
。此外,当成员使用 on_member_join
加入时,我正在执行此操作,该成员接受 member
参数(例如 async def on_member_join(member)
。有人知道如何正确执行此操作吗?任何答案将不胜感激!
这里是代码:
await member.send('What is your student number? ')
response = await client.wait_for('message')
student_number = response.content
向wait_for
添加检查函数时,该检查函数将接收到的消息作为参数。这意味着它将检查机器人收到的每条消息,将它们全部传递给您的检查功能,并等待其中一个进行检查 return True
.
@client.event()
async def on_member_join(member):
def check(message):
return message.author.id == member.id and message.guild is None
await member.send('What is your student number?')
response = await client.wait_for('message', check=check)
student_number = response.content
请注意我的示例如何确保 guild
是 None
,正如您明确提到的等待私人消息。