前言
我自己的Bot在LLOneBot和Napcat两种部署方式下都会出现被反复踢下线/版本过低的问题,使用OlivOS内置的Gocq也会出现版本过低的问题(且存在无法接收图片),在交流群内提到相关问题后得知了AstralGocq项目,抱着试一试的心态通过分离式部署对接上了OlivOS,没想到前面的问题都解决了,稳定性在我测试过程中表现非常好(未出现风控/版本过低无法登录的问题,稳定在线天数7+)。
在论坛/交流群/github issue发现很多人遇到类似的问题,使用写篇教程来提供一种解决方向,如有错误欢迎指正
什么是AstralGocq?
Astral-Gocq是由赵怡然(蓝波-zhaodice)接手的GO-CQHTTP,正在迁移至NT协议,使用内置闭源Sign服务器,稳定性不错,使用流程简单,部署配置容易。
项目地址:https://github.com/ProtocolScience/AstralGocq
感兴趣的小伙伴可以去项目主页点点Star
教程使用的版本
OlivOS:0.11.51
「苏打饼干」
OlivaDice:3.3.27
Astral-Gocq:v1.3.1-pre-3
系统版本:Windows 11 专业版24H2
/Windows 10 专业版22H2
/Windows Server 2022 Standard 21H2
PS:以上版本均部署成功
需要准备的资源
OlivOS:0.11.51
「苏打饼干」(如果你是想直接对接OlivaDice可以直接获取OlivaDice)
- 站内发布贴:【0.11.51】OlivOS - 「苏打饼干」版本已发布
- 前往官方交流群在群文件中获取
OlivaDice(推荐):3.3.27
(整合包包含OlivOS)
- 站内发布贴:【3.3.27】OlivaDice 青果掷骰机器人 - 已发布
- 前往官方交流群在群文件中获取
Astral-Gocq:v1.3.1-pre-3
- 可以直接前往github发布页获取对应版本
https://github.com/ProtocolScience/AstralGocq/releases - 也可以点击直接下载
github:AstralGocq_windows_amd64.exe
站内文件:astralgocq-windows-amd64.zip5MB - 蓝奏云
https://wwjd.lanzout.com/i9Osp2o8rnni
密码:c6iy
(均为Win 64位的版本,其他版本请前往github获取)开始教程
(操作均在Windows 11 专业版24H2环境下进行)1.准备工作
获取到需要使用的资源
解压OlivaDice到单独的文件夹
创建AstralGocq
文件夹,将AstralGocq_windows_amd64.exe
放入
2.启动并配置OlivOS
进入OlivaDice
文件夹,双击运行OlivOS.exe
。
点击创建账号,选择账号类型
-onebotV11/Http
,填入账号
-机器人QQ
,地址
-http://127.0.0.1
,端口
-5700
,token
-随便写写(abc)
,然后点击保存。(端口也可以自定义,需要在后续AstralGocq的设置中同步修改)
点击启动OlivOS
,耐心等待加载
加载完成后,在OlivOS日志中找到上报地址(如下图所示)将其复制出来备用(不过一般都是这个 http://127.0.0.1:55001/OlivOSMsgApi/qq/onebot/default
),OlivOS这边配置到这就是完成。
3.启动并配置Astral-Gocq
进入AstralGocq
文件夹,双击运行AstralGocq_windows_amd64.exe
,此时会弹出警告,点击确定
-确定
-确定
,窗口会自动关闭并且在目录下生成一个go-cqhttp.bat
文件。
双击运行go-cqhttp.bat
,依次输入0
-机器人QQ号
-机器人QQ密码
(密码留空使用手表协议,否则默认安卓Pad协议),然后关闭窗口或者Ctrl+C。
此时目录下已经生成了AstralGocq
的配置文件config.yml
,双击打开配置文件(可安装VS Code等软件增加文件可读性,如果没有请使用记事本打开)。
翻到文件的最下面,找到servers-https-post配置项(图中第87行处),添加配置- url: "http://127.0.0.1:55001/OlivOSMsgApi/qq/onebot/default"
(注意缩进,该地址为OlivOS上报地址,注意一致性,如果在OlivOS配置过程中有自定义地址端口需要同步修改),保存并关闭编辑器。
再次双击运行go-cqhttp.bat
,输入1/2
任选一种验证方式。
验证通过后会显示,如果没有黄色的Warning和红色error应该就是成功了。
可能遇到的问题
1.在配置过程中系统可能会多次出现防火墙放通请求,全部允许即可。
2.如果遇到OlivOS收不到消息(日志没反应)或者以下情况
请检查你的AstralGocq配置文件中的上报地址和OlivOS上报地址是否一致,提供一个经典错误案例。
你发现了吗?没错0和O!
注意事项
1.写本教程的初衷为了给目前和我遇到同样问题的骰主提供一种解决方向。
2.据说OlivOS后续会内置该版本的Gocq,如果不想分离部署/不急用的骰主可以耐心等待。
3.截至教程完成,Astral-Gocq以及实现NT协议的图片和语言支持,有需要的骰主可以考虑。
4.本教程中使用的Astral-Gocq v1.3.1-pre-3
内部协议为安卓9.1.35
,截至本教程完成安卓QQ最新版为9.1.35.22670
,理论上完美解决了版本过低的问题。据我以往经验推测的安卓协议>PC协议>手表协议,理论上LLonebot所出现的“身份验证失败,请重新登录”的问题在一定程度也能得到缓解。
5.最后感谢赵赵提供的强力技术支持。
写的有一点啰嗦了好像