有没有办法检查Discord消息是否已回复?

问题描述 投票:0回答:1

我目前有一个机器人,当收到请求时,它将将该信息保存到文本文件中。但是,我在自己的个人计算机上运行机器人,因此当我不在计算机上时,不会执行此操作。当机器人保存请求时,它会回复用户告诉他们。

我希望使用channel.history命令来查看登录时的最新消息并执行所需的操作,但前提是机器人尚未执行此操作。有没有办法检查请求消息是否已被机器人回复?我尝试使用 messages[x].channel.reference,但这给了我一个“频道没有‘引用’命令”错误。感谢任何帮助,我对 Discord 机器人制作相当陌生。谢谢你。

python discord discord.py bots
1个回答
0
投票

不,事后无法使用 message.reference 属性或类似方法检查您的 Discord 机器人是否回复了旧消息。 message.reference 属性仅适用于当前位于消息缓存中或机器人在线时接收到的消息。

一旦消息变旧或不再位于机器人的消息缓存中,就没有内置方法可以追溯检查机器人是否回复了该消息。 Discord.py 和 Discord API 不提供以这种方式访问历史交互数据的方法。

如果您需要跟踪旧消息的交互或回复,您通常需要在机器人中实现自定义数据库或日志系统,以在机器人处理消息时记录此类信息。这样,您可以记录机器人回复消息的时间,然后在需要时查询该数据。

© www.soinside.com 2019 - 2024. All rights reserved.