Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Java微信公众平台开发(四)--回复消息的分类及实体的创建

Java微信公众平台开发(四)--回复消息的分类及实体的创建

作者头像
用户2417870
发布于 2019-09-18 03:36:05
发布于 2019-09-18 03:36:05
62400
代码可运行
举报
文章被收录于专栏:g歌德ag歌德a
运行总次数:0
代码可运行

前面有说道对接收到微信服务器消息后对消息的分类,当时主要分为普通消息和事件消息,这里我们要讲述的是我们在给用户回复的消息类型,在这里也可以大致分为两类:一种为不需要上传资源到微信服务器的这里成为【普通消息回复】;还有一种需要上传资源到微信服务器的这里称为【多媒体消息回复】!

  • 普通消息回复:回复文本消息/回复图文消息
  • 多媒体消息回复:回复图片消息/回复语音消息/回复视频消息/回复音乐消息

(一)回复消息基类的实现

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 1 package com.gede.wechat.response;
 2 /**
 3 * @author gede
 4 * @version date:2019年5月23日 下午9:42:43
 5 * @description :
 6 */
 7 public class BaseMessage {  
 8     // 接收方帐号(收到的OpenID)   
 9     private String ToUserName;  
10     // 开发者微信号   
11     private String FromUserName;  
12     // 消息创建时间 (整型)   
13     private long CreateTime;  
14     // 消息类型(text/music/news)   
15     private String MsgType;  
16       
17    
18     public String getToUserName() {  
19         return ToUserName;  
20     }  
21    
22     public void setToUserName(String toUserName) {  
23         ToUserName = toUserName;  
24     }  
25    
26     public String getFromUserName() {  
27         return FromUserName;  
28     }  
29    
30     public void setFromUserName(String fromUserName) {  
31         FromUserName = fromUserName;  
32     }  
33    
34     public long getCreateTime() {  
35         return CreateTime;  
36     }  
37    
38     public void setCreateTime(long createTime) {  
39         CreateTime = createTime;  
40     }  
41    
42     public String getMsgType() {  
43         return MsgType;  
44     }  
45    
46     public void setMsgType(String msgType) {  
47         MsgType = msgType;  
48     }  
49 }

(二)普通消息回复实体实现

①文本消息消息体

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 1 package com.gede.wechat.response;
 2 /**
 3 * @author gede
 4 * @version date:2019年5月23日 下午9:47:49
 5 * @description :
 6 */
 7 public class VoiceMessage {
 8     
 9     private Voice Voice;
10  
11     public Voice getVoice() {
12         return Voice;
13     }
14  
15     public void setVoice(Voice voice) {
16         Voice = voice;
17     }
18  
19  
20      
21  
22 }

②图文/多图文消息实现

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 1 package com.gede.wechat.response;
 2 /**
 3 * @author gede
 4 * @version date:2019年5月23日 下午9:43:36
 5 * @description :
 6 */
 7 public class Article {  
 8     // 图文消息名称   
 9     private String Title;  
10     // 图文消息描述   
11     private String Description;  
12     // 图片链接,支持JPG、PNG格式,较好的效果为大图640*320,小图80*80,
13     private String PicUrl;  
14     // 点击图文消息跳转链接   
15     private String Url;  
16    
17     public String getTitle() {  
18         return Title;  
19     }  
20    
21     public void setTitle(String title) {  
22         Title = title;  
23     }  
24    
25     public String getDescription() {  
26         return null == Description ? "" : Description;  
27     }  
28    
29     public void setDescription(String description) {  
30         Description = description;  
31     }  
32    
33     public String getPicUrl() {  
34         return null == PicUrl ? "" : PicUrl;  
35     }  
36    
37     public void setPicUrl(String picUrl) {  
38         PicUrl = picUrl;  
39     }  
40    
41     public String getUrl() {  
42         return null == Url ? "" : Url;  
43     }  
44    
45     public void setUrl(String url) {  
46         Url = url;  
47     }  
48    
49 }
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 1 package com.gede.wechat.response;
 2 
 3 import java.util.List;
 4 
 5 /**
 6 * @author gede
 7 * @version date:2019年5月23日 下午9:44:12
 8 * @description :
 9 */
