接收消息
# 方案一: HTTP回调模式 (仅支持 通道4)
- 用户需提供接收微信消息的公网接口URL,并将此url在此应用回调协议中配置(PS:简单理解就是腾讯服务器会将消息发送到你们编写的接口服务)
- 用户网络需流畅,Http 请求默认最高6 秒内建立连接并发送数据。通讯时长超过 6秒,不发送回调消息。
- 回调消息返回结构是 POST String类型的JSON数据格式
- ==注意:机器人微信自己通过接口发送的消息不会有回调==,==因为回调是接收消息,发送不属于接收,但是手机微信发送的消息也会有,因为这属于消息同步(同步其他客户端的消息至本客户端,IM原理)。==
**简要描述**
- 设置APP http回调地址; 开启回调时候会自动测试连通性
- 配置成功后,打开启用开关方可以正常
- 通道4支持 push、pull 两种模式, 如果无外网服务器请选择pull模式
# 方案二: 使用pull 同步模式 (支持所有通道)
- 应用 中设置 消息协议 为 pull
- 调用API /wc/msg/sync_msg
- pull 模式支持最近半小时左右的消息
# 同步消息
**简要描述**:
- 收消息
**请求URL**
- {APIURL}/wc/msg/sync_msg
**请求方式**
- POST
**请求头Headers**
- Content-Type:application/json
- Access-Token:login接口返回
**参数**
|参数名|必选|类型|说明
|-|-|-|-|
|wcid|是|string|session
|scene|是|int| 填写 1
|synckey|是|string|填写1
**返回数据**:
|参数名|类型|说明|
|-|-|-|
|code|string|0成功,-1失败|
|msg|string|反馈信息|
|data|jsonObject|消息数组, 常用文本消息已经解析,方面用户使用|
**请求参数示例**
```
------------------------ 好友消息 ------------------------------
{
"wcid": "1385888084016500736",
"scene": 1,
"synckey": "1"
}
```
**成功返回示例**
```
{
"code":0,
"msg":"ok",
"data":[
{
"MsgId":122342342,
"FromUserName":{string:""},
"ToUserName":{string:""},
"MsgType":1,
"Content":{string:""},
"Status":1,
"CreateTime":1423423,
"ImgStatus":0,
"NewMsgId":1213,
"MsgSource":"",
"PushContent": "",
"Channel":4,
"GroupId":"2323@chatroom",
"Self":0,
"ImgBuf":"",
"WxId":"wxid_asdfasd"
}
]
}
```
**错误返回示例**
```
{
"msg": "失败",
"code": -1,
"data": null
}
```