Skip to content
This repository has been archived by the owner on Aug 2, 2020. It is now read-only.

Releases: kyubotics/coolq-http-api

v4.1.0-beta.1

18 Jun 06:55
Compare
Choose a tag to compare
v4.1.0-beta.1 Pre-release
Pre-release

更新日志:

  • 新增扩展机制,支持加载 DLL 扩展
  • 新增 use_extension 配置项用于开关扩展机制

扩展目前有:长轮询

v4.0.5

16 Jun 07:19
Compare
Choose a tag to compare

更新日志:

  • 修复 4.0.0 版本开始启动多个酷 Q 实例会卡死的问题

v4.0.3

12 Jun 09:09
Compare
Choose a tag to compare

更新日志:

  • 修复 Docker 镜像的超大 bug,v4.0.0 到 v4.0.2 的镜像将被弃用,请参考 Docker

v4.0.2

11 Jun 04:36
Compare
Choose a tag to compare

更新日志:

  • 修复 convert_unicode_emoji 配置项无效的问题
  • 修复 Docker 镜像中文件权限的 bug(对没错,又修了一次)
  • 修复快速操作中酷 Q Air 不支持的操作导致程序崩溃的问题

v4.0.1

08 Jun 07:56
Compare
Choose a tag to compare

更新日志:

  • 修复使用反向 WebSocket 时,重启插件报错的问题
  • 优化线程安全性,Fix #69
  • 新增 _get_group_info 接口用于获取群信息,Fix #67

v4.0.0

07 Jun 14:11
Compare
Choose a tag to compare

4.0.0 版本代码完全重构,提取了 C++ SDK,且内部在核心和各功能模块之间进行了解耦,代码结构更加清晰、健壮,插件的稳定性也因此大幅提高。

与此同时不可避免地出现了一些与旧版的不兼容更改,下面会全部列出,如果你需要从 v3.x 升级到 v4.x,请参考 升级指南

✔️ 新增特性:

下面列出的是和原有功能互不影响的新增特性,不存在兼容性问题。

  • API 所有接口均支持 _async 后缀,用于异步调用
  • 新增 enable_backward_compatibility 用于开关与旧版本的兼容性,默认为 false,注意,这个配置不会影响事件过滤器所接收到的事件数据,即无论开启与否,事件过滤规则中都应该使用 4.x 版本的上报数据字段
  • 配置文件支持 JSON 格式编写,加载时按如下路径依次尝试,一旦有一个路径加载成功,则停止加载(所有路径均为相对于 app\io.github.richardchien.coolqhttpapi 的相对路径):
    • config.(cfg|ini)(扩展名的括号和竖线表示优先加载 .cfg,若没有,则加载 .ini,下同),文件中通用配置需要放在 [general] 下,QQ 号特定配置放在 [<user_id>]
    • config\general.(cfg|ini) + config\<user_id>.(cfg|ini),前者是通用配置,全部放在 [general] 下,后者是 QQ 号特定配置,全部放在 [<user_id>] 下,后者覆盖前者中已存在的内容
    • config.json,通用配置需放在根对象的 general 字段,QQ 号特定配置放在 QQ 号对应字段,例如 {"general": {"host": "0.0.0.0"}, "123456": {"port": 6666}}
    • config\general.json + config\<user_id>.json,配置项均直接放在根对象,后者覆盖前者中已存在的内容
  • 日志现在全部写入 app\io.github.richardchien.coolqhttpapi\log 中的日志文件,日志文件大小上限 6MB,info 级别以上的日志仍会写入酷 Q 的日志窗口
  • 新增 show_log_console 配置项用于开关输出日志的控制台,默认为 false
  • 消息类型的上报中,除了原有的 message 字段表示消息外,新增 raw_message 字段,用于提供未经处理的原始消息文本(没有经过 CQ 码增强和上报格式修改)
  • set_restart_plugin 接口新增 delay 参数,用于控制插件重启的延迟毫秒数,默认 0
  • 检查更新新增 alpha 更新通道用于推送最新但可能极不稳定的测试版
  • HTTP、反向 WebSocket 的请求头中新增 X-Self-ID 头用于表示当前正在上报或建立连接的 QQ 号,以便后端区分
  • /set_restart 接口新增 clean_cache 参数,用于清空酷 Q 当前登录号的缓存

🐞 Bug 修复和细节优化:

  • 修复 WebSocket 鉴权失败后仍然会执行调用的 bug
  • 修复未转义的 [CQ:] 无法发送的问题
  • 修复字符串格式的消息上报中,英文逗号被转义的 bug(与酷 Q 原生不符)
  • 修复 Docker 镜像中文件权限的 bug
  • 优化 Docker 镜像的使用体验

