好家伙:blush:
Nambers 发布的最佳帖子
-
MiraiCP-C++ SDK
MiraiCP发展到现在也已经发展了30几个版本了,基础api都已经覆盖,不过还是有着一些缺陷
github项目地址
本贴旨在搜集对MiraiCP的建议,意见,一些功能的讨论和遇到的问题
MiraiCP也会慢慢覆盖mirai其他未覆盖的api 如戳一戳之类的
-
RE: 无法从idea console插件新建插件
@250king
降级gradle方法: 在gradle文件夹下有个文件,里面改gradlew的下载网址里面的版本
升级插件: 升级依赖的mirai-console到最新,如2.7-RC -
Mirai接入图灵机器人
图灵聊天机器人虽然感觉越做越水了,不过还可以免费用
本插件使用方法:
- 下载release中的插件文件
- 去图灵个人中心取到api令牌
- 把插件放到mcl里运行一次,插件会把配置文件目录通过日志发送出来(即在
data/TuLingBot/config.json
),打开编辑这个文件 - 按照以下格式输入
{ "apikey":"api令牌", "gkeyword":"群聊触发开始字符", "fkeyword":"私聊触发开始字符" }
其中,开始字符为空则代表在任何情况都触发
5. 运行mcl有什么需要可以发issue再加
-
Resend 重发插件
重发插件, 设置一条重发条件后, 当该条件被触发, 相当于bot收到另外一条信息, github地址
比如设置接收到a就等于b, 那机器人下次收到a就相当于收到b, 使用场景大概在简化发送的指令上
大概就这个效果:
目前只支持群聊和好友可选配置如下:
data class Config( // 好友的重发条件 val resendsForFriend: ArrayList<ResendCommand>, // 群聊的重发条件 val resendsForGroup: ArrayList<ResendCommand>, // 匹配消息的content(MessageChain.contentToString) val content: Boolean? = null, // 匹配消息的MiraiCode(MessageChain.serializeToMiraiCode) val miraiCode: Boolean? = null, // 阻止其他监听器获取重发前的信息 val intercept: Boolean? = null, // 屏蔽全部好友信息 val blockFriend: Boolean? = null, // 屏蔽全部群聊信息 val blockGroup: Boolean? = null, // 每条信息只匹配一次 val matchOnce: Boolean? = null ) { data class ResendCommand( // 触发字符串, 可为正则表达式 val target: String, // 重发字符串, 可为MiraiCode val to: String, // 触发字符串是否是正则表达式 val regex: Boolean? = null, // 重发字符串是否为MiraiCode val miraiCode: Boolean? = null ) }
-
FightInMirai - 击剑插件
github地址
FightInMirai
击剑🤺
使用方法:
- release 下载
- 在config/tech.eritquearcus.fight/config.yml中修改配置(如果没有就启动一次mcl然后关闭)
配置
# 触发条件, 现在支持:At/Nudge = 戳一戳/Both = At + nudge triggerType: Both # 附加字符, 比如是 {xxx, xx}, 那`@11 xxx`和`@11 xx`就会触发, nudge情况下无效 triggers: - 击剑 # 反应, Mute = 禁言/ Kick = 踢出/ Admin = 提升成管理员 / NameCard = 更改成名片列表中随机一个 reaction: NameCard # 禁言时间, 当reaction == Mute时生效, 单位ms muteTime: 10 # NormalRespond, 如果RespondType == Normal就在结束后发送, {winat} 和 {loseat}会被自动替换成@赢的人和@输的人, {usrat} 被替换成@发起人, 如果存在多个值就回复随机一个 respond: - '{usrat}{winat}aa' # 随机群名片列表 nameCards: - a - b # 如果对bot发起,就对对方实现reaction然后回复本项,替换规则同NormalRespond respondWhenTargetIsBot: - '{usrat}...' # 回复类型, Normal = 回复respond其中一个 / SuccessOrFail = 如果发起人成功就回复successResponds中一个否则就failResponds respondType: SuccessOrFail # 如果respondType = SuccessOrFail时候, 发起人成功时发送, 替换规则同NormalRespond successResponds: - '{usrat}S' # 如果respondType = SuccessOrFail时候, 发起人失败时发送,替换规则同NormalRespond failResponds: - 'F' # 如果reaction是踢出, 踢出信息为随机其中一条 kickMessages: - 'k'
license
Copyright (C) 2022-2022 Eritque arcus and contributors. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version(in your opinion). This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
-
RE: [求助] Mirai-core升级2.13.0-RC2之后编译报错
可能是你从mirai间接依赖了 ktor, 然后mirai剔除了一些依赖.建议自己引入ktor依赖试一下,包括但不仅限于 ktor-io, ktor-client, ktor-utils 之类的
-
RE: Mirai的线程池有多大?如何配置?
Mirai貌似是用协程监听的, 所以我觉得你自己建一个线程池比较好的样子?
那个globalscope也是协程的东西https://www.kotlincn.net/docs/reference/coroutines/basics.html
或者看这https://juejin.cn/post/6901194242635333645