mirror of
https://github.com/Mrs4s/MiraiGo.git
synced 2025-05-04 19:17:38 +08:00
fix group gif
This commit is contained in:
parent
a455b21bad
commit
bd530da3df
@ -644,7 +644,11 @@ func (c *QQClient) UploadGroupImage(groupCode int64, img []byte) (*message.Group
|
||||
}
|
||||
return nil, errors.New("upload failed")
|
||||
ok:
|
||||
return message.NewGroupImage(binary.CalculateImageResourceId(h[:]), h[:], rsp.FileId, int32(len(img)), rsp.Width, rsp.Height), nil
|
||||
var imageType int32 = 1000
|
||||
if bytes.HasPrefix(img, []byte{0x47, 0x49, 0x46, 0x38}) {
|
||||
imageType = 2000
|
||||
}
|
||||
return message.NewGroupImage(binary.CalculateImageResourceId(h[:]), h[:], rsp.FileId, int32(len(img)), rsp.Width, rsp.Height, imageType), nil
|
||||
}
|
||||
|
||||
func (c *QQClient) UploadPrivateImage(target int64, img []byte) (*message.FriendImageElement, error) {
|
||||
@ -699,7 +703,7 @@ func (c *QQClient) QueryGroupImage(groupCode int64, hash []byte, size int32) (*m
|
||||
return nil, errors.New(rsp.Message)
|
||||
}
|
||||
if rsp.IsExists {
|
||||
return message.NewGroupImage(binary.CalculateImageResourceId(hash), hash, rsp.FileId, size, rsp.Width, rsp.Height), nil
|
||||
return message.NewGroupImage(binary.CalculateImageResourceId(hash), hash, rsp.FileId, size, rsp.Width, rsp.Height, 1000), nil
|
||||
}
|
||||
return nil, errors.New("image not exists")
|
||||
}
|
||||
|
@ -23,13 +23,14 @@ type ImageElement struct {
|
||||
}
|
||||
|
||||
type GroupImageElement struct {
|
||||
ImageId string
|
||||
FileId int64
|
||||
Size int32
|
||||
Width int32
|
||||
Height int32
|
||||
Md5 []byte
|
||||
Url string
|
||||
ImageId string
|
||||
FileId int64
|
||||
ImageType int32
|
||||
Size int32
|
||||
Width int32
|
||||
Height int32
|
||||
Md5 []byte
|
||||
Url string
|
||||
}
|
||||
|
||||
type VoiceElement struct {
|
||||
@ -143,15 +144,16 @@ func NewImage(data []byte) *ImageElement {
|
||||
}
|
||||
}
|
||||
|
||||
func NewGroupImage(id string, md5 []byte, fid int64, size, width, height int32) *GroupImageElement {
|
||||
func NewGroupImage(id string, md5 []byte, fid int64, size, width, height, imageType int32) *GroupImageElement {
|
||||
return &GroupImageElement{
|
||||
ImageId: id,
|
||||
FileId: fid,
|
||||
Md5: md5,
|
||||
Size: size,
|
||||
Width: width,
|
||||
Height: height,
|
||||
Url: "http://gchat.qpic.cn/gchatpic_new/1/0-0-" + strings.ReplaceAll(binary.CalculateImageResourceId(md5)[1:37], "-", "") + "/0?term=2",
|
||||
ImageId: id,
|
||||
FileId: fid,
|
||||
Md5: md5,
|
||||
Size: size,
|
||||
ImageType: imageType,
|
||||
Width: width,
|
||||
Height: height,
|
||||
Url: "http://gchat.qpic.cn/gchatpic_new/1/0-0-" + strings.ReplaceAll(binary.CalculateImageResourceId(md5)[1:37], "-", "") + "/0?term=2",
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -75,12 +75,14 @@ func (e *GroupImageElement) Pack() (r []*msg.Elem) {
|
||||
CustomFace: &msg.CustomFace{
|
||||
FileType: 66,
|
||||
Useful: 1,
|
||||
Origin: 1,
|
||||
FileId: int32(e.FileId),
|
||||
FilePath: e.ImageId,
|
||||
Size: e.Size,
|
||||
Md5: e.Md5[:],
|
||||
Flag: make([]byte, 4),
|
||||
//Origin: 1,
|
||||
BizType: 5,
|
||||
FileId: int32(e.FileId),
|
||||
FilePath: e.ImageId,
|
||||
ImageType: e.ImageType,
|
||||
Size: e.Size,
|
||||
Md5: e.Md5[:],
|
||||
Flag: make([]byte, 4),
|
||||
//OldData: imgOld,
|
||||
},
|
||||
})
|
||||
|
Loading…
x
Reference in New Issue
Block a user