forked from xen0n/go-workwx
/
rx_msg.md.go
214 lines (179 loc) · 7.85 KB
/
rx_msg.md.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
// Code generated by sdkcodegen; DO NOT EDIT.
package workwx
// rxMessageCommon 接收消息的公共部分
type rxMessageCommon struct {
// ToUserName 企业微信CorpID
ToUserName string `xml:"ToUserName"`
// FromUserName 成员UserID
FromUserName string `xml:"FromUserName"`
// CreateTime 消息创建时间(整型)
CreateTime int64 `xml:"CreateTime"`
// MsgType 消息类型
MsgType MessageType `xml:"MsgType"`
// MsgID 消息id,64位整型
MsgID int64 `xml:"MsgId"`
// AgentID 企业应用的id,整型。可在应用的设置页面查看
AgentID int64 `xml:"AgentID"`
// Event 事件类型 MsgType为event存在
Event EventType `xml:"Event"`
// ChangeType 变更类型 Event为change_external_contact存在
ChangeType ChangeType `xml:"ChangeType"`
}
// MessageType 消息类型
type MessageType string
// MessageTypeText 文本消息
const MessageTypeText MessageType = "text"
// MessageTypeImage 图片消息
const MessageTypeImage MessageType = "image"
// MessageTypeVoice 语音消息
const MessageTypeVoice MessageType = "voice"
// MessageTypeVideo 视频消息
const MessageTypeVideo MessageType = "video"
// MessageTypeLocation 位置消息
const MessageTypeLocation MessageType = "location"
// MessageTypeLink 链接消息
const MessageTypeLink MessageType = "link"
// MessageTypeEvent 事件消息
const MessageTypeEvent MessageType = "event"
// EventType 事件类型
type EventType string
// EventTypeChangeExternalContact 企业客户事件
const EventTypeChangeExternalContact EventType = "change_external_contact"
// EventTypeChangeExternalChat 客户群变更事件
const EventTypeChangeExternalChat EventType = "change_external_chat"
// EventTypeSysApprovalChange 审批申请状态变化回调通知
const EventTypeSysApprovalChange EventType = "sys_approval_change"
// ChangeType 变更类型
type ChangeType string
// ChangeTypeAddExternalContact 添加企业客户事件
const ChangeTypeAddExternalContact ChangeType = "add_external_contact"
// ChangeTypeEditExternalContact 编辑企业客户事件
const ChangeTypeEditExternalContact ChangeType = "edit_external_contact"
// ChangeTypeAddHalfExternalContact 外部联系人免验证添加成员事件
const ChangeTypeAddHalfExternalContact ChangeType = "add_half_external_contact"
// ChangeTypeDelExternalContact 删除企业客户事件
const ChangeTypeDelExternalContact ChangeType = "del_external_contact"
// ChangeTypeDelFollowUser 删除跟进成员事件
const ChangeTypeDelFollowUser ChangeType = "del_follow_user"
// ChangeTypeTransferFail 客户接替失败事件
const ChangeTypeTransferFail ChangeType = "transfer_fail"
// rxTextMessageSpecifics 接收的文本消息,特有字段
type rxTextMessageSpecifics struct {
// Content 文本消息内容
Content string `xml:"Content"`
}
// rxImageMessageSpecifics 接收的图片消息,特有字段
type rxImageMessageSpecifics struct {
// PicURL 图片链接
PicURL string `xml:"PicUrl"`
// MediaID 图片媒体文件id,可以调用获取媒体文件接口拉取,仅三天内有效
MediaID string `xml:"MediaId"`
}
// rxVoiceMessageSpecifics 接收的语音消息,特有字段
type rxVoiceMessageSpecifics struct {
// MediaID 语音媒体文件id,可以调用获取媒体文件接口拉取数据,仅三天内有效
MediaID string `xml:"MediaId"`
// Format 语音格式,如amr,speex等
Format string `xml:"Format"`
}
// rxVideoMessageSpecifics 接收的视频消息,特有字段
type rxVideoMessageSpecifics struct {
// MediaID 视频媒体文件id,可以调用获取媒体文件接口拉取数据,仅三天内有效
MediaID string `xml:"MediaId"`
// ThumbMediaID 视频消息缩略图的媒体id,可以调用获取媒体文件接口拉取数据,仅三天内有效
ThumbMediaID string `xml:"ThumbMediaId"`
}
// rxLocationMessageSpecifics 接收的位置消息,特有字段
type rxLocationMessageSpecifics struct {
// Lat 地理位置纬度
Lat float64 `xml:"Location_X"`
// Lon 地理位置经度
Lon float64 `xml:"Location_Y"`
// Scale 地图缩放大小
Scale int `xml:"Scale"`
// Label 地理位置信息
Label string `xml:"Label"`
// AppType app类型,在企业微信固定返回wxwork,在微信不返回该字段
AppType string `xml:"AppType"`
}
// rxLinkMessageSpecifics 接收的链接消息,特有字段
type rxLinkMessageSpecifics struct {
// Title 标题
Title string `xml:"Title"`
// Description 描述
Description string `xml:"Description"`
// URL 链接跳转的url
URL string `xml:"Url"`
// PicURL 封面缩略图的url
PicURL string `xml:"PicUrl"`
}
// rxEventAddExternalContact 接收的事件消息,添加企业客户事件
type rxEventAddExternalContact struct {
// UserID 企业服务人员的UserID
UserID string `xml:"UserID"`
// ExternalUserID 外部联系人的userid,注意不是企业成员的帐号
ExternalUserID string `xml:"ExternalUserID"`
// State 添加此用户的「联系我」方式配置的state参数,可用于识别添加此用户的渠道
State string `xml:"State"`
// WelcomeCode 欢迎语code,可用于发送欢迎语
WelcomeCode string `xml:"WelcomeCode"`
}
// rxEventEditExternalContact 接收的事件消息,编辑企业客户事件
type rxEventEditExternalContact struct {
// UserID 企业服务人员的UserID
UserID string `xml:"UserID"`
// ExternalUserID 外部联系人的userid,注意不是企业成员的帐号
ExternalUserID string `xml:"ExternalUserID"`
// State 添加此用户的「联系我」方式配置的state参数,可用于识别添加此用户的渠道
State string `xml:"State"`
}
// rxEventAddHalfExternalContact 接收的事件消息,外部联系人免验证添加成员事件
type rxEventAddHalfExternalContact struct {
// UserID 企业服务人员的UserID
UserID string `xml:"UserID"`
// ExternalUserID 外部联系人的userid,注意不是企业成员的帐号
ExternalUserID string `xml:"ExternalUserID"`
// State 添加此用户的「联系我」方式配置的state参数,可用于识别添加此用户的渠道
State string `xml:"State"`
// WelcomeCode 欢迎语code,可用于发送欢迎语
WelcomeCode string `xml:"WelcomeCode"`
}
// rxEventDelExternalContact 接收的事件消息,删除企业客户事件
type rxEventDelExternalContact struct {
// UserID 企业服务人员的UserID
UserID string `xml:"UserID"`
// ExternalUserID 外部联系人的userid,注意不是企业成员的帐号
ExternalUserID string `xml:"ExternalUserID"`
}
// rxEventDelFollowUser 接收的事件消息,删除跟进成员事件
type rxEventDelFollowUser struct {
// UserID 企业服务人员的UserID
UserID string `xml:"UserID"`
// ExternalUserID 外部联系人的userid,注意不是企业成员的帐号
ExternalUserID string `xml:"ExternalUserID"`
}
// rxEventTransferFail 接收的事件消息,客户接替失败事件
type rxEventTransferFail struct {
// FailReason 接替失败的原因, customer_refused-客户拒绝, customer_limit_exceed-接替成员的客户数达到上限
FailReason string `xml:"FailReason"`
// UserID 企业服务人员的UserID
UserID string `xml:"UserID"`
// ExternalUserID 外部联系人的userid,注意不是企业成员的帐号
ExternalUserID string `xml:"ExternalUserID"`
}
// rxEventChangeExternalChat 接收的事件消息,客户群变更事件
type rxEventChangeExternalChat struct {
// ToUserName 企业微信CorpID
ToUserName string `xml:"ToUserName"`
// FromUserName 此事件该值固定为sys,表示该消息由系统生成
FromUserName string `xml:"FromUserName"`
// FailReason 接替失败的原因, customer_refused-客户拒绝, customer_limit_exceed-接替成员的客户数达到上限
FailReason string `xml:"FailReason"`
// ChatID 群ID
ChatID string `xml:"ChatId"`
}
// rxEventSysApprovalChange 接收的事件消息,审批申请状态变化回调通知
type rxEventSysApprovalChange struct {
// ApprovalInfo 审批信息、
ApprovalInfo OAApprovalInfo `xml:"ApprovalInfo"`
}