自搭建指南/QQ

自搭建指南/QQ

Go-cqhttp 是基于 Mirai 以及 MiraiGo 的 OneBot Golang 原生实现。是基于 QQ Android 协议支持的机器人框架库。

一个新注册的 QQ 账号仅需完成基础配置即可,但为了避免在机器人使用后期时遇到 Code45 等问题,建议配置使用签名服务器。

危险

根据 go-cqhttp/issue#2471,开发者已无力继续维护此项目。在未来 qsign 签名服务彻底被官方封死之后,Go-cqhttp 将无法继续使用,请窒息。

危险

由于 QQ 官方的持续检测,使用 Go-cqhttp 连接的成功率越来越低。即使成功连接,也可能面临频繁冻结等情况。不推荐任何用户再使用此方案连接 QQ 平台。

下载与安装

如果你想使用 Docker 部署 Go-cqhttp,请转到使用 Docker。

从 Go-cqhttp 的 GitHub Release 下载最新的版本。

系统类型

可执行文件

压缩文件

Intel 版 MacOS

N/A

go-cqhttp_darwin_amd64.tar.gz

M1 版 MacOS

N/A

go-cqhttp_darwin_arm64.tar.gz

32 位 Linux

N/A

go-cqhttp_linux_386.tar.gz

64 位 Linux

N/A

go-cqhttp_linux_amd64.tar.gz

arm64 Linux

N/A

go-cqhttp_linux_arm64.tar.gz

armv7 Linux

N/A

go-cqhttp_linux_armv7.tar.gz

32 位 Windows

go-cqhttp_windows_386.exe

go-cqhttp_windows_386.zip

64 位 Windows

go-cqhttp_windows_amd64.exe

go-cqhttp_windows_amd64.zip

arm64 Windows

go-cqhttp_windows_arm64.exe

go-cqhttp_windows_arm64.zip

armv7 Windows

go-cqhttp_windows_armv7.exe

go-cqhttp_windows_armv7.zip

解压下载好的文件到一个已经预先准备好的文件夹中。

运行 Go-cqhttp。此时将提示:

[WARNING]: 尝试加载配置文件 config.yaml 失败: 文件不存在。

[INFO]: 默认配置文件已生成,请编辑 config.yaml 后重启程序。

程序将会自动在存放 Go-cqhttp 文件夹的目录下生成一个默认配置文件 config.yaml。请填写好配置文件中的 QQ 账号和密码。

基础配置

请在配置文件 bot_aiocqhttp.toml 填写以下配置项:

qq_host = "127.0.0.1:8080" - 将会在填写的 IP 地址和端口中开启一个 Websocket 服务器,用于客户端反向连接。

填写完毕后,请在 bot_aiocqhttp.toml 配置文件中的 enable 选项设置为 true 以启用此平台端。

接下来,请在 Go-cqhttp 的配置文件中设置对应的连接方式。

...

# 连接服务列表

servers:

# 添加方式,同一连接方式可添加多个,具体配置说明请查看文档

#- http: # http 通信

#- ws: # 正向 Websocket

#- ws-reverse: # 反向 Websocket

#- pprof: # 性能分析服务器

- ws-reverse:

universal: ws://127.0.0.1:8080/ws # 此处填写先前的 IP 地址和端口,注意不要删去后面的“/ws”

reconnect-interval: 3000

middlewares:

<<: *default # 引用默认中间件

...

...

提示

若在配置中遇到问题,请参见 Go-cqhttp 官方文档。

签名服务

部署签名服务,即使用开源签名服务 qsign,是目前用来绕过检测的最有效手段。

危险

原 qsign 作者已因不可抗力无法再维护此项目,对应 GitHub 储存库也已删除,该方法会在未来逐渐失效,请做好预期准备。

你可以使用别人搭好的 qsign 服务,也可以自己在本地搭建一个:

警告

如果你的动手能力足够强或者有足够的电脑知识,强烈推荐自己搭建本地签名服务器。

使用他人的签名服务可能会泄漏以下信息:

登录账号

登录时间

登录后发送的消息内容

登录后发送消息的群号/好友 ID

不会泄露的信息:

账号密码

账号 session

群列表/好友列表

接收的消息

除发送消息外的任何历史记录

使用共享签名服务可能会提高账号被冻结的概率。

自行安装 JRE 17(Java Runtime Environment 17),请善用搜索引擎查找安装方法。

在 unidbg-fetch-qsign的 Release 界面中下载最新版本,并解压到一个提前准备好的文件夹中。

删除与 go-cqhttp 同级目录下的 data 文件夹和 device.json 文件。

在存放 unidbg-fetch-qsign 的文件夹中,运行以下命令:

bin/unidbg-fetch-qsign --basePath=txlib/<你要使用的版本>

请替换 <你要使用的版本> 字段为在存放 qsign 的文件夹 txlib 目录存在的版本。例:--basePath=txlib/8.9.73

提示

在选择版本时,应当遵从以下原则:升级版本应当一个一个版本升,以后冻结了可能就没机会回退版本了。发生 Code45 应当先尝试删除 go-cqhttp 的 device.json 文件和 data/cache 文件夹并重新登录,而不是第一时间升级版本。

接下来,请配置 Go-cqhttp 的配置文件中的签名服务器部分:

account: # 账号相关

# 数据包的签名服务器列表,第一个作为主签名服务器,后续作为备用

sign-servers:

- url: 'http://127.0.0.1:8080' # 主签名服务器地址,必填

key: '80804' # 签名服务器所需要的 apikey, 如果签名服务器的版本在1.1.0及以下则此项无效

authorization: '-' # authorization 内容, 依服务端设置,如 'Bearer xxxx'

...

...

...

运行 go-cqhttp 以生成设备文件。

下载对应版本的安卓手机协议并将其重命名为 1.json。将该文件储存在与 Go-cqhttp 同一目录下的 data/versions 文件夹中。

在与 go-cqhttp 同一目录下的 device.json 文件夹中,并修改以下字段:

{

"protocol": 1

}

重启 Go-cqhttp 来应用最终配置。

QQ 频道消息处理(Beta)

根据 Go-cqhttp 文档,iPad / Android Pad / Android Phone 协议支持处理 QQ 频道消息。

QQ 频道消息的处理仍然处于测试阶段,由于 Go-cqhttp 对频道消息支持的不完善,频道内消息无法撤回,且频道列表不会自动刷新(加入新频道需要手动重启一次 Go-cqhttp)。

在其生成的 device.json 中寻找 "protocol":6, 字段,将本处的数值修改为 1(Android Phone)、5(iPad)或 6(Android Pad)均可启用此功能。

提示

关于 Go-cqhttp 选用以上方式登录时出现的的 Code45 或其他登录问题,请根据 Go-cqhttp 官方 Issue 对照解决,或选用除以上协议外的其他协议。

相关推荐

茅台酒价格一瓶多少钱_2025茅台酒价格表
365bet线路检测中心

茅台酒价格一瓶多少钱_2025茅台酒价格表

📅 09-22 👁️ 7510
魔兽世界监狱多少级能进 盘点魔兽世界各地最低进入等级
365bet体育投注导航

魔兽世界监狱多少级能进 盘点魔兽世界各地最低进入等级

📅 07-08 👁️ 9446
烈焰战车
365bet体育投注导航

烈焰战车

📅 07-17 👁️ 1084