mirai-core / net.mamoe.mirai.contact / User

User

abstract class User : Contact, CoroutineScope

代表一个 用户.

其子类有 群成员好友. 虽然群成员也可能是好友, 但他们仍是不同的两个类型.

注意: 一个 User 实例并不是独立的, 它属于一个 Bot.

对于同一个 Bot 任何一个人的 User 实例都是单一的.

Constructors

<init>

代表一个 用户.

User()

Properties

avatarUrl

头像下载链接

open val avatarUrl: String

id

QQ 号码

abstract val id: Long

nick

昵称

abstract val nick: String

Functions

sendMessage

向这个对象发送消息.

abstract suspend fun sendMessage(message: Message): MessageReceipt<User>suspend fun sendMessage(message: String): MessageReceipt<User>

toString

abstract fun toString(): String

uploadImage

上传一个图片以备发送.

abstract suspend fun uploadImage(image: ExternalImage): OfflineFriendImage

Extension Properties

nameCardOrNick

获取非空群名片或昵称.

val User.nameCardOrNick: String

Extension Functions

recall

suspend fun Contact.recall(source: MessageChain): Unit
suspend fun Contact.recall(source: MessageSource): Unit

recallIn

fun Contact.recallIn(message: MessageChain, millis: Long, coroutineContext: CoroutineContext = EmptyCoroutineContext): Job
fun Contact.recallIn(source: MessageSource, millis: Long, coroutineContext: CoroutineContext = EmptyCoroutineContext): Job

sendImage

Dispatchers.IO 中将图片发送到指定联系人. 不会保存临时文件

suspend fun <C : Contact> C.sendImage(bufferedImage: BufferedImage): MessageReceipt<C>

Dispatchers.IO 中下载 URL 到临时文件并将其作为图片发送到指定联系人

suspend fun <C : Contact> C.sendImage(imageUrl: URL): MessageReceipt<C>

Dispatchers.IO 中读取 Input 到临时文件并将其作为图片发送到指定联系人

suspend fun <C : Contact> C.sendImage(imageInput: Input): MessageReceipt<C>

Dispatchers.IO 中读取 InputStream 到临时文件并将其作为图片发送到指定联系人

suspend fun <C : Contact> C.sendImage(imageStream: InputStream): MessageReceipt<C>

Dispatchers.IO 中将文件作为图片发送到指定联系人

suspend fun <C : Contact> C.sendImage(file: File): MessageReceipt<C>

sendImage

将图片作为单独的消息发送给 this

suspend fun <C : Contact> C.sendImage(image: ExternalImage): MessageReceipt<C>

uploadImage

Dispatchers.IO 中将图片上传, 但不发送. 不会保存临时文件

suspend fun Contact.uploadImage(bufferedImage: BufferedImage): OfflineImage

Dispatchers.IO 中下载 URL 到临时文件并将其作为图片上传, 但不发送

suspend fun Contact.uploadImage(imageUrl: URL): OfflineImage

Dispatchers.IO 中读取 Input 到临时文件并将其作为图片上传, 但不发送

suspend fun Contact.uploadImage(imageInput: Input): OfflineImage

Dispatchers.IO 中读取 InputStream 到临时文件并将其作为图片上传, 但不发送

suspend fun Contact.uploadImage(imageStream: InputStream): OfflineImage

Dispatchers.IO 中将文件作为图片上传, 但不发送

suspend fun Contact.uploadImage(file: File): OfflineImage

Inheritors

QQ

QQ 对象.

abstract class QQ : User, CoroutineScope