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.0.0-alpha.2

14 May 15:03
Compare
Choose a tag to compare
v4.0.0-alpha.2 Pre-release
Pre-release

更新日志:

  • 修复 WebSocket 鉴权失败后仍然会执行调用的 bug

v4.0.0-alpha.1

14 May 01:02
9c894c8
Compare
Choose a tag to compare
v4.0.0-alpha.1 Pre-release
Pre-release

更新日志:

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

当前版本为早期测试版,接口可能在随后的版本中发生较大变化,请不要在生产环境使用,但欢迎在测试环境提前体验。

目前检查更新功能还不能使用。

✔️ 新增特性:

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

  • API 所有接口均支持 _async 后缀,用于异步调用
  • 新增 enable_backward_compatibility 用于开关与旧版本的兼容性,默认为 true,注意,这个配置会影响事件过滤器所接收到的事件数据
  • 配置文件支持 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 中的日志文件,info 级别以上的日志仍会写入酷 Q 的日志窗口
  • 新增 show_log_console 配置项用于开关输出日志的控制台,默认为 false
  • 消息类型的上报中,除了原有的 message 字段表示消息外,新增 raw_message 字段,用于提供未经处理的原始消息文本(没有经过 CQ 码增强和上报格式修改)
  • set_restart_plugin 接口新增 delay 参数,用于控制插件重启的延迟毫秒数,默认 0

⚠️ 默认保持兼容性的更改

下面列出的是已经发生了和旧版不兼容的变化,但默认情况下(即 enable_backward_compatibility 配置项为 true 时)仍保持兼容的更改。

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

❌ 破坏性的更改

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

  • 事件过滤器不再使用 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 两个字段没有改变,具体请自行测试

v3.4.0

25 Jan 04:45
Compare
Choose a tag to compare

更新日志:

  • 事件上报和推送加入了 self_id 字段,表示当前发生事件的机器人 QQ 号
  • 新增事件过滤机制,可通过 JSON 配置过滤规则,见 事件过滤器
  • 新增 use_filter 配置项用于开关过滤器
  • 新增 ws_reverse_reconnect_on_code_1000 用于控制反向 WebSocket 的重连
  • WebSocket(正向和反向)的 API 接口支持原样返回请求中 echo 字段,从而可实现请求和响应的一一对应,见 WebSocket 的 API 调用响应顺序问题

v3.4.0-beta-2

20 Jan 12:57
Compare
Choose a tag to compare
v3.4.0-beta-2 Pre-release
Pre-release

更新日志:

  • 新增 use_filter 配置项用于开关过滤器
  • use_filter 开启时,若过滤规则加载失败(未找到文件或语法错误),将默认不上报任何事件

v3.4.0-beta-1

18 Jan 12:33
Compare
Choose a tag to compare
v3.4.0-beta-1 Pre-release
Pre-release

更新日志:

  • 事件上报和推送加入了 self_id 字段,表示当前发生事件的机器人 QQ 号
  • 新增事件过滤机制,可通过 JSON 配置过滤规则,见 事件过滤器

事件过滤机制仍在测试阶段,请谨慎使用,也欢迎有测试环境的同学帮忙测试!

v3.3.5

10 Jan 06:24
Compare
Choose a tag to compare

更新日志:

  • 修复一些版本的 Windows Server 上无法网络请求的问题
  • 修复部分 emoji 无法正确转换的问题

v3.3.4

08 Jan 01:13
Compare
Choose a tag to compare

更新日志:

  • 修复多线程异步发送同一张网络图片时发生冲突的问题
  • 新增 /clean_data_dir 接口用于清理数据目录
  • 修复 Docker 中发送某些图片时卡住的问题
  • 修复部分 emoji 会导致插件崩溃的问题
  • 添加配置项 convert_unicode_emoji 用于开关 emoji 转换

v3.3.3

27 Dec 12:16
Compare
Choose a tag to compare

更新日志:

  • 再次修复非中文字符的编码转换问题,目前已测试 Windows 7 和 Windows 10 没有发现问题,Wine 和 Windows Server 2012 则是发送私聊消息没有问题,发送群组和讨论组消息时不支持特殊文字,暂没有发现解决方法

这个版本在一定程度上减轻了 #42 的问题,不过 Wine 和 Windows Server 上群组和讨论组消息还存在问题。

建议需要接受或发送非中文语言文字的消息的用户更新到此版本。

附:据用户 Curtis Jiang 的测试,在 docker 的 Wine 中没有发现上述问题,讨论见 #42

v3.3.2

08 Dec 06:23
Compare
Choose a tag to compare

更新日志:

  • 修复非中文字符的编码转换问题,从而可以发送阿拉伯文、泰文等其它文字(仅限 Windows NT,不支持 Wine)

v3.3.1

22 Nov 02:51
Compare
Choose a tag to compare

更新日志:

  • 修复酷 Q 升级不兼容导致的消息事件上报中 time 字段不正确的问题
  • 消息事件的 time 字段现改为插件收到通知时获取系统时间,有可能和消息实际发出时间有误差
  • 消息事件上报新增 message_id 字段,表示消息 ID
  • 群消息事件上报的响应中支持快速撤回,返回响应 "delete": true 即可撤回(仅支持酷 Q Pro)

由于消息事件上报的 time 字段在最新的酷 Q 中变为了消息 ID,因此如果依赖这个 time 值,请尽快更新此版本。