微信公众号发送客服消息---菜单消息,卡片消息
工作中遇到公众号发送客服消息,让用户点击选择。查看了微信开发者文档,发现“菜单消息” 可以满足,但是用户接收到的样式的确很难看,所以就想可不可以改变其样式来达到一种卡片式的消息。
先不说别的,先上微信客服消息---菜单消息文档如下:
1、开发文档
{"touser": "OPENID","msgtype": "msgmenu","msgmenu": {"head_content": "您对本次服务是否满意呢? ""list": [{"id": "101","content": "满意"},{"id": "102","content": "不满意"}],"tail_content": "欢迎再次光临"}
}
按照上述例子,用户会看到这样的菜单消息:
“您对本次服务是否满意呢?
满意
不满意”
其中,“满意”和“不满意”是可点击的,当用户点击后,微信会发送一条XML消息到开发者服务器,格式如下:
<xml>
<ToUserName><![CDATA[ToUser]]></ToUserName>
<FromUserName><![CDATA[FromUser]]></FromUserName>
<CreateTime>1500000000</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[满意]]></Content>
<MsgId>1234567890123456</MsgId>
<bizmsgmenuid>101</bizmsgmenuid>
</xml>
XML参数说明:
参数 | 说明 |
---|---|
ToUserName | 开发者帐号 |
FromUserName | 接收方帐号(OpenID) |
CreateTime | 消息创建时间戳 |
MsgType | Text |
Content | 点击的菜单名 |
MsgId | 消息ID |
bizmsgmenuid | 点击的菜单ID |
收到XML推送之后,开发者可以根据提取出来的bizmsgmenuid和Content识别出微信用户点击的是哪个菜单。
2、实现方式
本人在测试号调用此接口一直报40200的错误码 invalid account type, 在文档上找不到对应的错误码;后来在网上查阅资料才知道,此接口必须在正式的公众号才能调用成功。
备注:
msgmenuid:单击了哪个按钮对应的id(测试号以文本方式发送给微信服务器的话,返回的xml中不会有这个id,只有公众号才会有)
1、根据msgmenuid来判断用户点击了哪一个按钮,然后处理相关逻辑。
2、为了防止用户多次点击,可以后台返回一个随机数,用户点击的时候可以通过这个随机数判断是否已经处理过,如果为空或者随机数不是后台生成的则拒绝处理,发送客服提示消息。
要想达到卡片式的效果,超链接必须要加上微信地址weixin://bizmsgmenu服务器才会返回菜单按钮样式的xml。至于排版,可以通过\t 空格 \n换行 自行排版。
发送文本消息的内容如下
"检测到您正在和【张三】医生进行咨询尚未结束,是否要切换至【李四】医生咨询?\n\n"+"\t\t\t\t\t"+
"<a href=\"weixin://bizmsgmenu?msgmenucontent=切换&msgmenuid=10001\">切换</a>"+
"\t\t\t\t\t\t\t\t\t\t\t\t\t"+
"<a href=\"weixin://bizmsgmenu?msgmenucontent=不切换&msgmenuid=10002\">不切换</a>\n"+
"\n快马健康!(本次消息有效时间为30分钟)"
效果图如下:
微信公众号发送客服消息---菜单消息,卡片消息相关推荐
- 微信公众号发送客服消息【文本、图片】
微信公众号发送客服消息[文本.图片] /// <summary> /// 微信用户唯一标识OpenId /// </summary> public static string ...
- php公众号客服消息图文,微信公众号发送客服消息功能怎么实现?
1.微号帮平台:免费注册试用7天 根据页面上的提示完成新用户注册操作,>>立即注册 注册成功后,使用用户名.密码登录平台,>>立即登录 3.登录成功后,进入管理中心,选择添加公 ...
- 微信公众号发送客服消息asp源码示例
微信公众号发送客服消息asp源码示例有三种,一种是发送纯文本,一种是发送图文信息,一种是发送可以换行并且带链接的效果,如下图效果: 三种效果 下面是asp推送客服消息的代码: <% functi ...
- 微信公众号发送客服消息(文本、图文)和模板消息
壹:客服消息 微信文档发送客服消息链接:https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=ACCESS_TOKEN ...
- php公众号发送客服消息
// 模拟 http 请求 function https_request($url,$data = null){// php curl 发起get或者post请求// curl 初始化$curl = ...
- java微信公众号多客服_微信公众号多客服功能怎么实现?
原标题:微信公众号多客服功能怎么实现? 微信公众号多客服功能怎么实现?为了方便更好地接待公众号的用户,很多企业想要为公众号接入多客服,以此提升公众号服务.公众号多客服功能可以通过接入米多客公众号客服软 ...
- 【微信公众号发红包转账】微信公众号上手机网页接收请求,通过公众号给用户发红包 开发流程...
有了微信支付 的开发做铺垫,相关的微信其他业务处理起来逻辑就能清晰很多. 准备好这两个架包 ------------------------------------------------------ ...
- 微信公众号 智能客服
前言 微信公众号的开发,园子里有很多资料,这里简述. 虽说是智能,现在是仿佛智障,很多是hard code逻辑,日后将逐步加入LUIS,现在一些常用的打招呼(你好,您好,hi,hey,hello,ho ...
- 怎样在微信公众号发文件?
怎样在微信公众号发文件? 我们都知道创建一个微信公众号,在公众号中发布一些文章是非常简单的,但公众号添加附件下载的功能却被限制,如今可以使用小程序"微附件"进行在公众号中添加附件. ...
- java 微信自定义菜单开发_微信公众号开发之设置自定义菜单实例代码【java版】...
本实例是为了实现在管理后台实现微信菜单的添加删除管理. 1.首先我们需要新建一个数据库表用于存放menu菜单项 可包含的字段有id.父类id.name.排序.是否显示.类型(view.click).链 ...
最新文章
- python教程实例-python 类和实例 - 刘江的python教程
- Redis安装(CentOS7/tar.gz)
- 实模式切换到保护模式,为什么要开启A20地址线(系统升级产生的兼容性问题)
- linux里hba状态_Windows和Linux系统查看HBA卡wwn号的方法 | 系统之家官网
- android 广播 关闭对话框,Android 对话框、信息提示和菜单
- Install-Package Ninject -Project SportsStore.WebUI
- 漂亮实用的loading(加载)封装
- php 生成会员卡号,PHP实现生成唯一会员卡号
- 大话量子通信丨赠书名单公示
- HttpClient在Android新API上的java.lang.NoSuchFieldError: No static field INSTANCE问题
- 高可用免费代理ip爬取实战
- 大神超短代码实现超牛特效
- (python) 1200000有多少个约数(只计算正约数)
- 爬虫|基于船讯网实现AIS数据爬虫 船讯网轨迹数据以及轨迹信息
- 用C++生成一个随机数
- 【OpenCV】中的鱼眼相机及其标定
- Mission planner加载天地图(混合卫星地图含标注)
- 【数据分析与挖掘实战】B站影视区数据分析
- 使用kail破解wifi密码
- CUDA安装失败,解决办法
热门文章
- python常见的缩进错误_python常见编译错误:IndentationError缩进错误
- kali linux怎么安装无线网卡驱动,Kali Linux 安装BCM43142网卡驱动
- KALI虚拟机挂代理教程
- PHP微信公众号开发之:获得和缓存access_token,原理及代码
- linux 空格变问号,遭遇UTF-8编码转换后,空格变成问号的问题
- 基于Windows平台的Radius服务器搭建指南
- rap格式鸿蒙,你,想要成为rap star吗?
- hazy的面试小笔记之计网(持续更新)
- Python 结巴(jieba)库之花拳绣腿
- 如何使用python sklearn 中的LeaveOneGroupOu?特例:leave one pair out的实现多重比较校正?