lss233/chatgpt-mirai-qq-bot

[BUG] 在使用Mirai登录QQ时,报错,无法正常登录

passcrad opened this issue · 0 comments

提交 issue 前,请先确认:

  • 我已看过 FAQ,此问题不在列表中
  • 我已看过其他 issue,他们不能解决我的问题
  • 我认为这不是 Mirai 或者 OpenAI 的 BUG

表现
Login failed: net.mamoe.mirai.internal.network.auth.ProducerFailureException
2024-02-19 13:00:24 E/console: net.mamoe.mirai.internal.network.auth.ProducerFailureException
net.mamoe.mirai.internal.network.auth.ProducerFailureException
at net.mamoe.mirai.internal.network.auth.CoroutineOnDemandValueScope.receiveOrNull(CoroutineOnDemandValueScope.kt:152)
at net.mamoe.mirai.internal.network.auth.AuthControl.acquireAuth(AuthControl.kt:98)
at net.mamoe.mirai.internal.network.components.SsoProcessorImpl.login(SsoProcessor.kt:219)
at net.mamoe.mirai.internal.network.handler.CommonNetworkHandler$StateConnecting$startState$2.invokeSuspend(CommonNetworkHandler.kt:247)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
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:750)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:677)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:664)
Suppressed: net.mamoe.mirai.network.WrongPasswordException: Error(bot=Bot(3691556372), code=45, title=禁止登录, message=你当前使用的QQ版本过低,请前往QQ官网im.qq.com下载最新版QQ后重试。, errorInfo=)
at net.mamoe.mirai.internal.network.components.SsoProcessorImpl$SlowLoginImpl.doLogin(SsoProcessor.kt:450)
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)
... 5 more
Suppressed: net.mamoe.mirai.internal.network.handler.selector.SelectorRequireReconnectException
Caused by: [CIRCULAR REFERENCE: net.mamoe.mirai.network.WrongPasswordException: Error(bot=Bot(3691556372), code=45, title=禁止登录, message=你当前使用的QQ版本过低,请前往QQ官网im.qq.com下载最新版QQ后重试。, errorInfo=)]

