添加群组重命名功能

This commit is contained in:
eatmoreapple 2021-08-17 21:27:34 +08:00
parent 7b15c3a42c
commit 9eb84837cb
4 changed files with 39 additions and 0 deletions

View File

@ -392,6 +392,15 @@ func (c *Caller) WebWxCreateChatRoom(request *BaseRequest, info *LoginInfo, topi
return &group, nil
}
// WebWxRenameChatRoom 群组重命名
func (c *Caller) WebWxRenameChatRoom(request *BaseRequest, info *LoginInfo, newTopic string, group *Group) error {
resp, err := c.Client.WebWxRenameChatRoom(request, info, newTopic, group)
if err != nil {
return err
}
return parseBaseResponseError(resp)
}
// 处理响应返回的结果是否正常
func parseBaseResponseError(resp *http.Response) error {
defer resp.Body.Close()

View File

@ -752,3 +752,21 @@ func (c *Client) WebWxCreateChatRoom(request *BaseRequest, info *LoginInfo, topi
req.Header.Add("Content-Type", jsonContentType)
return c.Do(req)
}
// WebWxRenameChatRoom 群组重命名接口
func (c *Client) WebWxRenameChatRoom(request *BaseRequest, info *LoginInfo, newTopic string, group *Group) (*http.Response, error) {
path, _ := url.Parse(c.Domain.BaseHost() + webwxupdatechatroom)
params := url.Values{}
params.Add("fun", "modtopic")
params.Add("pass_ticket", info.PassTicket)
path.RawQuery = params.Encode()
content := map[string]interface{}{
"BaseRequest": request,
"ChatRoomName": group.UserName,
"NewTopic": newTopic,
}
body, _ := ToBuffer(content)
req, _ := http.NewRequest(http.MethodPost, path.String(), body)
req.Header.Add("Content-Type", jsonContentType)
return c.Do(req)
}

View File

@ -252,6 +252,11 @@ func (g *Group) RemoveMembers(members Members) error {
return g.Self.RemoveMemberFromGroup(g, members)
}
// Rename 群组重命名
func (g *Group) Rename(name string) error {
return g.Self.RenameGroup(g, name)
}
type Groups []*Group
// Count 获取群组数量

View File

@ -359,6 +359,13 @@ func (s *Self) AddFriendIntoManyGroups(friend *Friend, groups ...*Group) error {
return nil
}
// RenameGroup 群组重命名
func (s *Self) RenameGroup(group *Group, newName string) error {
req := s.Bot.Storage.Request
info := s.Bot.Storage.LoginInfo
return s.Bot.Caller.WebWxRenameChatRoom(req, info, newName, group)
}
// SendMessageToGroup 发送消息给群组
func (s *Self) SendMessageToGroup(group *Group, msg *SendMessage) (*SentMessage, error) {
return s.sendMessageToUser(group.User, msg)