序言
QQ在近几年开放了机器人接口,但配置之复杂,提审时间久,让我放弃了念头。
新创建的QQ机器人要求需要回调地址(意味着需要开放80/443的公网IPv4地址),这无疑增加了运营的成本。
那么,有没有一种简单又快捷的办法,部署QQ机器人呢?答案当然有,那就是使用个人QQ号搭建的方案:Lagrange + TRSS-Yunzai的做法。
准备
部署Lagrange + TRSS-Yunzai QQ机器人,你需要准备:
本文演示在Debian 12系统搭建。
部署协议端:Lagrange
下载Lagrange
首先,下载Lagrange.Core位于你的服务器中
选择右侧的Release-1tags-nightly-对应你的系统和架构,下载。
下载后,解压到服务器的任意路径,例如:/QQBot/Lagrange/Lagrange.OneBot
启动Lagrange
我们建议使用screen命令让Lagrange一直运行在后台。
screen -S Lagrange
下次进入时,使用
screen -r Lagrange
即可回到Lagrange
在创建好screen后,cd到Lagrange所在目录,先设置可执行权限,随后使用命令启动Lagrange。
cd /path/to/Lagrange
chmod +x Lagrange.OneBot
./Lagrange.OneBot
当输出
No exist config file , create it now ...
Please Edit the appsettings . json to set configs and press any key to continue
结束进程,修改appsettings.json
"Port": 8080,
"Suffix": "/onebot/v11/ws",
修改端口号和路径,例如:
"Port": 2536,
"Suffix": "/OneBotv11",
Tips:2536为云崽默认WebSocket端口
随后再次启动,Lagrange会启动并打印出登录二维码。你需要使用摄像头扫描二维码,并登录QQ。
部署框架:TRSS-Yunzai
部署云崽前,需要先部署前置环境Node和Redis
安装Node
这里我们使用指令安装Node
# 下载并安装nvm:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
# in lieu of restarting the shell
\. "$HOME/.nvm/nvm.sh"
# 下载并安装Node.js:
nvm install 24
# 验证Node.js版本:
node -v # Should print "v24.5.0".
nvm current # Should print "v24.5.0".
# 验证npm版本:
npm -v # Should print "11.5.1".
安装完Node后,我们来安装Redis
安装Redis
这里使用Debian包管理器(APT)安装Redis-Server
sudo apt update
sudo apt install redis-server
随后,验证Redis是否成功启动
sudo systemctl status redis-server
安装完Node和Redis后,便可以部署云崽了
部署TRSS-Yunzai
这里采用Git拉取代码。如果未安装Git,请自行安装
我们先使用cd命令导航到安装的位置,随后使用命令拉取云崽
git clone https://gitee.com/TimeRainStarSky/Yunzai.git
拉取之后,导航到云崽目录内
cd Yunzai
随后,安装pnpm和依赖
npm i -g pnpm
pnpm i
拉取完之后,你还需要安装puppeteer和Chromium,因为不少插件都依赖它们实现生成图片等功能。
npm install puppeteer
sudo apt install -y libatk1.0-0 libatk-bridge2.0-0 libcups2 libxkbcommon0 libxcomposite1 libxdamage1 libxfixes3 libxrandr2 libgbm1 libpango-1.0-0 libcairo2 libasound2
理论上,puppeteer会自动下载适配版本的Chromium。如果未下载,请手动安装。
如果你的Linux系统没有安装ffmpeg,请手动安装。
启动TRSS-Yunzai
我们先创建一个screen:
screen -S Yunzai
下次查看云崽时,可以使用命令回到云崽:
screen -r Yunzai
我们先使用cd导航至TRSS-Yunzai目录(如果已经位于目录就不用再次执行)
随后,使用指令启动TRSS-Yunzai
npm run app
如果启动成功并成功连接到协议端,那么大功告成!
随后,设置主人
导航到Yunzai目录下/config/config/other.yaml,修改配置文件内容:
master:
- "stdin:stdin"
- "114514:1919810"
#此处假设Bot账号QQ号为114514,主人账号QQ号为1919810,根据自己情况修改
至此,云崽已经部署完成。你可以尝试向Bot账号发送消息,当显示在控制台即为成功。
安装插件
访问 Yunzai-Bot-plugins-index: Yunzai-Bot相关内容收集库,自行查找需要的插件,并安装。
结语
此文章介绍了如何使用Lagrange+TRSS-Yunzai搭建QQ机器人的教程,希望对你有帮助!