mirror of
https://github.com/Mrs4s/MiraiGo.git
synced 2025-05-04 19:17:38 +08:00
supported: group list lazy loading.
This commit is contained in:
parent
eae57aabf1
commit
5c4991c14f
@ -291,7 +291,7 @@ func decodeGroupMessagePacket(c *QQClient, _ uint16, payload []byte) (interface{
|
||||
return nil, nil
|
||||
}
|
||||
if pkt.Message.Content != nil && pkt.Message.Content.PkgNum > 1 {
|
||||
var builder *groupMessageBuilder
|
||||
var builder *groupMessageBuilder // TODO: 支持多SEQ
|
||||
i, ok := c.groupMsgBuilders.Load(pkt.Message.Content.DivSeq)
|
||||
if !ok {
|
||||
builder = &groupMessageBuilder{
|
||||
|
@ -267,7 +267,22 @@ func (c *QQClient) parseTempMessage(msg *msg.Message) *message.TempMessage {
|
||||
func (c *QQClient) parseGroupMessage(m *msg.Message) *message.GroupMessage {
|
||||
group := c.FindGroup(m.Head.GroupInfo.GroupCode)
|
||||
if group == nil {
|
||||
return nil
|
||||
c.Debug("sync group %v.", m.Head.GroupInfo.GroupCode)
|
||||
info, err := c.GetGroupInfo(m.Head.GroupInfo.GroupCode)
|
||||
if err != nil {
|
||||
c.Error("error to sync group %v : %v", m.Head.GroupInfo.GroupCode, err)
|
||||
return nil
|
||||
}
|
||||
group = info
|
||||
c.GroupList = append(c.GroupList, info)
|
||||
}
|
||||
if len(group.Members) == 0 {
|
||||
mem, err := c.GetGroupMembers(group)
|
||||
if err != nil {
|
||||
c.Error("error to sync group %v member : %v", m.Head.GroupInfo.GroupCode, err)
|
||||
return nil
|
||||
}
|
||||
group.Members = mem
|
||||
}
|
||||
var anonInfo *msg.AnonymousGroupMessage
|
||||
for _, e := range m.Body.RichText.Elems {
|
||||
|
Loading…
x
Reference in New Issue
Block a user