1.微信开发者路由接入
通过此接口开发者可根据公众号粉丝的业务数据灵活的分配给特定的分组和使用不同的接入策略,比如:根据粉丝的会员信息地区数据将对话分配给所属地区的分组或者设定粉丝的专属客服,
接口地址
http请求方式: POST https://${apiServer}/wechat/chatRequest/${appId}?accessToken=${accessToken}&callBackUrl=https%3a%2f%2fcb.echatsoft.com%2fwechat%2fchatresult
访问限制
每个账号24小时内限制请求50000次,如需调高配额请联系您的专属客服进行调整。
参数说明
参数 | 是否必须 | 说明 |
---|---|---|
accessToken | 是 | 接口调用凭证 |
callBackUrl | 否 | 对话接入的结果回调,如果企业微信没有其他的客服产品或者自动应答产品可不支持回调, 在下次访客消息发送时通过接口响应获取当前的一洽业务状态。 因为一洽的对话注册需要根据客服的状态接待能力忙碌状态、路由的状态、以及开发者指定的接入方式进行选择性接入, 所以在没有会话状态时一洽注册会话的结果会通过回调的形式通知给开发者,避免开发者服务器和一洽服务器长时间堵塞。 |
post数据格式:Json
字段 | 类型 | 是否必须 | 长度限制 | 说明 |
---|---|---|---|---|
echatTag | string | 否 | 200 | 路由标签,可配置此值配置选择使用的路由 |
acdStaffId | int | 否 | 指派接待客服的ID(使用指定客服,scdStaffId 和 acdType都需必传) | |
acdType | int | 否 | 分配优先级,0-优先,1-指派 优先:客服在路由分配的组中,则优先分配给该名客服(在线/忙碌),不计接待能力。若客服「不在组中」或「在组中且离线(离开/隐身)」,则按照现有规则ACD分配规则 指派:只能由该客服进行服务。若客服「不在路由分配的组中」或「在组中且离线(离开/隐身)」,对话接待则进入下一个接待方式,留言/工单 则直接按全部分组分配给该名客服 |
|
wechatAppId | string | 是 | 100 | 微信公众号的appid,此公众号必须授权给一洽,并开启了 开发者路由模式 |
openId | string | 是 | 50 | 粉丝的openId |
myData | string | 否 | 255 | 企业扩展业务数据,企业传给一洽后一洽会原样传递给企业配置的业务系统 |
chatPolicy | string | 否 | 10 | 本地请求对话的策略,设定可以接入的会话类型。此值为一个2进制字符串。"111" "101" 从右往左每一位代表会话类型为: 人工对话(001)、机器对话(010)、留言(100),默认值为"111",1代表支持接入 0代表不支持接入。 比如,设置策略为"011" 如果此次请求客服离线且不支持机器人客服接入,那么会返回接入失败的状态给开发者。 |
msgContent | string | 否 | 10000 | 在请求对话接入时可传递一条微信的客服消息给一洽作为接入会话后的首条粉丝消息,此消息内容为微信客服消息的xml明文字符串。如:图片消息. |
<xml> <ToUserName><![CDATA[toUser]]></ToUserName> <FromUserName><![CDATA[fromUser]]></FromUserName> <CreateTime>1348831860</CreateTime> <MsgType><![CDATA[image]]></MsgType> <PicUrl><![CDATA[this is a url]]></PicUrl> <MediaId><![CDATA[media_id]]></MediaId> <MsgId>1234567890123456</MsgId> </xml>
返回说明
返回数据格式:json
字段 | 类型 | 是否为空 | 说明 |
---|---|---|---|
errcode | int | 否 | 接口处理错误码 |
errmsg | string | 否 | 接口处理错误信息 |
chatStatus | int | 否 | 此次请求会话的结果 1:人工对话中 3:留言中 5:机器人对话中 11:准备进入对话注册,注册结果产生时会通过开发者的回调URL通知开发者注册结果。 1 3 5 状态激活后,在会话状态结束之前会处理所有的微信消息,此时开发者不应在调用此接口请求会话, 通过一洽实时业务数据接收,接收到会话状态结束后可再次激活对话。 |
返回示例
{ "errcode":0, "errmsg":"ok", "chatStatus":1 }
回调URL使用说明
接口调用
http请求方式:POST https://cb.echatsoft.com/wechat/chatresult?timestamp=myTimestamp&nonce=myNonce&signature=81ceaac69a2f44be4f98d4adbea202d5792c62bb
参数说明
参数 | 描述 |
---|---|
signature | 一洽加密签名,signature结合了开发者填写的token参数和请求中的timestamp参数、nonce参数。详见签名验证方式文档 |
timestamp | 时间戳 |
nonce | 随机数 |
post数据
格式:json
详细说明:
字段 | 类型 | 是否为空 | 说明 |
---|---|---|---|
chatStatus | int | 否 | 此次注册对话的结果 0:未进入会话 1:人工对话中 3:留言中 5:机器人对话中; |
routeId | int | 是 | 如果注册成功会返回本次注册使用的路由ID。-3代表默认路由 |
routeName | string | 是 | 路由名称 |
chatRecordId | string | 是 | 对话id |
staffId | int | 是 | 人工对话中会有此ID,0代表进入了排队,其他表示接受对话的客服ID |
staffLogname | string | 是 | 人工对话中会有此值,客服的登录账号 手机号或者邮箱 |
staffName | string | 是 | 人工对话中会有此值,客服的登录账号 手机号或者邮箱 |
visitorId | string | 否 | 当前请求对话的访客ID。固定位 wechat+openId |
接口返回要求
在收到一洽的请求后,开发者需返回空字符串或者字符串"success"(注:没有双引号)来通知一洽已经收到了该请求,否则一洽会尝试最多3次接口调用。