36k-wild-monkey / RainyBot-Core

新手友好,功能丰富,简单易上手的聊天机器人开发框架

Home Page:https://rainy.love/rainybot

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool


Logo

RainyBot

新手友好,简单易上手的跨平台聊天机器人开发框架
立即下载

API文档 · 问题报告 · 功能请求

本页目录
  1. 关于本项目
  2. 开始使用
  3. 插件示例
  4. 开发路线图
  5. 贡献指南
  6. 项目许可
  7. 联系方式
  8. 更多信息

关于本项目

ScreenShot

这是一个跨平台,跨协议 (实现中) 的机器人开发框架,基于 Godot Engine 4.0 进行开发。 本项目成立的目的,是为了建立一个低门槛,简单易用的机器人开发框架。 通过提供大量精心设计的交互API/预置功能,结合GDScript脚本语言的简便语法, 来尽可能地提升开发效率且降低开发难度,且让更多开发经验不足,乃至无经验的用户也能够轻松开发属于自己的各类机器人应用。

功能特色:

  • 模块化设计,大部分API可独立于协议后端存在,通过不同适配器实现即可对接不同协议,实现一次编写多处运行 (当前仅支持Mirai-Http协议后端)
  • 简单易懂的配置与管理,一次配置完成后自动管理各个协议后端的配置/运行/连接,无需每次手动启动或进行设置
  • 完善易用且智能的API,可自动根据传入内容的类型决定与机器人的交互行为;同时内置大量诸如上下文交互,关键词触发,事件阻塞一类的便捷功能
  • 灵活的插件管理机制,支持插件间交互/热重载/热编辑/依赖设定等功能,同时内置功能较为全面的插件编辑器,可便捷地即时开发与修改插件
  • 人性化GUI控制台界面,全中文调试信息输出,未来还将支持插件与GUI的交互(如自定义GUI界面)
  • 开箱即用的各类辅助功能接口,可便捷初始化并管理插件配置,插件数据,事件/命令注册等
  • 活跃的功能开发与问题修复,且将以社区为驱动,广泛采纳各类建议与需求,共同打造属于所有人的RainyBot
  • 更多功能陆续增加中.....

注意:本项目仍处于开发阶段,虽然目前核心功能已完备,但依然有在未经提前通知的基础上进行较大API/功能更改的可能,且可能存在未知的Bug/不稳定因素,请谨慎用于生产环境。

(返回顶部)

基于的项目

以下列表列出了本项目所基于的项目,使用本项目时请同时参考它们的许可信息。

(返回顶部)

开始使用

接下来的部分将介绍如何配置与使用RainyBot

运行需求

支持的操作系统:64位 Windows 7 或以上版本 (Mac OS/Linux支持将在后续版本中添加)

Java 版本 >= 11 (此需求来源于RainyBot默认集成的Mirai协议后端,核心无需任何运行环境)

可选:支持Vulkan渲染器的图形卡 (可通过硬件加速提升性能)

配置与使用

  1. 从GitHub发布页下载最新的发布版本: 立即下载
  2. 运行RainyBot,随后按照控制台显示的说明,打开指定的配置文件进行配置
  3. 配置完毕后请重新启动RainyBot。此时若配置正确,将自动开始加载内置的协议后端(当前版本内置了Mirai协议库)
  4. 请留意 协议后端 的控制台信息,可能会要求您进行登陆验证等操作,您可以从以下链接获取相关帮助: Mirai协议库
  5. 若一切顺利,协议后端的控制台中将出现中文或英文的登录成功/加载成功字样,且RainyBot控制台中将出现加载成功字样
  6. 此时起可最小化协议后端的控制台窗口,后续操作均只需在RainyBot控制台中进行即可。从此处开始,将直接使用“控制台”来表示RainyBot的控制台界面
  7. 在控制台中输入指令help(或/help)来查看所有可用的控制台指令,如输入plugins可查看插件管理相关指令
  8. 恭喜!您成功完成了RainyBot的基本配置,开始尽情使用吧~

源码注意事项

如果您希望从项目源码顺利运行/编译RainyBot,请确保遵循以下条目:

  • 请使用 Commit [2f4d76f068] 或以上版本的 Godot Engine 4.0 来打开本项目。
  • 请将 MiraiMirai-Consolev2.9.2版Jar文件及相关依赖文件置于与Godot编辑器可执行文件同目录下adapters/mirai/libs路径中
  • 请将 Mirai-Api-HTTPv2.4.0版Jar文件置于与Godot编辑器可执行文件同目录下adapters/mirai/plugins路径中

RainyBot的发布版本中已包含以上所需文件,因此无需额外进行配置。若您在配置以上文件时遇到问题,可以直接从最新的发布版本文件包中复制adapters文件夹以及其中的内容,并置于Godot编辑器可执行文件同目录下即可。

(返回顶部)

插件示例

当前的发布版本中随附了六个示例插件,分别为:聊天机器人,随机动漫音乐/图片,简易群管,好友/拉群请求管理,轮盘赌,复读机插件。您可以在plugins文件夹下找到它们,并使用plugins edit指令来进行编辑。 同时,对于使用plugins create指令新建的插件,将自动使用内置的插件模板,以便于您快速开始开发流程。

若需查看更详细的已分类API文档与插件示例,请访问 RainyBot-API 储存库

(返回顶部)

主要功能开发路线图

  • 核心功能完备
  • 整理并将项目开源
  • 支持插件间依赖/加载顺序判断功能
  • 实现上下文交互功能
  • 实现关键词注册与触发功能
  • 完善事件系统,支持事件优先级与阻塞模式
  • 各类API大幅简化/智能化
  • 关键词相关功能的大幅改进
  • 上下文交互功能的大幅改进与简化
  • 完善Http请求功能,支持更多类型的请求与响应
  • 实现插件编辑器的自动补全与错误检查
  • 实现节点化的权限系统
  • 支持通过聊天消息来使用命令系统
  • 为更多内置功能实现GUI化
  • 添加版本检测与更新功能
  • 添加在线插件市场功能
  • 支持多机器人账号同时运行
  • 简化对内部图形相关API的调用,支持可视化制图排版

对于更详细的功能计划,已知问题或功能建议,请访问储存库的 Issues 页面

(返回顶部)

贡献指南

我们非常感谢您有兴趣为本项目贡献源码来让它变得更好。对于代码贡献的流程,我们建议您遵循以下贡献指南:

  1. 在您的储存库中Fork本项目
  2. 创建一个您准备开发的功能或修复的问题的分支 (git checkout -b feature/AmazingFeature)
  3. 提交您的更改 (git commit -m '添加一些功能')
  4. 将更改上传到您的储存库 (git push origin feature/AmazingFeature)
  5. 在本项目储存库中打开一个此分支的Pull Request,来让我们看到并对其进行审阅

(返回顶部)

项目许可

项目基于AGPL-3.0许可进行开源,具体内容请参见LICENSE文件

(返回顶部)

联系信息

交流QQ群: 429787496

Xwdit - xwditfr@gmail.com

项目官网: https://rainy.love/rainybot

项目开源地址: https://github.com/Xwdit/RainyBot-Core

(返回顶部)

更多信息

此处提供了一些可能与本项目有关,或对您有帮助的信息

(返回顶部)

About

新手友好,功能丰富,简单易上手的聊天机器人开发框架

https://rainy.love/rainybot

License:GNU Affero General Public License v3.0


Languages

Language:GDScript 100.0%