通过 HTTP 或 WebSocket 对酷 Q 的事件进行上报以及接收请求来调用酷 Q 的 DLL 接口,从而可以使用其它语言编写酷 Q 插件。支持 Windows 7 和 Windows Server 2008 及更新版本,也可以运行在 Wine、Docker。
使用方法见 https://cqhttp.cc/docs/。v1.x、v2.x 的旧版本文档在 https://cqhttp.cc/docs/legacy/。
如果访问这个文档非常慢,请尝试国内的地址 http://richardchien.gitee.io/coolq-http-api/docs/。
对于下面这些语言的开发者,如果不想自己处理繁杂的请求和解析操作,可以尝试社区中开发者们已经封装好的的 SDK 或开发框架:
语言 | Web 框架 | 通信方式 | 地址 | 作者 | |
---|---|---|---|---|---|
⭐ | Python | Quart | HTTP, 反向 WebSocket |
richardchien/nonebot | richardchien |
Python | Quart | HTTP, 反向 WebSocket |
richardchien/python-aiocqhttp | richardchien | |
Python | Flask | HTTP | richardchien/python-cqhttp | richardchien | |
⭐ | Node.js | WebSocket-Node | WebSocket | momocow/node-cq-websocket | momocow |
⭐ | Node.js | Express | HTTP, WebSocket |
koishijs/koishi | Shigma |
Node.js | Koa | HTTP | richardchien/cqhttp-node-sdk | richardchien | |
Node.js | WebSocket-Node | WebSocket | CaoMeiYouRen/node-coolq-robot | CaoMeiYouRen | |
Node.js | Express | HTTP | XHMM/lemon-bot | XHMM | |
JavaScript | - | WebSocket | pandolia/js-bot | pandolia | |
Deno | 标准库 | 反向 WebSocket | nenojs/deno-cqhttp | rikakomoe | |
⭐ | PHP | Swoole | 反向 WebSocket | crazywhalecc/CQBot-swoole | crazywhalecc |
PHP | - | HTTP | LovelyA72/YeziiBot-v2 | LovelyA72 | |
⭐ | Java | 标准库 | HTTP | HyDevelop/PicqBotX | Hykilpikonna |
Java | Spring | 反向 WebSocket | lz1998/Spring-CQ | lz1998 | |
Java | JFinal | HTTP | thevsk/cqhttp-java-jfinal-sdk | thevsk | |
⭐ | Go | 标准库 | API: HTTP, WebSocket Event: HTTP, 长轮询, WebSocket, 反向 WebSocket |
catsworld/qq-bot-api | catsworld rikakomoe |
⭐ | C# | 标准库 | HTTP, WebSocket |
int-and-his-friends/Sisters.WudiLib | bleatingsheep |
⭐ | C# | 标准库 | HTTP, WebSocket, 反向 WebSocket |
frankli0324/cqhttp.Cyan | frankli0324 |
PowerShell | - | HTTP | richardchien/cqhttp-powershell-sdk | richardchien | |
Kotlin | 标准库 | HTTP | JuerGenie/juerobot | JuerGenie |
QQ 机器人可以用来做很多有意思的事情,下面列出一些基于本插件的应用案例:
项目地址 | 简介 |
---|---|
milkice233/efb-qq-slave | 基于 ehForwarderBot 框架的 QQ 从端 |
projectriri/bot-gateway | 提供跨聊天平台的通用机器人 API 的机器人消息网关 |
jqqqqqqqqqq/coolq-telegram-bot | QQ <-> Telegram Bot Framework & Forwarder |
Mother-Ship/cabbageWeb | 基于 Java Web 的 osu! 游戏数据查询机器人 |
bdbai/Kobirt | Ingress 游戏辅助机器人 |
JRT-FOREVER/hub2coolq | GitHub webhook 消息转发至 QQ 群 |
Kurarion/Bangumi-for-QQ | 用于在 QQ 平台便捷地使用 Bangumi 部分功能(查寻条目、更新条目进度等) |
rikakomoe/cqhttp-twitter-bot | 自动订阅 Twitter 发送到 QQ |
XiaoLin0815/QQ2TG | 帮助 QQ 与 Telegram 互联的小程序 |
spacemeowx2/splatoon2-qqbot | 宇宙第一的 Splatoon2 的地图机器人 |
OYMiss/forward-bot | 用 Telegram 和 QQ 好友聊天的转发机器人 |
mrthanlon/SICNUBOT | 专为四川师范大学设计用于审核发布消息用的 QQ 机器人 |
billjyc/pocket48 | 监控成员口袋 48 聚聚房间、微博和摩点项目 |
chinshin/CQBot_hzx | 摩点 & 微博 & 口袋 48 机器人(BEJ48-黄子璇) |
Ice-Hazymoon/grnd_bot | 订阅 RSSHub 更新并推送到 QQ 群 |
Ray-Eldath/Avalon | 多功能、可扩展的群机器人,支持 QQ 和 Discord |
Bluefissure/FFXIVBOT | 基于 Django Channels 的最终幻想 14 游戏数据查询机器人 |
Milkitic/Daylily | 基于 ASP.NET Core 的跨平台机器人(含快速开发插件框架) |
cczu-osa/aki | 基于 NoneBot 的多功能 QQ 机器人 |
cleoold/sendo-erika | 基于 cqhttp 和 NoneBot 的,主要通过私聊摇控的 QQ 机器人 |
duan602728596/qqtools | 基于 Nwjs 的 QQ 群工具(摩点、口袋 48、微博提醒、入群欢迎、定时喊话、自定义命令和回复信息等) |
Tsuk1ko/CQ-picfinder-robot | 基于 Saucenao 的搜图机器人 |
kasora/dice | COC7 骰子 QQ 机器人 |
shidenggui/tuishujun-for-qq | 基于推书君的小说查询推荐 QQ 机器人 |
JuerGenie/cn.juerwhang.jgbot | 基于 JuerGenie/juerobot 的娱乐用 QQ 机器人 |
以上列出的只是实际应用中的一小部分,如果你使用本插件编写了任何好的应用案例或开发框架,也可以通过 issue 或 pull request 添加到这里的列表,共同充实社区。
如果你急需测试尚未发布的最新特性,可以前往 https://ci.appveyor.com/project/richardchien/coolq-http-api/build/artifacts 下载从 master 分支的最新代码构建出的 DLL 和 JSON 文件,将它们放入酷 Q 的 app
文件夹并开启酷 Q 的开发模式即可使用。
需要注意的是,master 分支所构建出的插件并不确保任何时候都是可用的,可能出现功能存在,但尚未完成的情况。
本项目基于 CoolQ C++ SDK,构建方式和它一致,但由于一些历史原因,需要先手动下载预编译的依赖库,并且使用 Visual Studio 2017 构建(可以只安装 Build Tools,不必安装完整的 IDE)。
首先,克隆或下载本仓库代码:
git clone https://github.com/richardchien/coolq-http-api.git
cd coolq-http-api
git submodule init
git submodule update
然后,从 这里 下载 vcpkg-export-20191012.zip
(也就是预编译的依赖),并解压到当前工程目录,确保工程目录结构如下:
coolq-http-api
├── ...
├── src
├── vcpkg-export-20191012
| ├── installed
| ├── scripts
│ └── .vcpkg-root
├── CMakeLists.txt
└── ...
最后生成并构建 CMake 项目:
powershell .\scripts\generate.ps1 Debug
powershell .\scripts\build.ps1 Debug
本程序使用 GPLv3 许可证,并按其第 7 节添加如下附加条款:
- 本程序的修改版本应以合理的方式标志为和原版本不同的版本(附加条款 c)
总体来说,在当前许可证下,你可以:
- 修改源代码并自己使用,在不重新分发(编译之后的程序)的情况下,没有任何限制
- 不修改源代码并重新分发,对程序收费或免费提供下载,或提供其它服务,此时你需要保证在明显的地方提供本程序的源码地址并保持协议不变(包括附加条款)
- 修改源代码并重新分发,对程序收费或免费提供下载,或提供其它服务,此时你需要注明源码修改的地方、提供源码地址、保持协议不变(可删除全部或部分附加条款)、修改程序的名称
如果使用过程中遇到任何问题、Bug,或有其它意见或建议,欢迎提 issue。
也欢迎加入 QQ 交流群 201865589 来和大家讨论~
- 感谢 酷Q 项目,为本插件的存在提供了可能
- 感谢所有 SDK 作者,扩展了本插件的生态,使用户更容易上手
- 感谢所有捐助者对我的鼓励,这里 列出了捐助者名单(由于一些收款渠道无法知道对方是谁,如有遗漏请联系我修改)
- 感谢所有用户反馈的 bug 和建议,使本插件不断完善