Package-level declarations

Types

Link copied to clipboard

聚合消息回执,代表多个 SingleMessageReceipt 的聚合体。

Link copied to clipboard
@SerialName(value = "m.std.at")
data class At @JvmOverloads constructor(val target: ID, val type: String = DEFAULT_AT_TYPE, val originContent: String = "@") : MentionMessage

一个艾特消息。

Link copied to clipboard
@SerialName(value = "m.std.atAll")
data object AtAll : MentionMessage

一个“通知所有”的消息。 如果在同一组件环境下的 “通知所有” 有多种表现形式,可考虑扩展更多消息元素类型。

Link copied to clipboard

表示一个可以获取到其二进制数据的消息元素, 例如某种图片消息或文件消息。 应当由某个 Message.Element 的子类型实现。

Link copied to clipboard
@SerialName(value = "m.std.emoji")
data class Emoji(val id: ID) : StandardMessage, EmoticonMessage

一个 emoji 表情。

Link copied to clipboard

表示某种表情符号的消息元素类型。 常见表现形式有某平台的系统表情或一定范围内的 emoji 表情。

Link copied to clipboard
@SerialName(value = "m.std.face")
data class Face(val id: ID) : StandardMessage, EmoticonMessage

一个表情。一般代表平台提供的自带系统表情。

Link copied to clipboard
interface IDAwareImage : Image

一个可以感知到 ID 信息的 Image

Link copied to clipboard

一个图片消息元素类型, 最常见的 RichMediaMessage 类型之一。

Link copied to clipboard

JVM 平台下的 OfflineImageResolver 扩展类型。

Link copied to clipboard

实现 JvmOfflineImageResolverJvmResourceResolver, 对其中可能出现的实际内容物(例如 FilePath)进行处理。

Link copied to clipboard

代表一个描述“提及”的消息。常见表现形式即为 At

Link copied to clipboard
sealed interface Message

一个 消息

Link copied to clipboard

一个消息本体内容。通常是通过一个事件接收到的消息本体。

Link copied to clipboard
@SerialName(value = "m.std.messageReference.id")
data class MessageIdReference(val id: ID) : MessageReference

一个仅实现 idMessageReference 简单实现。

Link copied to clipboard

通过 SendSupport.send 发送消息后得到的发送回执。

Link copied to clipboard

一个消息引用元素,用来表示对另一个消息元素的引用。 可用于发送或接收,是否能应用取决于具体地实现。

Link copied to clipboard

一个 消息链。 消息链 Messages 是一组 Message.Element 的表现。

Link copied to clipboard

一个可以追加 Message.Element 的类型接口。

Link copied to clipboard

一个用于动态构建 Messages 的构建器。 使用 create 构建。

Link copied to clipboard
annotation class MessagesBuilderDsl

MessagesBuilder's dsl marker.

Link copied to clipboard
@SerialName(value = "m.std.img.offline.bytes")
data class OfflineByteArrayImage(data: ByteArray) : OfflineImage

直接针对一个 ByteArray 进行包装的 OfflineImage 实现。

Link copied to clipboard
@SerialName(value = "m.std.img.offline.file")
class OfflineFileImage : OfflineResourceImage

基于 FileOfflineImage 实现。

Link copied to clipboard
interface OfflineImage : Image

一个离线图片消息元素类型。

Link copied to clipboard

使用 OfflineImageResolver 分析处理一个 OfflineImage. 类似于 visitor 的用法,与常见地访问器区别于通常情况下只会有一个 resolve* 会最终执行。

Link copied to clipboard

继承 OfflineImageResolverResourceResolver, 对其中可能出现的实际内容物(例如 ByteArrayString)进行处理。

Link copied to clipboard
@SerialName(value = "m.std.img.offline.path")
data class OfflinePathImage(val path: Path) : OfflineResourceImage

基于 PathOfflineImage 实现。

Link copied to clipboard

一个基于 ResourceOfflineImage 实现。

Link copied to clipboard
@SerialName(value = "m.std.img.offline.uri")
data class OfflineURIImage(val uri: URI) : OfflineResourceImage

基于 URIOfflineImage 实现。

Link copied to clipboard

纯文本消息。代表一段只存在文本的消息。

Link copied to clipboard
@SerialName(value = "m.std.img.remote.id")
data class RemoteIDImage(val id: ID) : RemoteImage

一个仅基于 IDRemoteImage 基础实现。

Link copied to clipboard

一个远程图片消息元素类型。

Link copied to clipboard

一个可以感知或查询到图片链接的远程图片消息元素类型。

Link copied to clipboard

一个可以表示富媒体的消息元素类型, 即一个与二进制数据(例如文件、音频等)相关的非文字消息元素。

Link copied to clipboard
@SerialName(value = "m.std.img.offline.resource")
data class SimpleOfflineResourceImage(val resource: Resource) : OfflineResourceImage

最基础的、基于 Resource 实现的 OfflineResourceImage

Link copied to clipboard

明确代表为一个或零个(发送失败时)具体消息的消息回执,可以作为 AggregatedMessageReceipt 的元素进行聚合。

Link copied to clipboard
sealed interface StandardMessage : Message.Element

一些由核心提供的标准 Message.Element 类型。 标准消息中,仅提供如下实现:

Link copied to clipboard

MessageReceipt 衍生的标准消息回执类型, 提供用于表示独立元素回执的 SingleMessageReceipt 和复合回执的 AggregatedMessageReceipt.

Link copied to clipboard
@SerialName(value = "m.std.text")
class Text : PlainText

一个文本消息 TextTextPlainText 基础实现类型。

Link copied to clipboard

一个可以感知或获取到 url 信息的 Image

Link copied to clipboard
interface UrlAwareMessage

表示为一个可以得知 URL 地址的消息元素, 例如 UrlAwareImage。 应当由某个 Message.Element 的子类型实现。

Inherited properties

Link copied to clipboard

如果 MessageContent.plainTextnull,则以空字符串 "" 替代之。

Functions

Link copied to clipboard
inline fun buildMessages(container: MutableList<Message.Element> = mutableListOf(), block: MessagesBuilder.() -> Unit): Messages

Builds a list of Messages using the provided container and block.

Link copied to clipboard

返回一个空的 Messages 对象

Link copied to clipboard
fun messagesOf(vararg elements: Message.Element): Messages

根据输入的消息元素数组创建 Messages 对象

创建一个单元素的 Messages 对象

Link copied to clipboard
fun Text(): Text

得到一个空的 Text.

inline fun Text(block: () -> String): Text

构建一个 Text.

Inherited functions

Link copied to clipboard

Decodes a string representation of Messages using the provided StringFormat.

Link copied to clipboard
inline suspend fun AggregatedMessageReceipt.deleteAllSafely(vararg options: DeleteOption, onResult: (Result<Unit>) -> Unit = { /* Ignore it. */ })

尝试删除其所代表的所有消息回执。

Link copied to clipboard

Encodes the given messages object to a String representation using the StringFormat.

Link copied to clipboard

判断 Messages 中是否存在任何元素。

Link copied to clipboard
operator fun Message.plus(other: Message): Messages

合并两个 MessageMessages

Link copied to clipboard
operator fun MessagesAddable<*>.plusAssign(text: String)

使用 += operator 添加 text

使用 += operator 添加 messages

operator fun MessagesAddable<*>.plusAssign(element: Message.Element)

使用 += operator 添加 element

Link copied to clipboard

将元素集转换为 Messages 对象

Link copied to clipboard

将一个字符串转化为 Text.