mirror of
https://github.com/mamoe/mirai.git
synced 2024-12-27 17:10:15 +08:00
c03155af6d
* Review docs and improve readability * Update docs/Bots.md Co-authored-by: Karlatemp <karlatemp@vip.qq.com> * Update docs/Bots.md Co-authored-by: Karlatemp <karlatemp@vip.qq.com> * Update docs/Bots.md Co-authored-by: Karlatemp <karlatemp@vip.qq.com> * Fix doc * Fix doc * Clarify AnonymousMember and NormalMember * Fix typo * Add language type Co-authored-by: Karlatemp <karlatemp@vip.qq.com>
3.3 KiB
3.3 KiB
mirai-core-api
mirai 核心 API 模块。本文档帮助读者了解该模块的主要架构。
mirai 为多平台设计。支持 Android 和 JVM 双平台,拥有多个源集。
commonMain
:平台无关的通用代码。绝大部分代码都存在与这个源集。jvmMain
:桌面 JVM 平台的特别实现。androidMain
:Android 平台的特别实现。阅读源码通常阅读
src/commonMain
架构
包名 | 描述 |
---|---|
net.mamoe.mirai |
mirai 核心 API |
.contact |
联系人类型。如群 Group ,好友 Friend |
.event |
事件框架。提供事件对象的基类以及监听事件的方法 |
.event.events |
事件的定义。包含许多事件的具体类, 如消息事件 MessageEvent |
.message |
消息系统 |
.message.data |
提供对富文本聊天消息及其元素多样性的抽象 |
.message.code |
提供一个易于阅读的消息字符串表示方式 |
.message.action |
提供与消息有关的动作的抽象,如戳一戳 |
.utils |
一些工具类 |
.internal |
内部实现 |
.internal.event |
事件框架的实现 |
net.mamoe.mirai
IMirai
API 模块与协议实现模块的对接接口。
- 单例
- 通过
ServiceLoader
寻找协议实现。 - 若
ServiceLoader
在特定环境下不可用,外部可在 Kotlin 在调用任何 Mirai API 之前覆盖实例:@Suppress("INVISIBLE_MEMBER", "INVISIBLE_REFERENCE") // 必要 net.mamoe.mirai._MiraiInstance.set(net.mamoe.mirai.internal.MiraiImpl())
Bot
表示一个机器人对象(账户)。
- 通过 BotFactory 构造
- 是功能的入口点----大部分操作都直接或间接经过
Bot
- 持有联系人(好友和群)对象列表
- 可获得事件通道
net.mamoe.mirai.contact
联系人系统。docs/Contacts
net.mamoe.mirai.event
事件系统。docs/Contacts
net.mamoe.mirai.event.events
事件列表。README
net.mamoe.mirai.message
消息系统。
MessageReceipt
在发送消息(Contact.sendMessage
)后收到的回执。
MessageSerializers
kotlinx.serialization 序列化支持。
net.mamoe.mirai.message.data
对富文本聊天消息及其元素多样性的抽象。
一个消息元素最基本的接口为 Message.