浏览代码

Initial construction.

sdk-team 6 年之前
父节点
当前提交
f8c82aa22f
共有 33 个文件被更改,包括 2222 次插入0 次删除
  1. 7 0
      ChangeLog.txt
  2. 108 0
      services/aliyuncvc/active_meeting_code.go
  3. 108 0
      services/aliyuncvc/check_meeting_code.go
  4. 129 0
      services/aliyuncvc/client.go
  5. 108 0
      services/aliyuncvc/create_meeting.go
  6. 107 0
      services/aliyuncvc/create_user.go
  7. 114 0
      services/aliyuncvc/create_user_evaluations.go
  8. 107 0
      services/aliyuncvc/delete_user.go
  9. 20 0
      services/aliyuncvc/endpoint.go
  10. 110 0
      services/aliyuncvc/list_commodities.go
  11. 107 0
      services/aliyuncvc/query_isv_user_info.go
  12. 107 0
      services/aliyuncvc/query_meeting_info.go
  13. 107 0
      services/aliyuncvc/query_member_record.go
  14. 108 0
      services/aliyuncvc/query_statistics.go
  15. 106 0
      services/aliyuncvc/query_user_buy_attribute.go
  16. 106 0
      services/aliyuncvc/query_user_evaluation.go
  17. 106 0
      services/aliyuncvc/query_user_info.go
  18. 108 0
      services/aliyuncvc/query_user_list.go
  19. 106 0
      services/aliyuncvc/remove_meeting.go
  20. 21 0
      services/aliyuncvc/struct_commodities.go
  21. 23 0
      services/aliyuncvc/struct_commodity.go
  22. 27 0
      services/aliyuncvc/struct_data.go
  23. 21 0
      services/aliyuncvc/struct_day_info.go
  24. 24 0
      services/aliyuncvc/struct_day_info_item.go
  25. 36 0
      services/aliyuncvc/struct_meeting_info.go
  26. 21 0
      services/aliyuncvc/struct_member_list.go
  27. 25 0
      services/aliyuncvc/struct_member_list_item.go
  28. 23 0
      services/aliyuncvc/struct_member_record.go
  29. 21 0
      services/aliyuncvc/struct_member_records_list.go
  30. 23 0
      services/aliyuncvc/struct_sls_info.go
  31. 23 0
      services/aliyuncvc/struct_total.go
  32. 34 0
      services/aliyuncvc/struct_user_info.go
  33. 21 0
      services/aliyuncvc/struct_user_infos.go

+ 7 - 0
ChangeLog.txt

@@ -1,3 +1,10 @@
+2019-10-25 Version: 1.60.217
+- Initial construction.
+- Public beta version.
+- Supported AliyunController for Interface.
+- Supported ConsoleController for Interface.
+- Supported AccountController for Interface.
+
 2019-10-25 Version: 1.60.216
 - Supported query push records.
 

+ 108 - 0
services/aliyuncvc/active_meeting_code.go

