首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于*任意*事件discord.py

关于*任意*事件discord.py
EN

Stack Overflow用户
提问于 2020-07-02 19:41:05
回答 1查看 998关注 0票数 0

我想为每个事件运行一个特定的代码块。我想,如果有类似on_any_event的东西,这可能是最简单的。然而,我似乎在文档或网络上找不到任何东西。有没有人知道是否有办法这样做,如果有,怎么做?

其他信息:

  • discord.py-rewrite

提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-07-04 10:23:34

我认为有两种可能性:

discord.py中的大多数事件afaik都是套接字响应的“处理程序”。您可以尝试使用on_socket_response(message)事件。对于所有基于websocket的事件来说,这应该足够了。

如果您确实需要任何事件,可以尝试在子类中覆盖dispatch函数,并将该类用作bot的类。例如:

代码语言:javascript
复制
from discord.ext import commands

class MyBot(commands.Bot):
    def dispatch(self, event_name, *args, **kwargs):
        super().dispatch("event", event_name)
        super().dispatch(event_name, *args, **kwargs)

bot = MyBot(command_prefix="!")

这将在任何事件上分派额外的事件。

代码语言:javascript
复制
@bot.event
async def on_event(event_name):
    print(f"{event_name} is dispatched")
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62703907

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档