10 public class NewsMessage extends BaseMessage {  
11     // 图文消息个数,限制为10条以内   
12     private int ArticleCount;  
13     // 多条图文消息信息,默认第一个item为大图   
14     private List<Article> Articles;  
15    
16     public int getArticleCount() {  
17         return ArticleCount;  
18     }  
19    
20     public void setArticleCount(int articleCount) {  
21         ArticleCount = articleCount;  
22     }  
23    
24     public List<Article> getArticles() {  
25         return Articles;  
26     }  
27    
28     public void setArticles(List<Article> articles) {  
29         Articles = articles;  
30     }  
31 }

(三)多媒体消息回复消息体实现

①回复图片消息实体

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 1 package com.gede.wechat.response;
 2 /**
 3 * @author gede
 4 * @version date:2019年5月23日 下午9:45:16
 5 * @description :
 6 */
 7 public class Image {
 8      
 9     private String MediaId;
10  
11     public String getMediaId() {
12         return MediaId;
13     }
14  
15     public void setMediaId(String mediaId) {
16         MediaId = mediaId;
17     }
18      
19 }
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 1 package com.gede.wechat.response;
 2 /**
 3 * @author gede
 4 * @version date:2019年5月23日 下午9:45:39
 5 * @description :
 6 */
 7 public class ImageMessage {
 8     
 9     private Image Image;
10  
11     public Image getImage() {
12         return Image;
13     }
14  
15     public void setImage(Image image) {
16         Image = image;
17     }
18      
19  
20 }

②回复音乐消息实体

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 1 package com.gede.wechat.response;
 2 /**
 3 * @author gede
 4 * @version date:2019年5月23日 下午9:46:08
 5 * @description :
 6 */
 7 public class Music {  
 8     // 音乐名称   
 9     private String Title;  
10     // 音乐描述   
11     private String Description;  
12     // 音乐链接   
13     private String MusicUrl;  
14     // 高质量音乐链接,WIFI环境优先使用该链接播放音乐   
15     private String HQMusicUrl;
16      
17     private String ThumbMediaId; //缩略图的媒体id
18    
19     public String getThumbMediaId() {
20         return ThumbMediaId;
21     }
22  
23     public void setThumbMediaId(String thumbMediaId) {
24         ThumbMediaId = thumbMediaId;
25     }
26  
27     public String getTitle() {  
28         return Title;  
29     }  
30    
31     public void setTitle(String title) {  
32         Title = title;  
33     }  
34    
35     public String getDescription() {  
36         return Description;  
37     }  
38    
39     public void setDescription(String description) {  
40         Description = description;  
41     }  
42    
43     public String getMusicUrl() {  
44         return MusicUrl;  
45     }  
46    
47     public void setMusicUrl(String musicUrl) {  
48         MusicUrl = musicUrl;  
49     }  
50    
51     public String getHQMusicUrl() {  
52         return HQMusicUrl;  
53     }  
54    
55     public void setHQMusicUrl(String musicUrl) {  
56         HQMusicUrl = musicUrl;  
57     }  
58    
59 }
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 1 package com.gede.wechat.response;
 2 /**
 3 * @author gede
 4 * @version date:2019年5月23日 下午9:46:28
 5 * @description :
 6 */
 7 public class MusicMessage extends BaseMessage {  
 8     // 音乐   
 9     private Music Music;  
10    
11     public Music getMusic() {  
12         return Music;  
13     }  
14    
15     public void setMusic(Music music) {  
16         Music = music;  
17     }  
18 }

③回复视频消息实体

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 1 package com.gede.wechat.response;
 2 /**
 3 * @author gede
 4 * @version date:2019年5月23日 下午9:46:50
 5 * @description :
 6 */
 7 public class Video {
 8      
 9     private String MediaId;
10     private String Title;
11     private String Description;
12  
13     public String getTitle() {
14         return Title;
15     }
16  
17     public void setTitle(String title) {
18         Title = title;
19     }
20  
21     public String getDescription() {
22         return Description;
23     }
24  
25     public void setDescription(String description) {
26         Description = description;
27     }
28  
29     public String getMediaId() {
30         return MediaId;
31     }
32  
33     public void setMediaId(String mediaId) {
34         MediaId = mediaId;
35     }
36  
37 }
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 1 package com.gede.wechat.response;
 2 /**
 3 * @author gede
 4 * @version date:2019年5月23日 下午9:47:10
 5 * @description :
 6 */
 7 public class VideoMessage {
 8     
 9     private Video Video;
10  
11     public Video getVideo() {
12         return Video;
13     }
14  
15     public void setVideo(Video video) {
16         Video = video;
17     }
18  
19  
20 }

