python messenger bot聚合器,支持不一致、电报和潜在的其他

botter的Python项目详细描述


Botter-创建跨Messenger机器人程序的简单界面

botter是一个框架,允许您的机器人在任何可用的Messenger中运行。 目前,Discord只有一个实现, 但它很容易实现其他平台。

好吧,我们开始吧!

开始

创建应用程序

首先,您应该在所需的平台中注册一个bot。 由于所有的信使都提供了不同的方法,我们将不在这里描述这个过程。

创建处理程序

botter使用基于事件的体系结构,具有最常见的事件-MessageEvent。 事件由EventHandler处理。

所以,让我们创建自己的:

frombotter.apiimport*frombotter.api.handlersimport*classSimpleEchoHandler(ReplyHandler):asyncdefhandle_message(self,message:InboundMessage)->Message:returnMessage(f"You've said:\n"+message.text)

这里我们使用ReplyHandler,它:

  • MessageHandler
  • 检查事件是否为MessageEvent
  • 使用来自事件的消息调用方法handle_message()
  • 如果此方法返回Message而不是无, ReplyHandler会将其发送到服务器,同时提到原始邮件的作者。

将机器人装箱

然后我们需要创建一个Bot对象,它聚合处理程序并映射到实现。 这里我们以不和谐驱动程序为例。

frombotter.discordimportDiscordBotclassEchoBot(Bot[DiscordBot]):token='INSERT_YOUR_TOKEN_HERE'event_handlers=[SimpleEchoHandler]client=DiscordBot(token=token)

好吧,我们试试看!

Simple EchoBot - Discord

哇!它起作用了!

扩展事件

现在,让我们试着在活动中找点乐子。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Rest DSL路由无法启动路由,因为同一端点不允许有多个使用者   jvm有没有像JConsole或VisualVM这样的工具可以告诉我“类、对象、引用变量在java中存储在哪里?”   java为什么我的列表中的所有元素看起来都一样?   java运行时。运行shell脚本的exec无法打开文件   JPopupMenu的JMenuItem的java热键   会话在Java中被覆盖   如何在java中去除字符串中的尖锐重音?   java Mockito监视一个接口,模拟它的默认方法,获取NullPointerException   javascript如何在jquery中禁用同一时间选择   将数组列表附加到现有CSV文件,但它会附加并清除存储在Java文件中的以前的数据   java从我的jar中访问pdf文件   java Sonar issue参数必须为非Null,但标记为可为Null   java Salesforce流式API:在网络故障之后和重新订阅之前获取事件   在Java 1.8.0_65上运行Play2.0应用程序时出现playframework错误   java为什么字母的ASCII由方法自动转换。toCharArray()?   java如何知道JDialog是否关闭?   java向服务器发送POST请求,服务器的响应为null,启动   java如何设置JTable中特定单元格的值?   ImagePlus中的java保存问题