Lagrange.Core icon indicating copy to clipboard operation
Lagrange.Core copied to clipboard

[Bug?]: 您的账号已在另一台终端登录

Open H-Elden opened this issue 11 months ago • 17 comments

请确保您已阅读以上注意事项,并勾选下方的确认框。

  • [x] 我已经仔细阅读上述内容
  • [x] 我已经使用 最新构建 测试过,问题依旧存在。
  • [x] 我已经在 Issue Tracker 中找过我要提出的问题,没有找到相同问题的ISSUE。
  • [x] 我已知晓并同意,此处仅用于汇报程序中存在的问题。若这个 Issue 是关于其他非程序本身问题,则我的 Issue 可能会被无条件自动关闭或/并锁定。(其它疑问请考虑加入TG群询问或在discussions中提问)

Lagrange项目

OneBot

所使用/依赖的Lagrange项目对应的commit

nightly latest (50919fd)

运行环境

Linux

运行架构

x64

连接方式

反向 WebSocket

重现步骤

之前正常Linux端登录。 今天我

  1. 通过kill -2 <PID>退出了Linux端的程序(退出登录)。
  2. 在本地windows11电脑上运行了NTQQ并登录(为了调试代码)。
  3. 退出windows电脑上的登录。
  4. 远程连接Linux服务器运行程序,出现无法登录的情况。

期望的结果是什么?

在Linux端使用Lagrange-OneBot正常登录.

实际的结果是什么?

[WtExchangeLogic] [FATAL]: KickNTEvent: 您的账号已在另一台终端登录。如非本人操作,则密码可能已泄露,建议前往https://accounts.qq.com/find/password 修改密码或紧急冻结账号: 下线通知

简单的复现代码/链接(可选)

Trace 级别日志记录(可选)

nohup: ignoring input
Lagrange.OneBot Version: 0.0.3+50919fd549a3823f0b6a515af54eeed144e37cdb

warn: Lagrange.OneBot.Utility.MusicSigner[0]
      MusicSignServer is not available, sign may be failed
info: Lagrange.OneBot.Core.Login.LoginService[0]
      Protocol Version: 3.2.15-30366