④回复语音消息实体

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 1 package com.gede.wechat.response;
 2 /**
 3 * @author gede
 4 * @version date:2019年5月23日 下午9:47:27
 5 * @description :
 6 */
 7 public class Voice {
 8      
 9     private String MediaId;
10      
11     public String getMediaId() {
12         return MediaId;
13     }
14  
15     public void setMediaId(String mediaId) {
16         MediaId = mediaId;
17     }
18      
19 }
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 1 package com.gede.wechat.response;
 2 /**
 3 * @author gede
 4 * @version date:2019年5月23日 下午9:47:49
 5 * @description :
 6 */
 7 public class VoiceMessage {
 8     
 9     private Voice Voice;
10  
11     public Voice getVoice() {
12         return Voice;
13     }
14  
15     public void setVoice(Voice voice) {
16         Voice = voice;
17     }
18  
19  
20      
21  
22 }

那么到这里回复消息类型的划分和实体的具体实现代码就基本编写完成了,在这些新增实体加入后我们项目的项目结构大致如下:

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Java微信公众平台开发(三)--接收消息的分类及实体的创建
前面一篇有说道应用服务器和腾讯服务器是通过消息进行通讯的,并简单介绍了微信端post的消息类型,这里我们将建立消息实体以方便我们后面的使用!
用户2417870
2019/09/18
1K0
Java微信公众平台开发(三)--接收消息的分类及实体的创建
微信公众平台开发接口PHP SDK完整版
官方提供的SDK只有一个文本消息功能,我们将所有消息的消息类型及事件响应都整理了进来,并且加入日志记录,代码如下: 更新日志: 2013-01-01 版本1.0 2014-03-15 增加图片、视频、
joshua317
2018/04/10
2.7K0
微信公众平台开发(十) 消息回复总结
微信公众平台提供了三种消息回复的格式,即文本回复、音乐回复和图文回复,在这一篇文章中,我们将对这三种消息回复的格式做一下简单讲解,然后封装成函数,以供读者使用。
全栈程序员站长
2022/09/20
2.1K0
微信公众平台开发(十) 消息回复总结
PHP微信开发入门(三)
下面,写一个构造自动回复消息的xml类,在微信接收到消息的时候,进行自动消息回复,贴上我的代码 <?php class We_Xml { /** * 构造图文消息最小为1最大为20 * 可以
Pulsar-V
2018/04/18
1.6K0
Java微信公众平台开发_03_消息管理之被动回复消息
上一节,我们启用服务器配置的时候,填写了一个服务器地址(url),如下图,这个url就是回调url,是开发者用来接收微信消息和事件的接口URL 。也就是说,用户在微信公众号中发送的消息会被推送到这个回调url,而我们可以接收用户的消息,并进行回复。
shirayner
2018/08/10
5.5K0
Java微信公众平台开发_03_消息管理之被动回复消息
微信公众号开发-素材/消息管理接口
本文是 微信公众号开发者模式介绍及接入 的后续,如没看过前文的话,可能看本文会有些懵逼。本文主要介绍微信公众平台的素材、消息管理接口的开发。由于个人的订阅号是没有大多数接口的权限的,所以我们需要使用微信官方提供的测试号来进行开发。测试号的申请可参考下文:
端碗吹水
2020/09/23
2.6K0
微信公众号开发-素材/消息管理接口
微信公众号-其他消息
视频消息 接收样例 <xml> <ToUserName><![CDATA[toUser]]></ToUserName> <FromUserName><![CDATA[fromUser]]></FromUserName> <CreateTime>1357290913</CreateTime> <MsgType><![CDATA]></MsgType> <MediaId><![CDATA[media_id]]></MediaId> <ThumbMediaId><![CDATA[thumb_media_id]]>
星哥玩云
2022/09/14
7680
微信公众号-其他消息
用微信来搞世界上最好的语言——消息收发SDK的实现
基础消息的SDK将前面章节的各种接收消息类型进行了处理,另外对被动发送消息类型进行了定义。
一粒小麦
2019/07/18
1K0
用微信来搞世界上最好的语言——消息收发SDK的实现
Java微信公众平台开发(五)--文本及图文消息回复的实现
上篇我们说到回复消息可以根据是否需要上传文件到微信服务器可划分为【普通消息】和【多媒体消息】,这里我们来讲述普通消息的回复实现,在消息回复中存在一个关键字段【openid】,它是微信用户对于公众号的唯一标识,这里不做过多解释后面将给出时间专门来讲解微信生态中的关键字!
用户2417870
2019/09/18
8670
Java企业微信开发_05_消息推送之被动回复消息
微信加解密包 下载地址:http://qydev.weixin.qq.com/java.zip      ,此包中封装好了AES加解密方法,直接调用方法即可。
shirayner
2018/08/10
4.2K0
微信公众平台开发入门教程[2020版]
在这篇微信公众平台开发教程中,我们假定你已经有了PHP语言程序、MySQL数据库、计算机网络通讯、及HTTP/XML/CSS/JS等基础。
全栈程序员站长
2022/09/06
4.6K0
手把手教你如何微信公众号开发「建议收藏」
最近的话,发现微信开发其实也有很多挺有意思的地方,比如最近很火的一款游戏“跳一跳”,也让我如此着迷。。但是,今天我所要讲的并不是对于小程序的开发,而是要说一下,关于微信开发的另外一个内容,那就是微信公众号。。
全栈程序员站长
2022/09/25
3.6K0
手把手教你如何微信公众号开发「建议收藏」
微信公众号开发消息推送以及图文推送
(adsbygoogle =window.adsbygoogle ||[]).push({});
猿码优创
2019/07/28
2.1K0
C#开发微信公众平台-就这么简单(附Demo)
  最近公司在做微信开发,其实就是接口开发,网上找了很多资料,当然园友也写了很多教程,但都是理论说了一大堆,实用指导或代码很少。如果你自己仔细研究下,其实就那么点东西,C#实现起来也很简单,原本不想写这篇文章的,但是本人当时摸索走了很多弯路,这边总结下,希望初次接触微信公众平台的朋友别像当时的我一样。
庞小明
2018/09/19
3.1K0
C#开发微信公众平台-就这么简单(附Demo)
微信公众平台开发教程(二) 基本原理及消息接口
微信服务器就相当于一个转发服务器,终端(手机、Pad等)发起请求至微信服务器,微信服务器,然后将请求转发给自定义服务(这就里就是我们的具体实现)。
Java架构师必看
2021/05/19
1K0
Java微信公众平台开发(八)--多媒体消息回复之音乐
我们上一篇写了关注出发图片的回复。想着在发送一次音乐,最后基于回复消息分类情况下,实现一个简单的只能话回复。先附一张大致效果图。
用户2417870
2019/09/18
7000
Java微信公众平台开发(七)--多媒体消息回复之图片回复
之前我们在做消息回复的时候我们对回复的消息简单做了分类,前面也有讲述如何回复【普通消息类型消息】,这里将讲述多媒体消息的回复方法,【多媒体消息】包含回复图片消息/回复语音消息/回复视频消息/回复音乐消息,这里以图片消息的回复为例进行讲解!
用户2417870
2019/09/18
1K0
Java微信公众平台开发(七)--多媒体消息回复之图片回复
公众号开发:获取用户消息和回复消息
最近在看微信公众号的开发文档,觉得很有意思,可以自定义开发一些功能,比如有人关注了公众号之后,你可以做出稍微复杂点的回复(简单的回复在公众号后台配置就好啦);比如关注者发送了「学习」消息,你可以给他推送一些文章,发送「天气」的消息,你可以回复当前的天气状况;还可以进行素材的管理,用户的管理等等。
Java技术编程
2020/06/10
5.9K0
公众号开发:获取用户消息和回复消息
微信开发--微信公众号 代码示例
wechart.php <?php include_once "network.php"; function getSHA1($token, $timestamp, $nonce) { $
生南星
2019/07/22
12.7K0
微信公众平台开发(一)——概述&微信消息处理
微信公众平台是运营者通过公众号为微信用户提供资讯和服务的平台,而公众平台开放接口则是提供服务的基础,开发者在公众平台网站中创建公众号、获取接口权限后,可以通过阅读本接口文档来帮助开发。可以理解为微信公众平台开发就是开发者借助微信公众号,将自己的网站或者应用接入微信平台的服务。
不愿意做鱼的小鲸鱼
2023/03/25
7.3K0
微信公众平台开发(一)——概述&微信消息处理
推荐阅读
相关推荐
Java微信公众平台开发(三)--接收消息的分类及实体的创建
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档