运行环境:

  • 操作系统:Ubuntu 22.04 x64
  • Docker: {
  • Client: Docker Engine - Community
    Version: 25.0.3
    API version: 1.44
    Go version: go1.21.6
    Git commit: 4debf41
    Built: Tue Feb 6 21:13:09 2024
    OS/Arch: linux/amd64
    Context: default

Server: Docker Engine - Community
Engine:
Version: 25.0.3
API version: 1.44 (minimum version 1.24)
Go version: go1.21.6
Git commit: f417435
Built: Tue Feb 6 21:13:09 2024
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.6.28
GitCommit: ae07eda36dd25f8a1b98dfbf587313b99c0190bb
runc:
Version: 1.1.12
GitCommit: v1.1.12-0-g51d5e94
docker-init:
Version: 0.19.0
GitCommit: de40ad0

复现步骤
描述你是如何触发这个 BUG 的
1.使用Mirai登录QQ

预期行为
登陆成功

截图
{

  • docker-compose run --rm mirai
    [+] Building 0.0s (0/0) docker:default
    WARN[0000] Found orphan containers ([chatgpt-qq-gocqhttp-1]) for this project. If you removed or renamed this service in your compose file, you can run this command with the --remove-orphans flag to clean it up.
    [+] Running 3/3
    ✔ Container chatgpt-qq-mirai-1 Started 0.0s
    ✔ Container chatgpt-qq-watchtower-1 Started 0.0s
    ✔ Container chatgpt-qq-chatgpt-1 Started 0.0s
    [+] Building 0.0s (0/0) docker:default
    WARN[0000] Found orphan containers ([chatgpt-qq-gocqhttp-1]) for this project. If you removed or renamed this service in your compose file, you can run this command with the --remove-orphans flag to clean it up.
    [+] Building 0.0s (0/0) docker:default
    12:48:28 [INFO] iTX Technologies Mirai Console Loader version 2.1.2-61c8bd8
    12:48:28 [INFO] Runtime: OpenJDK 64-Bit Server VM 17.0.6 (arch: 64)
    12:48:28 [INFO] https://github.com/iTXTech/mirai-console-loader
    12:48:28 [INFO] This program is licensed under GNU AGPL v3
    12:48:31 [INFO] Mirai Console Loader Announcement:
    Mirai Console Loader 公告栏

如果在图片上传的时候遇到问题请与我们联系 (需要提供图片文件源本)
- 如 Unsupported image type for ExternalResource * considering use gif/png/bmp/jpg format.
`- Tracker: https://github.com/mamoe/mirai/issues/new/choose

常用资源整合
`- https://mirai.mamoe.net/topic/653

MCL 已推出 2.1.0,更好的支持 Mirai 2.11 的插件系统,建议更新。

12:48:31 [INFO] Verifying "net.mamoe:mirai-console" v2.15.0-M1
12:48:31 [WARN] Package "net.mamoe:mirai-console" has newer version "2.16.0"
12:48:31 [INFO] Verifying "net.mamoe:mirai-console-terminal" v2.15.0-M1
12:48:32 [WARN] Package "net.mamoe:mirai-console-terminal" has newer version "2.16.0"
12:48:32 [INFO] Verifying "net.mamoe:mirai-core-all" v2.15.0-M1
12:48:32 [WARN] Package "net.mamoe:mirai-core-all" has newer version "2.16.0"
12:48:32 [INFO] Verifying "org.itxtech:mcl-addon" v2.1.1
12:48:32 [INFO] Verifying "net.mamoe:mirai-api-http" v2.9.1
12:48:32 [INFO] Verifying "xyz.cssxsh.mirai:mirai-device-generator" v1.1.3
12:48:32 [WARN] Run ./mcl -u to update packages.
2024-02-19 12:48:33 I/main: Starting mirai-console...
2024-02-19 12:48:34 I/main:

=================================[ Mirai console 2.15.0-M1 ]==================================


| \ / \ \ | / \ |
| ▓▓\ / ▓▓\▓▓ ______ ______ \▓▓ ▓▓▓▓▓▓\ ______ _______ _______ ______ | ▓▓ ______
| ▓▓▓\ / ▓▓▓ / \ | | \ ▓▓ \▓▓/ | \ / / | ▓▓/
| ▓▓▓▓\ ▓▓▓▓ ▓▓ ▓▓▓▓▓▓\ \▓▓▓▓▓▓\ ▓▓ ▓▓ | ▓▓▓▓▓▓\ ▓▓▓▓▓▓▓\ ▓▓▓▓▓▓▓ ▓▓▓▓▓▓\ ▓▓ ▓▓▓▓▓▓
| ▓▓\▓▓ ▓▓ ▓▓ ▓▓ ▓▓ \▓▓/ ▓▓ ▓▓ ▓▓ | ▓▓ | ▓▓ ▓▓ | ▓▓\▓▓ | ▓▓ | ▓▓ ▓▓ ▓▓ ▓▓
| ▓▓ \▓▓▓| ▓▓ ▓▓ ▓▓ | ▓▓▓▓▓▓▓ ▓▓ ▓▓
/ \ ▓▓__/ ▓▓ ▓▓ | ▓▓_\▓▓▓▓▓▓\ ▓▓__/ ▓▓ ▓▓ ▓▓▓▓▓▓▓▓
| ▓▓ \▓ | ▓▓ ▓▓ ▓▓ \▓▓ ▓▓ ▓▓\▓▓ ▓▓\▓▓ ▓▓ ▓▓ | ▓▓ ▓▓\▓▓ ▓▓ ▓▓\▓▓
\▓▓ \▓▓\▓▓\▓▓ \▓▓▓▓▓▓▓\▓▓ \▓▓▓▓▓▓ \▓▓▓▓▓▓ \▓▓ \▓▓\▓▓▓▓▓▓▓ \▓▓▓▓▓▓ \▓▓ \▓▓▓▓▓▓▓

2024-02-19 12:48:34 I/main: Backend: version 2.15.0-M1, built on 2023-03-21 14:16:35.
2024-02-19 12:48:34 I/main: Frontend Terminal: version 2.15.0-M1, provided by Mamoe Technologies
2024-02-19 12:48:34 I/main: Welcome to visit https://mirai.mamoe.net/
2024-02-19 12:48:37 I/plugin: Successfully loaded plugin mirai-api-http v2.9.1
2024-02-19 12:48:37 I/plugin: Successfully loaded plugin mirai-device-generator v1.1.3
2024-02-19 12:48:37 I/plugin: Successfully loaded plugin fix-protocol-version v1.3.0
2024-02-19 12:48:37 I/plugin: Successfully loaded plugin QRLogin v0.1.1
2024-02-19 12:48:37 I/plugin: Successfully loaded plugin MCL Addon v2.1.1
2024-02-19 12:48:37 I/main: Prepared built-in commands: autoLogin, help, login, logout, permission, status, stop
2024-02-19 12:48:38 I/Mirai HTTP API: ********************************************************
2024-02-19 12:48:38 I/reverse-ws adapter: >>> [reverse-ws adapter] is running
2024-02-19 12:48:38 I/Mirai HTTP API: Http api server is running out of verify mode
2024-02-19 12:48:38 I/Mirai HTTP API: adaptors: [reverse-ws]
2024-02-19 12:48:38 I/Mirai HTTP API: ********************************************************
2024-02-19 12:48:38 I/fix-protocol-version: 当前各协议版本日期:
ANDROID_PHONE 8.9.33.10335 2023-01-13T08:51:38Z
ANDROID_PAD 8.9.33.10335 2023-01-13T08:51:38Z
ANDROID_WATCH 2.0.5 2019-06-03T12:25:31Z
IPAD 8.9.33.614 2021-12-31T03:36:26Z
MACOS 6.7.9 1970-01-01T00:00Z

2024-02-19 12:48:38 I/MCL Addon: iTXTech MCL Version: 2.1.2-61c8bd8
2024-02-19 12:48:38 W/MCL Addon: iTXTech Soyuz 未安装,Soyuz MCL Handler 特性已禁用
2024-02-19 12:48:38 I/main: 5 plugin(s) enabled.
2024-02-19 12:48:38 I/main: Auto-login 3691556372, protocol: ANDROID_PAD, heartbeatStrategy: STAT_HB
2024-02-19 12:48:40 E/main: net.mamoe.mirai.internal.network.auth.ProducerFailureException
net.mamoe.mirai.internal.network.auth.ProducerFailureException
at net.mamoe.mirai.internal.network.auth.CoroutineOnDemandValueScope.receiveOrNull(CoroutineOnDemandValueScope.kt:152)
at net.mamoe.mirai.internal.network.auth.AuthControl.acquireAuth(AuthControl.kt:98)
at net.mamoe.mirai.internal.network.components.SsoProcessorImpl.login(SsoProcessor.kt:219)
at net.mamoe.mirai.internal.network.components.SsoProcessorImpl$login$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 net.mamoe.mirai.internal.deps.io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:138)
at net.mamoe.mirai.internal.deps.io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:112)
at net.mamoe.mirai.internal.deps.io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:14)
at net.mamoe.mirai.internal.deps.io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:62)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46)
at net.mamoe.mirai.internal.deps.io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:138)
at net.mamoe.mirai.internal.deps.io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:112)
at net.mamoe.mirai.internal.deps.io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:14)
at net.mamoe.mirai.internal.deps.io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:62)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46)
at net.mamoe.mirai.internal.deps.io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:138)
at net.mamoe.mirai.internal.deps.io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:112)
at net.mamoe.mirai.internal.deps.io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:14)
at net.mamoe.mirai.internal.deps.io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:62)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46)
at net.mamoe.mirai.internal.deps.io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:138)
at net.mamoe.mirai.internal.deps.io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:112)
at net.mamoe.mirai.internal.deps.io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:14)
at net.mamoe.mirai.internal.deps.io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:62)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46)
at net.mamoe.mirai.internal.deps.io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:138)
at net.mamoe.mirai.internal.deps.io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:112)
at net.mamoe.mirai.internal.deps.io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:14)
at net.mamoe.mirai.internal.deps.io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:62)
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:750)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:677)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:664)
Caused by: net.mamoe.mirai.internal.network.auth.IllegalProducerStateException: ProducerReady
at net.mamoe.mirai.internal.network.auth.CoroutineOnDemandValueScope$Producer.emit(CoroutineOnDemandValueScope.kt:76)
at net.mamoe.mirai.internal.network.auth.AuthControl$userDecisions$1$sessionImpl$1.authByPassword-vaT0TR8(AuthControl.kt:46)
at net.mamoe.mirai.internal.network.auth.DefaultBotAuthorizationFactoryImpl$byPassword$1.authorize(DefaultBotAuthorizationFactoryImpl.kt:37)
at net.mamoe.mirai.internal.network.auth.BotAuthorizationWithSecretsProtection.authorize(BotAuthSession.kt:47)
at net.mamoe.mirai.internal.network.auth.AuthControl$userDecisions$1.invokeSuspend(AuthControl.kt:77)
at net.mamoe.mirai.internal.network.auth.AuthControl$userDecisions$1.invoke(AuthControl.kt)
at net.mamoe.mirai.internal.network.auth.AuthControl$userDecisions$1.invoke(AuthControl.kt)
at net.mamoe.mirai.internal.network.auth.CoroutineOnDemandValueScope$Producer$1.invokeSuspend(CoroutineOnDemandValueScope.kt:50)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
... 5 more