info: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:46] [WtExchangeLogic] [INFORMATION]: Connecting Servers...
info: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:46] [SocketContext] [VERBOSE]: Server: http://120.232.130.13:8080/ Latency: 30
info: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:46] [SocketContext] [VERBOSE]: Server: http://120.233.17.147:8080/ Latency: 30
info: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:46] [SocketContext] [VERBOSE]: Server: http://120.241.130.195:8080/ Latency: 31
info: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:46] [SocketContext] [VERBOSE]: Server: http://120.241.130.216:8080/ Latency: 31
info: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:46] [SocketContext] [VERBOSE]: Server: http://120.233.18.186:8080/ Latency: 31
trce: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:46] [ServiceContext] [DEBUG]: Outgoing SSOFrame: wtlogin.trans_emp
trce: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:46] [ServiceContext] [DEBUG]: Incoming SSOFrame: wtlogin.trans_emp
info: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:46] [WtExchangeLogic] [INFORMATION]: QrCode Fetched, Expiration: 120 seconds
█▀▀▀▀▀▀▀██▀████▀████▀▀▀▀▀▀█▀▀▀▀▀▀▀█
█ █▀▀▀█ █▄ ▀ ▄▄▄ ▄█▄█▄▀▄▀ █ █▀▀▀█ █
█ █   █ █▄▄▀▄▀▄▀▄▄███▀ ▄ ██ █   █ █
█ ▀▀▀▀▀ █ █ █▀█▀▄ ▄▀█▀▄▀█▀█ ▀▀▀▀▀ █
█▀▀▀▀▀█▀▀▀▀▀█ ▀█▄ █▄▄▄▄ ▄█▀█▀█▀█▀██
█▄▄██ █▀   █▀▀█▄▀█▀▄█▄█▄███▄▀▀▀▄ ▄█
███▀▄▄ ▀   ▄ █▀█▀▄▀▀▀▄▄█▄▀ ▄▀ ▀▄███
█▄▄█ ▄▄▀▀██ █▄█▄▀▄▄▄▄   █▀▀ ▄███ ▄█
█   ██▀▀▀  ▀█ ▀█▀▄███▄  ▀  ▄▄▀█▄▀██
██ █▀ ▄▀▄▄ █▀▀█▄▀▀  █▄ ▀██▀ ██ █ ▄█
██▀▀▄▀▀▀▀  ▀ █▀█▀▀█▄▄█▄▀▀█▄█▄▀█▄▀██
█ █  ██▀█▀▀ █▄█▄▀▀▄▀█ ▄█▄▄▀ ▀▀ █ ▄█
█ ██  ▄▀▄▀ ▄█ ▀▄█▄▀▀▄  ▀    ▀  ▄█▀█
█▀▀▀▀▀▀▀█ ▀▀▀▀▀   ██▄█ ▀▀ █▀█ ▄ ▀▄█
█ █▀▀▀█ █▀█▀ ▀▀█▄▄▀█ ▀▄▀▄ ▀▀▀  ▄▀██
█ █   █ █ ▄ █▄█▄▀▄▄▀█▄▄▀ █ ▀ ▄█▀▀██
█ ▀▀▀▀▀ █ ▀▄██▀▄ ▄██▄█ ▀▄▀██   ▄▀██
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
trce: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:48] [ServiceContext] [DEBUG]: Outgoing SSOFrame: wtlogin.trans_emp
trce: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:49] [ServiceContext] [DEBUG]: Incoming SSOFrame: wtlogin.trans_emp
info: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:49] [WtExchangeLogic] [INFORMATION]: QrCode State Queried: WaitingForScan Uin: 0
trce: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:50] [ServiceContext] [DEBUG]: Outgoing SSOFrame: wtlogin.trans_emp
trce: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:51] [ServiceContext] [DEBUG]: Incoming SSOFrame: wtlogin.trans_emp
info: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:51] [WtExchangeLogic] [INFORMATION]: QrCode State Queried: WaitingForScan Uin: 0
trce: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:52] [ServiceContext] [DEBUG]: Outgoing SSOFrame: wtlogin.trans_emp
info: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:53] [WtExchangeLogic] [INFORMATION]: QrCode State Queried: WaitingForScan Uin: 0
trce: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:53] [ServiceContext] [DEBUG]: Incoming SSOFrame: wtlogin.trans_emp
trce: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:54] [ServiceContext] [DEBUG]: Outgoing SSOFrame: wtlogin.trans_emp
info: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:55] [WtExchangeLogic] [INFORMATION]: QrCode State Queried: WaitingForScan Uin: 0
trce: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:55] [ServiceContext] [DEBUG]: Incoming SSOFrame: wtlogin.trans_emp
trce: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:56] [ServiceContext] [DEBUG]: Outgoing SSOFrame: Heartbeat.Alive
trce: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:56] [ServiceContext] [DEBUG]: Outgoing SSOFrame: wtlogin.trans_emp
info: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:57] [WtExchangeLogic] [INFORMATION]: QrCode State Queried: WaitingForConfirm Uin: 3941081986
trce: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:57] [ServiceContext] [DEBUG]: Incoming SSOFrame: wtlogin.trans_emp
trce: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:58] [ServiceContext] [DEBUG]: Outgoing SSOFrame: wtlogin.trans_emp
trce: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:59] [ServiceContext] [DEBUG]: Incoming SSOFrame: wtlogin.trans_emp
info: Lagrange.Core.BotContext[0]
      [2025-01-23 23:19:59] [WtExchangeLogic] [INFORMATION]: QrCode State Queried: WaitingForConfirm Uin: 3941081986
trce: Lagrange.Core.BotContext[0]
      [2025-01-23 23:20:00] [ServiceContext] [DEBUG]: Outgoing SSOFrame: wtlogin.trans_emp
info: Lagrange.Core.BotContext[0]
      [2025-01-23 23:20:01] [WtExchangeLogic] [INFORMATION]: QrCode State Queried: WaitingForConfirm Uin: 3941081986
trce: Lagrange.Core.BotContext[0]
      [2025-01-23 23:20:01] [ServiceContext] [DEBUG]: Incoming SSOFrame: wtlogin.trans_emp
