Skip to content

Commit

Permalink
Merge #172
Browse files Browse the repository at this point in the history
172: feat: add UserUpdate ConvertUserIDToOpenID ConvertOpenIDToUserID r=xen0n a=tttao7

变更如下:

- 增加 [更新成员](https://developer.work.weixin.qq.com/document/path/90197) 此接口需要使用通讯录同步secret
- 增加 [userid和openid互换](https://developer.work.weixin.qq.com/document/path/95402)
- 增加 [客户群「加入群聊」管理](https://developer.work.weixin.qq.com/document/path/92229)
- 增加 [修改群聊会话](https://developer.work.weixin.qq.com/document/path/98913)
- 修复/优化 对于客户群和内部群的区分问题 即AppChat和GroupChat的区分问题 两个属于不同的两个板块 一个是消息推送 一个是客户联系
- 部分文档修改

Co-authored-by: TtTao <[email protected]>
  • Loading branch information
bors[bot] and Nottwoc authored Sep 12, 2023
2 parents baddb8e + 2c55ed4 commit f09d047
Show file tree
Hide file tree
Showing 13 changed files with 688 additions and 147 deletions.
46 changes: 41 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,8 +74,9 @@ CI 会在 `go1.17` 和 Go 的当前稳定版本、上一个稳定版本上跑测

* [x] 通讯录管理 (**部分支持**,见下)
* [x] 客户联系 (**大部分支持**,见下)
* [ ] 微信客服
* [ ] 应用管理
* [x] 消息发送 (除修改群聊会话外全部支持)
* [x] 消息发送 (全部支持)
* [x] 消息接收
* [x] 素材管理 (**支持上传**, 见下)
* [x] OA (**大部分支持**,见下)
Expand All @@ -88,17 +89,17 @@ CI 会在 `go1.17` 和 Go 的当前稳定版本、上一个稳定版本上跑测
* [ ] 成员管理
- [ ] 创建成员
- [x] 读取成员 *NOTE: 成员对外信息暂未实现*
- [ ] 更新成员
- [x] 更新成员
- [ ] 删除成员
- [ ] 批量删除成员
- [ ] 获取部门成员
- [x] 获取部门成员详情
- [ ] userid与openid互换
- [x] userid与openid互换
- [ ] 二次验证
- [ ] 邀请成员
- [ ] 获取加入企业二维码
- [x] 手机号获取userid
- [ ] 邮箱获取userid
- [x] 邮箱获取userid
- [ ] 获取成员ID列表
* [ ] 部门管理
- [x] 创建部门
Expand Down Expand Up @@ -134,11 +135,16 @@ CI 会在 `go1.17` 和 Go 的当前稳定版本、上一个稳定版本上跑测
* [x] 企业服务人员管理
- [x] 获取配置了客户联系功能的成员列表
- [x] 客户联系「联系我」管理
- [x] 客户群「加入群聊」管理
* [x] 客户管理
- [x] 获取客户列表
- [x] 获取客户详情
- [x] 批量获取客户详情
- [x] 修改客户备注信息
* [x] 客户群管理
- [x] 获取客户群列表
- [x] 获取客户群详情
- [ ] 客户群opengid转换
* [x] 在职继承
- [x] 分配在职成员的客户
- [x] 查询客户接替状态
Expand Down Expand Up @@ -172,6 +178,36 @@ CI 会在 `go1.17` 和 Go 的当前稳定版本、上一个稳定版本上跑测

</details>

<details>
<summary>微信客服 API</summary>

* [ ] 客服账号管理
- [ ] 添加客服账号
- [ ] 删除客服账号
- [ ] 修改客服账号
- [ ] 获取客服账号列表
- [ ] 获取客服账号链接
* [ ] 接待人员管理
- [ ] 添加接待人员
- [ ] 删除接待人员
- [ ] 获取接待人员列表
* [ ] 会话分配与消息收发
- [ ] 分配客服会话
- [ ] 接收消息和事件
- [ ] 发送消息
- [ ] 发送欢迎语等事件响应消息
* [ ] 「升级服务」配置
* [ ] 其他基础信息获取
- [ ] 获取客户基础信息
* [ ] 统计管理
- [ ] 获取「客户数据统计」企业汇总数据
- [ ] 获取「客户数据统计」接待人员明细数据
* [ ] 机器人管理
- [ ] 知识库分组管理
- [ ] 知识库问答管理

</details>

<details>
<summary>身份验证 API</summary>

Expand All @@ -198,7 +234,7 @@ CI 会在 `go1.17` 和 Go 的当前稳定版本、上一个稳定版本上跑测
* [x] 接收消息
* [x] 发送消息到群聊会话
- [x] 创建群聊会话
- [ ] 修改群聊会话
- [x] 修改群聊会话
- [x] 获取群聊会话
- [x] 应用推送消息

Expand Down
164 changes: 138 additions & 26 deletions apis.md.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

23 changes: 18 additions & 5 deletions appchat.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,19 @@ func (c *WorkwxApp) CreateAppchat(chatInfo *ChatInfo) (chatID string, err error)
return resp.ChatID, nil
}

// UpdateAppchat 修改群聊会话
func (c *WorkwxApp) UpdateAppchat(chatInfo ChatInfo, addMemberUserIDs, delMemberUserIDs []string) (err error) {
_, err = c.execAppchatUpdate(reqAppchatUpdate{
ChatInfo: chatInfo,
AddMemberUserIDs: addMemberUserIDs,
DelMemberUserIDs: delMemberUserIDs,
})
if err != nil {
return err
}
return nil
}

// GetAppchat 获取群聊会话
func (c *WorkwxApp) GetAppchat(chatID string) (*ChatInfo, error) {
resp, err := c.execAppchatGet(reqAppchatGet{
Expand All @@ -25,20 +38,20 @@ func (c *WorkwxApp) GetAppchat(chatID string) (*ChatInfo, error) {
return obj, nil
}

// GetAppChatList 获取客户群列表
// GetAppChatList 获取客户群列表 企业微信接口调整 此API同GetGroupChatList 兼容处理
func (c *WorkwxApp) GetAppChatList(req ReqChatList) (*RespAppchatList, error) {
resp, err := c.execAppchatListGet(reqAppchatList{
resp, err := c.execGroupChatListGet(reqGroupChatList{
ReqChatList: req,
})
if err != nil {
return nil, err
}
return resp.RespAppchatList, nil
return resp.RespGroupChatList, nil
}

// GetAppChatInfo 获取客户群详细信息
// GetAppChatInfo 获取客户群详细信息 企业微信接口调整 此API同GetGroupChatInfo 兼容处理
func (c *WorkwxApp) GetAppChatInfo(chatID string) (*RespAppChatInfo, error) {
resp, err := c.execAppchatInfoGet(reqAppchatInfo{
resp, err := c.execGroupChatInfoGet(reqGroupChatInfo{
ChatID: chatID,
NeedName: ChatNeedName,
})
Expand Down
20 changes: 13 additions & 7 deletions chat_info.md.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit f09d047

Please sign in to comment.