# frozen_string_literal: true # Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved. # # 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. require 'json' module TencentCloud module Bm module V20180423 class Client < TencentCloud::Common::AbstractClient def initialize(credential, region, profile = nil) api_version = '2018-04-23' api_endpoint = 'bm.tencentcloudapi.com' sdk_version = 'BM_' + File.read(File.expand_path('../VERSION', __dir__)).strip super(credential, region, api_version, api_endpoint, sdk_version, profile) end # 服务器绑定CAM角色,该角色授权访问黑石物理服务器服务,为黑石物理服务器提供了访问资源的权限,如请求服务器的临时证书 # @param request: Request instance for AttachCamRole. # @type request: :class:`Tencentcloud::bm::V20180423::AttachCamRoleRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::AttachCamRoleResponse` def AttachCamRole(request) body = send_request('AttachCamRole', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = AttachCamRoleResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 为预授权规则绑定标签 # @param request: Request instance for BindPsaTag. # @type request: :class:`Tencentcloud::bm::V20180423::BindPsaTagRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::BindPsaTagResponse` def BindPsaTag(request) body = send_request('BindPsaTag', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = BindPsaTagResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 购买黑石物理机 # @param request: Request instance for BuyDevices. # @type request: :class:`Tencentcloud::bm::V20180423::BuyDevicesRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::BuyDevicesResponse` def BuyDevices(request) body = send_request('BuyDevices', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = BuyDevicesResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 创建自定义镜像<br> # 每个AppId在每个可用区最多保留20个自定义镜像 # @param request: Request instance for CreateCustomImage. # @type request: :class:`Tencentcloud::bm::V20180423::CreateCustomImageRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::CreateCustomImageResponse` def CreateCustomImage(request) body = send_request('CreateCustomImage', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = CreateCustomImageResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 创建预授权规则 # @param request: Request instance for CreatePsaRegulation. # @type request: :class:`Tencentcloud::bm::V20180423::CreatePsaRegulationRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::CreatePsaRegulationResponse` def CreatePsaRegulation(request) body = send_request('CreatePsaRegulation', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = CreatePsaRegulationResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 创建黑石竞价实例 # @param request: Request instance for CreateSpotDevice. # @type request: :class:`Tencentcloud::bm::V20180423::CreateSpotDeviceRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::CreateSpotDeviceResponse` def CreateSpotDevice(request) body = send_request('CreateSpotDevice', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = CreateSpotDeviceResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 创建自定义脚本 # @param request: Request instance for CreateUserCmd. # @type request: :class:`Tencentcloud::bm::V20180423::CreateUserCmdRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::CreateUserCmdResponse` def CreateUserCmd(request) body = send_request('CreateUserCmd', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = CreateUserCmdResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 删除自定义镜像<br> # 正用于部署或重装中的镜像被删除后,镜像文件将保留一段时间,直到部署或重装结束 # @param request: Request instance for DeleteCustomImages. # @type request: :class:`Tencentcloud::bm::V20180423::DeleteCustomImagesRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DeleteCustomImagesResponse` def DeleteCustomImages(request) body = send_request('DeleteCustomImages', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DeleteCustomImagesResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 删除预授权规则 # @param request: Request instance for DeletePsaRegulation. # @type request: :class:`Tencentcloud::bm::V20180423::DeletePsaRegulationRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DeletePsaRegulationResponse` def DeletePsaRegulation(request) body = send_request('DeletePsaRegulation', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DeletePsaRegulationResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 删除自定义脚本 # @param request: Request instance for DeleteUserCmds. # @type request: :class:`Tencentcloud::bm::V20180423::DeleteUserCmdsRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DeleteUserCmdsResponse` def DeleteUserCmds(request) body = send_request('DeleteUserCmds', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DeleteUserCmdsResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 查询自定义镜像制作进度 # @param request: Request instance for DescribeCustomImageProcess. # @type request: :class:`Tencentcloud::bm::V20180423::DescribeCustomImageProcessRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DescribeCustomImageProcessResponse` def DescribeCustomImageProcess(request) body = send_request('DescribeCustomImageProcess', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DescribeCustomImageProcessResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 查看自定义镜像列表 # @param request: Request instance for DescribeCustomImages. # @type request: :class:`Tencentcloud::bm::V20180423::DescribeCustomImagesRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DescribeCustomImagesResponse` def DescribeCustomImages(request) body = send_request('DescribeCustomImages', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DescribeCustomImagesResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 获取设备类型 # @param request: Request instance for DescribeDeviceClass. # @type request: :class:`Tencentcloud::bm::V20180423::DescribeDeviceClassRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DescribeDeviceClassResponse` def DescribeDeviceClass(request) body = send_request('DescribeDeviceClass', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DescribeDeviceClassResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 查询机型支持的RAID方式, 并返回系统盘的分区和逻辑盘的列表 # @param request: Request instance for DescribeDeviceClassPartition. # @type request: :class:`Tencentcloud::bm::V20180423::DescribeDeviceClassPartitionRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DescribeDeviceClassPartitionResponse` def DescribeDeviceClassPartition(request) body = send_request('DescribeDeviceClassPartition', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DescribeDeviceClassPartitionResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 查询设备硬件配置信息,如 CPU 型号,内存大小,磁盘大小和数量 # @param request: Request instance for DescribeDeviceHardwareInfo. # @type request: :class:`Tencentcloud::bm::V20180423::DescribeDeviceHardwareInfoRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DescribeDeviceHardwareInfoResponse` def DescribeDeviceHardwareInfo(request) body = send_request('DescribeDeviceHardwareInfo', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DescribeDeviceHardwareInfoResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 查询设备库存 # @param request: Request instance for DescribeDeviceInventory. # @type request: :class:`Tencentcloud::bm::V20180423::DescribeDeviceInventoryRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DescribeDeviceInventoryResponse` def DescribeDeviceInventory(request) body = send_request('DescribeDeviceInventory', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DescribeDeviceInventoryResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 查询设备操作日志, 如设备重启,重装,设置密码等操作 # @param request: Request instance for DescribeDeviceOperationLog. # @type request: :class:`Tencentcloud::bm::V20180423::DescribeDeviceOperationLogRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DescribeDeviceOperationLogResponse` def DescribeDeviceOperationLog(request) body = send_request('DescribeDeviceOperationLog', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DescribeDeviceOperationLogResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 获取物理机的分区格式 # @param request: Request instance for DescribeDevicePartition. # @type request: :class:`Tencentcloud::bm::V20180423::DescribeDevicePartitionRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DescribeDevicePartitionResponse` def DescribeDevicePartition(request) body = send_request('DescribeDevicePartition', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DescribeDevicePartitionResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 查询服务器所在的位置,如机架,上联交换机等信息 # @param request: Request instance for DescribeDevicePosition. # @type request: :class:`Tencentcloud::bm::V20180423::DescribeDevicePositionRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DescribeDevicePositionResponse` def DescribeDevicePosition(request) body = send_request('DescribeDevicePosition', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DescribeDevicePositionResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 查询服务器价格信息,支持设备的批量查找,支持标准机型和弹性机型的混合查找 # @param request: Request instance for DescribeDevicePriceInfo. # @type request: :class:`Tencentcloud::bm::V20180423::DescribeDevicePriceInfoRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DescribeDevicePriceInfoResponse` def DescribeDevicePriceInfo(request) body = send_request('DescribeDevicePriceInfo', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DescribeDevicePriceInfoResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 查询物理服务器,可以按照实例,业务IP等过滤 # @param request: Request instance for DescribeDevices. # @type request: :class:`Tencentcloud::bm::V20180423::DescribeDevicesRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DescribeDevicesResponse` def DescribeDevices(request) body = send_request('DescribeDevices', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DescribeDevicesResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 查询自定义机型部件信息,包括CpuId对应的型号,DiskTypeId对应的磁盘类型 # @param request: Request instance for DescribeHardwareSpecification. # @type request: :class:`Tencentcloud::bm::V20180423::DescribeHardwareSpecificationRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DescribeHardwareSpecificationResponse` def DescribeHardwareSpecification(request) body = send_request('DescribeHardwareSpecification', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DescribeHardwareSpecificationResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 查询托管设备带外信息 # @param request: Request instance for DescribeHostedDeviceOutBandInfo. # @type request: :class:`Tencentcloud::bm::V20180423::DescribeHostedDeviceOutBandInfoRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DescribeHostedDeviceOutBandInfoResponse` def DescribeHostedDeviceOutBandInfo(request) body = send_request('DescribeHostedDeviceOutBandInfo', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DescribeHostedDeviceOutBandInfoResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 获取异步操作状态的完成状态 # @param request: Request instance for DescribeOperationResult. # @type request: :class:`Tencentcloud::bm::V20180423::DescribeOperationResultRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DescribeOperationResultResponse` def DescribeOperationResult(request) body = send_request('DescribeOperationResult', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DescribeOperationResultResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 查询指定机型所支持的操作系统 # @param request: Request instance for DescribeOsInfo. # @type request: :class:`Tencentcloud::bm::V20180423::DescribeOsInfoRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DescribeOsInfoResponse` def DescribeOsInfo(request) body = send_request('DescribeOsInfo', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DescribeOsInfoResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 获取预授权规则列表 # @param request: Request instance for DescribePsaRegulations. # @type request: :class:`Tencentcloud::bm::V20180423::DescribePsaRegulationsRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DescribePsaRegulationsResponse` def DescribePsaRegulations(request) body = send_request('DescribePsaRegulations', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DescribePsaRegulationsResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 查询地域以及可用区 # @param request: Request instance for DescribeRegions. # @type request: :class:`Tencentcloud::bm::V20180423::DescribeRegionsRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DescribeRegionsResponse` def DescribeRegions(request) body = send_request('DescribeRegions', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DescribeRegionsResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 维修任务配置获取 # @param request: Request instance for DescribeRepairTaskConstant. # @type request: :class:`Tencentcloud::bm::V20180423::DescribeRepairTaskConstantRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DescribeRepairTaskConstantResponse` def DescribeRepairTaskConstant(request) body = send_request('DescribeRepairTaskConstant', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DescribeRepairTaskConstantResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 获取用户维修任务列表及详细信息<br> # <br> # TaskStatus(任务状态ID)与状态中文名的对应关系如下:<br> # 1:未授权<br> # 2:处理中<br> # 3:待确认<br> # 4:未授权-暂不处理<br> # 5:已恢复<br> # 6:待确认-未恢复<br> # @param request: Request instance for DescribeTaskInfo. # @type request: :class:`Tencentcloud::bm::V20180423::DescribeTaskInfoRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DescribeTaskInfoResponse` def DescribeTaskInfo(request) body = send_request('DescribeTaskInfo', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DescribeTaskInfoResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 获取维修任务操作日志 # @param request: Request instance for DescribeTaskOperationLog. # @type request: :class:`Tencentcloud::bm::V20180423::DescribeTaskOperationLogRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DescribeTaskOperationLogResponse` def DescribeTaskOperationLog(request) body = send_request('DescribeTaskOperationLog', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DescribeTaskOperationLogResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 获取自定义脚本任务详细信息 # @param request: Request instance for DescribeUserCmdTaskInfo. # @type request: :class:`Tencentcloud::bm::V20180423::DescribeUserCmdTaskInfoRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DescribeUserCmdTaskInfoResponse` def DescribeUserCmdTaskInfo(request) body = send_request('DescribeUserCmdTaskInfo', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DescribeUserCmdTaskInfoResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 获取自定义脚本任务列表 # @param request: Request instance for DescribeUserCmdTasks. # @type request: :class:`Tencentcloud::bm::V20180423::DescribeUserCmdTasksRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DescribeUserCmdTasksResponse` def DescribeUserCmdTasks(request) body = send_request('DescribeUserCmdTasks', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DescribeUserCmdTasksResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 获取自定义脚本信息列表 # @param request: Request instance for DescribeUserCmds. # @type request: :class:`Tencentcloud::bm::V20180423::DescribeUserCmdsRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DescribeUserCmdsResponse` def DescribeUserCmds(request) body = send_request('DescribeUserCmds', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DescribeUserCmdsResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 服务器绑定CAM角色 # @param request: Request instance for DetachCamRole. # @type request: :class:`Tencentcloud::bm::V20180423::DetachCamRoleRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::DetachCamRoleResponse` def DetachCamRole(request) body = send_request('DetachCamRole', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = DetachCamRoleResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 用于修改自定义镜像名或描述 # @param request: Request instance for ModifyCustomImageAttribute. # @type request: :class:`Tencentcloud::bm::V20180423::ModifyCustomImageAttributeRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::ModifyCustomImageAttributeResponse` def ModifyCustomImageAttribute(request) body = send_request('ModifyCustomImageAttribute', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = ModifyCustomImageAttributeResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 修改服务器名称 # @param request: Request instance for ModifyDeviceAliases. # @type request: :class:`Tencentcloud::bm::V20180423::ModifyDeviceAliasesRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::ModifyDeviceAliasesResponse` def ModifyDeviceAliases(request) body = send_request('ModifyDeviceAliases', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = ModifyDeviceAliasesResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 修改物理机服务器自动续费标志 # @param request: Request instance for ModifyDeviceAutoRenewFlag. # @type request: :class:`Tencentcloud::bm::V20180423::ModifyDeviceAutoRenewFlagRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::ModifyDeviceAutoRenewFlagResponse` def ModifyDeviceAutoRenewFlag(request) body = send_request('ModifyDeviceAutoRenewFlag', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = ModifyDeviceAutoRenewFlagResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 修改物理机内网IP(不重装系统) # @param request: Request instance for ModifyLanIp. # @type request: :class:`Tencentcloud::bm::V20180423::ModifyLanIpRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::ModifyLanIpResponse` def ModifyLanIp(request) body = send_request('ModifyLanIp', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = ModifyLanIpResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 将设备的预付费模式修改为后付费计费模式,支持批量转换。(前提是客户要加入黑石物理机后付费计费的白名单,申请黑石物理机后付费可以联系腾讯云客服) # @param request: Request instance for ModifyPayModePre2Post. # @type request: :class:`Tencentcloud::bm::V20180423::ModifyPayModePre2PostRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::ModifyPayModePre2PostResponse` def ModifyPayModePre2Post(request) body = send_request('ModifyPayModePre2Post', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = ModifyPayModePre2PostResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 允许修改规则信息及关联故障类型 # @param request: Request instance for ModifyPsaRegulation. # @type request: :class:`Tencentcloud::bm::V20180423::ModifyPsaRegulationRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::ModifyPsaRegulationResponse` def ModifyPsaRegulation(request) body = send_request('ModifyPsaRegulation', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = ModifyPsaRegulationResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 修改自定义脚本 # @param request: Request instance for ModifyUserCmd. # @type request: :class:`Tencentcloud::bm::V20180423::ModifyUserCmdRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::ModifyUserCmdResponse` def ModifyUserCmd(request) body = send_request('ModifyUserCmd', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = ModifyUserCmdResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 销毁黑石物理机实例:可以销毁物理机列表中的竞价实例,或回收站列表中所有计费模式的实例 # @param request: Request instance for OfflineDevices. # @type request: :class:`Tencentcloud::bm::V20180423::OfflineDevicesRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::OfflineDevicesResponse` def OfflineDevices(request) body = send_request('OfflineDevices', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = OfflineDevicesResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 重启机器 # @param request: Request instance for RebootDevices. # @type request: :class:`Tencentcloud::bm::V20180423::RebootDevicesRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::RebootDevicesResponse` def RebootDevices(request) body = send_request('RebootDevices', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = RebootDevicesResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 恢复回收站中的物理机(仅限后付费的物理机) # @param request: Request instance for RecoverDevices. # @type request: :class:`Tencentcloud::bm::V20180423::RecoverDevicesRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::RecoverDevicesResponse` def RecoverDevices(request) body = send_request('RecoverDevices', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = RecoverDevicesResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 重装操作系统 # @param request: Request instance for ReloadDeviceOs. # @type request: :class:`Tencentcloud::bm::V20180423::ReloadDeviceOsRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::ReloadDeviceOsResponse` def ReloadDeviceOs(request) body = send_request('ReloadDeviceOs', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = ReloadDeviceOsResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 此接口用于操作维修任务<br> # 入参TaskId为维修任务ID<br> # 入参Operate表示对维修任务的操作,支持如下取值:<br> # AuthorizeRepair(授权维修)<br> # Ignore(暂不提醒)<br> # ConfirmRecovered(维修完成后,确认故障恢复)<br> # ConfirmUnRecovered(维修完成后,确认故障未恢复,该操作已不推荐用)<br> # NeedRepairAgain(维修完成后,故障未恢复,需要重新维修,推荐用此操作打回)<br> # 入参OperateRemark仅在Operate为NeedRepairAgain时有效,表示打回重修原因,建议给出打回的具体原因。<br> # <br> # 操作约束(当前任务状态(TaskStatus)->对应可执行的操作):<br> # 未授权(1)->授权维修;暂不处理<br> # 暂不处理(4)->授权维修<br> # 待确认(3)->确认故障恢复;确认故障未恢复;需要重新维修<br> # 未恢复(6)->确认故障恢复<br> # <br> # 对于Ping不可达故障的任务,还允许:<br> # 未授权->确认故障恢复<br> # 暂不处理->确认故障恢复<br> # <br> # 处理中与已恢复状态的任务不允许进行操作。<br> # <br> # 详细信息请访问:https://cloud.tencent.com/document/product/386/18190 # @param request: Request instance for RepairTaskControl. # @type request: :class:`Tencentcloud::bm::V20180423::RepairTaskControlRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::RepairTaskControlResponse` def RepairTaskControl(request) body = send_request('RepairTaskControl', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = RepairTaskControlResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 重置服务器密码 # @param request: Request instance for ResetDevicePassword. # @type request: :class:`Tencentcloud::bm::V20180423::ResetDevicePasswordRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::ResetDevicePasswordResponse` def ResetDevicePassword(request) body = send_request('ResetDevicePassword', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = ResetDevicePasswordResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 退回物理机至回收站,支持批量退还不同计费模式的物理机(包括预付费、后付费、预付费转后付费) # @param request: Request instance for ReturnDevices. # @type request: :class:`Tencentcloud::bm::V20180423::ReturnDevicesRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::ReturnDevicesResponse` def ReturnDevices(request) body = send_request('ReturnDevices', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = ReturnDevicesResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 运行自定义脚本 # @param request: Request instance for RunUserCmd. # @type request: :class:`Tencentcloud::bm::V20180423::RunUserCmdRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::RunUserCmdResponse` def RunUserCmd(request) body = send_request('RunUserCmd', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = RunUserCmdResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 设置带外VPN认证用户密码 # @param request: Request instance for SetOutBandVpnAuthPassword. # @type request: :class:`Tencentcloud::bm::V20180423::SetOutBandVpnAuthPasswordRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::SetOutBandVpnAuthPasswordResponse` def SetOutBandVpnAuthPassword(request) body = send_request('SetOutBandVpnAuthPassword', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = SetOutBandVpnAuthPasswordResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 关闭服务器 # @param request: Request instance for ShutdownDevices. # @type request: :class:`Tencentcloud::bm::V20180423::ShutdownDevicesRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::ShutdownDevicesResponse` def ShutdownDevices(request) body = send_request('ShutdownDevices', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = ShutdownDevicesResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 开启服务器 # @param request: Request instance for StartDevices. # @type request: :class:`Tencentcloud::bm::V20180423::StartDevicesRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::StartDevicesResponse` def StartDevices(request) body = send_request('StartDevices', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = StartDevicesResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end # 解除标签与预授权规则的绑定 # @param request: Request instance for UnbindPsaTag. # @type request: :class:`Tencentcloud::bm::V20180423::UnbindPsaTagRequest` # @rtype: :class:`Tencentcloud::bm::V20180423::UnbindPsaTagResponse` def UnbindPsaTag(request) body = send_request('UnbindPsaTag', request.serialize) response = JSON.parse(body) if response['Response'].key?('Error') == false model = UnbindPsaTagResponse.new model.deserialize(response['Response']) model else code = response['Response']['Error']['Code'] message = response['Response']['Error']['Message'] reqid = response['Response']['RequestId'] raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid) end rescue TencentCloud::Common::TencentCloudSDKException => e raise e rescue StandardError => e raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect) end end end end end