消息元素
本章节介绍 KOOK 组件中针对 simbot 标准库中 消息元素(Message.Element
) 的实现类型。
Message.Element
先简单介绍一下 Message.Element
。它是 simbot 标准库中提供一个接口类型, 用来定义一个消息元素 。一个消息元素或多个消息元素组成的消息链可用于发送消息。
simbot 标准库提供了一些常见的标准消息元素实现,例如 At
、 Image
等。 但是很多情况下,对于一个组件而言这些标准实现可能不能满足需求,这时候就需要组件实现这个接口, 来提供更多期望的功能。
标准消息元素支持
- PlainText
最基础的消息元素类型。支持使用文本消息元素, 例如
Text
。- At
提及一个用户、提及一个角色或提及一个子频道。 提及目标根据
At.type
决定:user
(默认) 或其他未知: 提及一个用户role
: 提及一个角色channel
: 提及一个子频道
- AtAll
提及所有人。即
@全体
。- Image
支持使用:
OfflineImage
: 上传一个本地离线文件作为图片并用于发送。RemoteImage
: 如果是RemoteUrlAwareImage
,则使用它的url
,否则将它的id
视为url
字符串。
- Face
会作为 KMarkdown 中的 “服务器表情” 使用。
- Emoji
会作为 KMarkdown 中的 “emoji” 使用。
Emoji.id
会被处理为::Emoji.id:
KOOK 组件消息元素实现
KOOK 组件进行特殊实现的 Message.Element
均继承自 love.forte.simbot.component.kook.message.KookMessageElement
。
- KookAssetMessage
- KookKMarkdownMessage
- KookCardMessage
- KookAtAllHere
- KookAttachmentMessage
- KookAttachmentMessage
- KookAttachment
- KookAttachmentFile
- KookAttachmentImage
- KookAttachmentVideo
- KookAssetImage
- KookQuote
通过
MessageContent.reference()
查询得到的消息引用信息。
Last modified: 15 November 2024