follow_user.go 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. package externalcontact
  2. import (
  3. "fmt"
  4. "github.com/silenceper/wechat/v2/util"
  5. )
  6. const (
  7. // FetchFollowUserListURL 获取配置了客户联系功能的成员列表
  8. FetchFollowUserListURL = "https://qyapi.weixin.qq.com/cgi-bin/externalcontact/get_follow_user_list"
  9. )
  10. // followerUserResponse 客户联系功能的成员列表响应
  11. type followerUserResponse struct {
  12. util.CommonError
  13. FollowUser []string `json:"follow_user"`
  14. }
  15. //GetFollowUserList 获取配置了客户联系功能的成员列表
  16. //@see https://developer.work.weixin.qq.com/document/path/92571
  17. func (r *Client) GetFollowUserList() ([]string, error) {
  18. var accessToken string
  19. accessToken, err := r.GetAccessToken()
  20. if err != nil {
  21. return nil, err
  22. }
  23. var response []byte
  24. response, err = util.HTTPGet(fmt.Sprintf("%s?access_token=%s", FetchFollowUserListURL, accessToken))
  25. if err != nil {
  26. return nil, err
  27. }
  28. var result followerUserResponse
  29. err = util.DecodeWithError(response, &result, "GetFollowUserList")
  30. if err != nil {
  31. return nil, err
  32. }
  33. return result.FollowUser, nil
  34. }