我正尝试使用自定义表情符号在邮件中添加响应,出于某种原因,我在网上找不到太多与此相关的信息,并且我花了最后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>")
控制台似乎什么也没发生,也没有任何错误出现。
答案 0 :(得分:1)
最好的方法就是给你的表情符号的名字/str/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
答案 1 :(得分:0)
从表情中删除<>
。
await self.bot.add_reaction(accept_decline, emoji="redCross:423541694600970243")
应该可以。
答案 2 :(得分:0)
第二种方法用于异步。
您正在使用嵌齿轮吗?如果没有,请从self.bot
转到bot
您还确定该机器人是否在服务器中,它试图获取的表情符号在其中?
您可能输入了错误的ID,下面的代码应该可以正常工作,并且您没有告诉我们您遇到的错误,因此,如果您遇到错误提示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)