Chatgpt-QQ机器人搭建
环境:云服务器Centos
此教程已于2023.2.22优化
下载对应资源包:
下载:
wget http://www.zhanghaobk.com:81/qq-rebot/linux/qq-rebot.tar.gz -O linux-qq-rebot.tar.gz
#Windows和mac的资源包请访问:http://www.zhanghaobk.com:81/qq-rebot
解压:
tar -zxf linux-qq-rebot.tar.gz
config.json填入api_key,可以去ChatGPT查看:
在config.json中:
- Command 触发命令
- Regexp 关键词触发 (放在QQ消息开头,可以参考下面演示)
- Filter 可以屏蔽关键词
安装运行go-cqhttp:
#安装
rpm -ivh go-cqhttp_1.0.0-rc4_linux_amd64.rpm
#运行
go-cqhttp
#通信方式选择2
#第一次运行后会生成config.yml
#在config.yml中填上自己的QQ号,倒数第三行端口填6700
#再次运行go-cqhttp,可以进行QQ扫码登陆;云服务器的话推荐用QQ加密的方式登陆,请读者自行探索
注:扫码登陆QQ的方式仅限于手机与服务器端需要在同一局域网才行
运行main:
./main
可以使用screen命令将main和go-cqhttp挂在后台:
screen -S chat-cqhttp
screen -S chat-main
screen命令具体使用可参考:https://www.cnblogs.com/sillage/p/13994332.html
登陆相关说明
- 方式一
使用Windows版本的go-cqhttp生成可用的device.json与session.token,替换到云服务器,(Linux和Windows云服务器通用) - 方式二
使用TCPRoute实现,项目地址:https://github.com/GameXG/TcpRoute2
此处以Linux云服务器为例,大致的使用方法是:
下载压缩包:TcpRoute2-linux-amd64.zip
解压和配置:
unzip TcpRoute2-linux-amd64.zip -d tcproute
cd tcproute
cp config.toml.example config.toml
vim config.toml
将addr="127.0.0.1:7070"
改为addr=":7070"
,当然端口你可以自定义,不一定非要用7070
运行TcpRoute2-linux-amd64
:
./TcpRoute2-linux-amd64
然后要用到v2ray
这个软件,项目地址:https://github.com/2dust/v2rayNG
手机上添加相应配置如下:
输入一个备注名,IP和端口,其他不用管:
配置好后选择该配置,然后开启v2ray
服务器运行go-cqhttp然后手机QQ扫码就能正常登陆了。
上述两个方式可以具体可以参考视频:https://www.bilibili.com/video/BV1tW4y147pL/?spm_id_from=333.880.my_history.page.click&vd_source=452456772b820a1c5e17308614dca787
演示
问题
open cache image db failed: resource temporarily unavailable
程序还在运行,先使用ps -ef | grep go-cqhttp查看程序ID然后kill掉再重新启动就好了
此问题可参考:https://github.com/Mrs4s/go-cqhttp/issues/1216
扫码失败,已失效或存在异常。190d5c58cb3895bf
扫码登陆QQ的方式仅限于手机与服务器端需要在同一局域网才行,可以参考前面的登陆相关说明