trce: Lagrange.Core.BotContext[0]
      [2025-01-23 23:20:02] [ServiceContext] [DEBUG]: Outgoing SSOFrame: wtlogin.trans_emp
trce: Lagrange.Core.BotContext[0]
      [2025-01-23 23:20:03] [ServiceContext] [DEBUG]: Incoming SSOFrame: wtlogin.trans_emp
info: Lagrange.Core.BotContext[0]
      [2025-01-23 23:20:03] [WtExchangeLogic] [INFORMATION]: QrCode State Queried: Confirmed Uin: 3941081986
info: Lagrange.Core.BotContext[0]
      [2025-01-23 23:20:03] [WtExchangeLogic] [INFORMATION]: QrCode Confirmed, Logging in with A1 sig...
info: Lagrange.Core.BotContext[0]
      [2025-01-23 23:20:03] [WtExchangeLogic] [INFORMATION]: Doing Login...
trce: Lagrange.Core.BotContext[0]
      [2025-01-23 23:20:03] [ServiceContext] [DEBUG]: Outgoing SSOFrame: wtlogin.login
trce: Lagrange.Core.BotContext[0]
      [2025-01-23 23:20:03] [ServiceContext] [DEBUG]: Incoming SSOFrame: wtlogin.login
info: Lagrange.Core.BotContext[0]
      [2025-01-23 23:20:03] [WtExchangeLogic] [INFORMATION]: Login Success
info: Lagrange.Core.BotContext[0]
      [2025-01-23 23:20:03] [WtExchangeLogic] [INFORMATION]: Bot name: 一川月白 | Gender: 1 | Age: 18
trce: Lagrange.Core.BotContext[0]
      [2025-01-23 23:20:03] [ServiceContext] [DEBUG]: Outgoing SSOFrame: trpc.msg.register_proxy.RegisterProxy.SsoInfoSync
trce: Lagrange.Core.BotContext[0]
      [2025-01-23 23:20:03] [ServiceContext] [DEBUG]: Incoming SSOFrame: trpc.qq_new_tech.status_svc.StatusService.KickNT
fail: Lagrange.Core.BotContext[0]
      [2025-01-23 23:20:03] [WtExchangeLogic] [FATAL]: KickNTEvent: 您的账号已在另一台终端登录。如非本人操作,则密码可能已泄露,建议前往https://accounts.qq.com/find/password修改密码或紧急冻结账号: 下线通知
fail: Lagrange.Core.BotContext[0]
      [2025-01-23 23:20:03] [WtExchangeLogic] [FATAL]: Bot will be offline in 5 seconds...
trce: Lagrange.Core.BotContext[0]
      [2025-01-23 23:20:03] [ServiceContext] [DEBUG]: Incoming SSOFrame: trpc.msg.register_proxy.RegisterProxy.SsoInfoSync
info: Lagrange.Core.BotContext[0]
      [2025-01-23 23:20:03] [WtExchangeLogic] [INFORMATION]: Register Status: IDK
Unhandled exception. System.Exception: All login failed!
   at Lagrange.OneBot.Core.Login.LoginService.StartAsync(CancellationToken token)
   at Microsoft.Extensions.Hosting.Internal.Host.StartAsync(CancellationToken cancellationToken)
   at Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.RunAsync(IHost host, CancellationToken token)
   at Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.RunAsync(IHost host, CancellationToken token)
   at Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.Run(IHost host)
   at Lagrange.OneBot.Program.Main(String[] args)

补充说明(可选)

可以确定的是:

  • 没有任何时刻出现win电脑和Linux服务器同时登录或尝试登录的情况,即未出现”顶掉线“的情况。
  • 手机端QQ在任何时刻都登录。
  • 手机端QQ从未提示有陌生设备登录的情况,从未提示需要改密码。
  • 手机端QQ的”登录设备管理“页面,始终有且仅有三台设备(手机本机,win电脑,以及Linux服务器)

H-Elden avatar Jan 23 '25 15:01 H-Elden

无法复现, 建议录个视频

DarkRRb avatar Jan 27 '25 13:01 DarkRRb

无法复现, 建议录个视频

您好,后来我使用了Actions里的构建 36735bb 重新在云服务器上运行了新的Lagrange.Onebot程序,舍弃了原先的,现在正常登录,未出现异常。如果出现异常,我会录视频给您。

