欢迎使用ROB! 这是一个Kotlin的OneBot11 SDK开发框架并且支持多实例!
注意事项
- ROB不是一个OneBot实现, 他的作用是连接到OneBot实现, 然后处理OneBot实现下发的消息。
- ROB在
v2.8.2及以前的版本为纯Jvm库, 在v2.9.0及以上为KMP库, 支持Windows(MinGWX64)、Linux(x64,armX64)、MacOs(X64, ArmX64)、Jvm。 - Jvm ROB所需的最低JDK版本为
11 ronebot-onebot-v11兼容全部的Lagrange.OneBot的API并且兼容部分的其他OneBot实现的API, 不保证可用性, 有bug可以提issue
快速开始
如果你的Bot用到了
任何Kotlin native平台, 请把下面的内容添加到你的gradle.properties中
properties
# gradle.properties
org.gradle.jvmargs=-Xmx2g -XX:MaxMetaspaceSize=1g -Dfile.encoding=UTF-8由于链接Kotlin native需要大量的内存, 你需要额外配置更多的堆内存让gradle成功链接出最终的二进制产物
添加Maven仓库
kotlin
repositories {
mavenCentral()
maven("https://repo.maven.rtast.cn/releases/")
}添加依赖
kotlin
sourceSets {
commonMain {
dependencies {
// 这里的版本替换成最新版本
implementation("cn.rtast.rob:ronebot-onebot-v11:${version}")
}
}
}或者支持其他平台
kotlin
kotlin {
linuxX64 {
binaries.executable {
entryPoint = "com.example.rob.examplerobproject.main"
}
}
mingwX64 {
binaries.executable {
entryPoint = "com.example.rob.examplerobproject.main"
}
}
jvm()
sourceSets {
commonMain {
dependencies {
implementation("cn.rtast.rob:ronebot-onebot-v11:${version}")
}
}
}
}最小实例
kotlin
suspend fun main() {
OneBotFactory.createClient("ws://127.0.0.1:6666", "1145141919810", object : OneBotListener {
override suspend fun onGroupMessage(message: GroupMessage, json: String) {
println(message.rawMessage)
}
})
}注意: 在native平台上是没有办法将main函数作为挂起函数, 所以你需要手动创建一个协程作用域来创建客户端和服务端 例如使用
GlobalScope.launch {}函数来创建一个协程作用域