{"repo":"ArcletProject/Entari","free":true,"listed":false,"github":"https://github.com/ArcletProject/Entari","clone":"git clone https://github.com/ArcletProject/Entari.git","description":"A simple IM framework based on Satori Protocol. 基于 Satori 跨平台协议的 IM 框架","language":"Python","stars":37,"topics":["python","asyncio","satori","satori-protocol","chatbot","event-driven","high-performance","hmr","hot-module-replacement","hot-reload"],"license":"MIT","category":"ai-agents","readme_excerpt":"Entari lí no etheclim, nann ze entám rish. 一个基于 Satori 协议的灵活、高效的 IM framework 特性 - 基于 Satori 协议，一份代码即可对接多种平台 - 异步并发，基于 Python 的异步特性，即使有大量的事件传入，也能吞吐自如。在常规使用下能达到1000+ RPS - 易上手的开发体验，没有过多的冗余代码，可以让开发者专注于业务逻辑 - 既可集成式也可分布式的配置文件，内建且可拓展的配置模型 - 即插即拔，可热重载、可重用的插件机制 - 自定义服务、自定义事件等高度可拓展的功能 - 高度可拓展的事件响应器，能够依托强大的、符合直觉依赖注入进行会话控制 - 内置强大的命令系统、定时任务系统与多种插件 示例 使用 entari-cli 命令行: 使用的配置文件: 复读: 指令 add {a} {b} : 编写插件: 加载插件: 在其他插件中导入插件: 配置文件 - basic : Entari 基础配置 - network : 网络配置, 可写多个网络配置 - type : 网络类型, 可填项有 ws , websocket , wh , webhook - host : satori 服务器地址 - port : satori 服务器端口 - path : satori 服务器路径 - ignore self message : 是否忽略自己发送的消息事件 - log : 日志配置 - level : 日志等级, 可填项有 TRACE DEBUG , INFO 等 - prefix : 指令前缀, 可留空 - plugins : 插件配置 - $files : 额外的插件配置文件搜索目录 - $prelude : 预加载插件列表 - .record message : 消息日志并配置 - record send : 是否记录发送消息 (默认为 true ) - .commands : 指令插件配置 (适用于所有使用了 command.on/command.command 的插件) - need notice me : 指令是否需要 @ 机器人 - need reply me : 指令是否需要回复机器人 - use config prefix : 是否使用配置文件中的前缀 - ::auto reload : 启用自动重载插件并配置 - watch dirs : 监听目录 - watch config : 是否监听配置文件的变化 (默认为 true ) - ::echo : 启用回声插件 - ::help : 启用帮助插件并配置 - help command : 帮助指令, 默认为 help - help alias : 帮助指令别名, 默认为 [\"帮助\", \"命令帮助\"] - page size : 每页显示的指令数量, 留空则不分页 对于其他插件的配置, 有四种写法: 1. foo.bar: {} (仅启用插件) 2. foo.bar: xxxx (禁用插件，即加载但不启用) 3. foo.bar: {\"key\": \"value\"} (启用插件并配置) 4. ?foo.bar: xxxx (仅存储插件配置, 不加载插件)","default_branch":null,"files":null,"tree":[],"storefront":"/r/ArcletProject","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/ArcletProject/Entari/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}