MiraiForum

    • Register
    • Login
    • Search
    • Popular
    • Recent
    • Unsolved
    • Tags
    • Groups
    • 友情链接
    1. Home
    2. Popular
    Log in to post
    • All categories
    • All Topics
    • New Topics
    • Watched Topics
    • Unreplied Topics
    • All Time
    • Day
    • Week
    • Month
    • X

      Solved 提示qq版本过低
      使用交流 • • xuefeng

      27
      0
      Votes
      27
      Posts
      5370
      Views

      X

      2022-10-12 22:08:59 E/main: net.mamoe.mirai.network.WrongPasswordException: Error(bot=Bot(3038384204), code=235, title=温馨提示, message=当前QQ版本过低,请升级至最新版本后再登录。点击进入 下载页面, errorInfo=)
      net.mamoe.mirai.network.WrongPasswordException: Error(bot=Bot(3038384204), code=235, title=温馨提示, message=当前QQ版本过低,请升级至最新版本后再登录。点击进入下载页面, errorInfo=)
      at net.mamoe.mirai.internal.network.components.SsoProcessorImpl$SlowLoginImpl.doLogin(SsoProcessor.kt:284)
      at net.mamoe.mirai.internal.network.components.SsoProcessorImpl$SlowLoginImpl$doLogin$1.invokeSuspend(SsoProcessor.kt)
      at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
      at kotlinx.coroutines.internal.ScopeCoroutine.afterResume(Scopes.kt:33)
      at kotlinx.coroutines.AbstractCoroutine.resumeWith(AbstractCoroutine.kt:102)
      at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46)
      at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
      at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:570)
      at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:749)
      at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:677)
      at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:664)
      Suppressed: java.util.concurrent.CancellationException: Bot closed
      at kotlinx.coroutines.ExceptionsKt.CancellationException(Exceptions.kt:22)
      at net.mamoe.mirai.internal.AbstractBot.close(AbstractBot.kt:112)
      at net.mamoe.mirai.internal.QQAndroidBot.close(QQAndroidBot.kt:84)
      at net.mamoe.mirai.internal.AbstractBot.login(AbstractBot.kt:136)
      at net.mamoe.mirai.internal.AbstractBot$login$1.invokeSuspend(AbstractBot.kt)
      at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
      at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
      at kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.common.kt:279)
      at kotlinx.coroutines.BlockingCoroutine.joinBlocking(Builders.kt:85)
      at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking(Builders.kt:59)
      at kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source)
      at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking$default(Builders.kt:38)
      at kotlinx.coroutines.BuildersKt.runBlocking$default(Unknown Source)
      at net.mamoe.mirai.console.internal.MiraiConsoleImplementationBridge.doStart$mirai_console(MiraiConsoleImplementationBridge.kt:245)
      at net.mamoe.mirai.console.MiraiConsoleImplementation$Companion.start(MiraiConsoleImplementation.kt:464)
      at net.mamoe.mirai.console.terminal.MiraiConsoleTerminalLoader.startAsDaemon(MiraiConsoleTerminalLoader.kt:168)
      at net.mamoe.mirai.console.terminal.MiraiConsoleTerminalLoader.startAsDaemon$default(MiraiConsoleTerminalLoader.kt:167)
      at net.mamoe.mirai.console.terminal.MiraiConsoleTerminalLoader.main(MiraiConsoleTerminalLoader.kt:52)
      at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
      at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
      at java.base/java.lang.reflect.Method.invoke(Unknown Source)
      at org.itxtech.mcl.Utility.bootJars(Utility.java:89)
      at org.itxtech.mcl.Utility.bootJars(Utility.java:79)
      at org.itxtech.mcl.Utility.bootMirai(Utility.java:101)
      at org.itxtech.mcl.module.builtin.Boot.boot(Boot.java:109)
      at org.itxtech.mcl.module.ModuleManager.phaseBoot(ModuleManager.java:148)
      at org.itxtech.mcl.Loader.lambda$start$4(Loader.java:189)
      at org.itxtech.mcl.Loader.tryCatching(Loader.java:146)
      at org.itxtech.mcl.Loader.start(Loader.java:189)
      at org.itxtech.mcl.Loader.main(Loader.java:79)
      Caused by: [CIRCULAR REFERENCE: net.mamoe.mirai.network.WrongPasswordException: Error(bot=Bot(3038384204), code=235, title=温馨提示, message=当前QQ版本过低,请升级至最新版本后再登 录。点击进入下载页面, errorInfo=)]

    • MrXiaoM

      【教程】用MCL升级mirai到预发行版 操作示例
      使用交流 • 教程 mcl mirai-console • • MrXiaoM

      27
      1
      Votes
      27
      Posts
      7158
      Views

      MrXiaoM

      如需升级到开发版本,另请参见

      https://mirai.mamoe.net/topic/2333

      文字通常没有操作示例那么让人易懂,所以我闲着没事录一点。

      更改为预发行版更新通道 (可选)

      有时候有些预发行版会包含重大更新,而 MCL 是默认下载稳定版的。如果出于某种原因你想要更新到预发行版本,那么这时我们需要编辑配置文件,再进行更新。
      预发布.gif

      ... 使用 stop 命令关闭 MCL。 在 查看 勾选 文件扩展名。(win7 请见这个教程) 在 MCL 所在文件夹用记事本(或其他文本编辑器)打开 config.json。 将 maven-stable 改成 maven,保存。 进行帖子往下的操作 (不用第一步) 执行更新 mirai,这里以 cmd 举例,PowerShell 同理。 在 CMD 执行

      cmd.gif

      ... 使用 stop 命令关闭 MCL 在 MCL 所在文件夹打开 cmd 使用 mcl -u 命令更新 mirai 等待下载完成后,使用 /status 查看当前版本 在 PowerShell 执行

      据说部分用户打开 cmd 没有管理员权限,此时可使用 PowerShell 来升级,流程基本一致
      powershell.gif

      ... 使用 stop 命令关闭 MCL 在 MCL 所在文件夹打开 powershell 使用 ./mcl -u 命令更新 mirai 等待下载完成后,使用 /status 查看当前版本

      我手中没有趁手的 Linux 机器,懒得装 WSL,Linux 用户应该自己会更新吧?
      不会还有 Linux 用户执行个命令或者改个文件都不会吧?不会吧不会吧?

      ...

      手把手教了属于是
      来自群组: SkyNet1748

    • N

      2.14.0版本出现了code238
      BUG反馈 • • Niko_Sakura

      27
      4
      Votes
      27
      Posts
      4240
      Views

      N

      禁止登录 code=238 请使用手q扫码登录或短信验证

    • Moyuyanli

      [壶言3]壶言会话3-一款高度自定义的自定义回复插件
      插件发布 • 自定义回复 • • Moyuyanli

      27
      3
      Votes
      27
      Posts
      3745
      Views

      Moyuyanli

      壶言会话3

      好久不见,我是鸽了快一年的放空
      新版本已经完成基本的底层搭建,剩下的就是慢慢不全各功能模块就行。
      现在在这里征集好的注意!

      仓库地址:HuYanSession3

      现有功能

      鉴于前车之鉴,本次升级对上版本插件做减法,对插件进行分离,自定义回复独立提取出来,群管功能以后成为一个单独的插件。

      自定义数据库接入:目前支持(sqlite,h2,mysql) 自定义缓存位置:目前支持(内存),预留(redis) 自定义权限:目前支持(内置),预留接入HuYanAuthorize未来可能会接入lp 分组支持多种类型:对以前的群分组进行了升级,现在分组不仅可以对群分组,还能对人分组和对群成员分组! 高度定义的作用域匹配:7种作用域匹配,满足的需求 ...

      4c8c0423-f828-43fa-ab8a-e2336525c77d-图片.png

      重新设计的单一消息,更加简洁,新增了概率回复功能,保留了壶言会话2.4.x的本地缓存功能 使用

      现阶段版本已经可以进行测试使用
      如果你想使用,可以去群里获取测试版本的插件,放入plugins文件夹启动即可使用。

      由于当前版本为壶言会话2的拆分版,你可以与壶言会话2一起使用,但是会触发两个插件的命令,解决方式就是使用壶言会话2的过滤消息功能将壶言会话2的指令暂时过滤掉!

      对于现阶段mirai的半死状态,这边目前可以总计一下目前可能能行的登录方案:

      签名服务-非常的不稳定(及其容易封号),但是能用 通过Overflow插件接入其他平台的OneBot转生 蕉流与学习

      目前就这完成了这么多,后续会慢慢完善,如果你有好的意见,可以在本帖子种回复。也可以加群直接at我,不是云的茶壶云(390444068)

      如果你想学习编写mirai插件,或者刚学java,欢迎来对本项目进行编写和pr,结构简单易上手!

      以下是本插件部分文档,会持续更新。 参数

      对于部分参数,有默认值,可省略不填。

      | 指可选,左边或右边选择一个即可
      + 指可填写多个,一般中间用 隔开。
      (xx) 指必填,括号内内容必须填写。
      [xxx]指可选填写。

      匹配方式 1|精准 精准匹配(默认) 2|模糊 模糊匹配,包含触发词即匹配成功。 3|头部 头部匹配,从前往后匹配触发词即匹配成功。 4|尾部 尾部匹配,从后往前匹配触发词即匹配成功。 5|正则 正则匹配,按照正则匹配结果。 重写

      对于部分只能存在一条的信息,在参数集里面添加重写状态即可重写写入该信息。

      %|rewrite 启用重写。 动态消息

      不同于壶言会话2的自动识别动态消息,壶言会话3这边需要手动指定是否启用动态消息。

      dt|动态|dynamic 启用动态消息。 本地缓存

      由于腾讯服务器储存图片有概率过期,因此设计本地缓存功能,在config中有默认开启配置,默认不开启。
      也可以根据单个消息默认设定开启与否。

      ca|缓存|cache 启用本地缓存。 转换方式

      消息在匹配时的转换方式

      MIRAICODE miraiCode(默认)。 STRING String。 CONTENT content。 JSON json。 作用域 global 全局。 global-(id)|global-(at) 全局的某个用户,可填号码,可at人。 group 当前群(默认)。 member-(id)|member-(at) 某个群友。 list-(id) 自定义群列表。 users-(id) 自定义用户列表。 members-(id) 自定义某个群的群用户列表。 触发概率 probability-(0.0~1.0) 消息的触发概率。 是否随机 random 用于多词条的开启随机触发功能 动态消息类型

      针对上一代的动态消息使用体验,这个版本也进行了一次优化

      现格式为:

      ${prefix.suffix}

      前缀 后缀 含义 案例 at this at当前发消息的这个人 ${at.this} all at全体(慎用!) ${at.all} (qq) at这个qq用户 ${at.572490972} user id 获取发送者的QQ号 ${user.id} name 发送者的名称 ${user.name} avatar 发送者的头像 ${user.avatar} title 发送者的头衔(仅限群) ${user.title} group id 群号(仅限群) ${group.id} name 群名称(仅限群) ${group.name} avatar 群头像(仅限群) ${group.avatar} owner 群主名称(仅限群) ${group.owner} time now 当前时间(默认格式) ${time.now} timer 当前的时间戳 ${time.timer} (format) 当前时间的自定义格式 ${time.HH:mm:ss.SSS} mate (number) 正则回流编号<br/>(仅限正则匹配中包含匹配块) ${mate.1} message this 当前的消息 ${message.this} reverse 反转的消息(按照消息顺序反转) ${message.reverse} owner id 主人的id(得与机器人是好友) ${owner.id} name 主人的名称(得与机器人是好友) ${owner.name} avatar 主人的头像(得与机器人是好友) ${owner.avatar}

      对于一对一消息回复,如果想启用动态消息的匹配,得才参数中添加dt来启用动态消息识别!

      指令 消息功能

      权限id:session

      一对一消息

      权限id:hh

      指令 含义 案例 %xx (a) (b) [params]+ 学习一个一对一回复 %xx a b %xx [a] 对话的方式学习 %xx,%xx a 学习 (a) (b) [params]+ 同上 学习 啊啊啊 哦哦哦 -xx (a) [scope\|id] 删除一个一对一回复^1 -xx a,-xx a 5 删除 (啊啊啊) [scope\|id] 同上 删除 啊啊啊 %%xx 刷新单一消息缓存 %%xx

      第二类删除

      对于一个短时间内响应的回复消息,如果你有权限,即可引用该消息并发送删除或sc即可删除!

      参数

      params 支持列表:

      匹配方式 重写 动态消息 本地缓存 转换方式 作用域 触发概率

      动态消息支持列表:

      全部 一对多消息

      权限id:dct

      指令 含义 案例 %dct [trigger] 进入多词条学习状态(3分钟超时) %dct,%dct nova的错 学习多词条 同上 学习多词条 -dct (trigger\|id-(id)) [id] 删除多词条 -dct 群典,-dct id-2 5 删除多词条 (trigger\|id-(id)) [id] 同上 删除多词条 群典,删除多词条 id-2 5 %%dct 刷新多词条缓存 %%dct

      第二类删除

      对于一个短时间内响应的回复消息,如果你有权限,即可引用该消息并发送删除或sc即可删除!

      params 支持列表:

      匹配方式 重写 本地缓存 作用域 触发概率

      多词条默认自动识别动态消息!

      动态消息支持列表:

      全部 群典功能

      这是一个非常有意思的功能!

      在配置中启动该功能后,对着机器人在线期间的消息回复一个批准入典, 将会默认生成一个触发词为群典(在配置中自定义)的多词条集

      这个群典只属于当前群,意味着对于不同的群,可以有不同的群典!

      记录群友的丢人瞬间!

      定时消息

      权限id:ds

      权限功能

      权限id:admin

      指令 含义 案例 +(scope)-(at\|qq) (权限id) [权限id] 为该作用域添加一个权限 +global-@572490972 admin 添加权限(scope)-(at\|qq) (权限id) [权限id] 同上 添加权限@572490972 amind -(scope)-(at\|qq) (权限id) [权限id] 为该作用域删除一个权限 -global-@572490972 admin 删除权限(scope)-(at\|qq) (权限id) [权限id] 同上 删除权限@572490972 admin 分组功能 插件指令 hys v 查询当前壶言会话3的版本。
    • Orisland

      bot在登录一段时间后被踢出无法正常重连
      技术交流板块 • • Orisland

      27
      0
      Votes
      27
      Posts
      1511
      Views

      Orisland

      RT
      暂无好的解决办法,不知道是什么原因。
      出现该问题需要在掉线的时候反复的进行手动重连登录,可用性大幅度降低。
      该问题与签名服务无关。
      55ca5c70-a645-4020-9a70-9c859678c456-image.png

    • wssy001

      Java + Springboot 2.X+ mirai最新RELEASE の采坑记录
      精华主题 • spring boot mirai core java • • wssy001

      26
      2
      Votes
      26
      Posts
      6203
      Views

      wssy001

      环境:
      SpringBoot 2.2.11.RELEASE
      Mirai-core-jvm 2.6.0(时刻试水最新release版)
      Open JDK 11

      Spring Cloud版
      开发第一天:
      新建了Spring Boot项目,鉴于前几次mirai的开发,我轻车熟路地加上了这个

      <dependency> <groupId>net.mamoe</groupId> <artifactId>mirai-core-all</artifactId> <version>2.6.0</version> </dependency>

      当然成功翻车。
      所以说 拥有一个良好的看wiki-->使用 Maven习惯是很重要的!

      下载了最新的依赖后,鉴于是springboot项目,还需要做的一件事是查看mirai依赖的kotlin版本,可以直接去wiki找,也可以自己点开依赖挖

      别忘了在主POM加上Mirai所依赖的kotlin版本

      <properties> <kotlin.version>1.4.32</kotlin.version> </properties>
    • Mr.喜

      [Mirai-Native] 原神签到插件
      插件发布 • • Mr.喜

      26
      0
      Votes
      26
      Posts
      5250
      Views

      Mr.喜

      下载

      Release

      依赖 .net Framework 4.5 Windows系统 Mirai-Native或者MiraiCQ 使用说明 安装插件 私聊Bot,输入指令 #原神签到 按提示完成配置 每日10点进行签到 如要临时重新签到, 请打开Config.json, 修改LastSign字段为昨天或昨天以前的时间(请保证时间格式), 重载即可, 插件会90秒之后进行重新签到 配置说明

      数据目录data\app\me.cqp.luohuaming.GenshinSign 配置文件Config.json Cookie储存文件 Cookies.json
      Config

      StartTime: 每日签到时间, 若要修改请保留原格式, 并且只修改时间部分, 日期部分不生效 BroadcastGroup: 每日签到结果通知的群号, 签到之后会将结果发送到这些群 (注意: 群号直接分隔请使用英文的逗号) WaitSecond: 线程时间验证周期, 每隔多少秒查看时间是否到达了要签到的时间, 建议区间[20,50] LastSign: 上次签到时间, 自动生成, 不需要修改 Cookie获取

      详情请参照项目Readme.md

    • stay_miku

      基于GPT3.5的猫娘插件(可以指定群友变猫娘!)03/22更新
      插件发布 • java plugin python gpt3.5 openai • • stay_miku

      26
      1
      Votes
      26
      Posts
      6076
      Views

      stay_miku

      03/22更新:(仅需更新服务端)

      服务端增加了代理的配置(在config.py中配置,默认为不启用),方便不开tun模式使用(我好像没测试过它能不能成功使用系统代理来着,算了开摆),需要注意urllib3的版本需要为1.25.11或以下,高版本会报错,用以下命令改版本: pip install urllib3==1.25.11

      03/20更新:(插件和服务端都需要更新)

      完善了提示词(提示词内添加了限制回复长度,尽可能的避免过快的token消耗,并完善了相关设定) 可配置请求api超时的时间了(因为最近请求api的时候总是timeout,官方默认timeout需要等10分钟,所以加了这个功能) 可以配置自动同意加好友请求的黑白名单了(之前会自动同意所有加好友请求,现在可以在config里面配置是否同意加好友) 最近的api怎么总是timeout啊!!!

      03/19更新:(插件与服务端都需要更新)

      新功能!可以指定一个群员变猫娘(伪造转发消息),整蛊专用!使用方法为 @一名群员 后接上 变猫娘 即可,效果图:
      313028.png
      屏幕截图 2023-03-19 004156.png
      (当前局限性:只能让一个群里的一个群员变猫娘,换群就算同一个人都不行) 现在将会自动创建猫娘了(免得新用户想和猫娘对话的时候来一句还没创建哦~)默认猫娘名字可以在config.py中修改(默认为猫娘)

      03/16更新: 只需更新mirai插件即可

      新增了私聊功能!(在群里放不开手脚就可以私聊涩涩了)银杏化 可以@机器人来执行命令了(针对一些人的使用习惯做的兼容) 可以清空主人名字了(不用再想主人该叫啥了) 优化了部分文本

      一些功能展示:
      3e950cc012a3631c.png
      主要功能:

      对话 预设对话 撤销上一个对话(不论是用户发的还是bot发的) 重新生成对话 修改设定 清空历史对话(不会清除设定) 更多功能可使用命令 #ai帮助 #不常用命令帮助 来查看

      插件地址
      服务端地址

      主要特色可自定义项可太多了,哼哼:

      可以自定义设定(使用默认设定是可以轻松修改猫娘设定的名字和主人名字,默认设定可以在配置文件中自行修改),该设定不会因为清除历史消息而改变(方便重开) 可以预设一段对话(或单独预设一段ai的回复),ai会将预设的回复认为是自己以前说过的话对于不听话的猫娘可以用这个功能 每个人的猫娘都是单独的(尝试多人对话的时候ai会精分,效果很差) 可以撤销对话中的上一句话,或者让猫娘重新回答 可以说一段话但让猫娘不立刻回答,或者让猫娘立刻回答不论用户是否说话 可以设置temperature,按官方的解释大概就是一个0到2的数值,越高ai的回复会越偏离用户的提问(默认为1.0)

      使用方法:

      前往插件地址下载插件放入mirai的plugins文件夹内 手动在mirai根目录下创建一个名为openaiHost的文件,文件内以ip:端口格式填写服务端的ip地址和端口(如 127.0.0.1:23458) 使用以下命令来克隆项目(没git的话可以前往服务端地址手动将所有.py文件都下载到一个文件夹里) git clone https://github.com/stay-miku/OpenAI_Chat3.5-python-server.git 手动修改config.py中的配置,注意必须修改api_key配置项(可以去这里获取apikey)其他配置按需修改(有中文注释提示了每个配置项的功能,应该都会改吧) 运行main.py即可启动服务端(注意之前填写的地址要与该服务端地址相同,端口也需和配置文件内的相同,如果服务端与插件在同一台机器上运行ip地址可填写127.0.0.1),注意服务端需可以访问外网(放到国外vps上运行或者科学上网)单独服务端就是为了可以把这部分放到其他服务器上,才不是我菜写不来Java的api访问用不来miraihttp

      服务端的命令:

      stop :关闭服务端 list :当前ai列表 get ai列表显示的名字 选项 :获取对应ai的当前配置,选项有:prompt messages name owner_name
      used_tokens temperature(每个选项代表是么自己探索吧~)

      注意事项:

      每个人使用猫娘功能前需使用命令 #创建 猫娘名字(必填) 主人名字(选填) 来创建,不然什么功能都用不了_(:з」∠)_ 一定一定要记得改config.py内的api_key哦!

      最后:

      默认的设定已经把猫娘调教好了(可恶,为什么不反抗,截演示图片的时候还想展示下预设对话的强大之处的说) 有啥问题可以尽管问 第一次发布插件,也是个github新手,代码也很差,要是做错了什么不要打我(哭~)
    • WorldLeen

      【已解决】非常绝望,目前已尝试所有办法都无法登录
      开发交流 • • WorldLeen

      26
      0
      Votes
      26
      Posts
      3987
      Views

      WorldLeen

      自从24号腾讯开始大规模封杀机器人之后,项目就一直没有正常运行过,我不知道大家是否跟我一样,但是我得跟大家说一下尝试过程

      1.mirai-2.15.0-RC + fix-protocol-version-1.8.4
      使用ANDROID_PHONE,密码登录:
      code=45,无法登陆

      2.mirai-2.15.0-RC + fix-protocol-version-1.8.4 协议设定为8.8.88
      使用ANDROID_PAD,密码登录:
      成功登录了,但程序只工作了大约8小时后被踢下线,随后无法再以此方式登录,code=45

      3.mirai-2.15.0-RC + fix-protocol-version-1.8.4
      使用MACOS,扫码登录:
      code=45,无法登陆

      4.mirai-2.15.0-RC + fix-protocol-version-1.8.4
      使用ANDROID_WATCH,扫码登录:
      登录失败,被提示要求在同一网络环境下登陆

      5.mirai-2.15.0-RC + fix-protocol-version-1.8.4
      使用ANDROID_WATCH,扫码登录,在本地架设mirai进程,用手机在同一内网下扫码:
      登录成功
      但程序只工作了1个小时之后,便无法再发送聊天消息。
      进程重启依然可以登陆,但依旧无法发送任何聊天消息

      很明显,目前我已经使用了所有可能的解决方案,但最终还是没能正常工作,可见腾讯对Bot封杀决心有多大。
      现在用户已经没有其他办法再工作了,只能期望于作者大佬能实现QQ的code=45 sign算法来登录了。(悲)

      后续编辑:
      让我们来解决它!

      https://mirai.mamoe.net/topic/2348/miraisignhandler-mirai对接sign签名服务器-解决登录code-45失败和签名风控检测/1
      目前已经彻底越过code=45,成功登录

    • cssxsh

      关于签名服务
      官方公告 • • cssxsh

      26
      0
      Votes
      26
      Posts
      17380
      Views

      cssxsh

      为什么需要签名服务

      登录和发消息时需要对数据包进行签名验证
      无法通过验证就会出现 code=45 或者 他人无法看到机器人发送的消息
      并且签名服务和登录协议版本需要匹配,否则签名无效

      Mirai 对签名服务支持

      Mirai 不会提供内置的签名服务,但提供了接入第三方服务的接口

      需要注意的是,Mirai 不对签名服务作任何的推荐,
      并且是否使用及使用何种服务,由用户自行决定。

      对签名服务支持是在 2.15.0 正式引入的

      如何使用第三方签名服务 https://github.com/cssxsh/fix-protocol-version
      已经封装好的第三方对接插件,只需修改其配置文件即可
    • M

      现在签名服务还有替代方案吗
      技术交流板块 • • menoka

      26
      0
      Votes
      26
      Posts
      3482
      Views

      M

      unidbg-fetch-qsign删库了,magic-signer-guide只支持8.9.58老版本,已经很难登上去了
      还有别的解决方案吗

    • Travellerr

      ♿otto-hzys - 电棍の活字印刷插件♿
      插件发布 • java plugin • • Travellerr

      26
      2
      Votes
      26
      Posts
      2755
      Views

      Travellerr

      otto-hzys

      顾名思义,专门用于制作活字印刷音频的插件

      如果有任何问题请优先前往github提issues!论坛回复可能不及时

      指令 指令 权限节点 功能 /活字印刷 cn.travellerr.otto-hzys:command.hzys 活字印刷 配置

      音频处理配置在 ./config/cn.travellerr.otto-hzys/config.yml 中

      # ffmpeg目录路径 ffmpegPath: ''

      不填默认使用Mirai Silk Converter进行音频转换,否则使用填入的ffmpeg进行转换

      <br>

      主配置在 data/cn.travellerr.otto-hzys/ysddTable.json 下

      ...

      是枚举!我用了枚举(雾

      { "mi yu shuo de dao li": "miyu", "a mi yu shuo de dao li": "miyu", "da jia hao a": "djha", "wo shi shuo de dao li": "wssddl", "jin tian lai dian da jia xiang kan de dong xi": "jtlaidian", "jin tian lai dian er da jia xiang kan de dong xi": "jtlaidian", "shuo de dao li": "sddl", "bo bi shi wo die": "bobi", "a ma bo bi shi wo die": "bobi", "wo cao bing": "wcb", "wo cao ^ bing": "wcb", "xuan gou": "xg", "a mi nuo si": "amns", "a ^ er cha shu mei la": "ecs", "a er cha shu mei la": "ecs", "ao li an fei ^ ei ai lou ai lou ^ ai ng": "alaf", "ao li an fei ei ai lou ai lou ^ ai ng": "alaf", "ao li an fei": "alaf", "bie zhui la": "bzl", "bie zhui le": "bzl", "bu ke yi": "bky", "bu shi ni ma e xin ren ni you ge du": "bsnmexrnygd", "bu shi ni e xin ren ni ye you ge du": "bsnmexrnygd", "bu shi ni ta ma e xin ren ye you ge du": "bsnmexrnygd", "bu shi ni ma e xin ren ni ye you ge du": "bsnmexrnygd", "cao ni ma ^ ni zhei zhong di fen gou zai zhe tai gang ni": "cnmnzzdfgzztgn", "cao ni ma ni zhei zhong di fen gou zai zhe tai gang ni": "cnmnzzdfgzztgn", "chi ning meng kai da a": "cnmkd", "chi ning meng kai da": "cnmkd", "cao ni ma kai da a": "cnmkd", "cao ni ma kai da": "cnmkd", "chao ni ma kai da a": "cnmkd", "chao ni ma kai da": "cnmkd", "chong ci": "cc", "dao li": "dl", "ha ha ha ha": "hhhh", "du du du": "ddd", "dui you ne ^ jiu yi xia a": "dynjyxa", "dui you ne ^ jiu yi xia ": "dynjyxa", "dui you ne jiu yi xia a": "dynjyxa", "dui you ne jiu yi xia": "dynjyxa", "e^ ni zen me si le ^": "enzmsl", "ei ni zen me si le ^": "enzmsl", "e^ ni zen me si le": "enzmsl", "ei ni zen me si le": "enzmsl", "ji lao zi si ^": "glzs", "gei lao zi si ^": "glzs", "ji lao zi si": "glzs", "gei lao zi si": "glzs", "ha bi xia": "hbx", "hao e xin a ^": "hexa", "hao e xin a": "hexa", "ji bai": "jb", "kai da a ^": "kda", "kai da a": "kda", "ma shei han jian ^": "mshj", "ma shei han jian": "mshj", "mei shou guo zhei me da wei qu ^ cong xiao dao da ^": "msgzmdwqcxdd", "mei shou guo zhei me da wei qu cong xiao dao da ^": "msgzmdwqcxdd", "mei shou guo zhei me da wei qu ^ cong xiao dao da": "msgzmdwqcxdd", "mei shou guo zhei me da wei qu cong xiao dao da": "msgzmdwqcxdd", "mei shou guo zhe me da wei qu ^ cong xiao dao da ^": "msgzmdwqcxdd", "mei shou guo zhe me da wei qu cong xiao dao da ^": "msgzmdwqcxdd", "mei shou guo zhe me da wei qu ^ cong xiao dao da": "msgzmdwqcxdd", "mei shou guo zhe me da wei qu cong xiao dao da": "msgzmdwqcxdd", "nei wo que de zhei ge ying yang ^ shei ji wo bu a ^": "nwqdzgyyzksgwba", "nei wo que de zhei ge ying yang zhei kuai ^ shei ji wo bu a ^": "nwqdzgyyzksgwba", "nei wo que de zhei ge ying yang zhei kuai shei ji wo bu a ^": "nwqdzgyyzksgwba", "nei wo que de zhei ge ying yang zhei kuai ^ shei ji wo bu a": "nwqdzgyyzksgwba", "nei wo que de zhei ge ying yang zhei kuai shei ji wo bu a": "nwqdzgyyzksgwba", "nei wo que de zhei ge ying yang shei ji wo bu a": "nwqdzgyyzksgwba", "nei wo que de zhei ge ying yang ^ shei gei wo bu a ^": "nwqdzgyyzksgwba", "nei wo que de zhei ge ying yang zhei kuai ^ shei gei wo bu a ^": "nwqdzgyyzksgwba", "nei wo que de zhei ge ying yang zhei kuai shei gei wo bu a ^": "nwqdzgyyzksgwba", "nei wo que de zhei ge ying yang zhei kuai ^ shei gei wo bu a": "nwqdzgyyzksgwba", "nei wo que de zhei ge ying yang zhei kuai shei gei wo bu a": "nwqdzgyyzksgwba", "nei wo que de zhei ge ying yang shei gei wo bu a": "nwqdzgyyzksgwba", "ni bu xu shuo ta ^": "nbxst", "ni bu xu shuo ta": "nbxst", "ni xi huan wo ^": "nxhw", "ni xi huan wo": "nxhw", "ou nei de shou ^ hao han ^": "ondshh", "ou nei de shou ^ hao han": "ondshh", "ou nei de shou hao han ^": "ondshh", "ou nei de shou hao han": "ondshh", "sa bi": "sb", "sha bi": "sb", "ta shi wo die ^": "tswd", "ta shi wo die": "tswd", "wei shen me ya": "wsmy", "wo cao ni ma ^": "wcnm", "wo cao ni ma": "wcnm", "wo chao ni ma ^": "wcnm", "wo chao ni ma": "wcnm", "wo xi huan ni ^": "wxhn", "wo xi huan ni": "wxhn", "wo cao si ni de ma": "wcsndm", "wo chao si ni de ma": "wcsndm", "wo chong shi ni de meng": "wcsndm", "yi de ge la mi": "ydglm", "yuan zi dan": "yzd", "zhu bi ba ^ zhei zen me zhei me cai a": "zbbzzmzmca", "zhu bi ba zhei zen me zhei me cai a": "zbbzzmzmca", "zhu bi ba zhe zen me zhei me cai a": "zbbzzmzmca", "zhu bi ba zhei zen me zhe me cai a": "zbbzzmzmca", "zhu bi ba zhe zen me zhe me cai a": "zbbzzmzmca", "wa ao ^": "wa", "wa ao": "wa", "wo cao ^": "wc", "wo cao": "wc", "ha li lu da xuan feng ^": "hlldxf", "ha li lu da xuan feng": "hlldxf" }

      键 为触发文字的拼音
      值 为出发后替换的音频文件名称(不带后缀)

      原声大碟的音频请全部放置于data/cn.travellerr.otto-hzys/ysddSource 内,其余拼接音频请放置于data/cn.travellerr.otto-hzys/source 内

      食用方法

      下载Release中的插件与 resource.zip,将插件放入plugins文件夹后,将resource.zip解压在路径./data/cn.travellerr.otto-hzys 下,构造如下

      data/ └─ cn.travellerr.otto-hzys/ │ ├─ ysddTable.json │ ├─ ysddSources/ │ └─ 原声大碟文件.wav │ └─ sources/ └─ 音频文件.wav

      请配置ffmpeg路径或搭配Mirai Silk Converter使用!

      本插件灵感与部分资源均来源于Github上的开源项目HUOZI

    • Mr.喜

      [Mirai-Native] Steam 视奸机
      插件发布 • • Mr.喜

      26
      4
      Votes
      26
      Posts
      1891
      Views

      Mr.喜

      仓库地址
      Bot is Watching you.👁️

      配置 需要申请Steam APIKey 可指定游戏名称翻译文本:修改配置中的AppInfoLanguage,内容可参照 文档 插件所有配置均通过UI界面/配置文件设置,无指令控制
      若APIKey与欲查询的用户为同一个账号时,设置游戏私密功能将无效 新成就大约4分钟后才能被Bot发现 修改刷新间隔配置后需要重载插件
      依赖文件 libHarfBuzzSharp.dll libSkiaSharp.dll 放置在框架/加载器的 根目录 或者 x86 文件夹 或者 libraies 文件夹 Assets.zip 解压后放置在插件的数据目录内,保留 Assets 文件夹

      5dfe2e77-1fe4-469c-91b2-ac26d0b8a6ac-image.png
      7f17bccd-8625-48d2-841a-9c2fa50a14fc-image.png

    • 火雨枫林

      这里的账户都是什么类型的?
      摸鱼区 • • 火雨枫林

      25
      0
      Votes
      25
      Posts
      2598
      Views

      火雨枫林

      这个社区有纯用户么?这是一个由开发者组成的社区么?
      否短期内没有可以使用的成品或半成品。

      进入社区到现在3天,目前只安装了一个安卓App,登录上了QQ,任何插件也没有加载到,qq对任何消息都没有响应。
      我有一个Linux小主机,需要怎么配置能够登陆上QQ,并开始比较简单地添加插件,开始使用。
      Bot是否有图形界面可以用?

    • 卑

      求助:下载了mirai-console但是找不到mcl.cmd控制台脚本怎么办
      使用交流 • • 卑微阿飞

      25
      0
      Votes
      25
      Posts
      1963
      Views

      卑

      如题,在GitHub下载的压缩包解压的,绝对没有少文件

    • D

      English-Helper英语单词竞赛插件
      插件发布 • • drsalieri

      25
      2
      Votes
      25
      Posts
      4442
      Views

      D

      项目地址

      单词竞赛插件

      基于 Mirai Console 的英语单词竞赛插件

      必备环境 该插件目前还不需要chat-command插件,但日后的更新可能会使用 使用方法 从 该项目的release中,下载最新版jar形式插件 将该jar文件放入 Mirai Console 的 Plugins 文件夹中 从 该项目的release中,下载 Books.zip 文件,将其解压到 mcl的目录下 ....data/english-helper/BooksData/Books(如果没有文件夹可以自行创建) 功能 指令 功能 背单词 <book> <times> 设定本群的单词竞赛信息,book为书名,times为次数,设定完毕后通过"开始"启动 开始 启动已经设置好的单词竞赛

      每个单词的时间限制为20s
      第5s若无人答出,给出第一个提示(提示首字母)
      第10s若无人答出,给出第二个提示(提示前三个字母)
      任何人都可以答题

      答对者加一分,最后降序输出所有获得过分数的群成员

      使用截图

      image.png

      Todo

      支持自定义修改答题时间

      添加全局数据

      数据来源

      Books https://github.com/kajweb/dict

    • S

      无法连接到 mirai。请检查 mirai-api-http 是否启动,地址与端口是否正确。
      HTTP API和第三方SDK • mirai-apt-http yirimirai • • stack-bit

      25
      0
      Votes
      25
      Posts
      2528
      Views

      S

      起因是运行mcl.cmd的时候显示版本过低,然后我去官网下载了最新版,安装完后发现缺少net.mamoe.mirai-api-http,从老版本直接复制过来改了参数,然后修改后各文件post与verifyKey均一致,用的是yirimirai库连接mirai,然后mcl.cmd正常执行,但是写的机器人的py文件运行时报错无法连接到mirai。各位大佬能帮忙解决一下嘛,我若没表达清楚大佬们可以继续提出来(大哭)

    • cssxsh

      unidbg-fetch-qsign 1.1.3 使用方法
      使用交流 • • cssxsh

      25
      2
      Votes
      25
      Posts
      6545
      Views

      cssxsh

      unidbg-fetch-qsign 1.1.3 后正式支持多个 android_id (Bot) 实例

      故 fix-protocol-version 1.9.0+ 将其正式接入
      https://github.com/cssxsh/fix-protocol-version/releases/tag/v1.9.3

      使用流程

      下载
      到 https://github.com/fuqiuluo/unidbg-fetch-qsign/releases/tag/1.1.3
      下载 unidbg-fetch-qsign-1.1.3.zip

      解压全部文件

      unidbg-fetch-qsign-1.1.3\ unidbg-fetch-qsign-1.1.3\bin unidbg-fetch-qsign-1.1.3\txlib ....

      txlib 下有两个子文件夹 8.9.63 / 8.9.68
      子文件夹下各自都有有 config.json,是对应的配置文件
      里面有关于端口的配置,端口默认是 8080,
      有冲突或者其他需要可自行修改(mirai-api-http 的默认端口也是8080 所以可能有冲突)

      在 unidbg-fetch-qsign-1.1.3 下 (不要进入bin)
      执行命令(协议版本 8.9.63)
      Linux:
      bin/unidbg-fetch-qsign --basePath=txlib/8.9.63
      Windows
      bin\unidbg-fetch-qsign.bat --basePath=txlib/8.9.63

      启动完成时最后会有如下日志 (8080是上面提到的端口)
      INFO ktor.application - Responding at http://127.0.0.1:8080

    • q59541511

      randomsay- 随机定时群内提醒[开源][已更新2.0]
      插件发布 • • q59541511

      24
      1
      Votes
      24
      Posts
      5967
      Views

      q59541511

      前言 这个插件是参考课程表写的 我自己也不太会kotlin,感谢超级课程表. @StageGuard 我用这个插件提醒自己喝水和运动,还有水群

      源码地址: https://e.coding.net/TABclass/miraiplugin/randomsay.git

      介绍 插件功能可以定时做一些事情, 比如定时喝水,定时水群 一些操作 所有发言都是随机的 当识别到 前面是图片这个字的话 后面就会按照图片的去解析。发送的就是表情或者图片。

      配置项:

      # 用于工作的BOT的QQ号 qq: 410120288 # 用于加好友你要说的话 acceptmsg: 猪猪侠在线营业中。 # 你要说的话 RandomGroupInfo: 976331649: # 是否开启. # 默认值:false IsoPEN: true # Crontab定时器 Cron: '0 0 18 * * ? *' # 说话内容随机 targetGroupSay: - 授权解绑 2827100: # 是否开启. # 默认值:false IsoPEN: true # Crontab定时器 Cron: '4 1 0/4 * * ? *' # 说话内容随机 targetGroupSay: - '图片{9FB653FA-77FF-0DF0-35C2-777E6E3632E6}.gif' - '图片{AEECF750-05FB-A59C-EE5F-7DAAEAD310C0}.gif' - '来喝水呀!!!' - '图片{8C064C6A-F196-9985-E3CE-D2FC00E9F2E2}.gif' 901704037: # 是否开启. # 默认值:false IsoPEN: true # Crontab定时器 Cron: '3 4 0/3 * * ? *' # 说话内容随机 targetGroupSay: - '图片{9FB653FA-77FF-0DF0-35C2-777E6E3632E6}.gif' - '来喝水呀!!!' - '图片{7966E161-0D7E-B5CC-79C8-F9E8D39DA258}.gif' - '图片{8C064C6A-F196-9985-E3CE-D2FC00E9F2E2}.gif' 615176503: # 是否开启. # 默认值:false IsoPEN: true # Crontab定时器 Cron: '3 9 0/3 * * ? *' # 说话内容随机 targetGroupSay: - '图片{9FB653FA-77FF-0DF0-35C2-777E6E3632E6}.gif' - '来喝水呀!!!' - '图片{7966E161-0D7E-B5CC-79C8-F9E8D39DA258}.gif' - '图片{8C064C6A-F196-9985-E3CE-D2FC00E9F2E2}.gif' 631988443: # 是否开启. # 默认值:false IsoPEN: true # Crontab定时器 Cron: '3 9 0/3 * * ? *' # 说话内容随机 targetGroupSay: - '小伙子该起床喝水了!!!'

      定时器地址:
      https://qqe2.com/cron
      0.2.0版本下载地址: https://tabclass.coding.net/public-artifacts/miraiplugin/666/mirai-randomsay-0.2.0.mirai.jar/version/11445620/files

      0.1.0版本下载地址: https://TABclass-generic.pkg.coding.net/miraiplugin/666/mirai-randomsay-0.1.0.mirai.jar?version=latest

      欢迎各位私信交流 扣扣 4492oo4o

    • H

      ZacaFleetBot 明日方舟游戏助手+舰队收藏游戏助手+More
      插件发布 • • hundun000

      24
      3
      Votes
      24
      Posts
      4382
      Views

      H

      ZacaFleetBot

      Github

      release

      简介

      插件功能:该插件可配置bot在不同Q群扮演不同角色,只提供指定范围的功能(一些通用功能+该角色的特色功能)。目标是同时为多个群提供差异化服务,易配置,易裁剪或拓展。

      有两种使用方式,选这其中一种即可使用:

      方式一:作为mirai-console-plugin使用 方式二:作为独立应用使用【暂不开放】

      依赖服务:mirai框架、微博api、企鹅物流api、舰娘百科api

      【最新角色和指令以github文档为准,以下介绍可能落后】

      角色及其功能简介 阿米娅

      《明日方舟》游戏角色。特色功能为明日方舟游戏助手。

      推送微博: 明日方舟、朝陇山 企鹅物流数据查询 事项提醒: 预设的整点报时、用户新增定时提醒 闲聊: 戳一戳、提醒还不能下班…… 快速查询: PRTS网页链接、一图流网页链接…… 一站到底答题 欧根

      《舰队收藏》游戏角色。特色功能为舰队收藏游戏助手。

      推送微博: 艦colle鎮守府情報 事项提醒: 预设的整点报时、用户新增定时提醒 快速查询: 舰娘信息(舰娘百科网页链接、改造链、初始装备……) ZACA娘

      原创角色。实验性的通用功能一般会放在这里。

      推送微博: 华工ZACA动漫协会 日文小工具: 日文汉字注音 一站到底答题 猫猫

      实验性角色。未来可能作为二次开发新角色的模板。

      功能详细介绍

      如前文所述,每个角色有特定的可用指令范围。下面列出的所有指令,并非任意角色都能使用。

      本章的指令示例将以如下格式给出:

      -> 这是一句指令示例
      <- 这是bot对该指令的回复示例

      2.1 第一类指令——调用某个子指令

      语法:
      <角色名><子指令> <指令参数列表>
      或
      <角色名> <子指令> <指令参数列表>

      实验性功能:为了加强角色扮演感,对于同一个子指令功能,不同的角色可能通过不同的“子指令称呼”调用。

      2.1.1 微博相关指令

      查看最近一条微博的发布时间

      <子指令>: 查看最新微博

      -> ZACA娘查看最新微博

      实验性功能:

      对于角色阿米娅,变为 <子指令>: 看看饼

      -> 阿米娅看看饼

      对于角色欧根,变为 <子指令>: 查看镇守府情报

      -> 欧根查看镇守府情报

      2.1.2 企鹅物流数据相关指令 查询物品掉率

      查看某个物品的在所有地图里掉落率最高的几项。

      <子指令>: 查掉率
      <指令参数列表>: 物品名

      -> 阿米娅查掉率 固源岩

      查询作战

      查看某个作战的理智消耗,掉落等信息。

      <子指令>: 查作战
      <指令参数列表>: 作战id

      -> 阿米娅查作战 1-7

      刷新缓存

      拉取最新的企鹅物流信息数据。

      <子指令>: 更新企鹅物流

      -> 阿米娅更新企鹅物流

      2.1.3 事项提醒相关指令 创建提醒

      提醒任务指的是在满足时间条件的时候发送指定消息。

      <子指令>: 创建提醒
      <指令参数列表>[0]: 时间条件-月。-1表示不限制。
      <指令参数列表>[1]: 时间条件-日。-1表示不限制。
      <指令参数列表>[2]: 时间条件-星期数。-1表示不限制。
      <指令参数列表>[3]: 时间条件-时。-1表示不限制。
      <指令参数列表>[4]: 时间条件-分。-1表示不限制。
      <指令参数列表>[5]: 执行次数条件。-1表示不限制。
      <指令参数列表>[6]: 消息内容

      -> 阿米娅创建提醒 5 1 -1 9 0 1 限时活动将于10点结束,博士请确认限时活动任务完成状态。 //这条消息将在5月1日(不论是星期几)9点0分时被bot自动发送。执行一次后失效。

      -> 阿米娅创建提醒 -1 -1 7 22 30 -1 博士请确认周常任务完成状态。 //这条消息将在周日(不论是几月几日)22点30分时被bot自动发送。可执行无限次。

      查看提醒

      查看已创建的提醒任务。

      <子指令>: 查看提醒

      -> 阿米娅查看提醒

      移除提醒

      移除指定id的提醒任务。

      <子指令>: 移除提醒
      <指令参数列表>: 提醒id。由查看提醒得到。

      -> 阿米娅移除提醒 29b88b93-89e2-4a3f-8ff2-b35ab13672d3

      2.2 第二类指令——快速查询

      语法:
      <参数>.

      语法尽量简短,用于每个群里最常用到的查询。

      2.2.1 阿米娅的快速查询 <参数> 回复 PRTS 或 prts PRTS首页 一图流 一图流网站 绿票一图流 绿票一图流网站 企鹅物流 企鹅物流首页

      -> prts. //得到PRTS首页链接
      <- http://prts.wiki/w/首页

      2.2.2 欧根的快速查询 <参数> 回复 任意 舰娘信息(数据来自kcwiki)

      -> 吹雪.
      <- 吹雪 https://zh.kcwiki.cn/wiki/吹雪
      吹雪驱逐舰
      -20级->吹雪改[驱逐舰]
      -70级->吹雪改二[驱逐舰]

      3. 闲聊

      当群员的发言不满足该角色的任意一个指令语法,即为一句闲聊。角色也会在满足条件的情况下做出回复。

      3.1 复读机

      当群里连续3句发言相同时(包括发送相同表情/图片),角色也会回复一次该发言。

      3.2 阿米娅的闲聊 当群员发言里包含“下班”,根据是否是工作时间(周一至周五9点至17点),阿米娅会做不同回复。 当群员发言里包含“damedane”,阿米娅会播放音频。 戳一戳阿米娅或特定群员,阿米娅会发送特定的图片。 3.3 欧根的闲聊 当群员发言里包含“噗噗”,欧根会发送特定的图片。 4. 非主动功能

      指的是不由用户发言触发的功能。

      微博推送 预设的整点报时 用户创建的事项提醒满足时间条件
    • 1
    • 2
    • 6
    • 7
    • 8
    • 9
    • 10
    • 8 / 10