H-Elden avatar Jan 27 '25 13:01 H-Elden

同样遇到, 在被其他设备挤下登录后,不管在删除keystore重新登录,依然出现 [2025-02-02 02:29:59] [WtExchangeLogic] [FATAL]: KickNTEvent: 您的账号已在另一台终端登录。如非本人操作,则密码可能已泄露,建议前往https://accounts.qq.com/find/password修改密码或紧急冻结账号: 下线通知

并且在之后从手机端查看在线状态,PC状态属于离线

Thexiaoyuqaq avatar Feb 01 '25 18:02 Thexiaoyuqaq

同样遇到, 在被其他设备挤下登录后,不管在删除keystore重新登录,依然出现 [2025-02-02 02:29:59] [WtExchangeLogic] [FATAL]: KickNTEvent: 您的账号已在另一台终端登录。如非本人操作,则密码可能已泄露,建议前往https://accounts.qq.com/find/password修改密码或紧急冻结账号: 下线通知

并且在之后从手机端查看在线状态,PC状态属于离线

warn: Lagrange.OneBot.Utility.MusicSigner[0] MusicSignServer is not available, sign may be failed info: Lagrange.OneBot.Core.Login.LoginService[0] Protocol Version: 3.2.15-30366 info: Lagrange.Core.BotContext[0] [2025-02-02 02:34:45] [SocketContext] [VERBOSE]: Server: http://36.155.213.142:8080/ Latency: 12 info: Lagrange.Core.BotContext[0] [2025-02-02 02:34:45] [SocketContext] [VERBOSE]: Server: http://36.155.187.71:8080/ Latency: 12 info: Lagrange.Core.BotContext[0] [2025-02-02 02:34:45] [SocketContext] [VERBOSE]: Server: http://36.155.205.230:8080/ Latency: 11 info: Lagrange.Core.BotContext[0] [2025-02-02 02:34:45] [SocketContext] [VERBOSE]: Server: http://36.155.205.252:8080/ Latency: 11 info: Lagrange.Core.BotContext[0] [2025-02-02 02:34:45] [WtExchangeLogic] [INFORMATION]: Session has not expired, using session to login and register status fail: Lagrange.Core.BotContext[0] [2025-02-02 02:34:45] [WtExchangeLogic] [FATAL]: KickNTEvent: 您的账号已在另一台终端登录。如非本人操作,则密码可能已泄露,建议前往https://accounts.qq.com/find/password修改密码或紧急冻结账号: 下线通知 fail: Lagrange.Core.BotContext[0] [2025-02-02 02:34:45] [WtExchangeLogic] [FATAL]: Bot will be offline in 5 seconds... info: Lagrange.Core.BotContext[0] [2025-02-02 02:34:45] [WtExchangeLogic] [INFORMATION]: Register Status: IDK warn: Lagrange.Core.BotContext[0] [2025-02-02 02:34:45] [WtExchangeLogic] [WARNING]: Register by session failed, try to login by EasyLogin fail: Lagrange.Core.BotContext[0] [2025-02-02 02:34:45] [SocketContext] [FATAL]: Socket Error: Invalid count to read, count: -1087175566 fail: Lagrange.Core.BotContext[0] [2025-02-02 02:34:45] [SocketContext] [FATAL]: at Lagrange.Core.Utility.Binary.BinaryPacket.ReadBytes(Prefix flag) at Lagrange.Core.Internal.Packets.SsoPacker.Parse(BinaryPacket packet) at Lagrange.Core.Internal.Context.PacketContext.DispatchPacket(BinaryPacket packet) at Lagrange.Core.Internal.Context.SocketContext.OnRecvPacket(ReadOnlySpan1 packet) at Lagrange.Core.Internal.Network.CallbackClientListener.OnRecvPacket(ReadOnlySpan1 packet) at Lagrange.Core.Internal.Network.ClientListener.ReceiveLoop(SocketSession session, CancellationToken token) fail: Lagrange.Core.BotContext[0] [2025-02-02 02:34:45] [SocketContext] [FATAL]: Socket Disconnected, Scheduling Reconnect fail: Lagrange.Core.BotContext[0] [2025-02-02 02:34:45] [SocketContext] [FATAL]: Socket Error: Invalid count to read, count: -1087175566 fail: Lagrange.Core.BotContext[0] [2025-02-02 02:34:45] [SocketContext] [FATAL]: Socket Disconnected, Scheduling Reconnect fail: Lagrange.Core.BotContext[0] [2025-02-02 02:34:45] [SocketContext] [FATAL]: at Lagrange.Core.Utility.Binary.BinaryPacket.ReadBytes(Prefix flag) at Lagrange.Core.Internal.Packets.SsoPacker.Parse(BinaryPacket packet) at Lagrange.Core.Internal.Context.PacketContext.DispatchPacket(BinaryPacket packet) at Lagrange.Core.Internal.Context.SocketContext.OnRecvPacket(ReadOnlySpan1 packet) at Lagrange.Core.Internal.Network.CallbackClientListener.OnRecvPacket(ReadOnlySpan1 packet) at Lagrange.Core.Internal.Network.ClientListener.ReceiveLoop(SocketSession session, CancellationToken token)

