修复Reply返回的SentMessage撤回消息引发的空指针问题
This commit is contained in:
parent
d36e8dde66
commit
95a4a4d188
17
message.go
17
message.go
@ -126,7 +126,12 @@ func (m *Message) Reply(msgType MessageType, content, mediaId string) (*SentMess
|
|||||||
msg := NewSendMessage(msgType, content, m.Bot.self.User.UserName, m.FromUserName, mediaId)
|
msg := NewSendMessage(msgType, content, m.Bot.self.User.UserName, m.FromUserName, mediaId)
|
||||||
info := m.Bot.Storage.LoginInfo
|
info := m.Bot.Storage.LoginInfo
|
||||||
request := m.Bot.Storage.Request
|
request := m.Bot.Storage.Request
|
||||||
return m.Bot.Caller.WebWxSendMsg(msg, info, request)
|
sentMessage, err := m.Bot.Caller.WebWxSendMsg(msg, info, request)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
sentMessage.Self = m.Bot.self
|
||||||
|
return sentMessage, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// ReplyText 回复文本消息
|
// ReplyText 回复文本消息
|
||||||
@ -491,6 +496,16 @@ func (s *SentMessage) Revoke() error {
|
|||||||
return s.Self.RevokeMessage(s)
|
return s.Self.RevokeMessage(s)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// CanRevoke 是否可以撤回该消息
|
||||||
|
func (s *SentMessage) CanRevoke() bool {
|
||||||
|
i, err := strconv.ParseInt(s.ClientMsgId, 10, 64)
|
||||||
|
if err != nil {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
start := time.Unix(i/10000000, 0)
|
||||||
|
return time.Now().Sub(start) < time.Minute*2
|
||||||
|
}
|
||||||
|
|
||||||
// ForwardToFriends 转发该消息给好友
|
// ForwardToFriends 转发该消息给好友
|
||||||
func (s *SentMessage) ForwardToFriends(friends ...*Friend) error {
|
func (s *SentMessage) ForwardToFriends(friends ...*Friend) error {
|
||||||
return s.Self.ForwardMessageToFriends(s, friends...)
|
return s.Self.ForwardMessageToFriends(s, friends...)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user