Documentation ¶
Overview ¶
被动接收的基本消息(事件)的数据结构定义, 更多的消息(事件)定义在对应的业务模块内.
Index ¶
- Constants
- type AddExternalContactEvent
- type AddHalfExternalContactEvent
- type BatchJobResultEvent
- type ClickEvent
- type CreatePartyEvent
- type DelExternalContactEvent
- type DelExternalContactFollowUserEvent
- type DeletePartyEvent
- type EditExternalContactEvent
- type EnterAgentEvent
- type GetChangeExternalChatEvent
- type Image
- type Link
- type Location
- type LocationEvent
- type LocationSelectEvent
- type OpenApprovalChangeEvent
- type PicPhotoOrAlbumEvent
- type PicSysPhotoEvent
- type PicWeixinEvent
- type ScanCodePushEvent
- type SubscribeEvent
- type TaskCardClickEvent
- type Text
- type UnsubscribeEvent
- type UpdatePartyEvent
- type UpdateTagEvent
- type Video
- type ViewEvent
- type Voice
Constants ¶
View Source
const ( // 普通事件类型 EventTypeSubscribe message.EventType = "subscribe" // 关注事件, 包括点击关注和扫描二维码(公众号二维码和公众号带参数二维码)关注 EventTypeUnsubscribe message.EventType = "unsubscribe" // 取消关注事件 EventTypeEnterAgent message.EventType = "enter_agent" // 本事件在成员进入企业微信的应用时触发 EventTypeLocation message.EventType = "LOCATION" // 上报地理位置事件 EventTypeBatchJobResult message.EventType = "batch_job_result" // 本事件是成员在使用异步任务接口时,用于接收任务执行完毕的结果通知。 EventTypeChangeContact message.EventType = "change_contact" // 新增/更新/删除/部门事件;标签成员变更事件 EventTypeClick message.EventType = "click" // 点击菜单拉取消息的事件推送 EventTypeView message.EventType = "view" // 点击菜单跳转链接的事件推送 EventTypeScanCodePush message.EventType = "scancode_push" // 扫码推事件的事件推送 EventTypeScanCodeWaitMsg message.EventType = "scancode_waitmsg" // 扫码推事件且弹出“消息接收中”提示框的事件推送 EventTypePicSysPhoto message.EventType = "pic_sysphoto" // 弹出系统拍照发图的事件推送 EventTypePicPhotoOrAlbum message.EventType = "pic_photo_or_album" // 弹出拍照或者相册发图的事件推送 EventTypePicWeixin message.EventType = "pic_weixin" // 弹出微信相册发图器的事件推送 EventTypeLocationSelect message.EventType = "location_select" // 弹出地理位置选择器的事件推送 EventTypeOpenApprovalChange message.EventType = "open_approval_change" // 审批状态通知事件 EventTypeTaskCardClick message.EventType = "taskcard_click" // 任务卡片事件推送 EventTypeChangeExternalContact message.EventType = "change_external_contact" // 企业客户事件 EventTypeChangeExternalChat message.EventType = "change_external_chat" // 客户群变更事件 )
View Source
const ( MsgTypeEvent message.MsgType = "event" // 事件消息 // 普通消息类型 MsgTypeText message.MsgType = "text" // 文本消息 MsgTypeImage message.MsgType = "image" // 图片消息 MsgTypeVoice message.MsgType = "voice" // 语音消息 MsgTypeVideo message.MsgType = "video" // 视频消息 MsgTypeLocation message.MsgType = "location" // 地理位置消息 MsgTypeLink message.MsgType = "link" // 链接消息 )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AddExternalContactEvent ¶
type AddExternalContactEvent struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader EventType message.EventType `xml:"Event" json:"Event"` // change_external_contact ChangeType message.CDATA `xml:"ChangeType" json:"ChangeType"` // add_external_contact UserID message.CDATA `xml:"UserID" json:"UserID"` // 企业服务人员的UserID ExternalUserID message.CDATA `xml:"ExternalUserID" json:"ExternalUserID"` // 外部联系人的userid,注意不是企业成员的帐号 State message.CDATA `xml:"State" json:"State"` // 添加此用户的「联系我」方式配置的state参数,可用于识别添加此用户的渠道 WelcomeCode message.CDATA `xml:"WelcomeCode" json:"WelcomeCode"` // 欢迎语code }
func GetAddExternalContactEvent ¶
func GetAddExternalContactEvent(msg *message.MixedMsg) *AddExternalContactEvent
type AddHalfExternalContactEvent ¶
type AddHalfExternalContactEvent struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader EventType message.EventType `xml:"Event" json:"Event"` // change_external_contact ChangeType message.CDATA `xml:"ChangeType" json:"ChangeType"` // add_half_external_contact UserID message.CDATA `xml:"UserID" json:"UserID"` // 企业服务人员的UserID ExternalUserID message.CDATA `xml:"ExternalUserID" json:"ExternalUserID"` // 外部联系人的userid,注意不是企业成员的帐号 State message.CDATA `xml:"State" json:"State"` // 添加此用户的「联系我」方式配置的state参数,可用于识别添加此用户的渠道 WelcomeCode message.CDATA `xml:"WelcomeCode" json:"WelcomeCode"` // 欢迎语code }
func GetAddHalfExternalContactEvent ¶
func GetAddHalfExternalContactEvent(msg *message.MixedMsg) *AddHalfExternalContactEvent
type BatchJobResultEvent ¶
type BatchJobResultEvent struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader EventType message.EventType `xml:"Event" json:"Event"` // batch_job_result JobId message.CDATA `xml:"JobId" json:"JobId"` // 异步任务id,最大长度为64字符 JobType message.CDATA `xml:"JobType" json:"JobType"` // 操作类型,字符串,目前分别有:sync_user(增量更新成员)、 replace_user(全量覆盖成员)、invite_user(邀请成员关注)、replace_party(全量覆盖部门) ErrCode int `xml:"ErrCode,omitempty" json:"ErrCode,omitempty"` // 返回码 ErrMsg message.CDATA `xml:"ErrMsg,omitempty" json:"ErrMsg,omitempty"` // 对返回码的文本描述内容 }
异步任务完成事件推送
func GetBatchJobResultEvent ¶
func GetBatchJobResultEvent(msg *message.MixedMsg) *BatchJobResultEvent
type ClickEvent ¶
type ClickEvent struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader EventType message.EventType `xml:"Event" json:"Event"` // click EventKey message.CDATA `xml:"EventKey" json:"EventKey"` // 事件KEY值,与自定义菜单接口中KEY值对应 }
点击菜单拉取消息的事件推送
func GetClickEvent ¶
func GetClickEvent(msg *message.MixedMsg) *ClickEvent
type CreatePartyEvent ¶
type CreatePartyEvent struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader EventType message.EventType `xml:"Event" json:"Event"` // change_contact ChangeType message.CDATA `xml:"ChangeType" json:"ChangeType"` // create_party Id uint64 `xml:"Id" json:"Id"` // 部门Id Name message.CDATA `xml:"Name" json:"Name"` // 部门名称 ParentId message.CDATA `xml:"ParentId" json:"ParentId"` // 父部门id Order int `xml:"Order" json:"Order"` // 部门排序 }
新增部门事件
func GetCreatePartyEvent ¶
func GetCreatePartyEvent(msg *message.MixedMsg) *CreatePartyEvent
type DelExternalContactEvent ¶
type DelExternalContactEvent struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader EventType message.EventType `xml:"Event" json:"Event"` // change_external_contact ChangeType message.CDATA `xml:"ChangeType" json:"ChangeType"` // del_external_contact UserID message.CDATA `xml:"UserID" json:"UserID"` // 企业服务人员的UserID ExternalUserID message.CDATA `xml:"ExternalUserID" json:"ExternalUserID"` // 外部联系人的userid,注意不是企业成员的帐号 }
func GetDelExternalContactEvent ¶
func GetDelExternalContactEvent(msg *message.MixedMsg) *DelExternalContactEvent
type DelExternalContactFollowUserEvent ¶
type DelExternalContactFollowUserEvent struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader EventType message.EventType `xml:"Event" json:"Event"` // change_external_contact ChangeType message.CDATA `xml:"ChangeType" json:"ChangeType"` // del_follow_user UserID message.CDATA `xml:"UserID" json:"UserID"` // 企业服务人员的UserID ExternalUserID message.CDATA `xml:"ExternalUserID" json:"ExternalUserID"` // 外部联系人的userid,注意不是企业成员的帐号 }
func GetDelExternalContactFollowUserEvent ¶
func GetDelExternalContactFollowUserEvent(msg *message.MixedMsg) *DelExternalContactFollowUserEvent
type DeletePartyEvent ¶
type DeletePartyEvent struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader EventType message.EventType `xml:"Event" json:"Event"` // change_contact ChangeType message.CDATA `xml:"ChangeType" json:"ChangeType"` // update_party Id uint64 `xml:"Id" json:"Id"` // 部门Id }
删除部门事件
func GetDeletePartyEvent ¶
func GetDeletePartyEvent(msg *message.MixedMsg) *DeletePartyEvent
type EditExternalContactEvent ¶
type EditExternalContactEvent struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader EventType message.EventType `xml:"Event" json:"Event"` // change_external_contact ChangeType message.CDATA `xml:"ChangeType" json:"ChangeType"` // edit_external_contact UserID message.CDATA `xml:"UserID" json:"UserID"` // 企业服务人员的UserID ExternalUserID message.CDATA `xml:"ExternalUserID" json:"ExternalUserID"` // 外部联系人的userid,注意不是企业成员的帐号 State message.CDATA `xml:"State" json:"State"` // 添加此用户的「联系我」方式配置的state参数,可用于识别添加此用户的渠道 }
func GetEditExternalContactEvent ¶
func GetEditExternalContactEvent(msg *message.MixedMsg) *EditExternalContactEvent
type EnterAgentEvent ¶
type EnterAgentEvent struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader EventType message.EventType `xml:"Event" json:"Event"` // enter_agent EventKey message.CDATA `xml:"EventKey" json:"EventKey"` // 事件KEY值, 空值 }
进入应用
func GetEnterAgentEvent ¶
func GetEnterAgentEvent(msg *message.MixedMsg) *EnterAgentEvent
type GetChangeExternalChatEvent ¶
type GetChangeExternalChatEvent struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader EventType message.EventType `xml:"Event" json:"Event"` // change_external_chat ChatId message.CDATA `xml:"ChatId" json:"ChatId"` // 群ID }
func GetGetChangeExternalChatEvent ¶
func GetGetChangeExternalChatEvent(msg *message.MixedMsg) *GetChangeExternalChatEvent
type Image ¶
type Image struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader MsgId int64 `xml:"MsgId" json:"MsgId"` // 消息id, 64位整型 MediaId message.CDATA `xml:"MediaId" json:"MediaId"` // 图片消息媒体id, 可以调用多媒体文件下载接口拉取数据. PicURL message.CDATA `xml:"PicUrl" json:"PicUrl"` // 图片链接 }
图片消息
type Link ¶
type Link struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader MsgId int64 `xml:"MsgId" json:"MsgId"` // 消息id, 64位整型 Title message.CDATA `xml:"Title" json:"Title"` // 消息标题 Description message.CDATA `xml:"Description" json:"Description"` // 消息描述 URL message.CDATA `xml:"Url" json:"Url"` // 消息链接 PicURL message.CDATA `xml:"PicUrl" json:"PicUrl"` // 图片链接 }
链接消息
type Location ¶
type Location struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader MsgId int64 `xml:"MsgId" json:"MsgId"` // 消息id, 64位整型 LocationX float64 `xml:"Location_X" json:"Location_X"` // 地理位置纬度 LocationY float64 `xml:"Location_Y" json:"Location_Y"` // 地理位置经度 Scale int `xml:"Scale" json:"Scale"` // 地图缩放大小 Label message.CDATA `xml:"Label" json:"Label"` // 地理位置信息 }
地理位置消息
func GetLocation ¶
type LocationEvent ¶
type LocationEvent struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader EventType message.EventType `xml:"Event" json:"Event"` // LOCATION Latitude float64 `xml:"Latitude" json:"Latitude"` // 地理位置纬度 Longitude float64 `xml:"Longitude" json:"Longitude"` // 地理位置经度 Precision float64 `xml:"Precision" json:"Precision"` // 地理位置精度(整数? 但是微信推送过来是浮点数形式) AppType message.CDATA `xml:"AppType,omitempty" json:"AppType,omitempty"` //app类型,在企业微信固定返回wxwork,在微信不返回该字段 }
上报地理位置事件
func GetLocationEvent ¶
func GetLocationEvent(msg *message.MixedMsg) *LocationEvent
type LocationSelectEvent ¶
type LocationSelectEvent struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader EventType message.EventType `xml:"Event" json:"Event"` // location_select EventKey message.CDATA `xml:"EventKey" json:"EventKey"` // 事件KEY值,与自定义菜单接口中KEY值对应 SendLocationInfo message.SendLocationInfo `xml:"SendLocationInfo" json:"SendLocationInfo"` // 发送的位置信息 Latitude float64 `xml:"Latitude" json:"Latitude"` // 地理位置纬度 Longitude float64 `xml:"Longitude" json:"Longitude"` // 地理位置经度 Precision float64 `xml:"Precision" json:"Precision"` // 地理位置精度(整数? 但是微信推送过来是浮点数形式) AppType message.CDATA `xml:"AppType,omitempty" json:"AppType,omitempty"` //app类型,在企业微信固定返回wxwork,在微信不返回该字段 }
弹出地理位置选择器的事件推送
func GetLocationSelectEvent ¶
func GetLocationSelectEvent(msg *message.MixedMsg) *LocationSelectEvent
type OpenApprovalChangeEvent ¶
type OpenApprovalChangeEvent struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader EventType message.EventType `xml:"Event" json:"Event"` // open_approval_change ApprovalInfo message.ApprovalInfo `xml:"ApprovalInfo" json:"ApprovalInfo"` // 审批信息 }
审批状态通知事件
func GetOpenApprovalChangeEvent ¶
func GetOpenApprovalChangeEvent(msg *message.MixedMsg) *OpenApprovalChangeEvent
type PicPhotoOrAlbumEvent ¶
type PicPhotoOrAlbumEvent struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader EventType message.EventType `xml:"Event" json:"Event"` // pic_photo_or_album EventKey message.CDATA `xml:"EventKey" json:"EventKey"` // 事件KEY值,与自定义菜单接口中KEY值对应 SendPicsInfo message.SendPicsInfo `xml:"SendPicsInfo" json:"SendPicsInfo"` // 扫描信息 }
弹出拍照或者相册发图的事件推送
func GetPicPhotoOrAlbumEvent ¶
func GetPicPhotoOrAlbumEvent(msg *message.MixedMsg) *PicPhotoOrAlbumEvent
type PicSysPhotoEvent ¶
type PicSysPhotoEvent struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader EventType message.EventType `xml:"Event" json:"Event"` // pic_sysphoto EventKey message.CDATA `xml:"EventKey" json:"EventKey"` // 事件KEY值,与自定义菜单接口中KEY值对应 SendPicsInfo message.SendPicsInfo `xml:"SendPicsInfo" json:"SendPicsInfo"` // 扫描信息 }
弹出系统拍照发图的事件推送
func GetPicSysPhotoEvent ¶
func GetPicSysPhotoEvent(msg *message.MixedMsg) *PicSysPhotoEvent
type PicWeixinEvent ¶
type PicWeixinEvent struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader EventType message.EventType `xml:"Event" json:"Event"` // pic_weixin EventKey message.CDATA `xml:"EventKey" json:"EventKey"` // 事件KEY值,与自定义菜单接口中KEY值对应 SendPicsInfo message.SendPicsInfo `xml:"SendPicsInfo" json:"SendPicsInfo"` // 扫描信息 }
弹出微信相册发图器的事件推送
func GetPicWeixinEvent ¶
func GetPicWeixinEvent(msg *message.MixedMsg) *PicWeixinEvent
type ScanCodePushEvent ¶
type ScanCodePushEvent struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader EventType message.EventType `xml:"Event" json:"Event"` // scancode_push EventKey message.CDATA `xml:"EventKey" json:"EventKey"` // 事件KEY值,与自定义菜单接口中KEY值对应 ScanCodeInfo message.ScanCodeInfo `xml:"ScanCodeInfo" json:"ScanCodeInfo"` // 扫描信息 }
扫码推事件的事件推送
func GetScanCodePushEvent ¶
func GetScanCodePushEvent(msg *message.MixedMsg) *ScanCodePushEvent
type SubscribeEvent ¶
type SubscribeEvent struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader EventType message.EventType `xml:"Event" json:"Event"` // subscribe EventKey message.CDATA `xml:"EventKey,omitempty" json:"EventKey,omitempty"` // 事件KEY值, 此事件该值为空 }
关注事件
func GetSubscribeEvent ¶
func GetSubscribeEvent(msg *message.MixedMsg) *SubscribeEvent
type TaskCardClickEvent ¶
type TaskCardClickEvent struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader EventType message.EventType `xml:"Event" json:"Event"` // taskcard_click EventKey message.CDATA `xml:"EventKey" json:"EventKey"` // 与发送任务卡片消息时指定的按钮btn:key值相同 TaskId message.CDATA `xml:"TaskId" json:"TaskId"` // 与发送任务卡片消息时指定的task_id相同 }
任务卡片事件推送
func GetTaskCardClickEvent ¶
func GetTaskCardClickEvent(msg *message.MixedMsg) *TaskCardClickEvent
type Text ¶
type Text struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader MsgId int64 `xml:"MsgId" json:"MsgId"` // 消息id, 64位整型 Content message.CDATA `xml:"Content" json:"Content"` // 文本消息内容 }
文本消息
type UnsubscribeEvent ¶
type UnsubscribeEvent struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader EventType message.EventType `xml:"Event" json:"Event"` // unsubscribe EventKey message.CDATA `xml:"EventKey,omitempty" json:"EventKey,omitempty"` // 事件KEY值, 空值 }
取消关注事件
func GetUnsubscribeEvent ¶
func GetUnsubscribeEvent(msg *message.MixedMsg) *UnsubscribeEvent
type UpdatePartyEvent ¶
type UpdatePartyEvent struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader EventType message.EventType `xml:"Event" json:"Event"` // change_contact ChangeType message.CDATA `xml:"ChangeType" json:"ChangeType"` // update_party Id uint64 `xml:"Id" json:"Id"` // 部门Id Name message.CDATA `xml:"Name" json:"Name"` // 部门名称 ParentId message.CDATA `xml:"ParentId" json:"ParentId"` // 父部门id }
更新部门事件
func GetUpdatePartyEvent ¶
func GetUpdatePartyEvent(msg *message.MixedMsg) *UpdatePartyEvent
type UpdateTagEvent ¶
type UpdateTagEvent struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader EventType message.EventType `xml:"Event" json:"Event"` // change_contact ChangeType message.CDATA `xml:"ChangeType" json:"ChangeType"` // update_tag TagId uint64 `xml:"TagId" json:"TagId"` // 标签Id AddUserItems message.CDATA `xml:"AddUserItems,omitempty" json:"AddUserItems,omitempty"` // 标签中新增的成员userid列表,用逗号分隔 DelUserItems message.CDATA `xml:"DelUserItems,omitempty" json:"DelUserItems,omitempty"` // 标签中删除的成员userid列表,用逗号分隔 AddPartyItems message.CDATA `xml:"AddPartyItems,omitempty" json:"AddPartyItems,omitempty"` // 标签中新增的部门id列表,用逗号分隔 DelPartyItems message.CDATA `xml:"DelPartyItems,omitempty" json:"DelPartyItems,omitempty"` // 标签中删除的部门id列表,用逗号分隔 }
标签成员变更事件
func GetUpdateTagEvent ¶
func GetUpdateTagEvent(msg *message.MixedMsg) *UpdateTagEvent
type Video ¶
type Video struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader MsgId int64 `xml:"MsgId" json:"MsgId"` // 消息id, 64位整型 MediaId message.CDATA `xml:"MediaId" json:"MediaId"` // 视频消息媒体id, 可以调用多媒体文件下载接口拉取数据. ThumbMediaId message.CDATA `xml:"ThumbMediaId" json:"ThumbMediaId"` // 视频消息缩略图的媒体id, 可以调用多媒体文件下载接口拉取数据. }
视频消息
type ViewEvent ¶
type ViewEvent struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader EventType message.EventType `xml:"Event" json:"Event"` // view EventKey message.CDATA `xml:"EventKey" json:"EventKey"` // 事件KEY值,与自定义菜单接口中KEY值对应 }
点击菜单跳转链接的事件推送
func GetViewEvent ¶
type Voice ¶
type Voice struct { XMLName struct{} `xml:"xml" json:"-"` message.MsgHeader MsgId int64 `xml:"MsgId" json:"MsgId"` // 消息id, 64位整型 MediaId message.CDATA `xml:"MediaId" json:"MediaId"` // 语音消息媒体id, 可以调用多媒体文件下载接口拉取该媒体 Format message.CDATA `xml:"Format" json:"Format"` // 语音格式, 如amr, speex等 }
语音消息
Click to show internal directories.
Click to hide internal directories.