1、微信公众号中添加客服功能
2、添加客服
3、这里是微信的坑,我找了好久。微信公众号接口文档中--自定义菜单 ()
* 1、click:点击推事件用户点击click类型按钮后,微信服务器会通过消息接口推送消息类型为event的结构给开发者(参考消息接口指南),并且带上按钮中开发者填写的key值,开发者可以通过自定义的key值与用户进行交互;
这里的意思,添加 type: click, name:"立即咨询",key:"kf" 三个参数的button。
{
"type":"click",
"name":"今日歌曲",
"key":"V1001_TODAY_MUSIC"
},
这个button 会跟关注和取消关注一样去发送给后段请求,就是配置的地址
/** * 处理消息请求(包括关注和取消关注) 包好所有微信发给服务器的通知 * * @param msg * @return */ @RequestMapping(value = "validate", method = RequestMethod.POST, produces = {MediaType.TEXT_XML_VALUE}) @ResponseBody public Object handleMesg(@RequestBody RecieveMsg msg) throws Exception { Object out = weiXinService.handleMessage(msg); System.out.println(String.valueOf(msg)); return out; }
public Object handleMessage(RecieveMsg msg) { if(Objects.equals(msg.getEvent(),"CLICK") &&Objects.equals(msg.getEventKey(),"kf")){ String kf = kfseesion(msg.getFromUserName()); PushMsg out = new PushMsg(); out.setFromUserName(msg.getToUserName()); out.setToUserName(msg.getFromUserName()); out.setMsgType("text"); out.setCreateTime(System.currentTimeMillis()); out.setContent(kf); return out; }