在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称:simpler-robot开源软件地址:https://gitee.com/ForteScarlet/simpler-robot开源软件介绍:- simply-robot -~ simbot v3 ~github | gitee > 感谢 CatCode 开发团队成员制作的simbot logo < > 走过路过,不要忘记点亮一颗⭐喔~ < 简介这是一个通用机器人开发框架,是simple-robot的3.x版本(下文简称
它提供了丰富的api接口与各种模块以支持机器人开发者与组件开发者使用,对于机器人开发者,你可以通过功能丰富的注解来实现各种较为复杂的事件匹配逻辑。对于组件开发者,你拥有很高的可选择性与灵活性来针对一个平台进行对接。 simbot3相比较于simbot2时代,其(再一次的)完全重构了整体架构,使用全面异步的api提供更加高效更加流畅的使用体验。 模块差异simbot3中, 在 而在 组件协同simbot3支持多组件协同,但是这会给版本控制带来更大的挑战,因此如果你希望在你的应用里使用多组件,请仔细检查并测试各个组件之间的版本依赖关系。 注意!!目前simbot3仍然处于前期阶段,如果你想参考simbot2, 可以参考分支: v2-dev 文档simbot3的文档与simbot2的文档在一起,都在 语雀文档中。但是这次simbot3中的源码注释相比以前更为丰富,因此我建议对api相关的内容优先查阅代码中的文档注释。 当然,你也可以去看看API Doc ,API文档会在每次版本发布的时候更新。 组件在simbot3相关的系列组件中,大部分需要依赖第三方库(也有可能是由simbot团队实现的)的组件,基本上都会使用独立的仓库进行管理,并且会尽量遵循simbot3的 命名概述 中所约定的规则。
腾讯频道组件: Mirai组件: 使用
simbot-coreMaven
<!-- 3.x中,大部分组件的版本维护独立于标准库,但是会在版本号中体现依赖标准库的版本号。 --><properties> <simbot.version>${version}</simbot.version></properties> <!-- simbot核心标准库 --><dependency> <groupId>love.forte.simbot</groupId> <artifactId>simbot-core</artifactId> <version>${simbot.version}</version></dependency> Gradle Kotlin DSLval simbotVersion = // $version// simbot核心标准库implementation("love.forte.simbot:simbot-core:$simbotVersion") Gradle GroovysimbotVersion = // $version// simbot核心标准库implementation "love.forte.simbot:simbot-core:$simbotVersion" 快速开始有关快速开始的相关内容,请参考文档中 《快速开始》 中的相关子章节。 走马观花事件监听
@Listenersuspend fun GroupMessageEvent.listen() { println("事件来源群: ${group().name}") replyIfSupport { "你好!" }} @Filter("你好")@Listenersuspend fun FriendMessageEvent.listen() { friend().send("你也好")} 对象获取@Listenersuspend fun GuildMessageEvent.listen() { // 频道的所有子频道 val channels: Flow<Channel> = children() // bot的所有好友 val friends: Flow<Friend> = bot.friends() // 获取指定群对象 val group = bot.group(114514.ID) val groupId = group.id val groupName = group.name val groupIcon = group.icon} 延时发送/动态参数@Filter("我叫{{name}}")@Listenersuspend fun FriendMessageEvent.listen(@FilterValue("name") name: String) { val friend = friend() bot.launch { delay(3000) friend.send("Hello, $name") }} 特殊消息上传并发送图片@Listenersuspend fun FriendMessageEvent.listen() { val img = Path("img/example.png") val imgResource = Resource.of(img) val imgForSend = bot.uploadImage(imgResource) // send img to friend friend().send(imgForSend)} 群里at + 文本@Listenersuspend fun GroupMessageEvent.listen() { val authorId = author().id val at = At(authorId) group().send(at + "你好?".toText())} 更多示例代码可以参考3.x文档中的《走马观花》相关内容. 协助我
捐助我如果你喜欢这个项目,不妨试着 捐助 一下我们,十分感谢。 特别鸣谢感谢 jetbrains 为团队提供的免费授权,也希望大家能够支持jetbrains及其产品,支持正版。 贡献你的星星!开源协议simbot3(当前仓库下相关内容)以 详细参见: 文档持续优化中... |
请发表评论