⚠️ 可通过 enable_backward_compatibility 保持兼容的更改:

下面列出的是已经发生了和旧版不兼容的变化,但可通过设置 enable_backward_compatibility 配置项为 true 来保持兼容的更改。

  • 群组消息中匿名信息现在以对象形式表示,例如 "anonymous": {"id": 1000019, "name": "邓八公", "flag": "AAAAAAAPQlMABrXLsMu5qwAokaXsWulfxg2hPMTHguk1acbiU1NyW2BfxEnEMR5SNYFSns6SKKVe5A=="},非匿名消息中此字段为 null
  • 通知类上报中(群成员增加、群管理员变更等),post_type 字段值从 event 变为 notice,原先的 event 字段变为 notice_type 字段
  • 请求类上报的 message 字段现变为 comment 字段

除非万不得已,不建议设置 enable_backward_compatibilitytrue,虽然这会让本次升级更容易,但会增加后续升级的工作量,且在查阅文档时容易感到困惑。这里的更改在下一个大版本中极有可能不再可配置为保持兼容。

❌ 破坏性的更改:

下面列出的是与旧版不兼容,且无法通过配置保持兼容性的更改。这意味着如果你使用了与它们相关的功能,可能必须修改配置或代码才能继续正常使用。

  • 事件过滤器不再使用 use_filter 配置项来开关,而是使用 event_filter 直接指定过滤器规则文件的相对路径(相对于 app\io.github.richardchien.coolqhttpapi),默认为空,即表示不启用事件过滤器
  • 事件过滤器规则中,旧版中对消息原始文本进行过滤的 message 字段现在改为处理过的数组格式的消息,未经处理的原始消息文本现在保存在 raw_message 字段
  • 上报和反向 WebSocket 请求头的 User-Agent 变更为形如 CQHttp/4.0.0-alpha.1 的形式(CoolQHttpApi 改为 CQHttp
  • /get_status 接口返回的数据有所变化,但常用的 goodonline 两个字段没有改变,具体请自行测试
  • 更改编译选项导致 Windows 7 和 Windows Server 2008 用户可能需要安装 通用 C 运行库更新 才能正常使用

🌈 与 beta.2 版本相比的更新

  • 切换编译选项的 CRT 为动态链接,Windows 7 和 Windows Server 2008 可能需要安装 通用 C 运行库更新

v4.0.0-beta.2

02 Jun 14:28
Compare
Choose a tag to compare
v4.0.0-beta.2 Pre-release
Pre-release

更新日志:

  • HTTP、反向 WebSocket 的请求头中新增 X-Self-ID 头用于表示当前正在上报或建立连接的 QQ 号,以便后端区分
  • /set_restart 接口新增 clean_cache 参数,用于清空酷 Q 当前登录号的缓存

v4.0.0-beta.1

30 May 10:36
Compare
Choose a tag to compare
v4.0.0-beta.1 Pre-release
Pre-release

更新日志:

4.0.0 版本代码完全重构,提取了 C++ SDK,且内部在核心和各功能模块之间进行了解耦,代码结构更加清晰、健壮,插件的稳定性也因此大幅提高。

当前版本为公开测试版,接口相比 alpha 版更稳定但仍有可能在正式版放出前做少量调整,请不要在生产环境使用,但欢迎在测试环境提前体验。

✔️ 新增特性:

下面列出的是和原有功能互不影响的新增特性,不存在兼容性问题。

  • API 所有接口均支持 _async 后缀,用于异步调用
  • 新增 enable_backward_compatibility 用于开关与旧版本的兼容性,默认为 false,注意,这个配置不会影响事件过滤器所接收到的事件数据,即无论开启与否,事件过滤规则中都应该使用 4.x 版本的上报数据字段
  • 配置文件支持 JSON 格式编写,加载时按如下路径依次尝试,一旦有一个路径加载成功,则停止加载(所有路径均为相对于 app\io.github.richardchien.coolqhttpapi 的相对路径):
    • config.(cfg|ini)(扩展名的括号和竖线表示优先加载 .cfg,若没有,则加载 .ini,下同),文件中通用配置需要放在 [general] 下,QQ 号特定配置放在 [<user_id>]
    • config\general.(cfg|ini) + config\<user_id>.(cfg|ini),前者是通用配置,全部放在 [general] 下,后者是 QQ 号特定配置,全部放在 [<user_id>] 下,后者覆盖前者中已存在的内容
    • config.json,通用配置需放在根对象的 general 字段,QQ 号特定配置放在 QQ 号对应字段,例如 {"general": {"host": "0.0.0.0"}, "123456": {"port": 6666}}
    • config\general.json + config\<user_id>.json,配置项均直接放在根对象,后者覆盖前者中已存在的内容
  • 日志现在全部写入 app\io.github.richardchien.coolqhttpapi\log 中的日志文件,日志文件大小上限 6MB,info 级别以上的日志仍会写入酷 Q 的日志窗口
  • 新增 show_log_console 配置项用于开关输出日志的控制台,默认为 false
  • 消息类型的上报中,除了原有的 message 字段表示消息外,新增 raw_message 字段,用于提供未经处理的原始消息文本(没有经过 CQ 码增强和上报格式修改)
  • set_restart_plugin 接口新增 delay 参数,用于控制插件重启的延迟毫秒数,默认 0
  • 检查更新新增 alpha 更新通道用于推送最新但可能极不稳定的测试版

🐞 Bug 修复和细节优化:

  • 修复 WebSocket 鉴权失败后仍然会执行调用的 bug
  • 修复未转义的 [CQ:] 无法发送的问题
  • 修复字符串格式的消息上报中,英文逗号被转义的 bug(与酷 Q 原生不符)
  • 修复 Docker 镜像中文件权限的 bug
  • 优化 Docker 镜像的使用体验

⚠️ 可通过 enable_backward_compatibility 保持兼容的更改:

下面列出的是已经发生了和旧版不兼容的变化,但可通过设置 enable_backward_compatibility 配置项为 true 来保持兼容的更改。

  • 群组消息中匿名信息现在以对象形式表示,例如 "anonymous": {"id": 1000019, "name": "邓八公", "flag": "AAAAAAAPQlMABrXLsMu5qwAokaXsWulfxg2hPMTHguk1acbiU1NyW2BfxEnEMR5SNYFSns6SKKVe5A=="},非匿名消息中此字段为 null
  • 通知类上报中(群成员增加、群管理员变更等),post_type 字段值从 event 变为 notice,原先的 event 字段变为 notice_type 字段
  • 请求类上报的 message 字段现变为 comment 字段

除非万不得已,不建议设置 enable_backward_compatibilitytrue,虽然这会让本次升级更容易,但会增加后续升级的工作量,且在查阅文档时容易感到困惑。这里的更改在下一个大版本中极有可能不再可配置为保持兼容。

❌ 破坏性的更改:

下面列出的是与旧版不兼容,且无法通过配置保持兼容性的更改。这意味着如果你使用了与它们相关的功能,可能必须修改配置或代码才能继续正常使用。

  • 事件过滤器不再使用 use_filter 配置项来开关,而是使用 event_filter 直接指定过滤器规则文件的相对路径(相对于 app\io.github.richardchien.coolqhttpapi),默认为空,即表示不启用事件过滤器
  • 事件过滤器规则中,旧版中对消息原始文本进行过滤的 message 字段现在改为处理过的数组格式的消息,未经处理的原始消息文本现在保存在 raw_message 字段
  • 上报和反向 WebSocket 请求头的 User-Agent 变更为形如 CQHttp/4.0.0-alpha.1 的形式(CoolQHttpApi 改为 CQHttp
  • /get_status 接口返回的数据有所变化,但常用的 goodonline 两个字段没有改变,具体请自行测试

🌈 与 alpha.4 版本相比的更新

  • 修复首次启动写入初始配置文件时 update_source 为空的问题
  • enable_backward_compatibility 不再默认开启
  • 修复 Docker 镜像中文件权限的 bug
  • 日志改为单文件日志,最大不超过 6MB

v4.0.0-alpha.4

20 May 12:21
Compare
Choose a tag to compare
v4.0.0-alpha.4 Pre-release
Pre-release

更新日志:

  • 优化 Docker 镜像的使用体验
  • 事件过滤器现移到旧版兼容性之前执行,也就是说 enable_backward_compatibility 配置项不会再影响事件过滤器所看到的事件数据对象

v4.0.0-alpha.3

19 May 08:44
Compare
Choose a tag to compare
v4.0.0-alpha.3 Pre-release
Pre-release

更新日志:

  • 修复未转义的 [CQ:] 无法发送的问题
  • 修复字符串格式的消息上报中,英文逗号被转义的 bug(和酷 Q 原生不符)
  • 检查更新功能回归,新增 alpha 更新通道用于推送最新但可能极不稳定的测试版