-
Notifications
You must be signed in to change notification settings - Fork 165
/
externalContact.go
131 lines (114 loc) · 4.74 KB
/
externalContact.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
package models
import (
"github.com/ArtisanCloud/PowerWeChat/v2/src/kernel/contract"
"github.com/ArtisanCloud/PowerWeChat/v2/src/kernel/models"
)
// https://developer.work.weixin.qq.com/document/path/92130
const (
CALLBACK_EVENT_CHANGE_EXTERNAL_CONTACT = "change_external_contact" // 变更外部联系人事件
CALLBACK_EVENT_CHANGE_TYPE_ADD_EXTERNAL_CONTACT = "add_external_contact" // 新增外部联系人事件
CALLBACK_EVENT_CHANGE_TYPE_EDIT_EXTERNAL_CONTACT = "edit_external_contact" // 编辑外部联系人事件
CALLBACK_EVENT_CHANGE_TYPE_ADD_HALF_EXTERNAL_CONTACT = "add_half_external_contact" // 外部联系人免验证添加成员事件
CALLBACK_EVENT_CHANGE_TYPE_DEL_EXTERNAL_CONTACT = "del_external_contact" // 删除企业客户事件
CALLBACK_EVENT_CHANGE_TYPE_DEL_FOLLOW_USER = "del_follow_user" // 删除跟进成员事件
CALLBACK_EVENT_CHANGE_TYPE_TRANSFER_FAIL = "transfer_fail" // 客户接替失败事件
CALLBACK_EVENT_CHANGE_EXTERNAL_CHAT = "change_external_chat" // 客户群创建事件
CALLBACK_EVENT_UPDATE_DETAIL_ADD_MEMBER = "add_member" // 成员入群事件
CALLBACK_EVENT_UPDATE_DETAIL_DEL_MEMBER = "del_member" // 成员退群事件
CALLBACK_EVENT_UPDATE_DETAIL_CHANGE_OWNER = "change_owner" // 群主变更事件
CALLBACK_EVENT_UPDATE_DETAIL_CHANGE_NAME = "change_name" // 群名变更事件
CALLBACK_EVENT_UPDATE_DETAIL_CHANGE_NOTICE = "change_notice" // 群公告变更事件
CALLBACK_EVENT_CHANGE_EXTERNAL_TAG = "change_external_tag" // 企业客户标签变更事件
CALLBACK_EVENT_CHANGE_TYPE_CREATE = "create" // 创建标签事件
CALLBACK_EVENT_CHANGE_TYPE_UPDATE = "update" // 更新标签名称事件
CALLBACK_EVENT_CHANGE_TYPE_DELETE = "delete" // 删除标签事件
CALLBACK_EVENT_CHANGE_TYPE_DISMISS = "dismiss" // 解散群事件
CALLBACK_EVENT_CHANGE_TYPE_SHUFFLE = "shuffle" // 标签重排事件
CALLBACK_EVENT_TAG_TYPE = "tag" // 标签事件
CALLBACK_EVENT_TAG_TYPE_GROUP = "tag_group" // 标签组事件
)
type EventExternalUserAdd struct {
contract.EventInterface
models.CallbackMessageHeader
UserID string `xml:"UserID"`
ExternalUserID string `xml:"ExternalUserID"`
State string `xml:"State"`
WelcomeCode string `xml:"WelcomeCode"`
}
type EventExternalUserEdit struct {
contract.EventInterface
models.CallbackMessageHeader
UserID string `xml:"UserID"`
ExternalUserID string `xml:"ExternalUserID"`
}
type EventExternalUserAddHalf struct {
contract.EventInterface
models.CallbackMessageHeader
UserID string `xml:"UserID"`
ExternalUserID string `xml:"ExternalUserID"`
State string `xml:"State"`
WelcomeCode string `xml:"WelcomeCode"`
}
type EventExternalUserDel struct {
contract.EventInterface
models.CallbackMessageHeader
UserID string `xml:"UserID"`
ExternalUserID string `xml:"ExternalUserID"`
Source string `xml:"Source"`
}
type EventExternalUserDelFollowUser struct {
contract.EventInterface
models.CallbackMessageHeader
UserID string `xml:"UserID"`
ExternalUserID string `xml:"ExternalUserID"`
}
type EventExternalUserUpdateAddMember struct {
contract.EventInterface
models.CallbackMessageHeader
ChatID string `xml:"ChatId"`
ChangeType string `xml:"ChangeType"`
UpdateDetail string `xml:"UpdateDetail"`
JoinScene string `xml:"JoinScene"`
QuitScene string `xml:"QuitScene"`
MemChangeCnt string `xml:"MemChangeCnt"`
}
type EventExternalUserDismiss struct {
contract.EventInterface
models.CallbackMessageHeader
ChatID string `xml:"ChatId"`
}
type EventExternalTransferFail struct {
contract.EventInterface
models.CallbackMessageHeader
FailReason string `xml:"FailReason"`
UserID string `xml:"UserID"`
ExternalUserID string `xml:"ExternalUserID"`
}
type EventExternalUserTagCreate struct {
contract.EventInterface
models.CallbackMessageHeader
ID string `xml:"Id"`
TagType string `xml:"TagType"`
StrategyID string `xml:"StrategyId"`
}
type EventExternalUserTagUpdate struct {
contract.EventInterface
models.CallbackMessageHeader
ID string `xml:"Id"`
TagType string `xml:"TagType"`
StrategyID string `xml:"StrategyId"`
}
type EventExternalUserTagDelete struct {
contract.EventInterface
models.CallbackMessageHeader
ID string `xml:"Id"`
TagType string `xml:"TagType"`
StrategyID string `xml:"StrategyId"`
}
type EventExternalUserTagShuffle struct {
contract.EventInterface
models.CallbackMessageHeader
ID string `xml:"Id"`
StrategyID string `xml:"StrategyId"`
ChangeType string `xml:"ChangeType"`
}