Package net.mamoe.mirai.contact

Types

Link copied to clipboard
interface AnonymousMember : Member

代表匿名群成员.

Link copied to clipboard
interface AudioSupported : Contact

支持发送语音的 Contact

Link copied to clipboard
enum AvatarSpec : Enum<AvatarSpec> , Comparable<AvatarSpec>

头像的规格, size 单位为 px.

Link copied to clipboard
class BotIsBeingMutedException @MiraiInternalApi constructor(val target: Group, val originalMessage: Message) : SendMessageFailedException

发送消息时 bot 正处于被禁言状态时抛出的异常.

Link copied to clipboard
enum ClientKind : Enum<ClientKind>

详细设备类型. 在登录时查询到的设备列表中无此信息. 只在 OtherClientOnlineEvent 才有.

Link copied to clipboard
expect interface Contact : ContactOrBot, CoroutineScope

联系对象, 即可以与 Bot 互动的对象. 包含 用户, 和 .

actual interface Contact : ContactOrBot

联系对象, 即可以与 Bot 互动的对象. 包含 用户, 和 .

actual interface Contact : ContactOrBot, CoroutineScope

联系对象, 即可以与 Bot 互动的对象. 包含 用户, 和 .

Link copied to clipboard
class ContactList<out C : Contact> @MiraiInternalApi constructor(val delegate: MutableCollection<@UnsafeVariance C>) : Collection<C>

只读联系人列表. 元素列表仍可能会被 mirai 内部修改.

Link copied to clipboard
interface ContactOrBot : CoroutineScope

拥有 id 的对象. 此为 ContactBot 的唯一公共接口.

Link copied to clipboard
expect interface FileSupported : Contact

支持文件操作的 Contact. 目前仅 Group.

actual interface FileSupported : Contact

支持文件操作的 Contact. 目前仅 Group.

actual interface FileSupported : Contact

支持文件操作的 Contact. 目前仅 Group.

Link copied to clipboard
interface Friend : User, CoroutineScope, AudioSupported, RoamingSupported

代表一位好友.

Link copied to clipboard
interface Group : Contact, CoroutineScope, FileSupported, AudioSupported

群.

Link copied to clipboard
interface GroupSettings

群设置

Link copied to clipboard
interface Member : User

代表一位群成员.

Link copied to clipboard
enum MemberPermission : Enum<MemberPermission> , Comparable<MemberPermission>

群成员的权限.

Link copied to clipboard
class MessageTooLargeException(    val target: Contact,     val originalMessage: Message,     val messageAfterEvent: Message,     exceptionMessage: String) : SendMessageFailedException

发送消息时消息过长抛出的异常.

Link copied to clipboard
interface NormalMember : Member

代表一位普通的群成员.

Link copied to clipboard
interface OtherClient : Contact

其他设备. 如当 BotANDROID_PHONE 登录时, 还可以有其他设备以 ANDROID_PAD, iOS, PC 或其他设备登录.

Link copied to clipboard
data class OtherClientInfo @MiraiInternalApi constructor(    val appId: Int,     val platform: Platform?,     val deviceName: String,     val deviceKind: String)
Link copied to clipboard
class PermissionDeniedException : IllegalStateException

权限不足

Link copied to clipboard
enum Platform : Enum<Platform>
Link copied to clipboard
open class SendMessageFailedException @MiraiInternalApi constructor(    val target: Contact,     val reason: SendMessageFailedException.Reason,     val originalMessage: Message) : RuntimeException

发送消息失败时抛出的异常

Link copied to clipboard
interface Stranger : User, CoroutineScope

代表一位陌生人.

Link copied to clipboard
@MiraiInternalApi(message = "其他渠道的临时会话暂未支持. ")
interface TempUser : User

临时会话用户, 非群成员.

Link copied to clipboard
interface User : Contact, UserOrBot, CoroutineScope

代表一个 用户.

Link copied to clipboard
interface UserOrBot : ContactOrBot

Functions

Link copied to clipboard
fun Member.asFriend(): Friend

得到此成员作为好友的对象.

fun Stranger.asFriend(): Friend

得到此陌生人作为好友的对象.

Link copied to clipboard
fun Member.asFriendOrNull(): Friend?

得到此成员作为好友的对象, 当此成员不是好友时返回 null

fun Stranger.asFriendOrNull(): Friend?

得到此陌生人作为好友的对象, 当此成员不是好友时返回 null

Link copied to clipboard
fun Member.asStranger(): Stranger

得到此成员作为陌生人的对象.

Link copied to clipboard
fun Member.asStrangerOrNull(): Stranger?

得到此成员作为陌生人的对象, 当此成员不是陌生人时返回 null

Link copied to clipboard
inline fun Group.checkBotPermission(required: MemberPermission, crossinline lazyMessage: () -> String = { "Permission denied: required $required, got actual $botPermission for $bot in group $id" })

要求 Bot 在这个群里的权限至少为 required, 否则抛出异常 PermissionDeniedException

Link copied to clipboard
inline fun Group.getMember(id: Long): NormalMember?

get. 在一些不适合使用 get 的情境下使用 getMember.

Link copied to clipboard
inline fun Group.getMemberOrFail(id: Long): NormalMember

getMemberOrFail. 在一些不适合使用 getOrFail 的情境下使用 getMemberOrFail.

Link copied to clipboard
inline fun Member.isAdministrator(): Boolean
inline fun MemberPermission.isAdministrator(): Boolean

判断权限是否为管理员

Link copied to clipboard
inline fun Member.isOperator(): Boolean
inline fun MemberPermission.isOperator(): Boolean

判断权限是否为管理员或群主

Link copied to clipboard
inline fun Member.isOwner(): Boolean
inline fun MemberPermission.isOwner(): Boolean

判断权限是否为群主

Link copied to clipboard
inline suspend fun NormalMember.mute(duration: Duration)
Link copied to clipboard
inline suspend fun Contact.recallMessage(source: MessageChain)
inline suspend fun Contact.recallMessage(source: MessageSource)

Properties

Link copied to clipboard
val BotIsBeingMutedException.botMuteRemaining: Int
Link copied to clipboard
val OtherClient.deviceKind: String
Link copied to clipboard
val OtherClient.deviceName: String
Link copied to clipboard
val Group.isBotMuted: Boolean

返回机器人是否正在被禁言

Link copied to clipboard
val Member.isFriend: Boolean

当此成员同时是 Bot 的好友时返回 true

Link copied to clipboard
val Member.isStranger: Boolean

当此成员同时是 Bot 的陌生人时返回 true

Link copied to clipboard
val Member.nameCardOrNick: String

获取非空群名片或昵称.

val User.nameCardOrNick: String

获取非空群名片或昵称.

val UserOrBot.nameCardOrNick: String

获取非空群名片或昵称.

Link copied to clipboard
val OtherClient.platform: Platform?
Link copied to clipboard
val Member.remarkOrNameCard: String

获取非空备注或群名片.

Link copied to clipboard
val Member.remarkOrNameCardOrNick: String

获取非空备注或群名片或昵称.

Link copied to clipboard
val User.remarkOrNick: String

获取非空备注或昵称.