Discord bot 添加对消息 discord.py 的反应(无自定义表情符号)

Posted

技术标签:

【中文标题】Discord bot 添加对消息 discord.py 的反应(无自定义表情符号)【英文标题】:Discord bot adding reactions to a message discord.py (no custom emojis) 【发布时间】:2019-05-07 06:08:18 【问题描述】:

我一直在尝试使用 discord.py 制作一个机器人,在阅读 this 后使用 discord.py 添加对消息的反应(这不是我想要的,因为我没有使用自定义表情符号)但它结束了给出这个错误:

discord.ext.commands.errors.CommandInvokeError: Command raised an exception: InvalidArgument: message argument must be a Message

我试过这段代码

@commands.command(pass_context=True)
async def emoji(ctx):
    msg = "working"
    await bot.say(msg)
    reactions = ['dart']
    for emoji in reactions: await bot.add_reaction(msg, emoji)

discord.py 上的任何其他相关问题对此没有帮助 关于如何实现这一点的任何想法

【问题讨论】:

【参考方案1】:

错误信息告诉你错误是什么:“message argument must be a Message

排队

await bot.add_reaction(msg, emoji)

msg 是一个字符串,而不是 Message 对象。您需要捕获您发送的消息,然后将反应添加到该消息:

@commands.command(pass_context=True)
async def emoji(ctx):
    msg = await bot.say("working")
    reactions = ['dart']
    for emoji in reactions: 
        await bot.add_reaction(msg, emoji)

请注意,在 discord.py 的更高版本中,add_reaction 已从 bot.add_reaction(msg, emoji) 更改为 await msg.add_reaction(emoji)

【讨论】:

我不明白我必须做什么。谢谢,问题解决了 自定义表情呢?

以上是关于Discord bot 添加对消息 discord.py 的反应(无自定义表情符号)的主要内容,如果未能解决你的问题,请参考以下文章

Discord Bot 读取对设置消息的反应

Discord bot 添加并等待问答游戏的反应

discord.js Bot 重启前没有看到消息

Discord.py bot 在添加反应时将消息重新发送到另一个频道中断

角色反应 Discord Bot

Discord bot 从用户消息中获取照片