[英]Adding reactions to a message. Discord.py rewrite
我正在尝试使用自定义表情符号对消息添加反应,出于某种原因,我在网上找不到太多关于此的信息,并且在过去的 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>")
控制台中似乎没有任何事情发生,也没有任何错误出现。
从表情中删除<>
。
await self.bot.add_reaction(accept_decline, emoji="redCross:423541694600970243")
应该可以工作。
第二种方法是异步的。 你在用齿轮吗? 如果没有将self.bot
转为bot
另外您确定该 bot 在服务器中,它试图获取的表情符号在其中吗? 你可能有一个错误的 ID,下面的这个应该可以正常工作,你没有告诉我们你得到的错误,所以很难 uncdertsnad 是什么问题,如果你收到错误说self is not defined
那么你'没有使用齿轮,应该将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)
最好的方法是给你的表情符号的名称/字符串/unicode 符号:
'\\N{竖起大拇指}'
'\\U0001F44D'
'👍'
然后创建一个包含它的变量:
emoji = '\N{THUMBS UP SIGN}'
然后你可以发送你的消息并添加反应:
message = await ctx.send('test')
await message.add_reaction(emoji)
最后,你应该得到:
@client.command()
async def test(ctx):
message = await ctx.send('test')
emoji = '\N{THUMBS UP SIGN}'
await message.add_reaction(emoji)
检查常见问题: https : //discordpy.readthedocs.io/en/stable/faq.html#how-can-i-add-a-reaction-to-a-message
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.