首页 > 解决方案 > 向消息添加反应。Discord.py 重写

问题描述

我正在尝试使用自定义表情符号添加对消息的反应,由于某种原因,我在网上找不到太多关于此的内容,并且我花了最后 30m 试图找出不同的方法。到目前为止没有任何工作。

这是在齿轮内部。

第一种方法

accept_decline = await ctx.send("Test")
cross = self.bot.get_emoji(558322190060093441)
checkM = self.bot.get_emoji(558322116685070378)
await accept_decline.add_reaction(checkM)
await accept_decline.add_reaction(cross)

另一种方法

accept_decline = await ctx.send("Test")
await self.bot.add_reaction(accept_decline, emoji="<:greenCheckmark:558322116685070378>")
await self.bot.add_reaction(accept_decline, emoji="<:redCross:423541694600970243>")

控制台中似乎没有任何事情发生,也没有任何错误出现。

标签: pythonpython-3.6discorddiscord.py-rewrite

解决方案


第二种方法是异步的。你用的是齿轮吗?如果不转向self.bot另外bot 你确定机器人在服务器中它试图获取的表情符号在吗?你可能有一个错误的 ID,下面的这个应该可以正常工作,你没有告诉我们你得到的错误,所以很难找出问题所在,如果你得到错误说self is not defined你没有使用一个 cog 并且应该更改self.bot为,bot因为下面的脚本对我来说效果很好:

accept_decline = await ctx.send("Test")
cross = self.bot.get_emoji(558322190060093441)
checkM = self.bot.get_emoji(558322116685070378)
await accept_decline.add_reaction(checkM)
await accept_decline.add_reaction(cross)

推荐阅读