👉👉首先推荐一下我的qqbot项目,自写qq机器人业务逻辑后端,纯go编写,也支持telegram。Gobot-vio
搭建一个qq机器人,你至少需要启动三个服务
- qsign服务器
- go-cqhttp
- 你自己的机器人后端
gocq只需要启动项目即可,不需要配置域名,qsign和你的后端都需要配置域名
为了可以实现双向通信,你的后端需要实现websocket的通信。
gocqhttp项目已经无力维护,后期计划迁移至ntQQ框架。(gocqhttp已停更,qsign已跑路,ntQQ已死)目前推荐使用openshamrock项目(可能需要Android环境)
项目地址:https://github.com/whitechi73/OpenShamrock
qsign
从dokcer hub中搜索qsign,按照更新时间排序,找到一个能用的,运行pull命令。
注意,下载次数最高的镜像无法拉取的,删了跑路了,时间排序到一个有新版本的镜像,低版本的qsign可能会无法登陆。
如果是通过宝塔部署,在镜像中通过镜像搜索,找到qsign相关镜像无法拉取,都是该镜像跑路了,仓库中不存在,换一个镜像重新拉取即可。
建议将其部署在国外服务器上。
通过请求qsign服务器,gocq会得到一个token,这个token需要一段时间后刷新,所以需要qsign服务器一直保持活跃。
可以使用docker拉取一个镜像,快速部署,部署后配置域名,get该地址可以获得一个json信息为配置成功。
注意:最好部署新的版本,如9.0.8,但是docker镜像很多都是镜像只支持老版本,要用新版本需要手动导入新的版本文件,到挂载卷里
如果你熟悉docker,会最基本的卷挂载,端口映射可以使用:
https://hub.docker.com/r/bennettwu/qsign-server
这个镜像的发布者说明也很清楚了,可以不用命令行部署,直接宝塔拉取镜像,创建容器,然后进入容器挂载卷的文件夹内,把9.0.8版本的文件放入,注意,不是文件夹,是覆盖’/app/txlib’内的
!
这个镜像较为完整,功能也正常,到docker挂载卷的文件中放入9.0.8版本的qsing文件,同时修改config文件。
config中一点要设置自动注册实例为true,并且设置端口,config中设置的端口将直接影响容器内端口映射是否能正确
最后这个镜像可以通过:'http://your-site:1145/sign'来访问该qsign服务。
其中,1145是我手动映射到容器的外部端口,/sign是该镜像指明的url访问。
如果不熟悉docker,可以使用如下镜像一键部署9.0.8版本
https://hub.docker.com/r/woxigousade/qsign
注意,该镜像在被请求一次后,容器可能会停止,需要自己设置自动重启。同时实例自动注册可能出现问题,原因未知,因为本人熟悉点docker,我已经换上面的那个了。
部署可以直接参考docker镜像发布者的说明。
通过命令行,镜像run个容器:
docker run -d -p 9000:8080 --restart=always --name=qsign -e VERSION=9.0.8 woxigousade/qsign:latest
命令解释:
- 服务器9000端口映射容器内8080端口
- 重启策略设置为"always"
- 创建的容器名为’qsing’
- 使用版本9.0.8
完成了docker部署,并启动容器之后给该docker部署的镜像设置公网可以访问的域名或者暴露该端口(如9000)直接用端口号访问即可,直接get会有json信息返回,鉴定为部署成功,返回code 0和1都是正常的,主要要看gocq的登录返回信息。
{
"code": 1,
"msg": "Parameter 'uin' is missing.",
"data": "failed"
}
gocq
- 拉取gocq项目文件,直接启动一次项目,生成必要的文件
- 修改协议
- 填写配置文件
- 打包部署到服务器
第一步:
无要点,下载项目的release版本,或者安装go直接拉项目本地跑
第二步:
建议使用手表协议,device.json改protocol的值为2
将qsign中的config.json文件重命名为6.json,放在项目的data/versions文件中
第三步:
注意config.yml文件的填写
只有三个地方是必须要修改的:qq号和密码、qsign服务器地址、服务后端地址(http or ws)
# go-cqhttp 默认配置文件

最低0.47元/天 解锁文章
2万+

被折叠的 条评论
为什么被折叠?



