高效率 QQ 机器人支持库
Go to file
2019-10-24 10:59:13 +08:00
.github Moved image files 2019-09-10 21:23:39 +08:00
gradle/wrapper Multiplatform with gradle building 2019-10-03 19:07:03 +08:00
mirai-api Multiplatform with gradle building 2019-10-03 19:07:03 +08:00
mirai-console Let BotNetworkHandler implements CoroutineScope 2019-10-24 10:59:13 +08:00
mirai-core Let BotNetworkHandler implements CoroutineScope 2019-10-24 10:59:13 +08:00
mirai-debug Let BotNetworkHandler implements CoroutineScope 2019-10-24 10:59:13 +08:00
mirai-demos/mirai-demo-1 Let BotNetworkHandler implements CoroutineScope 2019-10-24 10:59:13 +08:00
.gitignore Multiplatform with gradle building 2019-10-03 19:07:03 +08:00
build.gradle Let BotNetworkHandler implements CoroutineScope 2019-10-24 10:59:13 +08:00
gradle.properties Let BotNetworkHandler implements CoroutineScope 2019-10-24 10:59:13 +08:00
gradlew Multiplatform with gradle building 2019-10-03 19:07:03 +08:00
gradlew.bat Multiplatform with gradle building 2019-10-03 19:07:03 +08:00
LICENSE update 2019-08-18 01:14:09 +08:00
README.md Image uploading is now available 2019-10-21 01:21:24 +08:00
settings.gradle Use Klock 2019-10-19 13:41:36 +08:00

Mirai

HitCount Codacy Badge

一个以 TIM PC协议(非web) 驱动的跨平台QQ机器人服务端核心, 虽然目前仅支持 JVM
采用服务端-插件模式运行,同时提供独立的跨平台核心库.
Mirai 的所有模块均开源

项目处于开发阶段, 还有很多未完善的地方. 欢迎任何的代码贡献, 或是 issue.
部分协议来自网络上开源项目
一切开发旨在学习,请勿用于非法用途

抢先体验

核心框架结构已经开发完毕,一些核心功能也测试完成。
仅需几分钟就可以测试 Mirai.
现在你可以登录小号来测试 Mirai.
即使测试消息时未发现冻结情况我们也无法100%保证账号冻结不会发生。

目前还没有写构建,请使用 IDE 运行单个 main 函数。

  1. Clone
  2. Import as Gradle project
  3. Run demo main Demo 1 Main

事件

使用 Kotlin

这里只演示进行不终止地监听。

Top-level reified

多数情况下这是最好的方式。

inline fun <reified E: Event> subscribeAlways(handler: (E) -> Unit)

subscribeAlways<FriendMessageEvent>{
  //it: FriendMessageEvent
}
DSL

查看更多: ListenerBuilder

inline fun <reified E: Event> subscribeAll(builder: ListenerBuilder.() -> Unit)

subscribe<FriendMessageEvent>{
  always{
    //it: FriendMessageEvent
    //coroutineContext: EventScope.coroutineContext
  }
  //可同时开始多个监听。
  always{
    //it: FriendMessageEvent
    //coroutineContext: EventScope.coroutineContext
  }
}

AYWVE86P

图片测试

现在可以接收图片消息(并解析为消息链):
JsssF

上传发送图片已经完成, 您可以在 Demo 中找到发送方式.
机器人可以转发图片消息.详情查看 Image.kt

现已支持

  • 发送好友/群消息(10/14)
  • 接受解析好友消息(10/14)
  • 接收解析群消息(10/14)
    • 成员权限, 昵称(10/18)
  • 好友在线状态改变(10/14)
  • Android客户端上线/下线(10/18)
  • 上传并发送图片(10/21)

使用方法

要求

  • Kotlin 1.3+

用于 JVM 平台

  • Java 8

插件开发

    to be continued
    ...