2.0-M2
Pre-release新特性
-
支持解析分片消息 (#440)
-
支持禁言匿名群成员 (#432)
-
支持匿名群成员消息解析
-
支持发送私聊长消息 (#171)
-
支持商城表情
MarketFace
(#761 by @sandtechnology) -
支持更多系统表情(
Face
)(#720 by @sandtechnology) -
支持根据服务器要求调整心跳频率 (#765 by @sandtechnology)
-
支持群龙王状态变化事件 (#774 by @sandtechnology)
-
支持删除好友 (#776 by @sandtechnology)
-
新增
OtherClient
代表 Bot 账号登录的其他客户端- 支持查询在线的客户端列表:
Bot.otherClients
- 支持其他客户端上线事件:
OtherClientOnlineEvent
- 支持其他客户端离线事件:
OtherClientOfflineEvent
- 支持其他客户端发送消息给 Bot:
OtherClientMessageEvent
- 支持其他客户端发送群消息时的同步:
GroupMessageSyncEvent
(#644)
- 支持查询在线的客户端列表:
-
新增
MessageChain.findIsInstance
扩展获取第一个指定类型SingleMessage
实例 -
新增
MessageRecallEvent.author
-
新增
Message.deserializeFromJsonString
和Message.serializeToJsonString
-
新增
Message.contentEquals
参数strict
以检测各个消息元素 -
新增
ContactOrBot.avatarUrl
通用获取头像 (#756) -
新增
ContactOrBot.bot
获取有关Bot
-
新增
Group.getMember
和Group.getMemberOrFail
用于不适合使用Group.get
的场合 -
新增
ContactList.getOrFail
获取联系人,在目标不存在时抛出异常 -
新增
EventChannel
,弃用原CoroutineScope.subscribe
等函数 (#514, #753) (文档) -
新增
ExternalResource
替代ExternalImage
以支持通用的语音,文件和图片的发送的 API (#754, #752)
优化和修复
- 处理登录错误 239 (#744)
- 重新设计 mirai 码, 添加转义语法 (#685, #768)
- 语音现在使用
ExternalResource
并支持多种输入 Group.botAsMember
,Bot.asFriend
现在稳定- 实现
MessageChain.hashCode
和MessageChain.equals
- 弃用
MessageEventExtensions
- 在服务器要求时重新登录 (#691)
- 优化
LoginSolver
(#703):DefaultLoginSolver
更名为StandardCharImageLoginSolver
- LoginSolver.Default 现在在 Android 平台返回
null
- BotConfiguration.loginSolver 现在可空,为空时表示使用 Mirai 内置,在 Android 平台须提供 (#703)
- 在
SimpleListenerHost
事件处理器中抛出的异常现在会被包装成ExceptionInEventHandlerException
以允许获取相关事件 (#533) HummerMessage
变为接口- 为
selectMessages
和whileSelectMessages
添加@BuilderInference
,现在无需手动指定泛型 - 修复
MessageRecallEvent.FriendRecall.authorId
的歧义 (#704) - 修复撤回群消息时
MessageRecallEvent.GroupRecall
重复广播的问题 - 协议内部优化(#742, #749, #724, #728 by @sandtechnology, #671 by @jihuayu)
- 来自社区的文档更新 (#710 by @StageGuard, #735 by @iceBear67, #748 by @lc6a, #715 by @kininaru, #780 by @Cyl18)
由旧版本迁移
要从 2.0-M1 升级到 2.0-M2,请先了解 新的事件系统。
- 在 Kotlin 大部分改动都可以由 IDE 自动完成。
- 在 Java,有大量上传图片和语音相关的 API 变动,请参考 #751。
要从 1.x 升级到 2.0-M2,请首先升级到 2.0-M1。
兼容性
2.0-M1 -> 2.0-M2 有部分二进制不兼容,因此可能需要重新编译。
在 2.0-M2, 你可以使用 mirai 官方维护的项目的以下同步版本:
- mirai-console:
2.0-M2
- chat-command:
0.3.0
- mirai-api-http:
1.9.5
- mirai-native:
1.9.5
未来规划
mirai 已经完成 2.0 的两个里程碑。
下一个版本 2.0-RC 将在消息序列化完成后发布。届时,mirai 将提供稳定的 API(同时对于源码或二进制)。
即使 2.0-M2 还不保证向后兼容性,但也建议用户尝试这个版本并反馈任何问题。