mirror of
https://github.com/Mrs4s/MiraiGo.git
synced 2025-05-04 11:07:40 +08:00
添加事件
add: 群解散事件 add: 被删除好友事件
This commit is contained in:
parent
fee6c23736
commit
8028aaedd2
@ -106,6 +106,8 @@ type QQClient struct {
|
||||
GroupDigestEvent EventHandle[*GroupDigestEvent]
|
||||
OtherClientStatusChangedEvent EventHandle[*OtherClientStatusChangedEvent]
|
||||
OfflineFileEvent EventHandle[*OfflineFileEvent]
|
||||
GroupDisbandEvent EventHandle[*GroupDisbandEvent]
|
||||
DeleteFriendEvent EventHandle[*DeleteFriendEvent]
|
||||
|
||||
// message state
|
||||
msgSvcCache *utils.Cache[unit]
|
||||
|
@ -732,6 +732,15 @@ func decodeOnlinePushTransPacket(c *QQClient, pkt *network.Packet) (any, error)
|
||||
Operator: g.FindMember(operator),
|
||||
})
|
||||
}
|
||||
case 0x01, 0x81: // kosbot add: 群解散. 暂时这样 See https://github.com/lz1998/ricq/blob/064ddddca19aa0410e2514852e3a151fd9913371/ricq-core/src/command/online_push/decoder.rs#L86
|
||||
c.GroupDisbandEvent.dispatch(c, &GroupDisbandEvent{
|
||||
Group: g,
|
||||
Operator: g.FindMember(operator),
|
||||
Time: int64(info.MsgTime.Unwrap()),
|
||||
})
|
||||
if err = c.ReloadGroupList(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -191,6 +191,17 @@ type (
|
||||
DownloadUrl string
|
||||
}
|
||||
|
||||
GroupDisbandEvent struct {
|
||||
Group *GroupInfo
|
||||
Time int64
|
||||
Operator *GroupMemberInfo
|
||||
}
|
||||
|
||||
DeleteFriendEvent struct {
|
||||
Uin int64
|
||||
Nickname string
|
||||
}
|
||||
|
||||
// GroupDigest 群精华消息
|
||||
GroupDigest struct {
|
||||
GroupCode int64 `json:"group_code,string"`
|
||||
|
@ -208,6 +208,10 @@ func msgType0x210Sub27Decoder(c *QQClient, protobuf []byte) error {
|
||||
if m.DelFriend != nil {
|
||||
frdUin := m.DelFriend.Uins[0]
|
||||
if frd := c.FindFriend(int64(frdUin)); frd != nil {
|
||||
c.DeleteFriendEvent.dispatch(c, &DeleteFriendEvent{
|
||||
Uin: frd.Uin,
|
||||
Nickname: frd.Nickname,
|
||||
})
|
||||
if err := c.ReloadFriendList(); err != nil {
|
||||
return errors.Wrap(err, "failed to reload friend list")
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user