github.com/chanxuehong/wechat@v0.0.0-20230222024006-36f0325263cd/mp/media/mpvideo.go (about)

     1  package media
     2  
     3  import (
     4  	"github.com/chanxuehong/wechat/mp/core"
     5  )
     6  
     7  // UploadVideo2 创建视频素材, 返回的素材一般用于群发消息.
     8  //
     9  //	mediaId:     通过 UploadVideo 上传视频文件得到
    10  //	title:       标题, 可以为空
    11  //	description: 描述, 可以为空
    12  func UploadVideo2(clt *core.Client, mediaId, title, description string) (info *MediaInfo, err error) {
    13  	const incompleteURL = "https://api.weixin.qq.com/cgi-bin/media/uploadvideo?access_token="
    14  
    15  	var request = struct {
    16  		MediaId     string `json:"media_id"`
    17  		Title       string `json:"title,omitempty"`
    18  		Description string `json:"description,omitempty"`
    19  	}{
    20  		MediaId:     mediaId,
    21  		Title:       title,
    22  		Description: description,
    23  	}
    24  	var result struct {
    25  		core.Error
    26  		MediaInfo
    27  	}
    28  	if err = clt.PostJSON(incompleteURL, &request, &result); err != nil {
    29  		return
    30  	}
    31  	if result.ErrCode != core.ErrCodeOK {
    32  		err = &result.Error
    33  		return
    34  	}
    35  	info = &result.MediaInfo
    36  	return
    37  }