mirror of
https://github.com/Mrs4s/MiraiGo.git
synced 2025-05-04 11:07:40 +08:00
supported on-way friend msg.
This commit is contained in:
parent
3887056df8
commit
d7e61afdfe
@ -234,20 +234,6 @@ func decodeMessageSvcPacket(c *QQClient, _ uint16, payload []byte) (interface{},
|
|||||||
if message.Body.RichText == nil || message.Body.RichText.Elems == nil {
|
if message.Body.RichText == nil || message.Body.RichText.Elems == nil {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
//friend := c.FindFriend(message.Head.FromUin)
|
|
||||||
/*
|
|
||||||
if friend == nil {
|
|
||||||
return nil, nil
|
|
||||||
}
|
|
||||||
if friend.msgSeqList == nil {
|
|
||||||
friend.msgSeqList = utils.NewCache(time.Second * 5)
|
|
||||||
}
|
|
||||||
strSeq := strconv.FormatInt(int64(message.Head.MsgSeq), 10)
|
|
||||||
if _, ok := friend.msgSeqList.Get(strSeq); ok {
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
friend.msgSeqList.Add(strSeq, 0, time.Minute*15)
|
|
||||||
*/
|
|
||||||
c.dispatchFriendMessage(c.parsePrivateMessage(message))
|
c.dispatchFriendMessage(c.parsePrivateMessage(message))
|
||||||
case 187:
|
case 187:
|
||||||
_, pkt := c.buildSystemMsgNewFriendPacket()
|
_, pkt := c.buildSystemMsgNewFriendPacket()
|
||||||
|
@ -195,17 +195,24 @@ func (info *DeviceInfo) GenDeviceInfoData() []byte {
|
|||||||
|
|
||||||
func (c *QQClient) parsePrivateMessage(msg *msg.Message) *message.PrivateMessage {
|
func (c *QQClient) parsePrivateMessage(msg *msg.Message) *message.PrivateMessage {
|
||||||
friend := c.FindFriend(msg.Head.FromUin)
|
friend := c.FindFriend(msg.Head.FromUin)
|
||||||
|
var sender *message.Sender
|
||||||
if friend == nil {
|
if friend == nil {
|
||||||
return nil
|
sender = &message.Sender{
|
||||||
|
Uin: msg.Head.FromUin,
|
||||||
|
Nickname: msg.Head.FromNick,
|
||||||
|
IsFriend: false,
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
sender = &message.Sender{
|
||||||
|
Uin: friend.Uin,
|
||||||
|
Nickname: friend.Nickname,
|
||||||
|
}
|
||||||
}
|
}
|
||||||
ret := &message.PrivateMessage{
|
ret := &message.PrivateMessage{
|
||||||
Id: msg.Head.MsgSeq,
|
Id: msg.Head.MsgSeq,
|
||||||
Target: c.Uin,
|
Target: c.Uin,
|
||||||
Time: msg.Head.MsgTime,
|
Time: msg.Head.MsgTime,
|
||||||
Sender: &message.Sender{
|
Sender: sender,
|
||||||
Uin: friend.Uin,
|
|
||||||
Nickname: friend.Nickname,
|
|
||||||
},
|
|
||||||
Elements: message.ParseMessageElems(msg.Body.RichText.Elems),
|
Elements: message.ParseMessageElems(msg.Body.RichText.Elems),
|
||||||
}
|
}
|
||||||
if msg.Body.RichText.Attr != nil {
|
if msg.Body.RichText.Attr != nil {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user