修复获取消息发送频繁获取详情导致操作频繁的问题
This commit is contained in:
parent
5b35d2014a
commit
01233fa544
16
message.go
16
message.go
@ -63,8 +63,17 @@ func (m *Message) Sender() (*User, error) {
|
||||
if m.FromUserName == m.Bot.self.User.UserName {
|
||||
return m.Bot.self.User, nil
|
||||
}
|
||||
user := &User{Self: m.Bot.self, UserName: m.FromUserName}
|
||||
err := user.Detail()
|
||||
// 首先尝试从缓存里面查找, 如果没有找到则从服务器获取
|
||||
members, err := m.Bot.self.Members()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
user, exist := members.GetByRemarkName(m.FromUserName)
|
||||
if !exist {
|
||||
// 找不到, 从服务器获取
|
||||
user = &User{Self: m.Bot.self, UserName: m.FromUserName}
|
||||
err = user.Detail()
|
||||
}
|
||||
return user, err
|
||||
}
|
||||
|
||||
@ -86,9 +95,6 @@ func (m *Message) SenderInGroup() (*User, error) {
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if err := group.Detail(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if group.IsFriend() {
|
||||
return group, nil
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user