diff --git a/client/client.go b/client/client.go index 763fe518..ad5cd9c8 100644 --- a/client/client.go +++ b/client/client.go @@ -1129,6 +1129,7 @@ func (c *QQClient) netLoop() { func (c *QQClient) doHeartbeat() { c.heartbeatEnabled = true + times := 0 for c.Online { seq := c.nextSeq() sso := packets.BuildSsoPacket(seq, c.version.AppId, "Heartbeat.Alive", SystemDeviceInfo.IMEI, []byte{}, c.OutGoingPacketSessionId, []byte{}, c.ksid) @@ -1139,6 +1140,11 @@ func (c *QQClient) doHeartbeat() { c.Disconnect() break } + times++ + if times >= 7 { + _ = c.registerClient() + times = 0 + } time.Sleep(time.Second * 30) } c.heartbeatEnabled = false