修复接受单向好友消息时找不到sender的bug 🐛
This commit is contained in:
parent
d0238a00ae
commit
992c05f3fb
11
message.go
11
message.go
@ -56,18 +56,11 @@ type Message struct {
|
|||||||
|
|
||||||
// 获取消息的发送者
|
// 获取消息的发送者
|
||||||
func (m *Message) Sender() (*User, error) {
|
func (m *Message) Sender() (*User, error) {
|
||||||
members, err := m.Bot.self.Members(true)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
if m.FromUserName == m.Bot.self.User.UserName {
|
if m.FromUserName == m.Bot.self.User.UserName {
|
||||||
return m.Bot.self.User, nil
|
return m.Bot.self.User, nil
|
||||||
}
|
}
|
||||||
user := members.SearchByUserName(1, m.FromUserName)
|
user := &User{Self: m.Bot.self, UserName: m.FromUserName}
|
||||||
if user == nil {
|
return user.Detail()
|
||||||
return nil, noSuchUserFoundError
|
|
||||||
}
|
|
||||||
return user.First().Detail()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取消息在群里面的发送者
|
// 获取消息在群里面的发送者
|
||||||
|
3
user.go
3
user.go
@ -81,6 +81,9 @@ func (u *User) SaveAvatar(filename string) error {
|
|||||||
|
|
||||||
// 获取用户的详情
|
// 获取用户的详情
|
||||||
func (u *User) Detail() (*User, error) {
|
func (u *User) Detail() (*User, error) {
|
||||||
|
if u.UserName == u.Self.UserName {
|
||||||
|
return u.Self.User, nil
|
||||||
|
}
|
||||||
members := Members{u}
|
members := Members{u}
|
||||||
request := u.Self.Bot.storage.Request
|
request := u.Self.Bot.storage.Request
|
||||||
newMembers, err := u.Self.Bot.Caller.WebWxBatchGetContact(members, request)
|
newMembers, err := u.Self.Bot.Caller.WebWxBatchGetContact(members, request)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user