接收事件

来自企业号开发者接口文档
跳转至: 导航搜索

接收事件

事件是指成员在企业号上的某些操作行为,比如关注、取消关注、上报地理位置、点击菜单、进入应用等;以及当系统完成某些任务需要通知企业时。(关注事件请参考’关注与取消关注’)。事件会推送到每个应用在管理端设置的URL(以下假设该URL为http://api.3dept.com)。

  • 请求说明

Http请求方式: POST

http://api.3dept.com/?msg_signature=ASDFQWEXZCVAQFASDFASDFSS&timestamp=13500001234&nonce=123412323


成员关注/取消关注事件

成员关注、取消关注企业号的事件,会推送到每个应用在管理端设置的URL;特别的,默认企业小助手可以用于获取整个企业号的关注状况。(以下假设该URL为http://api.3dept.com)。

  • 请求说明

Http请求方式: POST

http://api.3dept.com/?msg_signature=ASDFQWEXZCVAQFASDFASDFSS&timestamp=13500001234&nonce=123412323

  • 参数说明
<xml>
   <ToUserName><![CDATA[toUser]]></ToUserName>
   <FromUserName><![CDATA[UserID]]></FromUserName>
   <CreateTime>1348831860</CreateTime>
   <MsgType><![CDATA[event]]></MsgType>
   <Event><![CDATA[subscribe]]></Event>
   <AgentID>1</AgentID>
</xml>
参数 说明
ToUserName 企业号CorpID
FromUserName 成员UserID
CreateTime 消息创建时间 (整型)
MsgType 消息类型,此时固定为:event
Event 事件类型,subscribe(订阅)、unsubscribe(取消订阅)
AgentID 企业应用的id,整型。可在应用的设置页面获取;如果id为0,则表示是整个企业号的关注/取消关注事件


上报地理位置事件

成员同意上报地理位置后,每次在进入应用会话时都会上报一次地理位置,或在进入应用会话后每5秒上报一次地理位置。企业可以在管理端修改应用的以上设置。上报地理位置时,微信会将此事件推送到企业应用在管理端设置的URL(以下假设该URL为http://api.3dept.com)。

  • 请求说明

Http请求方式: POST

http://api.3dept.com/?msg_signature=ASDFQWEXZCVAQFASDFASDFSS&timestamp=13500001234&nonce=123412323

  • 参数说明
<xml>
   <ToUserName><![CDATA[toUser]]></ToUserName>
   <FromUserName><![CDATA[FromUser]]></FromUserName>
   <CreateTime>123456789</CreateTime>
   <MsgType><![CDATA[event]]></MsgType>
   <Event><![CDATA[LOCATION]]></Event>
   <Latitude>23.104105</Latitude>
   <Longitude>113.320107</Longitude>
   <Precision>65.000000</Precision>
   <AgentID>1</AgentID>
</xml>
参数 说明
ToUserName 企业号CorpID
FromUserName 成员UserID
CreateTime 消息创建时间(整型)
MsgType 消息类型,此时固定为:event
Event 事件类型,此时固定为:LOCATION
Latitude 地理位置纬度
Longitude 地理位置经度
Precision 地理位置精度
AgentID 企业应用的id,整型。可在应用的设置页面查看


上报菜单事件

成员点击自定义菜单后,微信会把点击事件推送给开发者,请注意,点击菜单弹出子菜单,不会产生上报。另外,扫码、拍照及地理位置的菜单事件,仅支持微信iPhone5.4.1/Android5.4以上版本,旧版本微信成员点击后将没有回应,开发者也不能正常接收到事件推送。

点击菜单拉取消息的事件推送

推送XML数据包示例:

<xml>
<ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[FromUser]]></FromUserName>
<CreateTime>123456789</CreateTime>
<MsgType><![CDATA[event]]></MsgType>
<Event><![CDATA[click]]></Event>
<EventKey><![CDATA[EVENTKEY]]></EventKey>
<AgentID>1</AgentID>
</xml>

参数说明:

参数 描述
ToUserName 企业号CorpID
FromUserName 成员UserID
CreateTime 消息创建时间 (整型)
MsgType 消息类型,event
Event 事件类型,click
EventKey 事件KEY值,与自定义菜单接口中KEY值对应
AgentID 应用代理ID


点击菜单跳转链接的事件推送

推送XML数据包示例:

<xml>
<ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[FromUser]]></FromUserName>
<CreateTime>123456789</CreateTime>
<MsgType><![CDATA[event]]></MsgType>
<Event><![CDATA[view]]></Event>
<EventKey><![CDATA[www.qq.com]]></EventKey>
<AgentID>1</AgentID>
</xml>

参数说明:

参数 描述
ToUserName 企业号CorpID
FromUserName 成员UserID
CreateTime 消息创建时间 (整型)
MsgType 消息类型,event
Event 事件类型,view
EventKey 事件KEY值,设置的跳转URL
AgentID 应用代理ID


扫码推事件的事件推送

推送XML数据包示例:

<xml><ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[FromUser]]></FromUserName>
<CreateTime>1408090502</CreateTime>
<MsgType><![CDATA[event]]></MsgType>
<Event><![CDATA[scancode_push]]></Event>
<EventKey><![CDATA[6]]></EventKey>
<ScanCodeInfo><ScanType><![CDATA[qrcode]]></ScanType>
<ScanResult><![CDATA[1]]></ScanResult>
</ScanCodeInfo>
<AgentID>1</AgentID>
</xml>

