1
0
mirror of https://github.com/Mrs4s/MiraiGo.git synced 2025-05-04 19:17:38 +08:00

feat(message): support more redbag types

This commit is contained in:
wfjsw 2021-02-13 02:34:29 +08:00
parent 9f1cf68e0e
commit 2613fc2270
2 changed files with 23 additions and 4 deletions

View File

@ -158,10 +158,28 @@ type FriendFlashPicElement struct {
type RedBagMessageType int type RedBagMessageType int
// /com/tencent/mobileqq/data/MessageForQQWalletMsg.java
const ( const (
Simple RedBagMessageType = 2 RedBagSimple RedBagMessageType = 2
Lucky RedBagMessageType = 3 RedBagLucky RedBagMessageType = 3
World RedBagMessageType = 6 RedBagSimpleTheme RedBagMessageType = 4
RedBagLuckTheme RedBagMessageType = 5
RedBagWord RedBagMessageType = 6
RedBagSimpleSpecify RedBagMessageType = 7
RedBagLucySpecify RedBagMessageType = 8
RedBagSimpleSpecifyOver3 RedBagMessageType = 11
RedBagLuckSpecifyOver3 RedBagMessageType = 12
RedBagVoice RedBagMessageType = 13
RedBagLook RedBagMessageType = 14 // ?
RedBagVoiceC2C RedBagMessageType = 15
RedBagH5 RedBagMessageType = 17
RedBagKSong RedBagMessageType = 18
RedBagEmoji RedBagMessageType = 19
RedBagDraw RedBagMessageType = 22
RedBagH5Common RedBagMessageType = 20
RedBagWordChain RedBagMessageType = 24
RedBagKeyword RedBagMessageType = 25 // ?
RedBagDrawMultiModel RedBagMessageType = 26 // ??
) )
func NewText(s string) *TextElement { func NewText(s string) *TextElement {

View File

@ -500,8 +500,9 @@ func ParseMessageElems(elems []*msg.Elem) []IMessageElement {
}) })
} }
if elem.QQWalletMsg != nil && elem.QQWalletMsg.AioBody != nil { if elem.QQWalletMsg != nil && elem.QQWalletMsg.AioBody != nil {
// /com/tencent/mobileqq/data/MessageForQQWalletMsg.java#L366
msgType := elem.QQWalletMsg.AioBody.GetMsgType() msgType := elem.QQWalletMsg.AioBody.GetMsgType()
if msgType == 2 || msgType == 3 || msgType == 6 { if msgType <= 1000 && elem.QQWalletMsg.AioBody.RedType != nil {
return []IMessageElement{ return []IMessageElement{
&RedBagElement{ &RedBagElement{
MsgType: RedBagMessageType(msgType), MsgType: RedBagMessageType(msgType),