@@ -0,0 +1,108 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// ActiveMeetingCode invokes the aliyuncvc.ActiveMeetingCode API synchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/activemeetingcode.html
+func (client *Client) ActiveMeetingCode(request *ActiveMeetingCodeRequest) (response *ActiveMeetingCodeResponse, err error) {
+	response = CreateActiveMeetingCodeResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ActiveMeetingCodeWithChan invokes the aliyuncvc.ActiveMeetingCode API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/activemeetingcode.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ActiveMeetingCodeWithChan(request *ActiveMeetingCodeRequest) (<-chan *ActiveMeetingCodeResponse, <-chan error) {
+	responseChan := make(chan *ActiveMeetingCodeResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ActiveMeetingCode(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ActiveMeetingCodeWithCallback invokes the aliyuncvc.ActiveMeetingCode API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/activemeetingcode.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ActiveMeetingCodeWithCallback(request *ActiveMeetingCodeRequest, callback func(response *ActiveMeetingCodeResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ActiveMeetingCodeResponse
+		var err error
+		defer close(result)
+		response, err = client.ActiveMeetingCode(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ActiveMeetingCodeRequest is the request struct for api ActiveMeetingCode
+type ActiveMeetingCodeRequest struct {
+	*requests.RpcRequest
+	MeetingUUID string `position:"Query" name:"MeetingUUID"`
+	MeetingCode string `position:"Query" name:"MeetingCode"`
+}
+
+// ActiveMeetingCodeResponse is the response struct for api ActiveMeetingCode
+type ActiveMeetingCodeResponse struct {
+	*responses.BaseResponse
+	ErrorCode   int         `json:"ErrorCode" xml:"ErrorCode"`
+	Message     string      `json:"Message" xml:"Message"`
+	Success     bool        `json:"Success" xml:"Success"`
+	RequestId   string      `json:"RequestId" xml:"RequestId"`
+	MeetingInfo MeetingInfo `json:"MeetingInfo" xml:"MeetingInfo"`
+}
+
+// CreateActiveMeetingCodeRequest creates a request to invoke ActiveMeetingCode API
+func CreateActiveMeetingCodeRequest() (request *ActiveMeetingCodeRequest) {
+	request = &ActiveMeetingCodeRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("aliyuncvc", "2019-09-19", "ActiveMeetingCode", "aliyuncvc", "openAPI")
+	return
+}
+
+// CreateActiveMeetingCodeResponse creates a response to parse from ActiveMeetingCode response
+func CreateActiveMeetingCodeResponse() (response *ActiveMeetingCodeResponse) {
+	response = &ActiveMeetingCodeResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 108 - 0
services/aliyuncvc/check_meeting_code.go

@@ -0,0 +1,108 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// CheckMeetingCode invokes the aliyuncvc.CheckMeetingCode API synchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/checkmeetingcode.html
+func (client *Client) CheckMeetingCode(request *CheckMeetingCodeRequest) (response *CheckMeetingCodeResponse, err error) {
+	response = CreateCheckMeetingCodeResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CheckMeetingCodeWithChan invokes the aliyuncvc.CheckMeetingCode API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/checkmeetingcode.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CheckMeetingCodeWithChan(request *CheckMeetingCodeRequest) (<-chan *CheckMeetingCodeResponse, <-chan error) {
+	responseChan := make(chan *CheckMeetingCodeResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CheckMeetingCode(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CheckMeetingCodeWithCallback invokes the aliyuncvc.CheckMeetingCode API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/checkmeetingcode.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CheckMeetingCodeWithCallback(request *CheckMeetingCodeRequest, callback func(response *CheckMeetingCodeResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CheckMeetingCodeResponse
+		var err error
+		defer close(result)
+		response, err = client.CheckMeetingCode(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CheckMeetingCodeRequest is the request struct for api CheckMeetingCode
+type CheckMeetingCodeRequest struct {
+	*requests.RpcRequest
+	MeetingCode string `position:"Body" name:"MeetingCode"`
+	UserId      string `position:"Body" name:"UserId"`
+}
+
+// CheckMeetingCodeResponse is the response struct for api CheckMeetingCode
+type CheckMeetingCodeResponse struct {
+	*responses.BaseResponse
+	ErrorCode   int         `json:"ErrorCode" xml:"ErrorCode"`
+	Success     bool        `json:"Success" xml:"Success"`
+	RequestId   string      `json:"RequestId" xml:"RequestId"`
+	Message     string      `json:"Message" xml:"Message"`
+	MeetingInfo MeetingInfo `json:"MeetingInfo" xml:"MeetingInfo"`
+}
+
+// CreateCheckMeetingCodeRequest creates a request to invoke CheckMeetingCode API
+func CreateCheckMeetingCodeRequest() (request *CheckMeetingCodeRequest) {
+	request = &CheckMeetingCodeRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("aliyuncvc", "2019-09-19", "CheckMeetingCode", "aliyuncvc", "openAPI")
+	return
+}
+
+// CreateCheckMeetingCodeResponse creates a response to parse from CheckMeetingCode response
+func CreateCheckMeetingCodeResponse() (response *CheckMeetingCodeResponse) {
+	response = &CheckMeetingCodeResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 129 - 0
services/aliyuncvc/client.go

@@ -0,0 +1,129 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"reflect"
+
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth/credentials/provider"
+)
+
+// Client is the sdk client struct, each func corresponds to an OpenAPI
+type Client struct {
+	sdk.Client
+}
+
+// SetClientProperty Set Property by Reflect
+func SetClientProperty(client *Client, propertyName string, propertyValue interface{}) {
+	v := reflect.ValueOf(client).Elem()
+	if v.FieldByName(propertyName).IsValid() && v.FieldByName(propertyName).CanSet() {
+		v.FieldByName(propertyName).Set(reflect.ValueOf(propertyValue))
+	}
+}
+
+// SetEndpointDataToClient Set EndpointMap and ENdpointType
+func SetEndpointDataToClient(client *Client) {
+	SetClientProperty(client, "EndpointMap", GetEndpointMap())
+	SetClientProperty(client, "EndpointType", GetEndpointType())
+}
+
+// NewClient creates a sdk client with environment variables
+func NewClient() (client *Client, err error) {
+	client = &Client{}
+	err = client.Init()
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithProvider creates a sdk client with providers
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithProvider(regionId string, providers ...provider.Provider) (client *Client, err error) {
+	client = &Client{}
+	var pc provider.Provider
+	if len(providers) == 0 {
+		pc = provider.DefaultChain
+	} else {
+		pc = provider.NewProviderChain(providers)
+	}
+	err = client.InitWithProviderChain(regionId, pc)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithOptions creates a sdk client with regionId/sdkConfig/credential
+// this is the common api to create a sdk client
+func NewClientWithOptions(regionId string, config *sdk.Config, credential auth.Credential) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithOptions(regionId, config, credential)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithAccessKey is a shortcut to create sdk client with accesskey
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithAccessKey(regionId, accessKeyId, accessKeySecret string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithAccessKey(regionId, accessKeyId, accessKeySecret)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithStsToken is a shortcut to create sdk client with sts token
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithRamRoleArn is a shortcut to create sdk client with ram roleArn
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithRamRoleArn(regionId string, accessKeyId, accessKeySecret, roleArn, roleSessionName string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithRamRoleArn(regionId, accessKeyId, accessKeySecret, roleArn, roleSessionName)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithRamRoleArn is a shortcut to create sdk client with ram roleArn and policy
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithRamRoleArnAndPolicy(regionId string, accessKeyId, accessKeySecret, roleArn, roleSessionName, policy string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithRamRoleArnAndPolicy(regionId, accessKeyId, accessKeySecret, roleArn, roleSessionName, policy)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithEcsRamRole is a shortcut to create sdk client with ecs ram role
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithEcsRamRole(regionId string, roleName string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithEcsRamRole(regionId, roleName)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithRsaKeyPair is a shortcut to create sdk client with rsa key pair
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithRsaKeyPair(regionId string, publicKeyId, privateKey string, sessionExpiration int) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithRsaKeyPair(regionId, publicKeyId, privateKey, sessionExpiration)
+	SetEndpointDataToClient(client)
+	return
+}

+ 108 - 0
services/aliyuncvc/create_meeting.go

@@ -0,0 +1,108 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// CreateMeeting invokes the aliyuncvc.CreateMeeting API synchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/createmeeting.html
+func (client *Client) CreateMeeting(request *CreateMeetingRequest) (response *CreateMeetingResponse, err error) {
+	response = CreateCreateMeetingResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CreateMeetingWithChan invokes the aliyuncvc.CreateMeeting API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/createmeeting.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateMeetingWithChan(request *CreateMeetingRequest) (<-chan *CreateMeetingResponse, <-chan error) {
+	responseChan := make(chan *CreateMeetingResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CreateMeeting(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CreateMeetingWithCallback invokes the aliyuncvc.CreateMeeting API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/createmeeting.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateMeetingWithCallback(request *CreateMeetingRequest, callback func(response *CreateMeetingResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CreateMeetingResponse
+		var err error
+		defer close(result)
+		response, err = client.CreateMeeting(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CreateMeetingRequest is the request struct for api CreateMeeting
+type CreateMeetingRequest struct {
+	*requests.RpcRequest
+	MeetingName string `position:"Body" name:"MeetingName"`
+	UserId      string `position:"Body" name:"UserId"`
+}
+
+// CreateMeetingResponse is the response struct for api CreateMeeting
+type CreateMeetingResponse struct {
+	*responses.BaseResponse
+	ErrorCode   int         `json:"ErrorCode" xml:"ErrorCode"`
+	Message     string      `json:"Message" xml:"Message"`
+	Success     bool        `json:"Success" xml:"Success"`
+	RequestId   string      `json:"RequestId" xml:"RequestId"`
+	MeetingInfo MeetingInfo `json:"MeetingInfo" xml:"MeetingInfo"`
+}
+
+// CreateCreateMeetingRequest creates a request to invoke CreateMeeting API
+func CreateCreateMeetingRequest() (request *CreateMeetingRequest) {
+	request = &CreateMeetingRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("aliyuncvc", "2019-09-19", "CreateMeeting", "aliyuncvc", "openAPI")
+	return
+}
+
+// CreateCreateMeetingResponse creates a response to parse from CreateMeeting response
+func CreateCreateMeetingResponse() (response *CreateMeetingResponse) {
+	response = &CreateMeetingResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/aliyuncvc/create_user.go

@@ -0,0 +1,107 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// CreateUser invokes the aliyuncvc.CreateUser API synchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/createuser.html
+func (client *Client) CreateUser(request *CreateUserRequest) (response *CreateUserResponse, err error) {
+	response = CreateCreateUserResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CreateUserWithChan invokes the aliyuncvc.CreateUser API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/createuser.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateUserWithChan(request *CreateUserRequest) (<-chan *CreateUserResponse, <-chan error) {
+	responseChan := make(chan *CreateUserResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CreateUser(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CreateUserWithCallback invokes the aliyuncvc.CreateUser API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/createuser.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateUserWithCallback(request *CreateUserRequest, callback func(response *CreateUserResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CreateUserResponse
+		var err error
+		defer close(result)
+		response, err = client.CreateUser(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CreateUserRequest is the request struct for api CreateUser
+type CreateUserRequest struct {
+	*requests.RpcRequest
+	Count    requests.Integer `position:"Body" name:"Count"`
+	UserInfo string           `position:"Body" name:"UserInfo"`
+}
+
+// CreateUserResponse is the response struct for api CreateUser
+type CreateUserResponse struct {
+	*responses.BaseResponse
+	ErrorCode int    `json:"ErrorCode" xml:"ErrorCode"`
+	Message   string `json:"Message" xml:"Message"`
+	Success   bool   `json:"Success" xml:"Success"`
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateCreateUserRequest creates a request to invoke CreateUser API
+func CreateCreateUserRequest() (request *CreateUserRequest) {
+	request = &CreateUserRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("aliyuncvc", "2019-09-19", "CreateUser", "aliyuncvc", "openAPI")
+	return
+}
+
+// CreateCreateUserResponse creates a response to parse from CreateUser response
+func CreateCreateUserResponse() (response *CreateUserResponse) {
+	response = &CreateUserResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 114 - 0
services/aliyuncvc/create_user_evaluations.go

@@ -0,0 +1,114 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// CreateUserEvaluations invokes the aliyuncvc.CreateUserEvaluations API synchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/createuserevaluations.html
+func (client *Client) CreateUserEvaluations(request *CreateUserEvaluationsRequest) (response *CreateUserEvaluationsResponse, err error) {
+	response = CreateCreateUserEvaluationsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CreateUserEvaluationsWithChan invokes the aliyuncvc.CreateUserEvaluations API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/createuserevaluations.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateUserEvaluationsWithChan(request *CreateUserEvaluationsRequest) (<-chan *CreateUserEvaluationsResponse, <-chan error) {
+	responseChan := make(chan *CreateUserEvaluationsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CreateUserEvaluations(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CreateUserEvaluationsWithCallback invokes the aliyuncvc.CreateUserEvaluations API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/createuserevaluations.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateUserEvaluationsWithCallback(request *CreateUserEvaluationsRequest, callback func(response *CreateUserEvaluationsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CreateUserEvaluationsResponse
+		var err error
+		defer close(result)
+		response, err = client.CreateUserEvaluations(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CreateUserEvaluationsRequest is the request struct for api CreateUserEvaluations
+type CreateUserEvaluationsRequest struct {
+	*requests.RpcRequest
+	Memo        string           `position:"Query" name:"Memo"`
+	Description string           `position:"Query" name:"Description"`
+	CreateDate  requests.Integer `position:"Query" name:"CreateDate"`
+	MemberUUID  string           `position:"Query" name:"MemberUUID"`
+	UserId      string           `position:"Query" name:"UserId"`
+	Evaluation  string           `position:"Query" name:"Evaluation"`
+	Score       string           `position:"Query" name:"Score"`
+	MeetingUUID string           `position:"Query" name:"MeetingUUID"`
+	AppId       string           `position:"Query" name:"AppId"`
+}
+
+// CreateUserEvaluationsResponse is the response struct for api CreateUserEvaluations
+type CreateUserEvaluationsResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Success   bool   `json:"Success" xml:"Success"`
+	ErrorCode string `json:"ErrorCode" xml:"ErrorCode"`
+	Message   string `json:"Message" xml:"Message"`
+}
+
+// CreateCreateUserEvaluationsRequest creates a request to invoke CreateUserEvaluations API
+func CreateCreateUserEvaluationsRequest() (request *CreateUserEvaluationsRequest) {
+	request = &CreateUserEvaluationsRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("aliyuncvc", "2019-09-19", "CreateUserEvaluations", "aliyuncvc", "openAPI")
+	return
+}
+
+// CreateCreateUserEvaluationsResponse creates a response to parse from CreateUserEvaluations response
+func CreateCreateUserEvaluationsResponse() (response *CreateUserEvaluationsResponse) {
+	response = &CreateUserEvaluationsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/aliyuncvc/delete_user.go

@@ -0,0 +1,107 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DeleteUser invokes the aliyuncvc.DeleteUser API synchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/deleteuser.html
+func (client *Client) DeleteUser(request *DeleteUserRequest) (response *DeleteUserResponse, err error) {
+	response = CreateDeleteUserResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DeleteUserWithChan invokes the aliyuncvc.DeleteUser API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/deleteuser.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteUserWithChan(request *DeleteUserRequest) (<-chan *DeleteUserResponse, <-chan error) {
+	responseChan := make(chan *DeleteUserResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DeleteUser(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DeleteUserWithCallback invokes the aliyuncvc.DeleteUser API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/deleteuser.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteUserWithCallback(request *DeleteUserRequest, callback func(response *DeleteUserResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DeleteUserResponse
+		var err error
+		defer close(result)
+		response, err = client.DeleteUser(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DeleteUserRequest is the request struct for api DeleteUser
+type DeleteUserRequest struct {
+	*requests.RpcRequest
+	Count    requests.Integer `position:"Body" name:"Count"`
+	UserInfo string           `position:"Body" name:"UserInfo"`
+}
+
+// DeleteUserResponse is the response struct for api DeleteUser
+type DeleteUserResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Success   string `json:"Success" xml:"Success"`
+	ErrorCode int    `json:"ErrorCode" xml:"ErrorCode"`
+	Message   string `json:"Message" xml:"Message"`
+}
+
+// CreateDeleteUserRequest creates a request to invoke DeleteUser API
+func CreateDeleteUserRequest() (request *DeleteUserRequest) {
+	request = &DeleteUserRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("aliyuncvc", "2019-09-19", "DeleteUser", "aliyuncvc", "openAPI")
+	return
+}
+
+// CreateDeleteUserResponse creates a response to parse from DeleteUser response
+func CreateDeleteUserResponse() (response *DeleteUserResponse) {
+	response = &DeleteUserResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 20 - 0
services/aliyuncvc/endpoint.go

@@ -0,0 +1,20 @@
+package aliyuncvc
+
+// EndpointMap Endpoint Data
+var EndpointMap map[string]string
+
+// EndpointType regional or central
+var EndpointType = "regional"
+
+// GetEndpointMap Get Endpoint Data Map
+func GetEndpointMap() map[string]string {
+	if EndpointMap == nil {
+		EndpointMap = map[string]string{}
+	}
+	return EndpointMap
+}
+
+// GetEndpointType Get Endpoint Type Value
+func GetEndpointType() string {
+	return EndpointType
+}

+ 110 - 0
services/aliyuncvc/list_commodities.go

@@ -0,0 +1,110 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// ListCommodities invokes the aliyuncvc.ListCommodities API synchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/listcommodities.html
+func (client *Client) ListCommodities(request *ListCommoditiesRequest) (response *ListCommoditiesResponse, err error) {
+	response = CreateListCommoditiesResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ListCommoditiesWithChan invokes the aliyuncvc.ListCommodities API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/listcommodities.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListCommoditiesWithChan(request *ListCommoditiesRequest) (<-chan *ListCommoditiesResponse, <-chan error) {
+	responseChan := make(chan *ListCommoditiesResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ListCommodities(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ListCommoditiesWithCallback invokes the aliyuncvc.ListCommodities API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/listcommodities.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListCommoditiesWithCallback(request *ListCommoditiesRequest, callback func(response *ListCommoditiesResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ListCommoditiesResponse
+		var err error
+		defer close(result)
+		response, err = client.ListCommodities(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ListCommoditiesRequest is the request struct for api ListCommodities
+type ListCommoditiesRequest struct {
+	*requests.RpcRequest
+	PageSize   requests.Integer `position:"Query" name:"PageSize"`
+	EndTime    string           `position:"Query" name:"EndTime"`
+	StartTime  string           `position:"Query" name:"StartTime"`
+	PageNumber requests.Integer `position:"Query" name:"PageNumber"`
+}
+
+// ListCommoditiesResponse is the response struct for api ListCommodities
+type ListCommoditiesResponse struct {
+	*responses.BaseResponse
+	ErrorCode int    `json:"ErrorCode" xml:"ErrorCode"`
+	Message   string `json:"Message" xml:"Message"`
+	Success   bool   `json:"Success" xml:"Success"`
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Data      Data   `json:"Data" xml:"Data"`
+}
+
+// CreateListCommoditiesRequest creates a request to invoke ListCommodities API
+func CreateListCommoditiesRequest() (request *ListCommoditiesRequest) {
+	request = &ListCommoditiesRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("aliyuncvc", "2019-09-19", "ListCommodities", "aliyuncvc", "openAPI")
+	return
+}
+
+// CreateListCommoditiesResponse creates a response to parse from ListCommodities response
+func CreateListCommoditiesResponse() (response *ListCommoditiesResponse) {
+	response = &ListCommoditiesResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/aliyuncvc/query_isv_user_info.go

@@ -0,0 +1,107 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// QueryIsvUserInfo invokes the aliyuncvc.QueryIsvUserInfo API synchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/queryisvuserinfo.html
+func (client *Client) QueryIsvUserInfo(request *QueryIsvUserInfoRequest) (response *QueryIsvUserInfoResponse, err error) {
+	response = CreateQueryIsvUserInfoResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// QueryIsvUserInfoWithChan invokes the aliyuncvc.QueryIsvUserInfo API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/queryisvuserinfo.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) QueryIsvUserInfoWithChan(request *QueryIsvUserInfoRequest) (<-chan *QueryIsvUserInfoResponse, <-chan error) {
+	responseChan := make(chan *QueryIsvUserInfoResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.QueryIsvUserInfo(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// QueryIsvUserInfoWithCallback invokes the aliyuncvc.QueryIsvUserInfo API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/queryisvuserinfo.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) QueryIsvUserInfoWithCallback(request *QueryIsvUserInfoRequest, callback func(response *QueryIsvUserInfoResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *QueryIsvUserInfoResponse
+		var err error
+		defer close(result)
+		response, err = client.QueryIsvUserInfo(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// QueryIsvUserInfoRequest is the request struct for api QueryIsvUserInfo
+type QueryIsvUserInfoRequest struct {
+	*requests.RpcRequest
+	UserId string `position:"Query" name:"UserId"`
+}
+
+// QueryIsvUserInfoResponse is the response struct for api QueryIsvUserInfo
+type QueryIsvUserInfoResponse struct {
+	*responses.BaseResponse
+	ErrorCode int      `json:"ErrorCode" xml:"ErrorCode"`
+	Message   string   `json:"Message" xml:"Message"`
+	Success   bool     `json:"Success" xml:"Success"`
+	RequestId string   `json:"RequestId" xml:"RequestId"`
+	UserInfo  UserInfo `json:"UserInfo" xml:"UserInfo"`
+}
+
+// CreateQueryIsvUserInfoRequest creates a request to invoke QueryIsvUserInfo API
+func CreateQueryIsvUserInfoRequest() (request *QueryIsvUserInfoRequest) {
+	request = &QueryIsvUserInfoRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("aliyuncvc", "2019-09-19", "QueryIsvUserInfo", "aliyuncvc", "openAPI")
+	return
+}
+
+// CreateQueryIsvUserInfoResponse creates a response to parse from QueryIsvUserInfo response
+func CreateQueryIsvUserInfoResponse() (response *QueryIsvUserInfoResponse) {
+	response = &QueryIsvUserInfoResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/aliyuncvc/query_meeting_info.go

@@ -0,0 +1,107 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// QueryMeetingInfo invokes the aliyuncvc.QueryMeetingInfo API synchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/querymeetinginfo.html
+func (client *Client) QueryMeetingInfo(request *QueryMeetingInfoRequest) (response *QueryMeetingInfoResponse, err error) {
+	response = CreateQueryMeetingInfoResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// QueryMeetingInfoWithChan invokes the aliyuncvc.QueryMeetingInfo API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/querymeetinginfo.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) QueryMeetingInfoWithChan(request *QueryMeetingInfoRequest) (<-chan *QueryMeetingInfoResponse, <-chan error) {
+	responseChan := make(chan *QueryMeetingInfoResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.QueryMeetingInfo(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// QueryMeetingInfoWithCallback invokes the aliyuncvc.QueryMeetingInfo API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/querymeetinginfo.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) QueryMeetingInfoWithCallback(request *QueryMeetingInfoRequest, callback func(response *QueryMeetingInfoResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *QueryMeetingInfoResponse
+		var err error
+		defer close(result)
+		response, err = client.QueryMeetingInfo(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// QueryMeetingInfoRequest is the request struct for api QueryMeetingInfo
+type QueryMeetingInfoRequest struct {
+	*requests.RpcRequest
+	MeetingUUID string `position:"Body" name:"MeetingUUID"`
+}
+
+// QueryMeetingInfoResponse is the response struct for api QueryMeetingInfo
+type QueryMeetingInfoResponse struct {
+	*responses.BaseResponse
+	ErrorCode   int         `json:"ErrorCode" xml:"ErrorCode"`
+	Message     string      `json:"Message" xml:"Message"`
+	Success     bool        `json:"Success" xml:"Success"`
+	RequestId   string      `json:"RequestId" xml:"RequestId"`
+	MeetingInfo MeetingInfo `json:"MeetingInfo" xml:"MeetingInfo"`
+}
+
+// CreateQueryMeetingInfoRequest creates a request to invoke QueryMeetingInfo API
+func CreateQueryMeetingInfoRequest() (request *QueryMeetingInfoRequest) {
+	request = &QueryMeetingInfoRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("aliyuncvc", "2019-09-19", "QueryMeetingInfo", "aliyuncvc", "openAPI")
+	return
+}
+
+// CreateQueryMeetingInfoResponse creates a response to parse from QueryMeetingInfo response
+func CreateQueryMeetingInfoResponse() (response *QueryMeetingInfoResponse) {
+	response = &QueryMeetingInfoResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/aliyuncvc/query_member_record.go

@@ -0,0 +1,107 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// QueryMemberRecord invokes the aliyuncvc.QueryMemberRecord API synchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/querymemberrecord.html
+func (client *Client) QueryMemberRecord(request *QueryMemberRecordRequest) (response *QueryMemberRecordResponse, err error) {
+	response = CreateQueryMemberRecordResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// QueryMemberRecordWithChan invokes the aliyuncvc.QueryMemberRecord API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/querymemberrecord.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) QueryMemberRecordWithChan(request *QueryMemberRecordRequest) (<-chan *QueryMemberRecordResponse, <-chan error) {
+	responseChan := make(chan *QueryMemberRecordResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.QueryMemberRecord(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// QueryMemberRecordWithCallback invokes the aliyuncvc.QueryMemberRecord API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/querymemberrecord.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) QueryMemberRecordWithCallback(request *QueryMemberRecordRequest, callback func(response *QueryMemberRecordResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *QueryMemberRecordResponse
+		var err error
+		defer close(result)
+		response, err = client.QueryMemberRecord(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// QueryMemberRecordRequest is the request struct for api QueryMemberRecord
+type QueryMemberRecordRequest struct {
+	*requests.RpcRequest
+	MeetingUUID string `position:"Query" name:"MeetingUUID"`
+}
+
+// QueryMemberRecordResponse is the response struct for api QueryMemberRecord
+type QueryMemberRecordResponse struct {
+	*responses.BaseResponse
+	ErrorCode   int         `json:"ErrorCode" xml:"ErrorCode"`
+	Message     string      `json:"Message" xml:"Message"`
+	Success     bool        `json:"Success" xml:"Success"`
+	RequestId   string      `json:"RequestId" xml:"RequestId"`
+	MeetingInfo MeetingInfo `json:"MeetingInfo" xml:"MeetingInfo"`
+}
+
+// CreateQueryMemberRecordRequest creates a request to invoke QueryMemberRecord API
+func CreateQueryMemberRecordRequest() (request *QueryMemberRecordRequest) {
+	request = &QueryMemberRecordRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("aliyuncvc", "2019-09-19", "QueryMemberRecord", "aliyuncvc", "openAPI")
+	return
+}
+
+// CreateQueryMemberRecordResponse creates a response to parse from QueryMemberRecord response
+func CreateQueryMemberRecordResponse() (response *QueryMemberRecordResponse) {
+	response = &QueryMemberRecordResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 108 - 0
services/aliyuncvc/query_statistics.go

@@ -0,0 +1,108 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// QueryStatistics invokes the aliyuncvc.QueryStatistics API synchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/querystatistics.html
+func (client *Client) QueryStatistics(request *QueryStatisticsRequest) (response *QueryStatisticsResponse, err error) {
+	response = CreateQueryStatisticsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// QueryStatisticsWithChan invokes the aliyuncvc.QueryStatistics API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/querystatistics.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) QueryStatisticsWithChan(request *QueryStatisticsRequest) (<-chan *QueryStatisticsResponse, <-chan error) {
+	responseChan := make(chan *QueryStatisticsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.QueryStatistics(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// QueryStatisticsWithCallback invokes the aliyuncvc.QueryStatistics API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/querystatistics.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) QueryStatisticsWithCallback(request *QueryStatisticsRequest, callback func(response *QueryStatisticsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *QueryStatisticsResponse
+		var err error
+		defer close(result)
+		response, err = client.QueryStatistics(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// QueryStatisticsRequest is the request struct for api QueryStatistics
+type QueryStatisticsRequest struct {
+	*requests.RpcRequest
+	EndTime   string `position:"Query" name:"EndTime"`
+	StartTime string `position:"Query" name:"StartTime"`
+}
+
+// QueryStatisticsResponse is the response struct for api QueryStatistics
+type QueryStatisticsResponse struct {
+	*responses.BaseResponse
+	ErrorCode int    `json:"ErrorCode" xml:"ErrorCode"`
+	Message   string `json:"Message" xml:"Message"`
+	Success   bool   `json:"Success" xml:"Success"`
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Data      Data   `json:"Data" xml:"Data"`
+}
+
+// CreateQueryStatisticsRequest creates a request to invoke QueryStatistics API
+func CreateQueryStatisticsRequest() (request *QueryStatisticsRequest) {
+	request = &QueryStatisticsRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("aliyuncvc", "2019-09-19", "QueryStatistics", "aliyuncvc", "openAPI")
+	return
+}
+
+// CreateQueryStatisticsResponse creates a response to parse from QueryStatistics response
+func CreateQueryStatisticsResponse() (response *QueryStatisticsResponse) {
+	response = &QueryStatisticsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 106 - 0
services/aliyuncvc/query_user_buy_attribute.go

@@ -0,0 +1,106 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// QueryUserBuyAttribute invokes the aliyuncvc.QueryUserBuyAttribute API synchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/queryuserbuyattribute.html
+func (client *Client) QueryUserBuyAttribute(request *QueryUserBuyAttributeRequest) (response *QueryUserBuyAttributeResponse, err error) {
+	response = CreateQueryUserBuyAttributeResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// QueryUserBuyAttributeWithChan invokes the aliyuncvc.QueryUserBuyAttribute API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/queryuserbuyattribute.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) QueryUserBuyAttributeWithChan(request *QueryUserBuyAttributeRequest) (<-chan *QueryUserBuyAttributeResponse, <-chan error) {
+	responseChan := make(chan *QueryUserBuyAttributeResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.QueryUserBuyAttribute(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// QueryUserBuyAttributeWithCallback invokes the aliyuncvc.QueryUserBuyAttribute API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/queryuserbuyattribute.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) QueryUserBuyAttributeWithCallback(request *QueryUserBuyAttributeRequest, callback func(response *QueryUserBuyAttributeResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *QueryUserBuyAttributeResponse
+		var err error
+		defer close(result)
+		response, err = client.QueryUserBuyAttribute(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// QueryUserBuyAttributeRequest is the request struct for api QueryUserBuyAttribute
+type QueryUserBuyAttributeRequest struct {
+	*requests.RpcRequest
+}
+
+// QueryUserBuyAttributeResponse is the response struct for api QueryUserBuyAttribute
+type QueryUserBuyAttributeResponse struct {
+	*responses.BaseResponse
+	ErrorCode        int    `json:"ErrorCode" xml:"ErrorCode"`
+	Message          string `json:"Message" xml:"Message"`
+	Success          bool   `json:"Success" xml:"Success"`
+	UserBuyAttribute bool   `json:"UserBuyAttribute" xml:"UserBuyAttribute"`
+	RequestId        string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateQueryUserBuyAttributeRequest creates a request to invoke QueryUserBuyAttribute API
+func CreateQueryUserBuyAttributeRequest() (request *QueryUserBuyAttributeRequest) {
+	request = &QueryUserBuyAttributeRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("aliyuncvc", "2019-09-19", "QueryUserBuyAttribute", "aliyuncvc", "openAPI")
+	return
+}
+
+// CreateQueryUserBuyAttributeResponse creates a response to parse from QueryUserBuyAttribute response
+func CreateQueryUserBuyAttributeResponse() (response *QueryUserBuyAttributeResponse) {
+	response = &QueryUserBuyAttributeResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 106 - 0
services/aliyuncvc/query_user_evaluation.go

@@ -0,0 +1,106 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// QueryUserEvaluation invokes the aliyuncvc.QueryUserEvaluation API synchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/queryuserevaluation.html
+func (client *Client) QueryUserEvaluation(request *QueryUserEvaluationRequest) (response *QueryUserEvaluationResponse, err error) {
+	response = CreateQueryUserEvaluationResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// QueryUserEvaluationWithChan invokes the aliyuncvc.QueryUserEvaluation API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/queryuserevaluation.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) QueryUserEvaluationWithChan(request *QueryUserEvaluationRequest) (<-chan *QueryUserEvaluationResponse, <-chan error) {
+	responseChan := make(chan *QueryUserEvaluationResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.QueryUserEvaluation(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// QueryUserEvaluationWithCallback invokes the aliyuncvc.QueryUserEvaluation API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/queryuserevaluation.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) QueryUserEvaluationWithCallback(request *QueryUserEvaluationRequest, callback func(response *QueryUserEvaluationResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *QueryUserEvaluationResponse
+		var err error
+		defer close(result)
+		response, err = client.QueryUserEvaluation(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// QueryUserEvaluationRequest is the request struct for api QueryUserEvaluation
+type QueryUserEvaluationRequest struct {
+	*requests.RpcRequest
+}
+
+// QueryUserEvaluationResponse is the response struct for api QueryUserEvaluation
+type QueryUserEvaluationResponse struct {
+	*responses.BaseResponse
+	UserEvaluation string `json:"UserEvaluation" xml:"UserEvaluation"`
+	ErrorCode      int    `json:"ErrorCode" xml:"ErrorCode"`
+	Message        string `json:"Message" xml:"Message"`
+	Success        bool   `json:"Success" xml:"Success"`
+	RequestId      string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateQueryUserEvaluationRequest creates a request to invoke QueryUserEvaluation API
+func CreateQueryUserEvaluationRequest() (request *QueryUserEvaluationRequest) {
+	request = &QueryUserEvaluationRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("aliyuncvc", "2019-09-19", "QueryUserEvaluation", "aliyuncvc", "openAPI")
+	return
+}
+
+// CreateQueryUserEvaluationResponse creates a response to parse from QueryUserEvaluation response
+func CreateQueryUserEvaluationResponse() (response *QueryUserEvaluationResponse) {
+	response = &QueryUserEvaluationResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 106 - 0
services/aliyuncvc/query_user_info.go

@@ -0,0 +1,106 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// QueryUserInfo invokes the aliyuncvc.QueryUserInfo API synchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/queryuserinfo.html
+func (client *Client) QueryUserInfo(request *QueryUserInfoRequest) (response *QueryUserInfoResponse, err error) {
+	response = CreateQueryUserInfoResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// QueryUserInfoWithChan invokes the aliyuncvc.QueryUserInfo API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/queryuserinfo.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) QueryUserInfoWithChan(request *QueryUserInfoRequest) (<-chan *QueryUserInfoResponse, <-chan error) {
+	responseChan := make(chan *QueryUserInfoResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.QueryUserInfo(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// QueryUserInfoWithCallback invokes the aliyuncvc.QueryUserInfo API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/queryuserinfo.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) QueryUserInfoWithCallback(request *QueryUserInfoRequest, callback func(response *QueryUserInfoResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *QueryUserInfoResponse
+		var err error
+		defer close(result)
+		response, err = client.QueryUserInfo(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// QueryUserInfoRequest is the request struct for api QueryUserInfo
+type QueryUserInfoRequest struct {
+	*requests.RpcRequest
+}
+
+// QueryUserInfoResponse is the response struct for api QueryUserInfo
+type QueryUserInfoResponse struct {
+	*responses.BaseResponse
+	ErrorCode int      `json:"ErrorCode" xml:"ErrorCode"`
+	Message   string   `json:"Message" xml:"Message"`
+	Success   bool     `json:"Success" xml:"Success"`
+	RequestId string   `json:"RequestId" xml:"RequestId"`
+	UserInfo  UserInfo `json:"UserInfo" xml:"UserInfo"`
+}
+
+// CreateQueryUserInfoRequest creates a request to invoke QueryUserInfo API
+func CreateQueryUserInfoRequest() (request *QueryUserInfoRequest) {
+	request = &QueryUserInfoRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("aliyuncvc", "2019-09-19", "QueryUserInfo", "aliyuncvc", "openAPI")
+	return
+}
+
+// CreateQueryUserInfoResponse creates a response to parse from QueryUserInfo response
+func CreateQueryUserInfoResponse() (response *QueryUserInfoResponse) {
+	response = &QueryUserInfoResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 108 - 0
services/aliyuncvc/query_user_list.go

@@ -0,0 +1,108 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// QueryUserList invokes the aliyuncvc.QueryUserList API synchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/queryuserlist.html
+func (client *Client) QueryUserList(request *QueryUserListRequest) (response *QueryUserListResponse, err error) {
+	response = CreateQueryUserListResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// QueryUserListWithChan invokes the aliyuncvc.QueryUserList API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/queryuserlist.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) QueryUserListWithChan(request *QueryUserListRequest) (<-chan *QueryUserListResponse, <-chan error) {
+	responseChan := make(chan *QueryUserListResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.QueryUserList(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// QueryUserListWithCallback invokes the aliyuncvc.QueryUserList API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/queryuserlist.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) QueryUserListWithCallback(request *QueryUserListRequest, callback func(response *QueryUserListResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *QueryUserListResponse
+		var err error
+		defer close(result)
+		response, err = client.QueryUserList(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// QueryUserListRequest is the request struct for api QueryUserList
+type QueryUserListRequest struct {
+	*requests.RpcRequest
+	PageSize requests.Integer `position:"Query" name:"PageSize"`
+	PageNum  requests.Integer `position:"Query" name:"PageNum"`
+}
+
+// QueryUserListResponse is the response struct for api QueryUserList
+type QueryUserListResponse struct {
+	*responses.BaseResponse
+	ErrorCode int    `json:"ErrorCode" xml:"ErrorCode"`
+	Message   string `json:"Message" xml:"Message"`
+	Success   bool   `json:"Success" xml:"Success"`
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Data      Data   `json:"Data" xml:"Data"`
+}
+
+// CreateQueryUserListRequest creates a request to invoke QueryUserList API
+func CreateQueryUserListRequest() (request *QueryUserListRequest) {
+	request = &QueryUserListRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("aliyuncvc", "2019-09-19", "QueryUserList", "aliyuncvc", "openAPI")
+	return
+}
+
+// CreateQueryUserListResponse creates a response to parse from QueryUserList response
+func CreateQueryUserListResponse() (response *QueryUserListResponse) {
+	response = &QueryUserListResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 106 - 0
services/aliyuncvc/remove_meeting.go

@@ -0,0 +1,106 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// RemoveMeeting invokes the aliyuncvc.RemoveMeeting API synchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/removemeeting.html
+func (client *Client) RemoveMeeting(request *RemoveMeetingRequest) (response *RemoveMeetingResponse, err error) {
+	response = CreateRemoveMeetingResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// RemoveMeetingWithChan invokes the aliyuncvc.RemoveMeeting API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/removemeeting.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RemoveMeetingWithChan(request *RemoveMeetingRequest) (<-chan *RemoveMeetingResponse, <-chan error) {
+	responseChan := make(chan *RemoveMeetingResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.RemoveMeeting(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// RemoveMeetingWithCallback invokes the aliyuncvc.RemoveMeeting API asynchronously
+// api document: https://help.aliyun.com/api/aliyuncvc/removemeeting.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RemoveMeetingWithCallback(request *RemoveMeetingRequest, callback func(response *RemoveMeetingResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *RemoveMeetingResponse
+		var err error
+		defer close(result)
+		response, err = client.RemoveMeeting(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// RemoveMeetingRequest is the request struct for api RemoveMeeting
+type RemoveMeetingRequest struct {
+	*requests.RpcRequest
+	MeetingUUID string `position:"Body" name:"MeetingUUID"`
+}
+
+// RemoveMeetingResponse is the response struct for api RemoveMeeting
+type RemoveMeetingResponse struct {
+	*responses.BaseResponse
+	ErrorCode int    `json:"ErrorCode" xml:"ErrorCode"`
+	Message   string `json:"Message" xml:"Message"`
+	Success   bool   `json:"Success" xml:"Success"`
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateRemoveMeetingRequest creates a request to invoke RemoveMeeting API
+func CreateRemoveMeetingRequest() (request *RemoveMeetingRequest) {
+	request = &RemoveMeetingRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("aliyuncvc", "2019-09-19", "RemoveMeeting", "aliyuncvc", "openAPI")
+	return
+}
+
+// CreateRemoveMeetingResponse creates a response to parse from RemoveMeeting response
+func CreateRemoveMeetingResponse() (response *RemoveMeetingResponse) {
+	response = &RemoveMeetingResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 21 - 0
services/aliyuncvc/struct_commodities.go

@@ -0,0 +1,21 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Commodities is a nested struct in aliyuncvc response
+type Commodities struct {
+	Commodity []Commodity `json:"Commodity" xml:"Commodity"`
+}

+ 23 - 0
services/aliyuncvc/struct_commodity.go

@@ -0,0 +1,23 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Commodity is a nested struct in aliyuncvc response
+type Commodity struct {
+	EndTime               string `json:"EndTime" xml:"EndTime"`
+	Instancepropertyvalue string `json:"Instancepropertyvalue" xml:"Instancepropertyvalue"`
+	StartTime             string `json:"StartTime" xml:"StartTime"`
+}

+ 27 - 0
services/aliyuncvc/struct_data.go

@@ -0,0 +1,27 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Data is a nested struct in aliyuncvc response
+type Data struct {
+	TotalCount  int           `json:"TotalCount" xml:"TotalCount"`
+	PageNumber  int           `json:"PageNumber" xml:"PageNumber"`
+	PageSize    int           `json:"PageSize" xml:"PageSize"`
+	Total       Total         `json:"Total" xml:"Total"`
+	DayInfo     []DayInfoItem `json:"DayInfo" xml:"DayInfo"`
+	Commodities []Commodity   `json:"Commodities" xml:"Commodities"`
+	UserInfos   []UserInfo    `json:"UserInfos" xml:"UserInfos"`
+}

+ 21 - 0
services/aliyuncvc/struct_day_info.go

@@ -0,0 +1,21 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// DayInfo is a nested struct in aliyuncvc response
+type DayInfo struct {
+	DayInfoItem []DayInfoItem `json:"DayInfo" xml:"DayInfo"`
+}

+ 24 - 0
services/aliyuncvc/struct_day_info_item.go

@@ -0,0 +1,24 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// DayInfoItem is a nested struct in aliyuncvc response
+type DayInfoItem struct {
+	MeetingNum    string `json:"MeetingNum" xml:"MeetingNum"`
+	MeetingLength string `json:"MeetingLength" xml:"MeetingLength"`
+	MemberNum     string `json:"MemberNum" xml:"MemberNum"`
+	Day           string `json:"Day" xml:"Day"`
+}

+ 36 - 0
services/aliyuncvc/struct_meeting_info.go

@@ -0,0 +1,36 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// MeetingInfo is a nested struct in aliyuncvc response
+type MeetingInfo struct {
+	ValidDate         int64            `json:"ValidDate" xml:"ValidDate"`
+	MeetingToken      string           `json:"MeetingToken" xml:"MeetingToken"`
+	MeetingUUID       string           `json:"MeetingUUID" xml:"MeetingUUID"`
+	MeetingAppId      string           `json:"MeetingAppId" xml:"MeetingAppId"`
+	MeetingCode       string           `json:"MeetingCode" xml:"MeetingCode"`
+	MemberUUID        string           `json:"MemberUUID" xml:"MemberUUID"`
+	ClientAppId       string           `json:"ClientAppId" xml:"ClientAppId"`
+	UserId            string           `json:"UserId" xml:"UserId"`
+	MeetingName       string           `json:"MeetingName" xml:"MeetingName"`
+	UserName          string           `json:"UserName" xml:"UserName"`
+	MeetingDomain     string           `json:"MeetingDomain" xml:"MeetingDomain"`
+	Memo              string           `json:"Memo" xml:"Memo"`
+	CreateDate        int64            `json:"CreateDate" xml:"CreateDate"`
+	SlsInfo           SlsInfo          `json:"SlsInfo" xml:"SlsInfo"`
+	MemberList        []MemberListItem `json:"MemberList" xml:"MemberList"`
+	MemberRecordsList []MemberRecord   `json:"MemberRecordsList" xml:"MemberRecordsList"`
+}

+ 21 - 0
services/aliyuncvc/struct_member_list.go

@@ -0,0 +1,21 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// MemberList is a nested struct in aliyuncvc response
+type MemberList struct {
+	MemberListItem []MemberListItem `json:"MemberList" xml:"MemberList"`
+}

+ 25 - 0
services/aliyuncvc/struct_member_list_item.go

@@ -0,0 +1,25 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// MemberListItem is a nested struct in aliyuncvc response
+type MemberListItem struct {
+	UserAvatarUrl string `json:"UserAvatarUrl" xml:"UserAvatarUrl"`
+	MemberUUID    string `json:"MemberUUID" xml:"MemberUUID"`
+	UserName      string `json:"UserName" xml:"UserName"`
+	UserId        string `json:"UserId" xml:"UserId"`
+	Status        string `json:"Status" xml:"Status"`
+}

+ 23 - 0
services/aliyuncvc/struct_member_record.go

@@ -0,0 +1,23 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// MemberRecord is a nested struct in aliyuncvc response
+type MemberRecord struct {
+	MemberUUID string `json:"MemberUUID" xml:"MemberUUID"`
+	UserId     string `json:"UserId" xml:"UserId"`
+	Status     string `json:"Status" xml:"Status"`
+}

+ 21 - 0
services/aliyuncvc/struct_member_records_list.go

@@ -0,0 +1,21 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// MemberRecordsList is a nested struct in aliyuncvc response
+type MemberRecordsList struct {
+	MemberRecord []MemberRecord `json:"MemberRecord" xml:"MemberRecord"`
+}

+ 23 - 0
services/aliyuncvc/struct_sls_info.go

@@ -0,0 +1,23 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// SlsInfo is a nested struct in aliyuncvc response
+type SlsInfo struct {
+	LogServiceEndpoint string `json:"LogServiceEndpoint" xml:"LogServiceEndpoint"`
+	Logstore           string `json:"Logstore" xml:"Logstore"`
+	Project            string `json:"Project" xml:"Project"`
+}

+ 23 - 0
services/aliyuncvc/struct_total.go

@@ -0,0 +1,23 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Total is a nested struct in aliyuncvc response
+type Total struct {
+	MeetingNum    int `json:"MeetingNum" xml:"MeetingNum"`
+	MeetingLength int `json:"MeetingLength" xml:"MeetingLength"`
+	MemberNum     int `json:"MemberNum" xml:"MemberNum"`
+}

+ 34 - 0
services/aliyuncvc/struct_user_info.go

@@ -0,0 +1,34 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// UserInfo is a nested struct in aliyuncvc response
+type UserInfo struct {
+	UserMobile          string `json:"UserMobile" xml:"UserMobile"`
+	CurNum              int    `json:"CurNum" xml:"CurNum"`
+	DepartName          string `json:"DepartName" xml:"DepartName"`
+	GroupName           string `json:"GroupName" xml:"GroupName"`
+	CreateTime          int64  `json:"CreateTime" xml:"CreateTime"`
+	UserTel             string `json:"UserTel" xml:"UserTel"`
+	UserAvatarUrl       string `json:"UserAvatarUrl" xml:"UserAvatarUrl"`
+	UserId              string `json:"UserId" xml:"UserId"`
+	UserName            string `json:"UserName" xml:"UserName"`
+	GroupId             string `json:"GroupId" xml:"GroupId"`
+	MaxNum              int    `json:"MaxNum" xml:"MaxNum"`
+	DepartId            string `json:"DepartId" xml:"DepartId"`
+	UserEmail           string `json:"UserEmail" xml:"UserEmail"`
+	MemberConcurrentMax int    `json:"MemberConcurrentMax" xml:"MemberConcurrentMax"`
+}

+ 21 - 0
services/aliyuncvc/struct_user_infos.go

@@ -0,0 +1,21 @@
+package aliyuncvc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// UserInfos is a nested struct in aliyuncvc response
+type UserInfos struct {
+	UserInfo []UserInfo `json:"UserInfo" xml:"UserInfo"`
+}