Hello! 欢迎来到盒子萌!

Go语言go-cqhttp搭建QQ机器人教程


使用 mirai QQ机器人框架以及 MiraiGo开发的 cqhttp golang 原生实现, 并在 cqhttp 原版的基础上做了部分修改和拓展。
他的好处是支持linux和Windows,而且在使用上很省内存
在关闭数据库的情况下, 加载 25 个好友 128 个群运行 24 小时后内存使用为 10MB 左右. 开启数据库后内存使用将根据消息量增加 10-20MB , 如果系统内存小于 128M 建议关闭数据库使用。

盒子萌boxmoe.com

兼容性

接口

HTTP API
反向HTTP POST
正向WebSocket
反向WebSocket

拓展支持

HTTP POST多点上报
反向WS多点连接
修改群名
消息撤回事件
解析/发送 回复消息
解析/发送 合并转发
使用代理请求网络图片

下载安装使用

在github上下载最新的版本go-cqhttp,根据你的系统选择下载安装包

系统类型 可执行文件 压缩文件
Intel 版 Macos Not available go-cqhttp_darwin_amd64.tar.gz
M1 版 Macos Not available go-cqhttp_darwin_arm64.tar.gz
32 位 Linux Not available go-cqhttp_linux_386.tar.gz
64 位 Linux Not available go-cqhttp_linux_amd64.tar.gz
arm64 Linux Not available go-cqhttp_linux_arm64.tar.gz
armv7 Linux Not available 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

解压安装设置并登录机器人QQ

Windows就不用多说了,要么解压zip,要么直接点击exe安装(这你都不会就直接狗带)
Linux下就是在你下载的目录,或者cd到你的安装包目录 tar -xzvf [安装包名]解压后cd到解压的目录里执行ssh命令./go-cqhttp

1.Windows/Linux安装或者解压后第一次安装会生成几个文件其中

1.config.yml–这个文件是重点初始设置对象设置QQ 和 QQ密码

# go-cqhttp 默认配置文件
account: # 账号相关
  uin: # QQ账号
  password: '' # 密码为空时使用扫码登录
  encrypt: false  # 是否开启密码加密
  status: 0      # 在线状态 请参考 https://docs.go-cqhttp.org/guide/config.html#在线状态
  relogin: # 重连设置
    delay: 3   # 首次重连延迟, 单位秒
    interval: 3   # 重连间隔
    max-times: 0  # 最大重连次数, 0为无限制

设置好后可以重启go-cqhttp
2.第一次登录因为异地需要验证,可以选择手机验证码或者扫码登录

1.Windows是使用dos控制台的,默认会有个go-cqhttp.bat打开,输入go-cqhttp_windows_**.exe ,或者自己dos下cd到目录输入也可以
2.Linux依然是./go-cqhttp ssh命令,ssh启动后需要加上后台守护进程,不然关闭ssh机器人就下线了
2-1.使用PM2守护进程:

nohup ./go-cqhttp
pm2 start ./go-cqhttp --name="go-cqhttp" 
pm2 save 
pm2 startup

2-2.如果你有安装宝塔,那就可以面板上使用Supervisor管理器守护进程

名称:go-cqhttp
路径:你的解压路径
命令:./go-cqhttp

//然后保存设置启动就可以了

测试功能

http通信设置在

config.yml

中设置文档中有详细的说明
1.如果你是本地服务器测试,并且没有更改默认端口的话

//浏览器访问下面网址,测试使用机器人QQ发送消息给好友
http://127.0.0.1:5700/send_private_msg?user_id=接收消息的好友QQ号码&message=这里输入发送的信息内容
执行成功会返回一段响应数据{"data":{"message_id":xxxx},"retcode":0,"status":"ok"} 说明发送成功了

//给qq群发送消息测试,成功同样会返回上面一样的数据"status":"ok"
http://127.0.0.1:5700/send_group_msg?group_id=接收消息QQ群号&message=这里输入发送的信息内容

到这里,已经完成了go-cqhttp的基础设置和功能测试了,如果是你会python 或者php等等之类语言,你就可以通过api实现很多网页版功能
例如:
1.我们现在常用的WordPress有人评论的时候qq机器人给你qq发消息通知
2.健康网站的可用性,如果宕机/恢复,QQ机器人给你QQ发消息通知
3.订阅网站通过QQ机器人发到QQ或者QQ群里
… 等等好多都可以通过网站配合去实现完成可玩性很高的QQ机器人

go-cqhttp相关文档在此:
https://docs.go-cqhttp.org/

  • avatar
    会员

    现在好像用不了了

  • avatar
    会员

    学习了,高端大气的qq机器人… :idea: :idea: :idea: :idea: :idea: :idea: :idea:

    • avatar
      博主

      @ kit605 学废了吗

      • avatar
        会员

        @ 专收爆米花 跟着教程走,研究了几天学废了 :cool:

发表评论

相关阅读