A plugin to run go-cqhttp directly in NoneBot2, without additional download and installation.
一款在 NoneBot2 中直接运行 go-cqhttp 的插件, 无需额外下载安装.
愿我们能在更加开放的平行世界再次相遇。
旧时代已经过去咯,新时代且行且看吧
对标koishijs/koishi-plugin-gocqhttp
便于部署: 部署时只需启动一个 Bot 进程即可, 无需其他附加工具
易于使用: 本插件提供一个简单的 WebUI, 可以直接在图形界面中添加账户:
添加帐号 | 控制进程 |
查看状态 |
还有更多... 如果你觉得这个插件很赞, 欢迎返图! |
跨平台支持: 根据反馈, 本插件已可以在MacOS
/Linux
/Windows
上运行, 且不受异步子进程调用带来的限制
要求最低 Python 版本为 3.8
本项目提供以下可选配置项, 请在.env
中自行进行配置
如果想要获取更多配置文件相关信息, 请阅读源代码
GOCQ_ACCOUNTS
: 要登录的 QQ 账号列表, 为一个 json 数组
-
支持的字段:
uin
: QQ 账号 (必填)password
: QQ 密码, 不填将使用扫码登录protocol
: 数字, 是登录使用的客户端协议
-
示例:
[ { "uin": "QQ帐号", "password": "密码" } ]
GOCQ_URL
: 下载 URL, 默认为空, 设置该项目后以下几个与下载有关的配置项目将失效
GOCQ_DOWNLOAD_DOMAINS
: 下载域名列表, 会从中选取延迟最低的进行下载
GOCQ_REPO
: 要下载的仓库, 默认为Mrs4s/gocqhttp
GOCQ_VERSION
: 要下载的版本, 默认为空, 即下载最新版本
GOCQ_FORCE_DOWNLOAD
: 强制在启动时下载, 默认为 false
GOCQ_PROCESS_KWARGS
: 创建进程时的可选参数, 请参照代码进行修改
GOCQ_WEBUI_USERNAME
/GOCQ_WEBUI_PASSWORD
: WebUI 的登录凭证, 不设置即不进行验证
GOCQ_CONFIG_TEMPLATE_PATH
: 自定义默认模板配置文件路径
GOCQ_TUNNEL_PORT
: 可以用此项配置指定端口创建一个 HTTP 代理服务器, 以便于使用服务器的网络环境进行连接, 在使用二维码登录的时候可能有用. 默认为空, 即不创建
- 此功能为可选功能
请在使用前在运行环境中
pip install nonebot-plugin-gocqhttp[proxy]
安装以补全依赖 - 请务必在不使用时关闭以防止被滥用
- 如果您在中国境内请不要尝试通过此功能连接国外服务器, 有极大可能导致服务器 IP 被屏蔽
- 关于如何在您的设备上使用该功能提供的代理, 请搜索
如何在<设备系统>上使用HTTP代理
配置好了以后启动你的 Bot 即可
-
需要注意以下几点:
-
本插件会在 Bot 工作目录下创建
accounts
文件夹用于存储go-cqhttp
的二进制和账户数据文件, 如果你使用版本管理工具(如git
), 请自行将该文件夹加入忽略列表 -
本插件通过子进程调用实现, 如果你在外部通过手段强行终止了 Bot 进程, 请检查开启的子进程是否也同样已终止
-
如果你的 Bot 监听来自所有主机的连接(比如监听了
0.0.0.0
), 或者它向公网开放, 强烈建议设置 WebUI 登录凭证以防止被未授权访问
-
-
本插件提供了一个仅
SUPERUSERS
能使用的命令:gocq
, 可以用来查看当前运行的go-cqhttp
进程状态
koishijs/koishi-plugin-gocqhttp
: 本项目直接参考(直接开抄)Mrs4s/gocqhttp
,nonebot/nonebot2
:(看看项目名, 什么成分不用多说了吧)本项目的套壳的核心
感谢这些大佬对本项目作出的贡献:
Well404 🐛 |
pthmz 📖 |
SK 🐛 |
MistEO 🐛 💡 |
scdhh 💻 |
nicognaw 📖 |
本段符合 all-contributors 规范
由于go-cqhttp
使用了AGPL-3.0许可证, 本项目也同样使用该许可
注意! 如果在您的项目中依赖了该插件, 您的项目必须以该许可开源!
A plugin to run go-cqhttp directly in NoneBot2, without additional download and installation.
Copyright (C) 2022 Mix
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published
by the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.