interface MessageChain : Message, Iterable<SingleMessage>
消息链. 空的实现为 EmptyMessageChain
要获取更多信息, 请查看 Message
See Also
size |
元素数量. EmptyMessageChain 不参加计数. abstract val size: Int |
__forEach for Java__ |
遍历每一个消息, 即 MessageSource, AtAll, PlainText, Image, Face, XmlMessage, QuoteReply.
仅供 open fun __forEach for Java__(block: (Message) -> Unit): Unit |
__forEachContent for Java__ |
遍历每一个有内容的消息, 即 At, AtAll, PlainText, Image, Face, XmlMessage, QuoteReply.
仅供 open fun __forEachContent for Java__(block: (Message) -> Unit): Unit |
contains |
open operator fun |
get |
open operator fun <M : Message> get(key: Key<M>): M |
get2 |
open fun <M : Message> |
getOrNull |
获取第一个类型为 key 的 Message 实例, 找不到则返回 open fun <M : Message> getOrNull(key: Key<M>): M? |
getOrNull2 |
open fun <M : Message> |
bot |
消息内部 id. 仅从服务器接收的消息才可以获取 val MessageChain.bot: Bot |
id |
消息 id. 仅从服务器接收的消息才可以获取 val MessageChain.id: Int |
internalId |
消息内部 id. 仅从服务器接收的消息才可以获取 val MessageChain.internalId: Int |
source |
获取这条消息源 仅从服务器接收的消息才可以获取消息源 val MessageChain.source: MessageSource |
time |
消息时间. 仅从服务器接收的消息才可以获取 val MessageChain.time: Int |
allContent |
fun MessageChain.allContent(block: (MessageContent) -> Boolean): Boolean |
any |
fun <M : Message> MessageChain.any(key: Key<M>): Boolean |
anyIsInstance |
fun <M : Message> MessageChain.anyIsInstance(): Boolean |
asMessageChain |
fun MessageChain.asMessageChain(): MessageChain |
first |
fun <M : Message> MessageChain.first(key: Key<M>): M |
firstIsInstance |
fun <M : Message> MessageChain.firstIsInstance(): M |
firstIsInstanceOrNull |
fun <M : Message?> MessageChain.firstIsInstanceOrNull(): M? |
firstOrNull |
fun <M : Message> MessageChain.firstOrNull(key: Key<M>): M? |
flatten |
fun MessageChain.flatten(): Sequence<SingleMessage> |
forEachContent |
遍历每一个 消息内容 fun MessageChain.forEachContent(block: (MessageContent) -> Unit): Unit |
foreachContent |
fun MessageChain. |
getValue |
提供一个类型的值的委托. 若不存在则会抛出异常 NoSuchElementException operator fun <T : Message> MessageChain.getValue(thisRef: Any?, property: KProperty<*>): T |
isContentEmpty |
判断消息内容是否为空. fun Message.isContentEmpty(): Boolean |
isContentNotEmpty |
fun Message.isContentNotEmpty(): Boolean |
isNotPlain |
fun Message.isNotPlain(): Boolean |
isNotPlain2 |
fun Message. |
isPlain |
fun Message.isPlain(): Boolean |
isPlain2 |
fun Message. |
noneContent |
如果每一个 消息内容 都不满足 block, 返回 fun MessageChain.noneContent(block: (MessageContent) -> Boolean): Boolean |
orElse |
提供一个类型的 Message 的委托, 若不存在这个类型的 Message 则委托会提供 fun <T : Message?> MessageChain.orElse(lazyDefault: () -> T): OrNullDelegate<T> |
orNull |
提供一个类型的 Message 的委托, 若不存在这个类型的 Message 则委托会提供 fun <T : Message> MessageChain.orNull(): OrNullDelegate<T?> |
quote |
引用这条消息 fun MessageChain.quote(): QuoteReply |
recall |
撤回这条消息. 可撤回自己 2 分钟内发出的消息, 和任意时间的群成员的消息. suspend fun MessageChain.recall(): Unit |
recallIn |
在一段时间后撤回这条消息. 可撤回自己 2 分钟内发出的消息, 和任意时间的群成员的消息. fun MessageChain.recallIn(millis: Long, coroutineContext: CoroutineContext = EmptyCoroutineContext): Job |
repeat |
fun Message.repeat(count: Int): MessageChain |
repeat2 |
fun Message. |
sendTo |
将 this 发送给指定联系人 suspend fun <C : Contact> MessageChain.sendTo(contact: C): MessageReceipt<C> suspend fun <C : Contact> Message.sendTo(contact: C): MessageReceipt<C> |
times |
operator fun Message.times(count: Int): MessageChain |
toForwardMessage |
转换为 ForwardMessage fun Message.toForwardMessage(sender: User, time: Int = currentTimeSeconds.toInt(), displayStrategy: DisplayStrategy = DisplayStrategy): ForwardMessage fun Message.toForwardMessage(senderId: Long, senderName: String, time: Int = currentTimeSeconds.toInt(), displayStrategy: DisplayStrategy = DisplayStrategy): ForwardMessage |
EmptyMessageChain |
不含任何元素的 MessageChain. object EmptyMessageChain : MessageChain, Iterator<SingleMessage> |
NullMessageChain |
Null 的 MessageChain. 它不包含任何元素, 也没有创建任何 list. object |