mirai-core / net.mamoe.mirai.message.data / ServiceMessage

ServiceMessage

@SinceMirai("0.37.3") open class ServiceMessage : RichMessage

服务消息, 如 XmlMessage.

Types

Key

companion object Key : Key<ServiceMessage>

Constructors

<init>

服务消息, 如 XmlMessage.

ServiceMessage(serviceId: Int, content: String)

Properties

content

val content: String

serviceId

val serviceId: Int

Functions

equals

fun equals(other: Any?): Boolean

hashCode

fun hashCode(): Int

toString

得到包含 mirai 消息元素代码的, 易读的字符串. 如 At(member) + "test" 将转为 "[mirai:at:qqId]test"

fun toString(): String

Companion Object Properties

typeName

Key 指代的 Message 类型名. 一般为 class.simpleName, 如 "QuoteReply", "PlainText"

val typeName: String

Extension Functions

flatten

扁平化 Message

fun Message.flatten(): Sequence<SingleMessage>

isContentEmpty

判断消息内容是否为空.

fun Message.isContentEmpty(): Boolean

isContentNotEmpty

fun Message.isContentNotEmpty(): Boolean

isNotPlain

fun Message.isNotPlain(): Boolean

isNotPlain2

fun Message.isNotPlain2(): Boolean

isPlain

fun Message.isPlain(): Boolean

isPlain2

fun Message.isPlain2(): Boolean

repeat

fun Message.repeat(count: Int): MessageChain

repeat2

fun Message.repeat2(count: Int): MessageChain

sendTo

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

Inheritors

JsonMessage

Json 消息.

class JsonMessage : ServiceMessage

XmlMessage

XML 消息, 如分享, 卡片等.

class XmlMessage : ServiceMessage