参数说明:

参数 描述
ToUserName 企业号CorpID
FromUserName 成员UserID
CreateTime 消息创建时间(整型)
MsgType 消息类型,event
Event 事件类型,scancode_push
EventKey 事件KEY值,由开发者在创建菜单时设定
ScanCodeInfo 扫描信息
ScanType 扫描类型,一般是qrcode
ScanResult 扫描结果,即二维码对应的字符串信息
AgentID 应用代理ID


扫码推事件且弹出“消息接收中”提示框的事件推送

推送XML数据包示例:

<xml><ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[FromUser]]></FromUserName>
<CreateTime>1408090606</CreateTime>
<MsgType><![CDATA[event]]></MsgType>
<Event><![CDATA[scancode_waitmsg]]></Event>
<EventKey><![CDATA[6]]></EventKey>
<ScanCodeInfo><ScanType><![CDATA[qrcode]]></ScanType>
<ScanResult><![CDATA[2]]></ScanResult>
</ScanCodeInfo>
<AgentID>1</AgentID>
</xml>

参数说明:

参数 描述
ToUserName 企业号CorpID
FromUserName 成员UserID
CreateTime 消息创建时间 (整型)
MsgType 消息类型,event
Event 事件类型,scancode_waitmsg
EventKey 事件KEY值,由开发者在创建菜单时设定
ScanCodeInfo 扫描信息
ScanType 扫描类型,一般是qrcode
ScanResult 扫描结果,即二维码对应的字符串信息
AgentID 应用代理ID


弹出系统拍照发图的事件推送

推送XML数据包示例:

<xml><ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[FromUser]]></FromUserName>
<CreateTime>1408090651</CreateTime>
<MsgType><![CDATA[event]]></MsgType>
<Event><![CDATA[pic_sysphoto]]></Event>
<EventKey><![CDATA[6]]></EventKey>
<SendPicsInfo><Count>1</Count>
<PicList><item><PicMd5Sum><![CDATA[1b5f7c23b5bf75682a53e7b6d163e185]]></PicMd5Sum>
</item>
</PicList>
</SendPicsInfo>
<AgentID>1</AgentID>
</xml>

参数说明:

参数 描述
ToUserName 企业号CorpID
FromUserName 成员UserID
CreateTime 消息创建时间 (整型)
MsgType 消息类型,event
Event 事件类型,pic_sysphoto
EventKey 事件KEY值,由开发者在创建菜单时设定
SendPicsInfo 发送的图片信息
Count 发送的图片数量
PicList 图片列表
PicMd5Sum 图片的MD5值,开发者若需要,可用于验证接收到图片
AgentID 应用代理ID


弹出拍照或者相册发图的事件推送

推送XML数据包示例:

<xml><ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[FromUser]]></FromUserName>
<CreateTime>1408090816</CreateTime>
<MsgType><![CDATA[event]]></MsgType>
<Event><![CDATA[pic_photo_or_album]]></Event>
<EventKey><![CDATA[6]]></EventKey>
<SendPicsInfo><Count>1</Count>
<PicList><item><PicMd5Sum><![CDATA[5a75aaca956d97be686719218f275c6b]]></PicMd5Sum>
</item>
</PicList>
</SendPicsInfo>
<AgentID>1</AgentID>
</xml>

参数说明:

参数 描述
ToUserName 企业号CorpID
FromUserName 成员UserID
CreateTime 消息创建时间 (整型)
MsgType 消息类型,event
Event 事件类型,pic_photo_or_album
EventKey 事件KEY值,由开发者在创建菜单时设定
SendPicsInfo 发送的图片信息
Count 发送的图片数量
PicList 图片列表
PicMd5Sum 图片的MD5值,开发者若需要,可用于验证接收到图片
AgentID 应用代理ID


