微信开发之消息接收--视频消息(八)
时间:2016-05-15 21:40:03
收藏:0
阅读:433
一、消息格式
<xml> <ToUserName><![CDATA[toUser]]></ToUserName> <FromUserName><![CDATA[fromUser]]></FromUserName> <CreateTime>1357290913</CreateTime> <MsgType><![CDATA[video]]></MsgType> <MediaId><![CDATA[media_id]]></MediaId> <ThumbMediaId><![CDATA[thumb_media_id]]></ThumbMediaId> <MsgId>1234567890123456</MsgId> </xml>
| 参数 | 描述 |
|---|---|
| ToUserName | 开发者微信号 |
| FromUserName | 发送方帐号(一个OpenID) |
| CreateTime | 消息创建时间 (整型) |
| MsgType | 视频为video |
| MediaId | 视频消息媒体id,可以调用多媒体文件下载接口拉取数据。 |
| ThumbMediaId | 视频消息缩略图的媒体id,可以调用多媒体文件下载接口拉取数据。 |
| MsgId | 消息id,64位整型 |
二、编写视频消息实体类,VideoMessage.java 代码如下:
package com.weixin.message;
public class VideoMessage extends BaseMessage {
public long MediaId ;
public long ThumbMediaId ;
public long MsgId ;
public long getMediaId() {
return MediaId;
}
public void setMediaId(long mediaId) {
MediaId = mediaId;
}
public long getThumbMediaId() {
return ThumbMediaId;
}
public void setThumbMediaId(long thumbMediaId) {
ThumbMediaId = thumbMediaId;
}
public long getMsgId() {
return MsgId;
}
public void setMsgId(long msgId) {
MsgId = msgId;
}
}
三、向微信服务器发送一段视频,服务器返回消息:"这是视频消息"
在WeixinService.java中添加 视频消息的判断 ,代码如下:
//video消息
if(messageType.equals(MessageUtil.REQ_MESSAGE_TYPE_VIDEO)){
// 打印接收所有参数
System.out.println("ToUserName:" + message.get("ToUserName"));
System.out.println("FromUserName:" + message.get("FromUserName"));
System.out.println("CreateTime:" + message.get("CreateTime"));
System.out.println("MsgType:" + message.get("MsgType"));
System.out.println("PicUrl:" + message.get("PicUrl"));
System.out.println("MediaId:" + message.get("MediaId"));
System.out.println("MsgId:" + message.get("MsgId"));
TextMessage textMessage = new TextMessage();
textMessage.setToUserName(message.get("FromUserName"));
textMessage.setFromUserName(message.get("ToUserName"));
textMessage.setCreateTime(new Date().getTime());
textMessage.setContent("这是视频消息");
textMessage.setMsgType("text"); //文本消息
xml = MessageUtil.textMessageToXml(textMessage);
System.out.println("xml:"+xml);
}
公众号接收到的参数和回复的xml如下:
接收到的参数信息: ToUserName:gh_204936aea56d FromUserName:ojpX_jig-gyi3_Q9fHXQ4rdHniQs CreateTime:1463301378 MsgType:video PicUrl:null MediaId:DBVFRIj29LB2hxuYpc0R6VLyxwgyCHZPbRj_IIs6YaGhutyXUKtFSDcSCPeoqUYr MsgId:1234567890abcdef 回复的xml信息 <xml> <ToUserName><![CDATA[ojpX_jig-gyi3_Q9fHXQ4rdHniQs]]></ToUserName> <FromUserName><![CDATA[gh_204936aea56d]]></FromUserName> <CreateTime>1463301378145</CreateTime> <MsgType><![CDATA[text]]></MsgType> <Content><![CDATA[这是视频消息]]></Content> <MsgId>0</MsgId> </xml>
三、测试截图如下:
四、注意:
微信视频分有两种,一种为视频、一种为小视频,MsgType 类型是不一样的。
视频类新为 video 小视频类型为 shortvideo 望各位多加注意。
另外,感谢各位对我的关注,相信各位在微信的入门开发中已经学到了一些技巧和方法,为了方便各位后续的学习,我会在下次博文中推出微信的开发工具:weixin-java-tools,欢迎各位和我一起来用这个工具来构建我们的微信项目,另外我还会使用maven来构建项目,如不了解maven如何创建项目,请查看相关博文:http://www.cnblogs.com/codejackanapes/p/5461940.html 谢谢各位~~欢迎关注和订阅。
评论(0)