Thexiaoyuqaq avatar Feb 01 '25 18:02 Thexiaoyuqaq

同样遇到,在Release 50919fd 版本,挤掉线后无法再登录成功,会一直提示被踢掉线

1528344561 avatar Feb 03 '25 02:02 1528344561

同样遇到,在Release 50919fd 版本,挤掉线后无法再登录成功,会一直提示被踢掉线

我正常了,过一段时间就恢复了,可能在sign服务器上做了什么缓存吧

Thexiaoyuqaq avatar Feb 03 '25 02:02 Thexiaoyuqaq

sign 没有任何缓存, 也不和 tx 服务器通信

各位遇到这个问题请给出视频或者复现方案

DarkRRb avatar Feb 03 '25 03:02 DarkRRb

关闭拉格朗,使用另一台设备登陆(我这里是napcat),关闭另一台设备,然后启动拉格朗就会出现

sena-nana avatar Feb 06 '25 12:02 sena-nana

我是在同一台电脑上(win10)使用NTQQ登录了相同的QQ账号,然后Lagrange-OneBot就提示被挤掉线,退出NTQQ后,重新运行Lagrange-OneBot仍然提示被挤掉线无法登录,且更换最新构建以及等待一天后再次登录仍提示被挤掉线无法登录。我在删除了device.json文件后重新运行便可以登上去了。

Ucyanwind avatar Feb 16 '25 03:02 Ucyanwind

我最近也是 疯狂提示我下线通知 我感觉是qq更新了 有了新的验证机制

wzwei1990 avatar Feb 17 '25 07:02 wzwei1990

我最近也是 疯狂提示我下线通知 我感觉是qq更新了 有了新的验证机制

这个好像还不一样,你说的可能是运行着有下线通知但是账号正常,这个我也遇到了不知道什么问题。这个issue是拉格朗登录的时候被下线通知挤掉线

sena-nana avatar Feb 17 '25 07:02 sena-nana

我最近也是 疯狂提示我下线通知 我感觉是qq更新了 有了新的验证机制

这个好像还不一样,你说的可能是运行着有下线通知但是账号正常,这个我也遇到了不知道什么问题。这个issue是拉格朗登录的时候被下线通知挤掉线

嗯 lagrange运行正常 我手机上的qq被下线

wzwei1990 avatar Feb 17 '25 07:02 wzwei1990

出现了同样的问题,大家后来怎么解决的?

zouyonghao avatar Jun 05 '25 15:06 zouyonghao

小雨已收到你的来信已存放至小雨的收件箱

Thexiaoyuqaq avatar Jun 05 '25 15:06 Thexiaoyuqaq

出现了同样的问题,大家后来怎么解决的?

删除device.json文件后重新运行试试

Ucyanwind avatar Jun 05 '25 16:06 Ucyanwind

出现了同样的问题,大家后来怎么解决的?

删除device.json文件后重新运行试试

It works! 感谢

zouyonghao avatar Jun 05 '25 18:06 zouyonghao

出现此情况可以尝试删除 keystore.jsondevice.json 重新登录

DarkRRb avatar Jun 06 '25 00:06 DarkRRb