弹出微信相册发图器的事件推送

推送XML数据包示例:

<xml><ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[FromUser]]></FromUserName>
<CreateTime>1408090816</CreateTime>
<MsgType><![CDATA[event]]></MsgType>
<Event><![CDATA[pic_weixin]]></Event>
<EventKey><![CDATA[6]]></EventKey>
<SendPicsInfo><Count>1</Count>
<PicList><item><PicMd5Sum><![CDATA[5a75aaca956d97be686719218f275c6b]]></PicMd5Sum>
</item>
</PicList>
</SendPicsInfo>
<AgentID>1</AgentID>
</xml>

参数说明:

参数 描述
ToUserName 企业号CorpID
FromUserName 成员UserID
CreateTime 消息创建时间 (整型)
MsgType 消息类型,event
Event 事件类型,pic_weixin
EventKey 事件KEY值,由开发者在创建菜单时设定
SendPicsInfo 发送的图片信息
Count 发送的图片数量
PicList 图片列表
PicMd5Sum 图片的MD5值,开发者若需要,可用于验证接收到图片
AgentID 应用代理ID


弹出地理位置选择器的事件推送

推送XML数据包示例:

<xml><ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[FromUser]]></FromUserName>
<CreateTime>1408091189</CreateTime>
<MsgType><![CDATA[event]]></MsgType>
<Event><![CDATA[location_select]]></Event>
<EventKey><![CDATA[6]]></EventKey>
<SendLocationInfo><Location_X><![CDATA[23]]></Location_X>
<Location_Y><![CDATA[113]]></Location_Y>
<Scale><![CDATA[15]]></Scale>
<Label><![CDATA[ 广州市海珠区客村艺苑路 106号]]></Label>
<Poiname><![CDATA[]]></Poiname>
</SendLocationInfo>
<AgentID>1</AgentID>
</xml>

参数说明:

参数 描述
ToUserName 企业号CorpID
FromUserName 成员UserID
CreateTime 消息创建时间 (整型)
MsgType 消息类型,event
Event 事件类型,location_select
EventKey 事件KEY值,由开发者在创建菜单时设定
SendLocationInfo 发送的位置信息
Location_X X坐标信息
Location_Y Y坐标信息
Scale 精度,可理解为精度或者比例尺、越精细的话 scale越高
Label 地理位置的字符串信息
Poiname 朋友圈POI的名字,可能为空
AgentID 应用代理ID


成员进入应用的事件推送

本事件在成员进入企业号的应用时触发,如果企业需要接收此事件,请打开应用回调模式中的相应开关。

推送XML数据包示例:

<xml><ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[FromUser]]></FromUserName>
<CreateTime>1408091189</CreateTime>
<MsgType><![CDATA[event]]></MsgType>
<Event><![CDATA[enter_agent]]></Event>
<EventKey><![CDATA[]]></EventKey>
<AgentID>1</AgentID>
</xml>

参数说明:

参数 描述
ToUserName 企业号CorpID
FromUserName 成员UserID
CreateTime 消息创建时间 (整型)
MsgType 消息类型,event
Event 事件类型,enter_agent
EventKey 事件KEY值,此事件该值为空


异步任务完成事件推送

本事件是成员在使用异步任务接口时,用于接收任务执行完毕的结果通知。

推送XML数据包示例:

<xml><ToUserName><![CDATA[wx28dbb14e37208abe]]></ToUserName>
<FromUserName><![CDATA[FromUser]]></FromUserName>
<CreateTime>1425284517</CreateTime>
<MsgType><![CDATA[event]]></MsgType>
<Event><![CDATA[batch_job_result]]></Event>
<BatchJob><JobId><![CDATA[S0MrnndvRG5fadSlLwiBqiDDbM143UqTmKP3152FZk4]]></JobId>
<JobType><![CDATA[sync_user]]></JobType>
<ErrCode>0</ErrCode>
<ErrMsg><![CDATA[ok]]></ErrMsg>
</BatchJob>
</xml>

参数说明:

参数 描述
ToUserName 企业号CorpID
FromUserName 此事件该值固定为sys,表示该消息由系统生成。
MsgType 消息的类型,此时固定为event
CreateTime 消息创建时间 (整型)
Event 事件的类型,此时固定为batch_job_result
JobId 异步任务id,最大长度为64字符
JobType 操作类型,字符串,目前分别有:
1. sync_user(增量更新成员)
2. replace_user(全量覆盖成员)
3. invite_user(邀请成员关注)
4. replace_party(全量覆盖部门)
ErrCode 返回码
ErrMsg 对返回码的文本描述内容