MiraiConsoleImplementation

interface MiraiConsoleImplementation : CoroutineScope

实现 MiraiConsole 的接口

注意: 随着 Console 的更新, 在版本号 x.y.zy 修改时此接口可能就会发生 ABI 变动. 意味着前端实现着需要跟随 Console 更新.

See also

Types

BackendAccess
Link copied to clipboard
interface BackendAccess

前端访问后端内部实现的桥

Companion
Link copied to clipboard
object Companion
ConsoleCommandSenderImpl
Link copied to clipboard
interface ConsoleCommandSenderImpl

由 Kotlin 用户实现

ConsoleDataScope
Link copied to clipboard
interface ConsoleDataScope

Mirai Console 内置的一些 PluginConfigPluginData 的管理器.

ConsoleLaunchOptions
Link copied to clipboard
class ConsoleLaunchOptions

Console 启动参数, 修改参数会改变默认行为

JConsoleCommandSenderImpl
Link copied to clipboard
JConsoleInput
Link copied to clipboard
interface JConsoleInput : ConsoleInput

供 Java 用户实现 ConsoleInput

Functions

createLogger
Link copied to clipboard
abstract fun createLogger(identity: String?): MiraiLogger

创建一个 MiraiLogger.

createLoginSolver
Link copied to clipboard
abstract fun createLoginSolver(requesterBot: Long, configuration: BotConfiguration): LoginSolver

创建一个 LoginSolver

postPhase
Link copied to clipboard
open fun postPhase(phase: String)

后端 在 phase 阶段执行后会调用此方法, 如果此方法抛出了一个错误会直接中断 console 初始化

postStart
Link copied to clipboard
open fun postStart()

后端在 start 后会调用此方法

prePhase
Link copied to clipboard
open fun prePhase(phase: String)

后端 在 phase 阶段执行前会调用此方法, 如果此方法抛出了一个错误会直接中断 console 初始化

preStart
Link copied to clipboard
open fun preStart()

后端在 start 前会调用此方法

Properties

backendAccess
Link copied to clipboard
open val backendAccess: MiraiConsoleImplementation.BackendAccess
builtInPluginLoaders
Link copied to clipboard
abstract val builtInPluginLoaders: List<Lazy<PluginLoader<*, *>>>

内建加载器列表, 一般需要包含 JvmPluginLoader.

commandManager
Link copied to clipboard
abstract val commandManager: CommandManager

CommandManager 实现, 建议实现为 lazy:

configStorageForBuiltIns
Link copied to clipboard
abstract val configStorageForBuiltIns: PluginDataStorage
configStorageForJvmPluginLoader
Link copied to clipboard
abstract val configStorageForJvmPluginLoader: PluginDataStorage
consoleDataScope
Link copied to clipboard
abstract val consoleDataScope: MiraiConsoleImplementation.ConsoleDataScope

Mirai Console 内置的一些 PluginConfigPluginData 的管理器.

consoleInput
Link copied to clipboard
abstract val consoleInput: ConsoleInput
coroutineContext
Link copied to clipboard
abstract override val coroutineContext: CoroutineContext

MiraiConsoleCoroutineScope.coroutineContext, 必须拥有如下元素

dataStorageForBuiltIns
Link copied to clipboard
abstract val dataStorageForBuiltIns: PluginDataStorage
dataStorageForJvmPluginLoader
Link copied to clipboard
abstract val dataStorageForJvmPluginLoader: PluginDataStorage
frontEndDescription
Link copied to clipboard
abstract val frontEndDescription: MiraiConsoleFrontEndDescription

本前端实现的描述信息

isAnsiSupported
Link copied to clipboard
open val isAnsiSupported: Boolean

该前端是否支持使用 Ansi 输出彩色信息

jvmPluginLoader
Link copied to clipboard
abstract val jvmPluginLoader: JvmPluginLoader

JvmPluginLoader 实例. 建议实现为 lazy:

loggerController
Link copied to clipboard
open val loggerController: LoggerController

前端预先定义的 LoggerController, 以允许前端使用自己的配置系统

rootPath
Link copied to clipboard
abstract val rootPath: Path

Console 运行根目录绝对路径 (否则可能会被一些 native 插件覆盖相对路径)

Extensions

start
Link copied to clipboard

由前端调用, 初始化 MiraiConsole 实例并启动