View Javadoc
1   package com.foxinmy.weixin4j.tuple;
2   
3   import javax.xml.bind.annotation.XmlElement;
4   import javax.xml.bind.annotation.XmlTransient;
5   
6   import com.alibaba.fastjson.annotation.JSONCreator;
7   import com.alibaba.fastjson.annotation.JSONField;
8   
9   /**
10   * 视频对象
11   * <p>
12   * <font color="red">可用于「客服消息」</font>
13   * </p>
14   *
15   * @className Video
16   * @author jinyu(foxinmy@gmail.com)
17   * @date 2014年9月29日
18   * @since JDK 1.6
19   * @see
20   */
21  public class Video implements NotifyTuple {
22  
23  	private static final long serialVersionUID = 2167437425244069128L;
24  
25  	@Override
26  	public String getMessageType() {
27  		return "video";
28  	}
29  
30  	/**
31  	 * 上传视频微信返回的媒体ID
32  	 */
33  	@JSONField(name = "media_id")
34  	@XmlElement(name = "MediaId")
35  	private String mediaId;
36  	/**
37  	 * 缩略图的媒体ID(客服消息)
38  	 */
39  	@JSONField(name = "thumb_media_id")
40  	@XmlTransient
41  	private String thumbMediaId;
42  	/**
43  	 * 视频标题
44  	 */
45  	@XmlElement(name = "Title")
46  	private String title;
47  	/**
48  	 * 视频描述
49  	 */
50  	@JSONField(name = "description")
51  	@XmlElement(name = "Description")
52  	private String desc;
53  
54  	/**
55  	 * 企业号的视频消息不需要缩略图
56  	 *
57  	 * @param mediaId
58  	 *            视频媒体文件id,可以调用上传临时素材或者永久素材接口获取
59  	 * @param title
60  	 *            视频标题
61  	 * @param desc
62  	 *            视频描述
63  	 */
64  	public Video(String mediaId, String title, String desc) {
65  		this(mediaId, null, title, desc);
66  	}
67  
68  	/**
69  	 * 公众平台发送视频消息
70  	 *
71  	 * @param mediaId
72  	 *            视频媒体文件id,可以调用上传临时素材或者永久素材接口获取
73  	 * @param thumbMediaId
74  	 *            视频缩略图
75  	 * @param title
76  	 *            视频标题
77  	 * @param desc
78  	 *            视频描述
79  	 */
80  	@JSONCreator
81  	public Video(@JSONField(name = "mediaId") String mediaId,
82  			@JSONField(name = "thumbMediaId") String thumbMediaId,
83  			@JSONField(name = "title") String title,
84  			@JSONField(name = "desc") String desc) {
85  		this.mediaId = mediaId;
86  		this.thumbMediaId = thumbMediaId;
87  		this.title = title;
88  		this.desc = desc;
89  	}
90  
91  	public String getMediaId() {
92  		return mediaId;
93  	}
94  
95  	public String getThumbMediaId() {
96  		return thumbMediaId;
97  	}
98  
99  	public String getTitle() {
100 		return title;
101 	}
102 
103 	public String getDesc() {
104 		return desc;
105 	}
106 
107 	@Override
108 	public String toString() {
109 		return "Video [thumbMediaId=" + thumbMediaId + ", title=" + title
110 				+ ", desc=" + desc + ", mediaId=" + mediaId + "]";
111 	}
112 }