微信公众平台开发(12)--主动发送消息(客服消息)

简介: 本文目录1. 前言2. 代码3. 测试4. 发送其他类型消息5. 小结

1. 前言

上一篇我们获取到了用户信息,本篇我们实现下主动给客户发送消息,也叫客服消息。


2. 代码

代码比较简单,如下:


/**

* 客服消息

*/

@RestController

public class KefuMessageController {

@Autowired

private WxMpService wxMpService;


/**

 * 主动发送消息

 */

@RequestMapping("/sendMessage")

public boolean sendMessage(@RequestParam("openid") String openid, @RequestParam("content") String content) throws WxErrorException {

 WxMpKefuMessage message=WxMpKefuMessage.TEXT().toUser(openid).content(content).build();

 wxMpService.getKefuService().sendKefuMessage(message);

 return true;

}

}

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

通过sendMessage方法,即可给指定openid的用发送content文本消息。


3. 测试

访问http://127.0.0.1/wx-server/sendMessage?openid=oINiq6UqTiKqfXN3H6RmeKvvRnmw&content=这是一个测试消息。注意openid为之前章节获取的关注本公众号的用户openid。


此时打开对应用户关注的公众号会话信息,会发现已收到相关消息。


4. 发送其他类型消息

实际上,除了文本消息,还有其他类型的消息,此处给出格式,感兴趣的同学自己去研究就OK。


文本消息:


WxMpKefuMessage

 .TEXT()

 .toUser("OPENID")

 .content("sfsfdsdf")

 .build();


图片消息:


WxMpKefuMessage

 .IMAGE()

 .toUser("OPENID")

 .mediaId("MEDIA_ID")

 .build();


语音消息:


WxMpKefuMessage.VOICE()

 .toUser("OPENID")

 .mediaId("MEDIA_ID")

 .build();


视频消息:


WxMpKefuMessage.VIDEO()

 .toUser("OPENID")

 .title("TITLE")

 .mediaId("MEDIA_ID")

 .thumbMediaId("MEDIA_ID")

 .description("DESCRIPTION")

 .build();


音乐消息:


WxMpKefuMessage.MUSIC()

.toUser("OPENID")

.title("TITLE")

.thumbMediaId("MEDIA_ID")

.description("DESCRIPTION")

.musicUrl("MUSIC_URL")

.hqMusicUrl("HQ_MUSIC_URL")

.build();


图文消息:


WxMpKefuMessage.WxArticle article1 = new WxMpKefuMessage.WxArticle();

article1.setUrl("URL");

article1.setPicUrl("PIC_URL");

article1.setDescription("Is Really A Happy Day");

article1.setTitle("Happy Day");


WxMpKefuMessage.WxArticle article2 = new WxMpKefuMessage.WxArticle();

article2.setUrl("URL");

article2.setPicUrl("PIC_URL");

article2.setDescription("Is Really A Happy Day");

article2.setTitle("Happy Day");


WxMpKefuMessage.NEWS()

  .toUser("OPENID")

  .addArticle(article1)

  .addArticle(article2)

  .build();


5. 小结

使用比较多的是文本消息,本文给出示例,参考实现即可。

相关文章
|
2月前
|
网络协议 程序员 调度
即时通讯技术文集(第33期):IM开发综合技术合集(Part6) [共12篇]
为了更好地分类阅读 52im.net 总计1000多篇精编文章,我将在每周三推送新的一期技术文集,本次是第33 期。
35 0
|
1月前
|
开发者
微信公众平台开发基本配置
微信公众平台开发基本配置
86 0
|
1月前
|
移动开发 JavaScript
微信公众号H5开发,在微信浏览器打开H5,无法一键下载图片
微信公众号H5开发,在微信浏览器打开H5,无法一键下载图片
37 0
|
3月前
|
存储 缓存 JavaScript
自己动手做一个Server酱-cloudflare workers实现通过微信公众号发送消息
自己动手做一个Server酱-cloudflare workers实现通过微信公众号发送消息
93 0
|
3月前
|
XML Go 数据格式
【微信公众号开发】基于golang的公众号开发——接入消息自动回复接口
【微信公众号开发】基于golang的公众号开发——接入消息自动回复接口
134 0
|
3月前
|
算法 容灾 前端开发
即时通讯技术文集(第31期):IM开发综合技术合集(Part4) [共13篇]
为了更好地分类阅读 52im.net 总计1000多篇精编文章,我将在每周三推送新的一期技术文集,本次是第31 期。
26 0
|
3月前
|
SQL 移动开发 NoSQL
即时通讯技术文集(第30期):IM开发综合技术合集(Part3) [共16篇]
为了更好地分类阅读 52im.net 总计1000多篇精编文章,我将在每周三推送新的一期技术文集,本次是第30 期。
38 0
|
4月前
|
编解码 负载均衡 网络协议
即时通讯技术文集(第29期):IM开发技术合集(Part2) [共18篇]
为了更好地分类阅读 52im.net 总计1000多篇精编文章,我将在每周三推送新的一期技术文集,本次是第29 期。
40 1
|
4月前
|
编解码 运维 监控
即时通讯技术文集(第28期):IM开发技术合集(Part1) [共18篇]
为了更好地分类阅读 52im.net 总计1000多篇精编文章,我将在每周三推送新的一期技术文集,本次是第28 期。
40 0
|
4月前
|
小程序 PHP 开发者
微信公众号开发(八)生成带参数二维码,以及将二维码下载至本地
微信的二维码真是个神奇的东西。在我们开发中,应用也是很多~ 用户扫描带场景值(参数)二维码时,可能推送以下两种事件:
63 1

热门文章

最新文章