1
0
mirror of https://github.com/silenceper/wechat.git synced 2026-02-07 22:22:28 +08:00
This commit is contained in:
houseme
2024-07-19 12:04:04 +08:00
parent ba0a1477eb
commit d8fde54f2d
118 changed files with 974 additions and 867 deletions

View File

@@ -8,8 +8,8 @@ import (
// 原始回调消息内容
type callbackOriginMessage struct {
ToUserName string // 企业微信的CorpID当为第三方套件回调事件时CorpID的内容为suiteid
AgentID string // 接收的应用id可在应用的设置页面获取
ToUserName string // 企业微信的 CorpID当为第三方套件回调事件时CorpID 的内容为 suiteid
AgentID string // 接收的应用 id可在应用的设置页面获取
Encrypt string // 消息结构体加密后的字符串
}

View File

@@ -116,7 +116,7 @@ type (
util.CommonError
ContactWay ContactWay `json:"contact_way"`
}
// ContactWay 「联系我」配置
// ContactWay「联系我」配置
ContactWay struct {
ConfigID string `json:"config_id"`
Type int `json:"type"`
@@ -209,7 +209,7 @@ type (
ContactWay []*ContactWayForList `json:"contact_way"`
NextCursor string `json:"next_cursor"`
}
// ContactWayForList 「联系我」配置
// ContactWayForList「联系我」配置
ContactWayForList struct {
ConfigID string `json:"config_id"`
}

View File

@@ -104,7 +104,7 @@ type WechatChannel struct {
Source int `json:"source"`
}
// ExternalProfile 外部联系人的自定义展示信息,可以有多个字段和多种类型,包括文本,网页和小程序
// ExternalProfile 外部联系人的自定义展示信息可以有多个字段和多种类型,包括文本,网页和小程序
type ExternalProfile struct {
ExternalCorpName string `json:"external_corp_name"`
WechatChannels WechatChannels `json:"wechat_channels"`
@@ -276,7 +276,7 @@ type ListCustomerStrategyResponse struct {
NextCursor string `json:"next_cursor"`
}
// StrategyID 规则组ID
// StrategyID 规则组 ID
type StrategyID struct {
StrategyID int `json:"strategy_id"`
}

View File

@@ -6,14 +6,14 @@ import (
"github.com/silenceper/wechat/v2/util"
)
// opengIDToChatIDURL 客户群opengid转换URL
// opengIDToChatIDURL 客户群 opengid 转换 URL
const opengIDToChatIDURL = "https://qyapi.weixin.qq.com/cgi-bin/externalcontact/opengid_to_chatid"
type (
//GroupChatListRequest 获取客户群列表的请求参数
GroupChatListRequest struct {
StatusFilter int `json:"status_filter"` // 非必填 客户群跟进状态过滤。0 - 所有列表(即不过滤) 1 - 离职待继承 2 - 离职继承中 3 - 离职继承完成
OwnerFilter OwnerFilter `json:"owner_filter"` //非必填 群主过滤。如果不填表示获取应用可见范围内全部群主的数据但是不建议这么用如果可见范围人数超过1000人为了防止数据包过大会报错 81017
StatusFilter int `json:"status_filter"` // 非必填 客户群跟进状态过滤。0 - 所有列表 (即不过滤) 1 - 离职待继承 2 - 离职继承中 3 - 离职继承完成
OwnerFilter OwnerFilter `json:"owner_filter"` //非必填 群主过滤。如果不填,表示获取应用可见范围内全部群主的数据(但是不建议这么用,如果可见范围人数超过 1000 人,为了防止数据包过大,会报错 81017
Cursor string `json:"cursor"` //非必填 用于分页查询的游标,字符串类型,由上一次调用返回,首次调用不填
Limit int `json:"limit"` //必填 分页,预期请求的数据量,取值范围 1 ~ 1000
}
@@ -56,29 +56,29 @@ type (
}
//Invitor 邀请者
Invitor struct {
UserID string `json:"userid"` //邀请者的userid
UserID string `json:"userid"` //邀请者的 userid
}
//GroupChatMember 群成员
GroupChatMember struct {
UserID string `json:"userid"` //群成员id
Type int `json:"type"` //成员类型。 1 - 企业成员 2 - 外部联系人
UserID string `json:"userid"` //群成员 id
Type int `json:"type"` //成员类型。1 - 企业成员 2 - 外部联系人
JoinTime int `json:"join_time"` //入群时间
JoinScene int `json:"join_scene"` //入群方式 1 - 由群成员邀请入群(直接邀请入群) 2 - 由群成员邀请入群(通过邀请链接入群) 3 - 通过扫描群二维码入群
JoinScene int `json:"join_scene"` //入群方式 1 - 由群成员邀请入群直接邀请入群2 - 由群成员邀请入群通过邀请链接入群3 - 通过扫描群二维码入群
Invitor Invitor `json:"invitor,omitempty"` //邀请者。目前仅当是由本企业内部成员邀请入群时会返回该值
GroupNickname string `json:"group_nickname"` //在群里的昵称
Name string `json:"name"` //名字。仅当 need_name = 1 时返回 如果是微信用户,则返回其在微信中设置的名字 如果是企业微信联系人,则返回其设置对外展示的别名或实名
UnionID string `json:"unionid,omitempty"` //外部联系人在微信开放平台的唯一身份标识微信unionid通过此字段企业可将外部联系人与公众号/小程序用户关联起来。仅当群成员类型是微信用户包括企业成员未添加好友且企业绑定了微信开发者ID有此字段查看绑定方法。第三方不可获取上游企业不可获取下游企业客户的unionid字段
State string `json:"state,omitempty"` //如果在配置入群方式时配置了state参数那么在获取客户群详情时通过该方式入群的成员会额外获取到相应的state参数
UnionID string `json:"unionid,omitempty"` //外部联系人在微信开放平台的唯一身份标识(微信 unionid通过此字段企业可将外部联系人与公众号/小程序用户关联起来。仅当群成员类型是微信用户(包括企业成员未添加好友),且企业绑定了微信开发者 ID 有此字段(查看绑定方法)。第三方不可获取,上游企业不可获取下游企业客户的 unionid 字段
State string `json:"state,omitempty"` //如果在配置入群方式时,配置了 state 参数,那么在获取客户群详情时,通过该方式入群的成员,会额外获取到相应的 state 参数
}
//GroupChatAdmin 群管理员
GroupChatAdmin struct {
UserID string `json:"userid"` //群管理员userid
UserID string `json:"userid"` //群管理员 userid
}
//GroupChat 客户群详情
GroupChat struct {
ChatID string `json:"chat_id"` //客户群ID
ChatID string `json:"chat_id"` //客户群 ID
Name string `json:"name"` //群名
Owner string `json:"owner"` //群主ID
Owner string `json:"owner"` //群主 ID
CreateTime int64 `json:"create_time"` //群的创建时间
Notice string `json:"notice"` //群公告
MemberList []GroupChatMember `json:"member_list"` //群成员列表
@@ -110,18 +110,18 @@ func (r *Client) GetGroupChatDetail(req *GroupChatDetailRequest) (*GroupChatDeta
}
type (
//OpengIDToChatIDRequest 客户群opengid转换 请求参数
//OpengIDToChatIDRequest 客户群 opengid 转换 请求参数
OpengIDToChatIDRequest struct {
OpengID string `json:"opengid"`
}
//OpengIDToChatIDResponse 客户群opengid转换 返回值
//OpengIDToChatIDResponse 客户群 opengid 转换 返回值
OpengIDToChatIDResponse struct {
util.CommonError
ChatID string `json:"chat_id"` //客户群ID
ChatID string `json:"chat_id"` //客户群 ID
}
)
// OpengIDToChatID 客户群opengid转换
// OpengIDToChatID 客户群 opengid 转换
// @see https://developer.work.weixin.qq.com/document/path/94828
func (r *Client) OpengIDToChatID(req *OpengIDToChatIDRequest) (*OpengIDToChatIDResponse, error) {
accessToken, err := r.GetAccessToken()

View File

@@ -12,13 +12,13 @@ const groupChatURL = "https://qyapi.weixin.qq.com/cgi-bin/externalcontact/groupc
type (
// AddJoinWayRequest 添加群配置请求参数
AddJoinWayRequest struct {
Scene int `json:"scene"` // 必填 1 - 群的小程序插件,2 - 群的二维码插件
Remark string `json:"remark"` //非必填 联系方式的备注信息用于助记超过30个字符将被截断
AutoCreateRoom int `json:"auto_create_room"` //非必填 当群满了后是否自动新建群。0-否1-是。 默认为1
RoomBaseName string `json:"room_base_name"` //非必填 自动建群的群名前缀当auto_create_room为1时有效。最长40utf8字符
RoomBaseID int `json:"room_base_id"` //非必填 自动建群的群起始序号当auto_create_room为1时有效
ChatIDList []string `json:"chat_id_list"` //必填 使用该配置的客户群ID列表支持5个。见客户群ID获取方法
State string `json:"state"` //非必填 企业自定义的state参数用于区分不同的入群渠道。不超过30UTF-8字符
Scene int `json:"scene"` // 必填 1 - 群的小程序插件2 - 群的二维码插件
Remark string `json:"remark"` //非必填 联系方式的备注信息,用于助记,超过 30 个字符将被截断
AutoCreateRoom int `json:"auto_create_room"` //非必填 当群满了后是否自动新建群。0-否1-是。默认为 1
RoomBaseName string `json:"room_base_name"` //非必填 自动建群的群名前缀,当 auto_create_room 为 1 时有效。最长 40utf8 字符
RoomBaseID int `json:"room_base_id"` //非必填 自动建群的群起始序号,当 auto_create_room 为 1 时有效
ChatIDList []string `json:"chat_id_list"` //必填 使用该配置的客户群 ID 列表,支持 5 个。见客户群 ID 获取方法
State string `json:"state"` //非必填 企业自定义的 state 参数,用于区分不同的入群渠道。不超过 30UTF-8 字符
}
// AddJoinWayResponse 添加群配置返回值
@@ -96,13 +96,13 @@ func (r *Client) GetJoinWay(req *JoinWayConfigRequest) (*GetJoinWayResponse, err
// UpdateJoinWayRequest 更新群配置的请求参数
type UpdateJoinWayRequest struct {
ConfigID string `json:"config_id"`
Scene int `json:"scene"` // 必填 1 - 群的小程序插件,2 - 群的二维码插件
Remark string `json:"remark"` //非必填 联系方式的备注信息用于助记超过30个字符将被截断
AutoCreateRoom int `json:"auto_create_room"` //非必填 当群满了后是否自动新建群。0-否1-是。 默认为1
RoomBaseName string `json:"room_base_name"` //非必填 自动建群的群名前缀当auto_create_room为1时有效。最长40utf8字符
RoomBaseID int `json:"room_base_id"` //非必填 自动建群的群起始序号当auto_create_room为1时有效
ChatIDList []string `json:"chat_id_list"` //必填 使用该配置的客户群ID列表支持5个。见客户群ID获取方法
State string `json:"state"` //非必填 企业自定义的state参数用于区分不同的入群渠道。不超过30UTF-8字符
Scene int `json:"scene"` // 必填 1 - 群的小程序插件2 - 群的二维码插件
Remark string `json:"remark"` //非必填 联系方式的备注信息,用于助记,超过 30 个字符将被截断
AutoCreateRoom int `json:"auto_create_room"` //非必填 当群满了后是否自动新建群。0-否1-是。默认为 1
RoomBaseName string `json:"room_base_name"` //非必填 自动建群的群名前缀,当 auto_create_room 为 1 时有效。最长 40utf8 字符
RoomBaseID int `json:"room_base_id"` //非必填 自动建群的群起始序号,当 auto_create_room 为 1 时有效
ChatIDList []string `json:"chat_id_list"` //必填 使用该配置的客户群 ID 列表,支持 5 个。见客户群 ID 获取方法
State string `json:"state"` //非必填 企业自定义的 state 参数,用于区分不同的入群渠道。不超过 30UTF-8 字符
}
// UpdateJoinWay 更新客户群进群方式配置

View File

@@ -441,7 +441,7 @@ type ListMomentStrategyResponse struct {
NextCursor string `json:"next_cursor"`
}
// MomentStrategyID 规则组ID
// MomentStrategyID 规则组 ID
type MomentStrategyID struct {
StrategyID int `json:"strategy_id"`
}

View File

@@ -81,7 +81,7 @@ type (
NextOffset int `json:"next_offset"`
Items []GroupChatStatItem `json:"items"`
}
// GroupChatStatItem 群聊数据统计(按群主聚合)条目
// GroupChatStatItem 群聊数据统计 (按群主聚合) 条目
GroupChatStatItem struct {
Owner string `json:"owner"`
Data GroupChatStatItemData `json:"data"`
@@ -138,7 +138,7 @@ type (
util.CommonError
Items []GetGroupChatStatByDayItem `json:"items"`
}
// GetGroupChatStatByDayItem 群聊数据统计(按自然日聚合)条目
// GetGroupChatStatByDayItem 群聊数据统计 (按自然日聚合) 条目
GetGroupChatStatByDayItem struct {
StatTime int `json:"stat_time"`
Data GroupChatStatItemData `json:"data"`