Python 当我的机器人DMs是一个用户时,我如何获得它';s下一条带有discord.py的消息(在DMs中)

Python 当我的机器人DMs是一个用户时,我如何获得它';s下一条带有discord.py的消息(在DMs中),python,discord,bots,discord.py,Python,Discord,Bots,Discord.py,我在做机器人。当你说r!报告,它逐个记录用户询问用户名、原因、附件等信息的情况 因此,当我的机器人对用户进行DMs时,我如何获得用户在我的机器人DMs后发送的下一条消息,并将其存储,然后创建一个包含他们提供的所有信息的嵌入?我可以做嵌入,但我似乎没有找到一种方法来检查消息 此外,如果您可以包括如何获取他们在DMs中发送的png/jpg文件,我将如何存储它 您可以使用等待 @bot.command() 异步定义(ctx): def检查(消息:discord.message): “”“检查发送消息的

我在做机器人。当你说
r!报告
,它逐个记录用户询问用户名、原因、附件等信息的情况

因此,当我的机器人对用户进行DMs时,我如何获得用户在我的机器人DMs后发送的下一条消息,并将其存储,然后创建一个包含他们提供的所有信息的嵌入?我可以做嵌入,但我似乎没有找到一种方法来检查消息

此外,如果您可以包括如何获取他们在DMs中发送的png/jpg文件,我将如何存储它


您可以使用
等待

@bot.command()
异步定义(ctx):
def检查(消息:discord.message):
“”“检查发送消息的通道是否为DM
如果消息的作者与命令“”的调用者相同
返回isinstance(message.channel、discord.DMChannel)和message.author==ctx.author
等待ctx.author.send(“你好!请回复此消息”)
message=wait bot.wait_for(“message”,check=check)#您还可以添加一个超时,阅读文档
打印(f“{ctx.author}回复:{message.content}”)
要从邮件中获取文件,只需使用
Message.attachments
属性即可

channel=bot.get_channel(ID)#这只是为了测试
#循环浏览邮件中的每个附件
对于message.attachments中的附件:
f=wait attch.to_file()#返回一个'discord.file'实例,注意:这不会保存文件,要保存文件,请使用'Attachment.save'`
#发送文件
等待channel.send(文件=f)
参考: