mirror of
https://github.com/mamoe/mirai.git
synced 2025-01-07 00:20:09 +08:00
高效率 QQ 机器人支持库
.github | ||
gradle/wrapper | ||
mirai-api | ||
mirai-console | ||
mirai-core | ||
mirai-debug | ||
mirai-demos/mirai-demo-1 | ||
.gitignore | ||
build.gradle | ||
gradle.properties | ||
gradlew | ||
gradlew.bat | ||
LICENSE | ||
README.md | ||
settings.gradle |
Mirai
一个以 TIM PC协议(非web) 驱动的跨平台QQ机器人服务端核心, 虽然目前仅支持 JVM
采用服务端-插件模式运行,同时提供独立的跨平台核心库.
Mirai 的所有模块均开源
项目处于开发阶段, 还有很多未完善的地方. 欢迎任何的代码贡献, 或是 issue.
部分协议来自网络上开源项目
一切开发旨在学习,请勿用于非法用途
抢先体验
核心框架结构已经开发完毕,一些核心功能也测试完成。
仅需几分钟就可以测试 Mirai.
现在你可以登录小号来测试 Mirai.
即使测试消息时未发现冻结情况,我们也无法100%保证账号冻结不会发生。
目前还没有写构建,请使用 IDE 运行单个 main 函数。
- Clone
- Import as Gradle project
- 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
}
}
图片测试
上传发送图片已经完成, 您可以在 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
...