(parms *GroupAlbumUploadParam)
| 391 | } |
| 392 | |
| 393 | func (c *QQClient) UploadGroupAlbumVideo(parms *GroupAlbumUploadParam) (*GroupVideo, error) { |
| 394 | if parms == nil { |
| 395 | return nil, errors.New("upload parms is nil") |
| 396 | } |
| 397 | cookie, err := c.GetCookies("qzone.qq.com") |
| 398 | if err != nil { |
| 399 | return nil, err |
| 400 | } |
| 401 | gtk := GTK(cookie.PsKey) |
| 402 | // upload video |
| 403 | sha1, size := crypto.ComputeSha1AndLength(parms.Video) |
| 404 | st := uploadTypeParam{ResourceTypeVideo, "qzone", "FileUploadVideo", "video_qun", 1} |
| 405 | usp := &uploadSessionParam{ |
| 406 | UploadType: st, |
| 407 | GroupUin: parms.GroupUin, |
| 408 | FileName: parms.FileName, |
| 409 | CheckSum: sha1, |
| 410 | Size: int(size), |
| 411 | AlbumID: parms.AlbumID, |
| 412 | AlbumName: parms.AlbumName, |
| 413 | GTK: gtk, |
| 414 | } |
| 415 | session, timeStamp, err := c.getGroupAlbumUploadSession(usp) |
| 416 | if err != nil { |
| 417 | return nil, err |
| 418 | } |
| 419 | c.debug("upload group album video start, session %s", session.Session) |
| 420 | uvbRsp, err := c.doUploadGroupAlbumBlock(session, usp, parms.Video) |
| 421 | if err != nil { |
| 422 | return nil, err |
| 423 | } |
| 424 | if uvbRsp.VID == "" { |
| 425 | return nil, errors.New("upload failed because the vid is missing in the upload group video response") |
| 426 | } |
| 427 | // upload video thumbnail |
| 428 | md5, size := crypto.ComputeMd5AndLength(parms.Thumbnail) |
| 429 | st = uploadTypeParam{ResourceTypeVideoThumbPhoto, "huodong", "", "qun", 0} |
| 430 | usp = &uploadSessionParam{ |
| 431 | UploadType: st, |
| 432 | GroupUin: parms.GroupUin, |
| 433 | FileName: parms.FileName, |
| 434 | CheckSum: md5, |
| 435 | Size: int(size), |
| 436 | AlbumID: parms.AlbumID, |
| 437 | AlbumName: parms.AlbumName, |
| 438 | VidTimeStamp: timeStamp, |
| 439 | Vid: uvbRsp.VID, |
| 440 | GTK: gtk, |
| 441 | } |
| 442 | session, _, err = c.getGroupAlbumUploadSession(usp) |
| 443 | if err != nil { |
| 444 | return nil, err |
| 445 | } |
| 446 | c.debug("upload group album video thumb start, session %s", session.Session) |
| 447 | utbRsp, err := c.doUploadGroupAlbumBlock(session, usp, parms.Thumbnail) |
| 448 | if err != nil { |
| 449 | return nil, err |
| 450 | } |
nothing calls this directly
no test coverage detected