1package cdrs 2 3//Licensed under the Apache License, Version 2.0 (the "License"); 4//you may not use this file except in compliance with the License. 5//You may obtain a copy of the License at 6// 7//http://www.apache.org/licenses/LICENSE-2.0 8// 9//Unless required by applicable law or agreed to in writing, software 10//distributed under the License is distributed on an "AS IS" BASIS, 11//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12//See the License for the specific language governing permissions and 13//limitations under the License. 14// 15// Code generated by Alibaba Cloud SDK Code Generator. 16// Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 18import ( 19 "github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests" 20 "github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses" 21) 22 23// UpdateMonitor invokes the cdrs.UpdateMonitor API synchronously 24func (client *Client) UpdateMonitor(request *UpdateMonitorRequest) (response *UpdateMonitorResponse, err error) { 25 response = CreateUpdateMonitorResponse() 26 err = client.DoAction(request, response) 27 return 28} 29 30// UpdateMonitorWithChan invokes the cdrs.UpdateMonitor API asynchronously 31func (client *Client) UpdateMonitorWithChan(request *UpdateMonitorRequest) (<-chan *UpdateMonitorResponse, <-chan error) { 32 responseChan := make(chan *UpdateMonitorResponse, 1) 33 errChan := make(chan error, 1) 34 err := client.AddAsyncTask(func() { 35 defer close(responseChan) 36 defer close(errChan) 37 response, err := client.UpdateMonitor(request) 38 if err != nil { 39 errChan <- err 40 } else { 41 responseChan <- response 42 } 43 }) 44 if err != nil { 45 errChan <- err 46 close(responseChan) 47 close(errChan) 48 } 49 return responseChan, errChan 50} 51 52// UpdateMonitorWithCallback invokes the cdrs.UpdateMonitor API asynchronously 53func (client *Client) UpdateMonitorWithCallback(request *UpdateMonitorRequest, callback func(response *UpdateMonitorResponse, err error)) <-chan int { 54 result := make(chan int, 1) 55 err := client.AddAsyncTask(func() { 56 var response *UpdateMonitorResponse 57 var err error 58 defer close(result) 59 response, err = client.UpdateMonitor(request) 60 callback(response, err) 61 result <- 1 62 }) 63 if err != nil { 64 defer close(result) 65 callback(nil, err) 66 result <- 0 67 } 68 return result 69} 70 71// UpdateMonitorRequest is the request struct for api UpdateMonitor 72type UpdateMonitorRequest struct { 73 *requests.RpcRequest 74 CorpId string `position:"Body" name:"CorpId"` 75 Description string `position:"Body" name:"Description"` 76 RuleName string `position:"Body" name:"RuleName"` 77 PicOperateType string `position:"Body" name:"PicOperateType"` 78 AttributeName string `position:"Body" name:"AttributeName"` 79 AttributeOperateType string `position:"Body" name:"AttributeOperateType"` 80 RuleExpression string `position:"Body" name:"RuleExpression"` 81 NotifierTimeOut requests.Integer `position:"Body" name:"NotifierTimeOut"` 82 TaskId string `position:"Body" name:"TaskId"` 83 DeviceOperateType string `position:"Body" name:"DeviceOperateType"` 84 PicList string `position:"Body" name:"PicList"` 85 AttributeValueList string `position:"Body" name:"AttributeValueList"` 86 NotifierAppSecret string `position:"Body" name:"NotifierAppSecret"` 87 NotifierExtendValues string `position:"Body" name:"NotifierExtendValues"` 88 DeviceList string `position:"Body" name:"DeviceList"` 89 NotifierUrl string `position:"Body" name:"NotifierUrl"` 90 NotifierType string `position:"Body" name:"NotifierType"` 91 BizId string `position:"Body" name:"BizId"` 92 AlgorithmVendor string `position:"Body" name:"AlgorithmVendor"` 93} 94 95// UpdateMonitorResponse is the response struct for api UpdateMonitor 96type UpdateMonitorResponse struct { 97 *responses.BaseResponse 98 Code string `json:"Code" xml:"Code"` 99 Data string `json:"Data" xml:"Data"` 100 Message string `json:"Message" xml:"Message"` 101 RequestId string `json:"RequestId" xml:"RequestId"` 102} 103 104// CreateUpdateMonitorRequest creates a request to invoke UpdateMonitor API 105func CreateUpdateMonitorRequest() (request *UpdateMonitorRequest) { 106 request = &UpdateMonitorRequest{ 107 RpcRequest: &requests.RpcRequest{}, 108 } 109 request.InitWithApiInfo("CDRS", "2020-11-01", "UpdateMonitor", "", "") 110 request.Method = requests.POST 111 return 112} 113 114// CreateUpdateMonitorResponse creates a response to parse from UpdateMonitor response 115func CreateUpdateMonitorResponse() (response *UpdateMonitorResponse) { 116 response = &UpdateMonitorResponse{ 117 BaseResponse: &responses.BaseResponse{}, 118 } 119 return 120} 121