微信小程序API接收消息和事件,页面中使用可以显示进入客服会话按钮
本文摘要
接收消息和事件 在页面中使用可以显示进入客服会话按钮。 当用户在客服会话发送消息(或进行某些特定的用户操作引发的事件推送时),微信服务器会将消息(或事件)的数据包(JSON或者XML格式)POST请求开发者填写的URL。开发者收
接收消息和事件
在页面中使用可以显示进入客服会话按钮。
当用户在客服会话发送消息(或进行某些特定的用户操作引发的事件推送时),微信服务器会将消息(或事件)的数据包(JSON或者XML格式)POST请求开发者填写的URL。开发者收到请求后可以使用发送客服消息接口进行异步回复。
微信服务器在将用户的消息发给小程序的开发者服务器地址(开发设置处配置)后,微信服务器在五秒内收不到响应会断掉连接,并且重新发起请求,总共重试三次,如果在调试中,发现用户无法收到响应的消息,可以检查是否消息处理超时。关于重试的消息排重,有msgid的消息推荐使用msgid排重。事件类型消息推荐使用FromUserName + CreateTime 排重。
服务器收到请求必须做出下述回复,这样微信服务器才不会对此作任何处理,并且不会发起重试,否则,将出现严重的错误提示。详见下面说明:
1、直接回复success(推荐方式)
2、直接回复空串(指字节长度为0的空字符串,而不是结构体中content字段的内容为空)
一旦遇到以下情况,微信都会在小程序会话中,向用户下发系统提示“该小程序客服暂时无法提供服务,请稍后再试”:
1、开发者在5秒内未回复任何内容
2、开发者回复了异常数据
如果开发者希望增强安全性,可以在开发者中心处开启消息加密,这样,用户发给小程序的消息以及小程序被动回复用户消息都会继续加密,详见消息加解密说明。
各消息类型的推送JSON、XML数据包结构如下。
文本消息
用户在客服会话中发送文本消息时将产生如下数据包:
XML 格式
xml>
ToUserName>ToUserName>
FromUserName>FromUserName>
CreateTime>1482048670CreateTime>
MsgType>MsgType>
Content>Content>
MsgId>1234567890123456MsgId>
xml>
JSON 格式
{
"ToUserName": "toUser",
"FromUserName": "fromUser",
"CreateTime": 1482048670,
"MsgType": "text",
"Content": "tShopfas is a test",
"MsgId": 1234567890123456
}
参数说明
| 参数 | 说明 |
|---|---|
| ToUserName | 小程序的原始ID |
| FromUserName | 发送者的openid |
| CreateTime | 消息创建时间(整型) |
| MsgType | text |
| Content | 文本消息内容 |
| MsgId | 消息id,64位整型 |
图片消息
用户在客服会话中发送图片消息时将产生如下数据包:
XML 格式
xml>
ToUserName>ToUserName>
FromUserName>FromUserName>
CreateTime>1482048670CreateTime>
MsgType>MsgType>
PicUrl>PicUrl>
MediaId>MediaId>
MsgId>1234567890123456MsgId>
xml>
JSON 格式
{
"ToUserName": "toUser",
"FromUserName": "fromUser",
"CreateTime": 1482048670,
"MsgType": "image",
"PicUrl": "tShopfas is a url",
"MediaId": "media_id",
"MsgId": 1234567890123456
}
参数说明
| 参数 | 说明 |
|---|---|
| ToUserName | 小程序的原始ID |
| FromUserName | 发送者的openid |
| CreateTime | 消息创建时间(整型) |
| MsgType | image |
| PicUrl | 图片链接(由系统生成) |
| MediaId | 图片消息媒体id,可以调用获取临时素材接口拉取数据。 |
| MsgId | 消息id,64位整型 |
进入会话事件
用户在小程序“客服会话按钮”进入客服会话时将产生如下数据包:
XML 格式
xml>
ToUserName>ToUserName>
FromUserName>FromUserName>
CreateTime>1482048670CreateTime>
MsgType>MsgType>
Event>Event>
SessionFrom>SessionFrom>
xml>
JSON 格式
{
"ToUserName": "toUser",
"FromUserName": "fromUser",
"CreateTime": 1482048670,
"MsgType": "event",
"Event": "user_enter_tempsession",
"SessionFrom": "sessionFrom"
}
参数说明
| 参数 | 说明 |
|---|---|
| ToUserName | 小程序的原始ID |
| FromUserName | 发送者的openid |
| CreateTime | 事件创建时间(整型) |
| MsgType | event |
| Event | 事件类型,user_enter_tempsession |
| SessionFrom | 开发者在客服会话按钮设置的sessionFrom参数 |
更多微信小程序开发教程,可以关注Shopfa小程序。
第二部分:如何开通一个小商店
相关文章
****更多行业产品开发方案,请关注 加速度JSUDO***
<以上资讯仅供参考,如果您需解决具体问题,建议您关注作者;如果有软件产品开发需求,可在线咨询加速度产品经理获取方案和报价>
加速度JSUDO是一家企业级数字化解决方案提供商,专注于软件开发、网络营销、数字化转型咨询及云计算服务。核心业务包括定制化ERP/CRM系统、快速应用开发、大数据分析及物联网(IoT)解决方案,助力企业提升效率与智能化水平。服务覆盖制造业、零售、物流等多行业,致力于通过技术创新推动客户数字化转型。










