如何在Bot启动之前发送的消息上使用discord.on_reaction_add()

时间:2019-10-31 21:44:59

标签: discord discord.py

我的Discord僵尸程序只能对在僵尸程序启动后添加到邮件中的反应做出反应。 如果我对旧邮件添加响应,它将不会响应。 无论消息何时发送,我如何使它对添加的每个反应做出反应?

@client.event
async def on_reaction_add(reaction, user):
    print(str(reaction.emoji), str(user))

当我对Bot启动后发送的消息添加响应时,它工作正常。

User#1234 added a reaction to a message

当我对Bot启动之前发送的消息添加响应时,它什么也没做。

1 个答案:

答案 0 :(得分:1)

on_reaction_add仅适用于机器人内部缓存中存储的消息,其中仅包括启动后发送的消息。要处理来自其他消息的响应,必须使用on_raw_reaction_add事件:

@client.event
async def on_raw_reaction_add(payload):
    user = client.get_user(payload.user_id)
    print(str(payload.emoji), str(user))
相关问题