2024-02-19 12:48:40 I/Bot.3691556372: Bot cancelled: Bot closed
2024-02-19 12:48:40 V/Bot.3691556372: Event: net.mamoe.mirai.console.events.AutoLoginEvent$Failure@3b30eec5
2024-02-19 12:48:40 I/main: mirai-console started successfully.

login 3691556372 qqAURORA2012 MACOS
2024-02-19 12:49:22 I/Bot.3691556372: [SliderCaptcha] 需要滑动验证码, 请按照以下链接的步骤完成滑动验证码, 然后输入获取到的 ticket
2024-02-19 12:49:22 I/Bot.3691556372: [SliderCaptcha] Slider captcha required. Please solve the captcha with following link. Type ticket here after completion.
2024-02-19 12:49:22 I/Bot.3691556372: [SliderCaptcha] @see https://github.com/project-mirai/mirai-login-solver-selenium
2024-02-19 12:49:22 I/Bot.3691556372: [SliderCaptcha] @see https://docs.mirai.mamoe.net/mirai-login-solver-selenium/
2024-02-19 12:49:22 I/Bot.3691556372: [SliderCaptcha] 或者输入 TxCaptchaHelper 来使用 TxCaptchaHelper 完成滑动验证码
2024-02-19 12:49:22 I/Bot.3691556372: [SliderCaptcha] Or type TxCaptchaHelper to resolve slider captcha with TxCaptchaHelper.apk
2024-02-19 12:49:22 W/Bot.3691556372: [SliderCaptcha] TxCaptchaHelper 的在线服务疑似被屏蔽,可能无法使用。TxCaptchaHelper 现已无法满足登录QQ机器人,请在以下链接下载全新的验证器
2024-02-19 12:49:22 W/Bot.3691556372: [SliderCaptcha] The service of TxCaptchaHelper might be blocked. We recommend you to download the new login solver plugin in below link.
2024-02-19 12:49:22 W/Bot.3691556372: [SliderCaptcha] @see https://github.com/KasukuSakura/mirai-login-solver-sakura
2024-02-19 12:49:22 I/Bot.3691556372: [SliderCaptcha] Captcha link: https://ssl.captcha.qq.com/template/wireless_mqq_captcha.html?style=simple&aid=16&uin=3691556372&sid=8387839894052097618&cap_cd=B3rUzl9QYyQvQXPZR64l92_gz0FMEzdAmJS8JexPhxWzBUFyVRAvqg**&clientype=1&apptype=2
LOGIN> > t03r7-6ctxEQAzp21i1uBNc0ntBffXNmYTWFPHI0GwQ_TDrTJ7s_TaDYVXVTAiEov6LotPVx7EPo7cSNWogUV4wvSo5YiNgyw8VTDo4pSA8OywmmAdtX8tV7Jv5lRhFTuR39iu4-ACGSrs*
2024-02-19 12:50:52 I/Bot.3691556372: [SliderCaptcha] 正在提交中...
2024-02-19 12:50:52 I/Bot.3691556372: [SliderCaptcha] Submitting...
2024-02-19 12:50:53 I/Bot.3691556372: Bot cancelled: Bot closed
Login failed: net.mamoe.mirai.internal.network.auth.ProducerFailureException
2024-02-19 12:50:53 E/console: net.mamoe.mirai.internal.network.auth.ProducerFailureException
net.mamoe.mirai.internal.network.auth.ProducerFailureException
at net.mamoe.mirai.internal.network.auth.CoroutineOnDemandValueScope.receiveOrNull(CoroutineOnDemandValueScope.kt:152)
at net.mamoe.mirai.internal.network.auth.AuthControl.acquireAuth(AuthControl.kt:98)
at net.mamoe.mirai.internal.network.components.SsoProcessorImpl.login(SsoProcessor.kt:219)
at net.mamoe.mirai.internal.network.handler.CommonNetworkHandler$StateConnecting$startState$2.invokeSuspend(CommonNetworkHandler.kt:247)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
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:750)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:677)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:664)
Suppressed: net.mamoe.mirai.network.WrongPasswordException: Error(bot=Bot(3691556372), code=45, title=禁止登录, message=你当前使用的QQ版本过低,请前往QQ官网im.qq.com下载最新版QQ后重试。, errorInfo=)
at net.mamoe.mirai.internal.network.components.SsoProcessorImpl$SlowLoginImpl.doLogin(SsoProcessor.kt:450)
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)
... 5 more
Suppressed: net.mamoe.mirai.internal.network.handler.selector.SelectorRequireReconnectException
Caused by: [CIRCULAR REFERENCE: net.mamoe.mirai.network.WrongPasswordException: Error(bot=Bot(3691556372), code=45, title=禁止登录, message=你当前使用的QQ版本过低,请前往QQ官网im.qq.com下载最新版QQ后重试。, errorInfo=)]
}

其他内容
此处填写其他内容,没有可跳过