消息通知

## 一、消息通知介绍 #### 关于接收消息 为了能够让自建应用和企业微信进行双向通信,企业可以在应用的管理后台开启接收消息模式。 #### 开启接收消息 在企业的管理端后台,企业管理-开发配置页面,在回调接口里写上企业自己的api地址 ## 二、消息通知使用 假设接收消息地址设置为:http://api.6666.com/yxapi,企业微信将向该地址发送如下验证请求: #### 请求方式:POST 请求地址:http://api.6666.com/yxapi?token=ASDFQWEXZCVAQFASDFASDFSS&timestamp=13500001234 请求数据格式 : ```language { "msgType":1001, "msgStr":"json字符串" } ``` 参数说明 |参数|必须|说明| |-|-|-| |token|是|系统加密签名,企业可用此验证数据合法性md5(Key+Secret+timestamp+msgStr.hasCode())| |timestamp|是|时间戳| |msgType|是|消息类型,见下文msgType说明| |msgStr|否|消息体,会把具体对象转为json字符串进行传递,JSON.toJSONString(Object)| #### 对收到的请求处理 通过参数token对请求进行校验,确认调用者的合法性。 通过json.parse解析msgStr参数得到消息内容 在3秒内响应本次请求,响应状态码为200即可. ## 三、msgType说明 #### 1001 派单池超时通知 msgStr: |字段|类型|必须|说明| |-|-|-|-| ---- #### 1002 删除聊天记录(暂不支持) msgStr: |字段|类型|必须|说明| |-|-|-|-| |talker|String|是|好友的wxid| |deviceWxid|String|是|员工的微信id| ---- #### 1003 删除好友 (暂不支持) msgStr: |字段|类型|必须|说明| |-|-|-|-| |talker|String|是|好友的wxid| |deviceWxid|String|是|员工的微信id| ---- #### 1004 推送企业微信聊天消息 msgStr:List<消息对象> 消息对象属性如下: |字段|类型|说明| |-|-|-|-| |clientName|String|对方名称,好友昵称或群名称| |staffName|String|员工姓名| |remark|String|客户备注| |isSend|int|1标示员工发送,0标示对方发送| |isSelf|int|1表示私聊,0表示群聊| |qunTalkerName|String|群里具体的发言人姓名| |msgType|String|聊天类型:image 图片, voice 短语音, video 视频, meeting_voice_call 通话语音,file 文件,emotion 表情| |msgContent|String|聊天内容| |msgTime|Date|聊天时间| #### 1005 推送电话通话记录 msgStr:List<消息对象> 消息对象属性如下: |字段|类型|说明| |-|-|-|-| |参照员工通话记录列表|||| #### 1006 推送短信记录 msgStr:List<消息对象> 消息对象属性如下: |字段|类型|说明| |-|-|-|-| |参照员工短信记录列表|||| #### 1007 推送通话录音文件上传成功的通知 msgStr:List<消息对象> 消息对象属性如下: |字段|类型|说明| |-|-|-|-| |callRecordFilePath|String|录音文件地址(如newPhone/record/0/abc.mp3)| |callRecordAuthorFilePath|String|录音文件授权下载地址(如http://www.abc.com/newPhone/abc.mp3?token=xxx)| #### ~~1008 (暂不可用)推送好友申请~~ msgStr:List<消息对象> 消息对象属性如下: |字段|类型|说明| |-|-|-|-| |userWxId|String|员工wxid| |userAlias|String|员工微信号| |friendWxId|String|好友的wxid| |friendNickname|String|好友的昵称| |applyContent|String|申请时备注的信息| |*~~friendHeadImg~~*|String|暂不支持,好友的头像地址| |*~~friendAlias~~*|String|暂不支持,好友的微信号|