Coder Social home page Coder Social logo

meloland / melobot Goto Github PK

View Code? Open in Web Editor NEW
14.0 1.0 1.0 3.1 MB

基于 python,插件化管理、异步会话机制的机器人框架

Home Page: https://docs.melobot.org

License: BSD 3-Clause "New" or "Revised" License

Python 82.14% Markdown 13.97% reStructuredText 3.89%
asyncio python coroutines high-concurrency qqbot qqbot-framework bot qq qq-bot onebot onebot11

melobot's Introduction

melobot

插件化管理、基于异步会话机制的机器人开发框架

license - BSD-3-Clause license - CC-BY-SA-4.0 melobot docs GitHub Repo stars cqhttp

Made with Python PDM - Managed PyPI Code style: black Checked with mypy

🔄 工作计划

主分支为 melobot v2 的代码,melobot v3 正在其他分支开发。v3 计划支持各种协议以扩展至各种平台提供机器人服务。主分支目前不再接受功能新增,但仍然接受 bug 修复直至 melobot v3 发布。

我们不建议您现在迁移到 melobot,因为 v3 版本会在 24 年 6 月初发布,届时 v2 将会停止维护。现在迁移到 melobot v2 是不必要的。

有任何意见或建议,欢迎加入 qq 群与我们讨论:535705163

⚠️ 声明

melobot 是由热爱技术的开发者共同维护的开源项目。我们致力于提供一个可靠、高效的软件工具,以促进技术交流和创新。以下简称 melobot 项目为“本项目”。

本项目严禁用于任何非法目的,包括但不限于侵犯版权、商标、商业机密或其他知识产权,以及违反任何适用的法律和法规。我们不对因非法使用本项目而产生的任何直接、间接、附带、特殊、惩罚性或后果性损害承担责任。

🎉 简介

melobot 是基于 Python 的机器人开发框架。目前已完成版本为 v2,只适用于搭建 qq 机器人,v3 正在开发中。

melobot v2 以Onebot 标准的实现程序作为前端,通过对来自“前端”的各种“事件”的处理,产生“行为”提交给“前端”,让“前端”与 qq 服务器交互,从而实现各种复杂的功能。

✨ 特色

为什么选择 melobot?因为 melobot 更自由、优雅和强大

  • 异步性能:基于 asyncio,但使用性能更优秀的事件循环策略:uvloop/winloop
  • 插件管理:更低耦合度的插件加载与通信
  • 会话控制:自动传递的、可自定义的会话
  • 预处理流程:可传播会话信息的、灵活的、可自定义的事件预处理
  • 生命周期控制:支持 bot 生命周期 hook
  • 多实例协同:多 bot 实例运行,跨实例通信
  • 异步接口:常用异步逻辑的封装,使各种业务逻辑更简洁
  • 日志支持:日志记录兼容标准库和绝大多数日志框架

使用本框架的机器人项目如下:

你可以将这些项目作为 melobot 使用的实例参考。欢迎你基于 melobot 实现完整的机器人项目后,向本文档提出 PR,在此处展示。

💬 文档

项目文档:melobot 文档(v2 版本且不完整)

对于文档可能出现的纰漏,恳请各位包涵。欢迎提出修正和优化文档的 PR:文档源文件

📦️ 安装使用

通过 pip 命令安装:

pip install melobot

或从源码构建:

本项目通过 pdm 管理,你首先需要安装 pdm

# 随后在本项目根目录:
pdm install
pdm build

之后可在 .pdm-build 目录获取本地构建,pip 本地安装即可。提示:首次运行 pdm 需要初始化虚拟环境,请参照 pdm 文档操作。

🪄 版本特性

  • python 版本需要 >=3.10
  • 可跨平台使用
  • 通信标准:OneBot v11

📜 开源许可

本项目使用双许可证。

docs 目录内所有内容在 CC-BY-SA-4.0 许可下发行。

此部分版权主体为:

melobot 文档的所有贡献者

docs 目录外所有内容在 BSD 3-Clause 许可下发行。

此部分版权主体为:

melobot 项目代码的所有贡献者

melobot's People

Contributors

aicorein avatar

Stargazers

Snowykami avatar  avatar sailor avatar Bluebluecuckoo avatar 柠檬味的凝萌 avatar  avatar 雪と葉 avatar tianyidedog avatar mengniu8 avatar Niranjan Anandkumar avatar  avatar  avatar Sui Yishu avatar  avatar

Watchers

 avatar

Forkers

snowykami

melobot's Issues

无法执行命令

【系统环境】
linux x86_64架构,Debian 11,Python 3.9.2

log:
[2023-03-19 08:58:53] [INFO]: Qbot-MeloBot 版本:v1.2.0, developer: 律回MelodyEcho
[2023-03-19 08:58:53] [INFO]: bot 世界观形成中...  (=´ω`=)
[2023-03-19 08:58:53] [INFO]: bot 意识形成完毕√
[2023-03-19 08:58:53] [INFO]: bot 开始觉醒!~ >w<
[2023-03-19 08:58:53] [INFO]: 与 cq 成功建立 websocket 连接
[2023-03-19 08:59:01] [INFO]: 在 h3 调度器,命令 echo | 需要 user 权限,权限不够呢 qwq 执行成功√
[2023-03-19 09:07:07] [INFO]: 在 h1 调度器,命令 echo | 需要 user 权限,权限不够呢 qwq 执行成功√
[2023-03-19 09:07:13] [INFO]: 在 h4 调度器,命令 echo | 需要 user 权限,权限不够呢 qwq 执行成功√

初始化报错

ImportError: cannot import name 'TypeAlias' from 'typing'

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.