配置基于GsCore的鸣潮TelegramBOT
“漂泊者工坊小助手”的声骸评价用起来实在是不太令人满意。最近发现了一款新的Q群机器人,声骸评价更加合理,且有自动签到等功能,但是又懒得找有机器人的Q群加,于是决定自己部署一个机器人,并配置为TelegramBot,避免本地运行的困扰。
VPS环境:2c4g,系统为Debian12。
写在前面,目前已知的小问题:
- 由于Telegram的压缩机制,图片在手机上确实有点糊,不过总的来说还是能看清的。电脑上查看会好一些。
- 设置面板图等部分命令无法使用,估计原因是OnebotV11标准对Telegram的消息格式适配不好,毕竟本来是给QQ用的嘛。不过主要的声骸评分等命令都是没问题的
配置GsCore
拉取GsCore
与官方文档不同,我使用了Docker Compose进行配置,默认已经完成Docker的安装。
1 |
|
启动Docker Compose
只要是近期安装的docker应该都是使用
docker compose
命令吧,旧版请自行替换为docker-compose
先修改一下docker compose文件吧,不知道作者出于什么目的修改了端口。
1 |
|
然后先启动一下
1 |
|
记得先修改一下用户密码,默认账户密码是root/root
,在左边栏寻找用户管理以修改密码
配置master
GsCore还有一份无法在网页设置的config,设置好master之后才能直接在机器人用命令安装插件。
config.json
文件位于opt/gsuid_core_data/config.json
先到UserInfoBot获取自己的账号ID。
用nano
或者vim
打开config.json
文件之后,配置如下部分
1 |
|
其他的可以不管,以后用到了再了解。
然后别忘了重启一下docker compose让配置生效
1 |
|
设置图片发送
由于后续tgbot的webhook使用自签名证书,出现了奇奇怪怪的证书问题,所以在这里需要提前设置一下图片的发送格式
进入GsCore的管理面板http://IP:8765/genshinuid
在侧边栏找到修改插件设定
一项,在core
一栏,启用将图片转链接发送(需公网),并且设置转链接为http://IP:8765
然后在GsCore发送图片
一栏,将Onebot图片发送方式
改为link_local
配置nonebot
目前各类Q群机器人(当然我们是要部署到tgbot上)以我的理解大致分为三层。
最上层就是我们刚刚配置好的Gscore,这部分负责具体的数据获得与处理。然后是中间层,负责沟通最上层与最下层。最下层就是具体负责发送消息的部分。
小吐槽:因为目前生态都是基于各类土法QQ机器人的,显得尤为屎山代码。。。虽然说这样模块化的设计倒也不是没有意义就是。但是完全可以由Gscore直接对接某个符合例如onebotV12标准(尽可能通用化的标准,目前我的了解只有onebotV12)的Bot,省去中间层,变得更加轻量化而易于部署
所以这部分要配置的NoneBot就属于中间层的部分
安装nonebot
nonebot我没找到可以直接用docker的,所以直接部署到本机了
首先确认Python版本>=3.9,并且官方文档也强烈建议使用虚拟环境
作为一个标准懒狗,安装什么的肯定都是让apt
代劳啦。以后遇到问题了再研究吧。
1 |
|
然后安装nb脚手架
1 |
|
脚手架安装完毕也就算安装好了,接下来是配置部分
配置nonebot
使用脚手架创建项目
1 |
|
如此会进入脚手架的交互式创建流程中。命名请自行选择,我命名为wuwa
,以下都用wuwa
为参考。
交互式安装过程我就不截图了。
具体来说:
模板: bootstrap
适配器: OneBot V11
驱动器: FastAPI,HTTPX,websockets。
立即安装依赖: Yes
创建虚拟环境: Yes
内置插件不需要安装,直接回车。
这样一个nonebot项目就创建好了,文件都在./wuwa
里
安装GenshinUID
GenshinUID是一个nonebot的插件,用于连接GsCore与nonebot。
我们以用户模式安装即可
1 |
|
这样noneot就配置好了。
由于nonebot启动后会一直在终端输出日志,直接使用最懒狗的screen
大法解决
1 |
|
配置Gensokyo-Telegram
OnebotV11标准是为QQbot设计的,最后在Github找到了由Hoshinonyaruko开发的符合OnebotV11标准的TelegramBot。总体用起来还是能满足需求的。
1 |
|
此时会在~/gensokyo/
中生成config.yml
。用nano或者vim打开并编辑
1 |
|
这样就配置好了,还是用screen启动并使其后台运行
1 |
|
不出意外这样Bot已经可以运行了,可以试着向你的Bot发送帮助
,运行正常的话这会已经会有反应了。
安装WutheringWaveUID插件
再次进入GsCore的管理面板http://IP:8765/genshinuid
。
在插件管理下安装插件
或者直接对bot发送core安装插件WutheringWavesUID
。之前已经配置好master账户了,合理没问题。
安装完毕!开始使用鸣潮bot吧
这样就算安装完毕了,发送ww帮助
可以获得命令帮助。自行绑定token和UID之后就可以开始愉快使用了。token获取方法与其他小程序相同,也可以直接在库街区cookie中获得。