1
0
mirror of https://github.com/mamoe/mirai.git synced 2025-04-25 04:50:26 +08:00

[core] Add missed refresh token logic for OnlinePush.SidTicketExpired ()

This commit is contained in:
sandtechnology 2023-03-22 11:01:43 +08:00 committed by GitHub
parent 4238d00407
commit baf9ee4bf7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 7 additions and 3 deletions
mirai-core/src/commonMain/kotlin/network/protocol/packet
chat/receive
login/wtlogin

View File

@ -15,12 +15,15 @@ import net.mamoe.mirai.internal.network.Packet
import net.mamoe.mirai.internal.network.protocol.packet.IncomingPacketFactory
import net.mamoe.mirai.internal.network.protocol.packet.OutgoingPacket
import net.mamoe.mirai.internal.network.protocol.packet.buildResponseUniPacket
import net.mamoe.mirai.internal.network.protocol.packet.login.wtlogin.WtLogin10
internal object OnlinePushSidExpired :
IncomingPacketFactory<Packet?>("OnlinePush.SidTicketExpired", "OnlinePush.SidTicketExpired") {
override suspend fun QQAndroidBot.handle(packet: Packet?, sequenceId: Int): OutgoingPacket {
return buildResponseUniPacket(client, sequenceId = sequenceId)
return buildResponseUniPacket(client, sequenceId = sequenceId).also {
bot.network.sendAndExpect(WtLogin10(client, mainSigMap = 1052896, remark = "10:refresh-token"))
}
}
override suspend fun ByteReadPacket.decode(bot: QQAndroidBot, sequenceId: Int): Packet? {

View File

@ -26,9 +26,10 @@ internal object WtLogin10 : WtLoginExt {
operator fun invoke(
client: QQAndroidClient,
subAppId: Long = 100,
mainSigMap: Int = client.mainSigMap
mainSigMap: Int = client.mainSigMap,
remark: String = "10:fast-login",
) = WtLogin.ExchangeEmp.buildLoginOutgoingPacket(
client, bodyType = 2, key = ByteArray(16), remark = "10:fast-login"
client, bodyType = 2, key = ByteArray(16), remark = remark
) { sequenceId ->
writeSsoPacket(
client,