# 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. module TencentCloud module Iotcloud module V20210408 # 设备属性 class Attribute < TencentCloud::Common::AbstractModel # @param Tags: 属性列表 # @type Tags: Array attr_accessor :Tags def initialize(tags=nil) @Tags = tags end def deserialize(params) unless params['Tags'].nil? @Tags = [] params['Tags'].each do |i| devicetag_tmp = DeviceTag.new devicetag_tmp.deserialize(i) @Tags << devicetag_tmp end end end end # BatchUpdateFirmware请求参数结构体 class BatchUpdateFirmwareRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param FirmwareVersion: 固件新版本号 # @type FirmwareVersion: String # @param FirmwareOriVersion: 固件原版本号,根据文件列表升级固件不需要填写此参数 # @type FirmwareOriVersion: String # @param UpgradeMethod: 升级方式,0 静默升级 1 用户确认升级。 不填默认为静默升级方式 # @type UpgradeMethod: Integer # @param FileName: 设备列表文件名称,根据文件列表升级固件需要填写此参数 # @type FileName: String # @param FileMd5: 设备列表的文件md5值 # @type FileMd5: String # @param FileSize: 设备列表的文件大小值 # @type FileSize: Integer # @param DeviceNames: 需要升级的设备名称列表 # @type DeviceNames: Array # @param TimeoutInterval: 固件升级任务,默认超时时间。 最小取值60秒,最大为3600秒 # @type TimeoutInterval: Integer attr_accessor :ProductId, :FirmwareVersion, :FirmwareOriVersion, :UpgradeMethod, :FileName, :FileMd5, :FileSize, :DeviceNames, :TimeoutInterval def initialize(productid=nil, firmwareversion=nil, firmwareoriversion=nil, upgrademethod=nil, filename=nil, filemd5=nil, filesize=nil, devicenames=nil, timeoutinterval=nil) @ProductId = productid @FirmwareVersion = firmwareversion @FirmwareOriVersion = firmwareoriversion @UpgradeMethod = upgrademethod @FileName = filename @FileMd5 = filemd5 @FileSize = filesize @DeviceNames = devicenames @TimeoutInterval = timeoutinterval end def deserialize(params) @ProductId = params['ProductId'] @FirmwareVersion = params['FirmwareVersion'] @FirmwareOriVersion = params['FirmwareOriVersion'] @UpgradeMethod = params['UpgradeMethod'] @FileName = params['FileName'] @FileMd5 = params['FileMd5'] @FileSize = params['FileSize'] @DeviceNames = params['DeviceNames'] @TimeoutInterval = params['TimeoutInterval'] end end # BatchUpdateFirmware返回参数结构体 class BatchUpdateFirmwareResponse < TencentCloud::Common::AbstractModel # @param TaskId: 任务ID # @type TaskId: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TaskId, :RequestId def initialize(taskid=nil, requestid=nil) @TaskId = taskid @RequestId = requestid end def deserialize(params) @TaskId = params['TaskId'] @RequestId = params['RequestId'] end end # 子设备信息 class BindDeviceInfo < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param DeviceName: 设备名 # @type DeviceName: String # @param Tags: 设备Tag # @type Tags: Array # @param BindTime: 子设备绑定时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type BindTime: Integer attr_accessor :ProductId, :DeviceName, :Tags, :BindTime def initialize(productid=nil, devicename=nil, tags=nil, bindtime=nil) @ProductId = productid @DeviceName = devicename @Tags = tags @BindTime = bindtime end def deserialize(params) @ProductId = params['ProductId'] @DeviceName = params['DeviceName'] unless params['Tags'].nil? @Tags = [] params['Tags'].each do |i| devicetag_tmp = DeviceTag.new devicetag_tmp.deserialize(i) @Tags << devicetag_tmp end end @BindTime = params['BindTime'] end end # BindDevices请求参数结构体 class BindDevicesRequest < TencentCloud::Common::AbstractModel # @param GatewayProductId: 网关设备的产品ID # @type GatewayProductId: String # @param GatewayDeviceName: 网关设备的设备名 # @type GatewayDeviceName: String # @param ProductId: 被绑定设备的产品ID # @type ProductId: String # @param DeviceNames: 被绑定的多个设备名 # @type DeviceNames: Array # @param Skey: 中兴CLAA设备的绑定需要skey,普通的设备不需要 # @type Skey: String attr_accessor :GatewayProductId, :GatewayDeviceName, :ProductId, :DeviceNames, :Skey def initialize(gatewayproductid=nil, gatewaydevicename=nil, productid=nil, devicenames=nil, skey=nil) @GatewayProductId = gatewayproductid @GatewayDeviceName = gatewaydevicename @ProductId = productid @DeviceNames = devicenames @Skey = skey end def deserialize(params) @GatewayProductId = params['GatewayProductId'] @GatewayDeviceName = params['GatewayDeviceName'] @ProductId = params['ProductId'] @DeviceNames = params['DeviceNames'] @Skey = params['Skey'] end end # BindDevices返回参数结构体 class BindDevicesResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # 子产品信息 class BindProductInfo < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param ProductName: 产品名 # @type ProductName: String attr_accessor :ProductId, :ProductName def initialize(productid=nil, productname=nil) @ProductId = productid @ProductName = productname end def deserialize(params) @ProductId = params['ProductId'] @ProductName = params['ProductName'] end end # 代理订阅信息 class BrokerSubscribe < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param DeviceName: 设备名 # @type DeviceName: String attr_accessor :ProductId, :DeviceName def initialize(productid=nil, devicename=nil) @ProductId = productid @DeviceName = devicename end def deserialize(params) @ProductId = params['ProductId'] @DeviceName = params['DeviceName'] end end # CLS日志 class CLSLogItem < TencentCloud::Common::AbstractModel # @param Content: 日志内容 # @type Content: String # @param DeviceName: 设备名称 # @type DeviceName: String # @param ProductId: 产品ID # @type ProductId: String # @param RequestId: 请求ID # @type RequestId: String # @param Result: 结果 # @type Result: String # @param Scene: 模块 # @type Scene: String # @param Time: 日志时间 # @type Time: String # @param Userid: 腾讯云账号 # @type Userid: String attr_accessor :Content, :DeviceName, :ProductId, :RequestId, :Result, :Scene, :Time, :Userid def initialize(content=nil, devicename=nil, productid=nil, requestid=nil, result=nil, scene=nil, time=nil, userid=nil) @Content = content @DeviceName = devicename @ProductId = productid @RequestId = requestid @Result = result @Scene = scene @Time = time @Userid = userid end def deserialize(params) @Content = params['Content'] @DeviceName = params['DeviceName'] @ProductId = params['ProductId'] @RequestId = params['RequestId'] @Result = params['Result'] @Scene = params['Scene'] @Time = params['Time'] @Userid = params['Userid'] end end # CancelDeviceFirmwareTask请求参数结构体 class CancelDeviceFirmwareTaskRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param DeviceName: 设备名称 # @type DeviceName: String # @param FirmwareVersion: 固件版本号 # @type FirmwareVersion: String # @param TaskId: 固件升级任务ID # @type TaskId: Integer attr_accessor :ProductId, :DeviceName, :FirmwareVersion, :TaskId def initialize(productid=nil, devicename=nil, firmwareversion=nil, taskid=nil) @ProductId = productid @DeviceName = devicename @FirmwareVersion = firmwareversion @TaskId = taskid end def deserialize(params) @ProductId = params['ProductId'] @DeviceName = params['DeviceName'] @FirmwareVersion = params['FirmwareVersion'] @TaskId = params['TaskId'] end end # CancelDeviceFirmwareTask返回参数结构体 class CancelDeviceFirmwareTaskResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # X509证书信息 class CertInfo < TencentCloud::Common::AbstractModel # @param CertName: 证书名称 # @type CertName: String # @param CertSN: 证书的序列号,16进制编码 # @type CertSN: String # @param IssuerName: 证书颁发着名称 # @type IssuerName: String # @param Subject: 证书主题 # @type Subject: String # @param CreateTime: 证书创建时间,秒级时间戳 # @type CreateTime: Integer # @param EffectiveTime: 证书生效时间,秒级时间戳 # @type EffectiveTime: Integer # @param ExpireTime: 证书失效时间,秒级时间戳 # @type ExpireTime: Integer # @param CertText: X509证书内容 # @type CertText: String attr_accessor :CertName, :CertSN, :IssuerName, :Subject, :CreateTime, :EffectiveTime, :ExpireTime, :CertText def initialize(certname=nil, certsn=nil, issuername=nil, subject=nil, createtime=nil, effectivetime=nil, expiretime=nil, certtext=nil) @CertName = certname @CertSN = certsn @IssuerName = issuername @Subject = subject @CreateTime = createtime @EffectiveTime = effectivetime @ExpireTime = expiretime @CertText = certtext end def deserialize(params) @CertName = params['CertName'] @CertSN = params['CertSN'] @IssuerName = params['IssuerName'] @Subject = params['Subject'] @CreateTime = params['CreateTime'] @EffectiveTime = params['EffectiveTime'] @ExpireTime = params['ExpireTime'] @CertText = params['CertText'] end end # CreateDevice请求参数结构体 class CreateDeviceRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品 ID 。创建产品时腾讯云为用户分配全局唯一的 ID # @type ProductId: String # @param DeviceName: 设备名称。命名规则:[a-zA-Z0-9:_-]{1,48}。 # @type DeviceName: String # @param Attribute: 设备属性 # @type Attribute: :class:`Tencentcloud::Iotcloud.v20210408.models.Attribute` # @param DefinedPsk: 是否使用自定义PSK,默认不使用 # @type DefinedPsk: String # @param Isp: 运营商类型,当产品是NB-IoT产品时,此字段必填。1表示中国电信,2表示中国移动,3表示中国联通 # @type Isp: Integer # @param Imei: IMEI,当产品是NB-IoT产品时,此字段必填 # @type Imei: String # @param LoraDevEui: LoRa设备的DevEui,当创建LoRa时,此字段必填 # @type LoraDevEui: String # @param LoraMoteType: LoRa设备的MoteType # @type LoraMoteType: Integer # @param Skey: 创建LoRa设备需要skey # @type Skey: String # @param LoraAppKey: LoRa设备的AppKey # @type LoraAppKey: String # @param TlsCrt: 私有CA创建的设备证书 # @type TlsCrt: String attr_accessor :ProductId, :DeviceName, :Attribute, :DefinedPsk, :Isp, :Imei, :LoraDevEui, :LoraMoteType, :Skey, :LoraAppKey, :TlsCrt def initialize(productid=nil, devicename=nil, attribute=nil, definedpsk=nil, isp=nil, imei=nil, loradeveui=nil, loramotetype=nil, skey=nil, loraappkey=nil, tlscrt=nil) @ProductId = productid @DeviceName = devicename @Attribute = attribute @DefinedPsk = definedpsk @Isp = isp @Imei = imei @LoraDevEui = loradeveui @LoraMoteType = loramotetype @Skey = skey @LoraAppKey = loraappkey @TlsCrt = tlscrt end def deserialize(params) @ProductId = params['ProductId'] @DeviceName = params['DeviceName'] unless params['Attribute'].nil? @Attribute = Attribute.new @Attribute.deserialize(params['Attribute']) end @DefinedPsk = params['DefinedPsk'] @Isp = params['Isp'] @Imei = params['Imei'] @LoraDevEui = params['LoraDevEui'] @LoraMoteType = params['LoraMoteType'] @Skey = params['Skey'] @LoraAppKey = params['LoraAppKey'] @TlsCrt = params['TlsCrt'] end end # CreateDevice返回参数结构体 class CreateDeviceResponse < TencentCloud::Common::AbstractModel # @param DeviceName: 设备名称 # @type DeviceName: String # @param DevicePsk: 对称加密密钥,base64编码。采用对称加密时返回该参数 # @type DevicePsk: String # @param DeviceCert: 设备证书,用于 TLS 建立链接时校验客户端身份。采用非对称加密时返回该参数 # @type DeviceCert: String # @param DevicePrivateKey: 设备私钥,用于 TLS 建立链接时校验客户端身份,腾讯云后台不保存,请妥善保管。采用非对称加密时返回该参数 # @type DevicePrivateKey: String # @param LoraDevEui: LoRa设备的DevEui,当设备是LoRa设备时,会返回该字段 # @type LoraDevEui: String # @param LoraMoteType: LoRa设备的MoteType,当设备是LoRa设备时,会返回该字段 # @type LoraMoteType: Integer # @param LoraAppKey: LoRa设备的AppKey,当设备是LoRa设备时,会返回该字段 # @type LoraAppKey: String # @param LoraNwkKey: LoRa设备的NwkKey,当设备是LoRa设备时,会返回该字段 # @type LoraNwkKey: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :DeviceName, :DevicePsk, :DeviceCert, :DevicePrivateKey, :LoraDevEui, :LoraMoteType, :LoraAppKey, :LoraNwkKey, :RequestId def initialize(devicename=nil, devicepsk=nil, devicecert=nil, deviceprivatekey=nil, loradeveui=nil, loramotetype=nil, loraappkey=nil, loranwkkey=nil, requestid=nil) @DeviceName = devicename @DevicePsk = devicepsk @DeviceCert = devicecert @DevicePrivateKey = deviceprivatekey @LoraDevEui = loradeveui @LoraMoteType = loramotetype @LoraAppKey = loraappkey @LoraNwkKey = loranwkkey @RequestId = requestid end def deserialize(params) @DeviceName = params['DeviceName'] @DevicePsk = params['DevicePsk'] @DeviceCert = params['DeviceCert'] @DevicePrivateKey = params['DevicePrivateKey'] @LoraDevEui = params['LoraDevEui'] @LoraMoteType = params['LoraMoteType'] @LoraAppKey = params['LoraAppKey'] @LoraNwkKey = params['LoraNwkKey'] @RequestId = params['RequestId'] end end # CreateMultiDevicesTask请求参数结构体 class CreateMultiDevicesTaskRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param ParametersType: 参数类型 cosfile-文件上传 random-随机创建 # @type ParametersType: String # @param FileName: 文件上传类型时文件名 # @type FileName: String # @param FileSize: 文件上传类型时文件大小 # @type FileSize: Integer # @param BatchCount: 随机创建时设备创建个数 # @type BatchCount: Integer # @param Hash: 文件上传类型时文件md5值 # @type Hash: String attr_accessor :ProductId, :ParametersType, :FileName, :FileSize, :BatchCount, :Hash def initialize(productid=nil, parameterstype=nil, filename=nil, filesize=nil, batchcount=nil, hash=nil) @ProductId = productid @ParametersType = parameterstype @FileName = filename @FileSize = filesize @BatchCount = batchcount @Hash = hash end def deserialize(params) @ProductId = params['ProductId'] @ParametersType = params['ParametersType'] @FileName = params['FileName'] @FileSize = params['FileSize'] @BatchCount = params['BatchCount'] @Hash = params['Hash'] end end # CreateMultiDevicesTask返回参数结构体 class CreateMultiDevicesTaskResponse < TencentCloud::Common::AbstractModel # @param Id: 任务ID # @type Id: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Id, :RequestId def initialize(id=nil, requestid=nil) @Id = id @RequestId = requestid end def deserialize(params) @Id = params['Id'] @RequestId = params['RequestId'] end end # CreatePrivateCA请求参数结构体 class CreatePrivateCARequest < TencentCloud::Common::AbstractModel # @param CertName: CA证书名称 # @type CertName: String # @param CertText: CA证书内容 # @type CertText: String # @param VerifyCertText: 校验CA证书的证书内容 # @type VerifyCertText: String attr_accessor :CertName, :CertText, :VerifyCertText def initialize(certname=nil, certtext=nil, verifycerttext=nil) @CertName = certname @CertText = certtext @VerifyCertText = verifycerttext end def deserialize(params) @CertName = params['CertName'] @CertText = params['CertText'] @VerifyCertText = params['VerifyCertText'] end end # CreatePrivateCA返回参数结构体 class CreatePrivateCAResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # CreateProduct请求参数结构体 class CreateProductRequest < TencentCloud::Common::AbstractModel # @param ProductName: 产品名称,名称不能和已经存在的产品名称重复。命名规则:[a-zA-Z0-9:_-]{1,32} # @type ProductName: String # @param ProductProperties: 产品属性 # @type ProductProperties: :class:`Tencentcloud::Iotcloud.v20210408.models.ProductProperties` # @param Skey: 创建CLAA产品时,需要Skey # @type Skey: String attr_accessor :ProductName, :ProductProperties, :Skey def initialize(productname=nil, productproperties=nil, skey=nil) @ProductName = productname @ProductProperties = productproperties @Skey = skey end def deserialize(params) @ProductName = params['ProductName'] unless params['ProductProperties'].nil? @ProductProperties = ProductProperties.new @ProductProperties.deserialize(params['ProductProperties']) end @Skey = params['Skey'] end end # CreateProduct返回参数结构体 class CreateProductResponse < TencentCloud::Common::AbstractModel # @param ProductName: 产品名称 # @type ProductName: String # @param ProductId: 产品 ID,腾讯云生成全局唯一 ID # @type ProductId: String # @param ProductProperties: 产品属性 # @type ProductProperties: :class:`Tencentcloud::Iotcloud.v20210408.models.ProductProperties` # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :ProductName, :ProductId, :ProductProperties, :RequestId def initialize(productname=nil, productid=nil, productproperties=nil, requestid=nil) @ProductName = productname @ProductId = productid @ProductProperties = productproperties @RequestId = requestid end def deserialize(params) @ProductName = params['ProductName'] @ProductId = params['ProductId'] unless params['ProductProperties'].nil? @ProductProperties = ProductProperties.new @ProductProperties.deserialize(params['ProductProperties']) end @RequestId = params['RequestId'] end end # CreateTaskFileUrl请求参数结构体 class CreateTaskFileUrlRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String attr_accessor :ProductId def initialize(productid=nil) @ProductId = productid end def deserialize(params) @ProductId = params['ProductId'] end end # CreateTaskFileUrl返回参数结构体 class CreateTaskFileUrlResponse < TencentCloud::Common::AbstractModel # @param Url: 任务文件上传链接 # @type Url: String # @param FileName: 任务文件名 # @type FileName: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Url, :FileName, :RequestId def initialize(url=nil, filename=nil, requestid=nil) @Url = url @FileName = filename @RequestId = requestid end def deserialize(params) @Url = params['Url'] @FileName = params['FileName'] @RequestId = params['RequestId'] end end # CreateTopicPolicy请求参数结构体 class CreateTopicPolicyRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品自身ID # @type ProductId: String # @param TopicName: Topic名称 # @type TopicName: String # @param Privilege: Topic权限,1发布,2订阅,3订阅和发布 # @type Privilege: Integer # @param BrokerSubscribe: 代理订阅信息,网关产品为绑定的子产品创建topic时需要填写,内容为子产品的ID和设备信息。 # @type BrokerSubscribe: :class:`Tencentcloud::Iotcloud.v20210408.models.BrokerSubscribe` attr_accessor :ProductId, :TopicName, :Privilege, :BrokerSubscribe def initialize(productid=nil, topicname=nil, privilege=nil, brokersubscribe=nil) @ProductId = productid @TopicName = topicname @Privilege = privilege @BrokerSubscribe = brokersubscribe end def deserialize(params) @ProductId = params['ProductId'] @TopicName = params['TopicName'] @Privilege = params['Privilege'] unless params['BrokerSubscribe'].nil? @BrokerSubscribe = BrokerSubscribe.new @BrokerSubscribe.deserialize(params['BrokerSubscribe']) end end end # CreateTopicPolicy返回参数结构体 class CreateTopicPolicyResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # CreateTopicRule请求参数结构体 class CreateTopicRuleRequest < TencentCloud::Common::AbstractModel # @param RuleName: 规则名称 # @type RuleName: String # @param TopicRulePayload: 规则内容 # @type TopicRulePayload: :class:`Tencentcloud::Iotcloud.v20210408.models.TopicRulePayload` attr_accessor :RuleName, :TopicRulePayload def initialize(rulename=nil, topicrulepayload=nil) @RuleName = rulename @TopicRulePayload = topicrulepayload end def deserialize(params) @RuleName = params['RuleName'] unless params['TopicRulePayload'].nil? @TopicRulePayload = TopicRulePayload.new @TopicRulePayload.deserialize(params['TopicRulePayload']) end end end # CreateTopicRule返回参数结构体 class CreateTopicRuleResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # DeleteDevice请求参数结构体 class DeleteDeviceRequest < TencentCloud::Common::AbstractModel # @param ProductId: 设备所属的产品 ID # @type ProductId: String # @param DeviceName: 需要删除的设备名称 # @type DeviceName: String # @param Skey: 删除LoRa设备以及LoRa网关设备需要skey # @type Skey: String attr_accessor :ProductId, :DeviceName, :Skey def initialize(productid=nil, devicename=nil, skey=nil) @ProductId = productid @DeviceName = devicename @Skey = skey end def deserialize(params) @ProductId = params['ProductId'] @DeviceName = params['DeviceName'] @Skey = params['Skey'] end end # DeleteDeviceResource请求参数结构体 class DeleteDeviceResourceRequest < TencentCloud::Common::AbstractModel # @param ProductID: 产品ID # @type ProductID: String # @param Name: 资源名称 # @type Name: String # @param DeviceName: 设备名称 # @type DeviceName: String attr_accessor :ProductID, :Name, :DeviceName def initialize(productid=nil, name=nil, devicename=nil) @ProductID = productid @Name = name @DeviceName = devicename end def deserialize(params) @ProductID = params['ProductID'] @Name = params['Name'] @DeviceName = params['DeviceName'] end end # DeleteDeviceResource返回参数结构体 class DeleteDeviceResourceResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # DeleteDevice返回参数结构体 class DeleteDeviceResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # DeleteDeviceShadow请求参数结构体 class DeleteDeviceShadowRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param DeviceName: 设备名称 # @type DeviceName: String attr_accessor :ProductId, :DeviceName def initialize(productid=nil, devicename=nil) @ProductId = productid @DeviceName = devicename end def deserialize(params) @ProductId = params['ProductId'] @DeviceName = params['DeviceName'] end end # DeleteDeviceShadow返回参数结构体 class DeleteDeviceShadowResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # DeletePrivateCA请求参数结构体 class DeletePrivateCARequest < TencentCloud::Common::AbstractModel # @param CertName: 私有CA证书名称 # @type CertName: String attr_accessor :CertName def initialize(certname=nil) @CertName = certname end def deserialize(params) @CertName = params['CertName'] end end # DeletePrivateCA返回参数结构体 class DeletePrivateCAResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # DeleteProductPrivateCA请求参数结构体 class DeleteProductPrivateCARequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String attr_accessor :ProductId def initialize(productid=nil) @ProductId = productid end def deserialize(params) @ProductId = params['ProductId'] end end # DeleteProductPrivateCA返回参数结构体 class DeleteProductPrivateCAResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # DeleteProduct请求参数结构体 class DeleteProductRequest < TencentCloud::Common::AbstractModel # @param ProductId: 需要删除的产品 ID # @type ProductId: String # @param Skey: 删除LoRa产品需要skey # @type Skey: String attr_accessor :ProductId, :Skey def initialize(productid=nil, skey=nil) @ProductId = productid @Skey = skey end def deserialize(params) @ProductId = params['ProductId'] @Skey = params['Skey'] end end # DeleteProduct返回参数结构体 class DeleteProductResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # DeleteTopicRule请求参数结构体 class DeleteTopicRuleRequest < TencentCloud::Common::AbstractModel # @param RuleName: 规则名 # @type RuleName: String attr_accessor :RuleName def initialize(rulename=nil) @RuleName = rulename end def deserialize(params) @RuleName = params['RuleName'] end end # DeleteTopicRule返回参数结构体 class DeleteTopicRuleResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # DescribeDeviceClientKey请求参数结构体 class DescribeDeviceClientKeyRequest < TencentCloud::Common::AbstractModel # @param ProductId: 所属产品的Id # @type ProductId: String # @param DeviceName: 设备名称 # @type DeviceName: String attr_accessor :ProductId, :DeviceName def initialize(productid=nil, devicename=nil) @ProductId = productid @DeviceName = devicename end def deserialize(params) @ProductId = params['ProductId'] @DeviceName = params['DeviceName'] end end # DescribeDeviceClientKey返回参数结构体 class DescribeDeviceClientKeyResponse < TencentCloud::Common::AbstractModel # @param ClientKey: 设备的私钥 # @type ClientKey: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :ClientKey, :RequestId def initialize(clientkey=nil, requestid=nil) @ClientKey = clientkey @RequestId = requestid end def deserialize(params) @ClientKey = params['ClientKey'] @RequestId = params['RequestId'] end end # DescribeDevice请求参数结构体 class DescribeDeviceRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param DeviceName: 设备名 # @type DeviceName: String attr_accessor :ProductId, :DeviceName def initialize(productid=nil, devicename=nil) @ProductId = productid @DeviceName = devicename end def deserialize(params) @ProductId = params['ProductId'] @DeviceName = params['DeviceName'] end end # DescribeDeviceResource请求参数结构体 class DescribeDeviceResourceRequest < TencentCloud::Common::AbstractModel # @param DeviceName: 设备名称 # @type DeviceName: String # @param ProductID: 产品ID # @type ProductID: String # @param Name: 具体的设备资源名称 # @type Name: String attr_accessor :DeviceName, :ProductID, :Name def initialize(devicename=nil, productid=nil, name=nil) @DeviceName = devicename @ProductID = productid @Name = name end def deserialize(params) @DeviceName = params['DeviceName'] @ProductID = params['ProductID'] @Name = params['Name'] end end # DescribeDeviceResource返回参数结构体 class DescribeDeviceResourceResponse < TencentCloud::Common::AbstractModel # @param Result: 设备资源详情 # @type Result: :class:`Tencentcloud::Iotcloud.v20210408.models.DeviceResourceInfo` # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Result, :RequestId def initialize(result=nil, requestid=nil) @Result = result @RequestId = requestid end def deserialize(params) unless params['Result'].nil? @Result = DeviceResourceInfo.new @Result.deserialize(params['Result']) end @RequestId = params['RequestId'] end end # DescribeDeviceResources请求参数结构体 class DescribeDeviceResourcesRequest < TencentCloud::Common::AbstractModel # @param Offset: 偏移量,Offset从0开始 # @type Offset: Integer # @param Limit: 分页的大小,数值范围 10-250 # @type Limit: Integer # @param ProductID: 产品ID # @type ProductID: String # @param DeviceName: 需要过滤的设备名称 # @type DeviceName: String # @param StartTime: 资源搜索开始时间 # @type StartTime: String # @param EndTime: 资源搜索结束时间 # @type EndTime: String attr_accessor :Offset, :Limit, :ProductID, :DeviceName, :StartTime, :EndTime def initialize(offset=nil, limit=nil, productid=nil, devicename=nil, starttime=nil, endtime=nil) @Offset = offset @Limit = limit @ProductID = productid @DeviceName = devicename @StartTime = starttime @EndTime = endtime end def deserialize(params) @Offset = params['Offset'] @Limit = params['Limit'] @ProductID = params['ProductID'] @DeviceName = params['DeviceName'] @StartTime = params['StartTime'] @EndTime = params['EndTime'] end end # DescribeDeviceResources返回参数结构体 class DescribeDeviceResourcesResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 资源总数 # @type TotalCount: Integer # @param Result: 资源列表 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Result: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :Result, :RequestId def initialize(totalcount=nil, result=nil, requestid=nil) @TotalCount = totalcount @Result = result @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['Result'].nil? @Result = [] params['Result'].each do |i| deviceresourceinfo_tmp = DeviceResourceInfo.new deviceresourceinfo_tmp.deserialize(i) @Result << deviceresourceinfo_tmp end end @RequestId = params['RequestId'] end end # DescribeDevice返回参数结构体 class DescribeDeviceResponse < TencentCloud::Common::AbstractModel # @param DeviceName: 设备名 # @type DeviceName: String # @param Online: 设备是否在线,0不在线,1在线 # @type Online: Integer # @param LoginTime: 设备登录时间 # @type LoginTime: Integer # @param Version: 设备固件版本 # @type Version: String # @param LastUpdateTime: 设备最后更新时间 # @type LastUpdateTime: Integer # @param DeviceCert: 设备证书 # @type DeviceCert: String # @param DevicePsk: 设备密钥 # @type DevicePsk: String # @param Tags: 设备属性 # @type Tags: Array # @param DeviceType: 设备类型 # @type DeviceType: Integer # @param Imei: 国际移动设备识别码 IMEI # @type Imei: String # @param Isp: 运营商类型 # @type Isp: Integer # @param ConnIP: IP地址 # @type ConnIP: Integer # @param NbiotDeviceID: NB IoT运营商处的DeviceID # @type NbiotDeviceID: String # @param LoraDevEui: Lora设备的dev eui # @type LoraDevEui: String # @param LoraMoteType: Lora设备的mote type # @type LoraMoteType: Integer # @param LogLevel: 设备的sdk日志等级 # 注意:此字段可能返回 null,表示取不到有效值。 # @type LogLevel: Integer # @param FirstOnlineTime: 首次上线时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type FirstOnlineTime: Integer # @param LastOfflineTime: 最近下线时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type LastOfflineTime: Integer # @param CreateTime: 设备创建时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CreateTime: Integer # @param CertState: 设备证书获取状态,0 未获取过设备密钥, 1 已获取过设备密钥 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CertState: Integer # @param EnableState: 设备启用状态 # 注意:此字段可能返回 null,表示取不到有效值。 # @type EnableState: Integer # @param Labels: 设备标签 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Labels: Array # @param ClientIP: MQTT客户端IP地址 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ClientIP: String # @param FirmwareUpdateTime: 设备固件更新时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type FirmwareUpdateTime: Integer # @param CreateUserId: 创建者账号ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type CreateUserId: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :DeviceName, :Online, :LoginTime, :Version, :LastUpdateTime, :DeviceCert, :DevicePsk, :Tags, :DeviceType, :Imei, :Isp, :ConnIP, :NbiotDeviceID, :LoraDevEui, :LoraMoteType, :LogLevel, :FirstOnlineTime, :LastOfflineTime, :CreateTime, :CertState, :EnableState, :Labels, :ClientIP, :FirmwareUpdateTime, :CreateUserId, :RequestId def initialize(devicename=nil, online=nil, logintime=nil, version=nil, lastupdatetime=nil, devicecert=nil, devicepsk=nil, tags=nil, devicetype=nil, imei=nil, isp=nil, connip=nil, nbiotdeviceid=nil, loradeveui=nil, loramotetype=nil, loglevel=nil, firstonlinetime=nil, lastofflinetime=nil, createtime=nil, certstate=nil, enablestate=nil, labels=nil, clientip=nil, firmwareupdatetime=nil, createuserid=nil, requestid=nil) @DeviceName = devicename @Online = online @LoginTime = logintime @Version = version @LastUpdateTime = lastupdatetime @DeviceCert = devicecert @DevicePsk = devicepsk @Tags = tags @DeviceType = devicetype @Imei = imei @Isp = isp @ConnIP = connip @NbiotDeviceID = nbiotdeviceid @LoraDevEui = loradeveui @LoraMoteType = loramotetype @LogLevel = loglevel @FirstOnlineTime = firstonlinetime @LastOfflineTime = lastofflinetime @CreateTime = createtime @CertState = certstate @EnableState = enablestate @Labels = labels @ClientIP = clientip @FirmwareUpdateTime = firmwareupdatetime @CreateUserId = createuserid @RequestId = requestid end def deserialize(params) @DeviceName = params['DeviceName'] @Online = params['Online'] @LoginTime = params['LoginTime'] @Version = params['Version'] @LastUpdateTime = params['LastUpdateTime'] @DeviceCert = params['DeviceCert'] @DevicePsk = params['DevicePsk'] unless params['Tags'].nil? @Tags = [] params['Tags'].each do |i| devicetag_tmp = DeviceTag.new devicetag_tmp.deserialize(i) @Tags << devicetag_tmp end end @DeviceType = params['DeviceType'] @Imei = params['Imei'] @Isp = params['Isp'] @ConnIP = params['ConnIP'] @NbiotDeviceID = params['NbiotDeviceID'] @LoraDevEui = params['LoraDevEui'] @LoraMoteType = params['LoraMoteType'] @LogLevel = params['LogLevel'] @FirstOnlineTime = params['FirstOnlineTime'] @LastOfflineTime = params['LastOfflineTime'] @CreateTime = params['CreateTime'] @CertState = params['CertState'] @EnableState = params['EnableState'] unless params['Labels'].nil? @Labels = [] params['Labels'].each do |i| devicelabel_tmp = DeviceLabel.new devicelabel_tmp.deserialize(i) @Labels << devicelabel_tmp end end @ClientIP = params['ClientIP'] @FirmwareUpdateTime = params['FirmwareUpdateTime'] @CreateUserId = params['CreateUserId'] @RequestId = params['RequestId'] end end # DescribeDeviceShadow请求参数结构体 class DescribeDeviceShadowRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品 ID # @type ProductId: String # @param DeviceName: 设备名称。命名规则:[a-zA-Z0-9:_-]{1,60} # @type DeviceName: String attr_accessor :ProductId, :DeviceName def initialize(productid=nil, devicename=nil) @ProductId = productid @DeviceName = devicename end def deserialize(params) @ProductId = params['ProductId'] @DeviceName = params['DeviceName'] end end # DescribeDeviceShadow返回参数结构体 class DescribeDeviceShadowResponse < TencentCloud::Common::AbstractModel # @param Data: 设备影子数据 # @type Data: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Data, :RequestId def initialize(data=nil, requestid=nil) @Data = data @RequestId = requestid end def deserialize(params) @Data = params['Data'] @RequestId = params['RequestId'] end end # DescribeDevices请求参数结构体 class DescribeDevicesRequest < TencentCloud::Common::AbstractModel # @param ProductId: 需要查看设备列表的产品 ID # @type ProductId: String # @param Offset: 偏移量,Offset从0开始 # @type Offset: Integer # @param Limit: 分页的大小,数值范围 10-250 # @type Limit: Integer # @param FirmwareVersion: 设备固件版本号,若不带此参数会返回所有固件版本的设备。传"None-FirmwareVersion"查询无版本号的设备 # @type FirmwareVersion: String # @param DeviceName: 需要过滤的设备名称 # @type DeviceName: String # @param EnableState: 设备是否启用,0禁用状态1启用状态,默认不区分 # @type EnableState: Integer attr_accessor :ProductId, :Offset, :Limit, :FirmwareVersion, :DeviceName, :EnableState def initialize(productid=nil, offset=nil, limit=nil, firmwareversion=nil, devicename=nil, enablestate=nil) @ProductId = productid @Offset = offset @Limit = limit @FirmwareVersion = firmwareversion @DeviceName = devicename @EnableState = enablestate end def deserialize(params) @ProductId = params['ProductId'] @Offset = params['Offset'] @Limit = params['Limit'] @FirmwareVersion = params['FirmwareVersion'] @DeviceName = params['DeviceName'] @EnableState = params['EnableState'] end end # DescribeDevices返回参数结构体 class DescribeDevicesResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 设备总数 # @type TotalCount: Integer # @param Devices: 设备详细信息列表 # @type Devices: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :Devices, :RequestId def initialize(totalcount=nil, devices=nil, requestid=nil) @TotalCount = totalcount @Devices = devices @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['Devices'].nil? @Devices = [] params['Devices'].each do |i| deviceinfo_tmp = DeviceInfo.new deviceinfo_tmp.deserialize(i) @Devices << deviceinfo_tmp end end @RequestId = params['RequestId'] end end # DescribeFirmware请求参数结构体 class DescribeFirmwareRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param FirmwareVersion: 固件版本号 # @type FirmwareVersion: String attr_accessor :ProductId, :FirmwareVersion def initialize(productid=nil, firmwareversion=nil) @ProductId = productid @FirmwareVersion = firmwareversion end def deserialize(params) @ProductId = params['ProductId'] @FirmwareVersion = params['FirmwareVersion'] end end # DescribeFirmware返回参数结构体 class DescribeFirmwareResponse < TencentCloud::Common::AbstractModel # @param Version: 固件版本号 # @type Version: String # @param ProductId: 产品ID # @type ProductId: String # @param Name: 固件名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Name: String # @param Description: 固件描述 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Description: String # @param Md5sum: 固件Md5值 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Md5sum: String # @param Createtime: 固件上传的秒级时间戳 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Createtime: Integer # @param ProductName: 产品名称 # @type ProductName: String # @param FwType: 固件类型。选项:mcu、module # @type FwType: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Version, :ProductId, :Name, :Description, :Md5sum, :Createtime, :ProductName, :FwType, :RequestId def initialize(version=nil, productid=nil, name=nil, description=nil, md5sum=nil, createtime=nil, productname=nil, fwtype=nil, requestid=nil) @Version = version @ProductId = productid @Name = name @Description = description @Md5sum = md5sum @Createtime = createtime @ProductName = productname @FwType = fwtype @RequestId = requestid end def deserialize(params) @Version = params['Version'] @ProductId = params['ProductId'] @Name = params['Name'] @Description = params['Description'] @Md5sum = params['Md5sum'] @Createtime = params['Createtime'] @ProductName = params['ProductName'] @FwType = params['FwType'] @RequestId = params['RequestId'] end end # DescribeFirmwareTaskDevices请求参数结构体 class DescribeFirmwareTaskDevicesRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param FirmwareVersion: 固件版本 # @type FirmwareVersion: String # @param Filters: 筛选条件 # @type Filters: Array # @param Offset: 查询偏移量 # @type Offset: Integer # @param Limit: 查询的数量 # @type Limit: Integer attr_accessor :ProductId, :FirmwareVersion, :Filters, :Offset, :Limit def initialize(productid=nil, firmwareversion=nil, filters=nil, offset=nil, limit=nil) @ProductId = productid @FirmwareVersion = firmwareversion @Filters = filters @Offset = offset @Limit = limit end def deserialize(params) @ProductId = params['ProductId'] @FirmwareVersion = params['FirmwareVersion'] unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| searchkeyword_tmp = SearchKeyword.new searchkeyword_tmp.deserialize(i) @Filters << searchkeyword_tmp end end @Offset = params['Offset'] @Limit = params['Limit'] end end # DescribeFirmwareTaskDevices返回参数结构体 class DescribeFirmwareTaskDevicesResponse < TencentCloud::Common::AbstractModel # @param Total: 固件升级任务的设备总数 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Total: Integer # @param Devices: 固件升级任务的设备列表 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Devices: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Total, :Devices, :RequestId def initialize(total=nil, devices=nil, requestid=nil) @Total = total @Devices = devices @RequestId = requestid end def deserialize(params) @Total = params['Total'] unless params['Devices'].nil? @Devices = [] params['Devices'].each do |i| deviceupdatestatus_tmp = DeviceUpdateStatus.new deviceupdatestatus_tmp.deserialize(i) @Devices << deviceupdatestatus_tmp end end @RequestId = params['RequestId'] end end # DescribeFirmwareTaskDistribution请求参数结构体 class DescribeFirmwareTaskDistributionRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param FirmwareVersion: 固件版本号 # @type FirmwareVersion: String # @param TaskId: 固件升级任务ID # @type TaskId: Integer attr_accessor :ProductId, :FirmwareVersion, :TaskId def initialize(productid=nil, firmwareversion=nil, taskid=nil) @ProductId = productid @FirmwareVersion = firmwareversion @TaskId = taskid end def deserialize(params) @ProductId = params['ProductId'] @FirmwareVersion = params['FirmwareVersion'] @TaskId = params['TaskId'] end end # DescribeFirmwareTaskDistribution返回参数结构体 class DescribeFirmwareTaskDistributionResponse < TencentCloud::Common::AbstractModel # @param StatusInfos: 固件升级任务状态分布信息 # @type StatusInfos: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :StatusInfos, :RequestId def initialize(statusinfos=nil, requestid=nil) @StatusInfos = statusinfos @RequestId = requestid end def deserialize(params) unless params['StatusInfos'].nil? @StatusInfos = [] params['StatusInfos'].each do |i| statusstatistic_tmp = StatusStatistic.new statusstatistic_tmp.deserialize(i) @StatusInfos << statusstatistic_tmp end end @RequestId = params['RequestId'] end end # DescribeFirmwareTask请求参数结构体 class DescribeFirmwareTaskRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param FirmwareVersion: 固件版本号 # @type FirmwareVersion: String # @param TaskId: 固件任务ID # @type TaskId: Integer attr_accessor :ProductId, :FirmwareVersion, :TaskId def initialize(productid=nil, firmwareversion=nil, taskid=nil) @ProductId = productid @FirmwareVersion = firmwareversion @TaskId = taskid end def deserialize(params) @ProductId = params['ProductId'] @FirmwareVersion = params['FirmwareVersion'] @TaskId = params['TaskId'] end end # DescribeFirmwareTask返回参数结构体 class DescribeFirmwareTaskResponse < TencentCloud::Common::AbstractModel # @param TaskId: 固件任务ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type TaskId: Integer # @param Status: 固件任务状态 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Status: Integer # @param CreateTime: 固件任务创建时间,单位:秒 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CreateTime: Integer # @param Type: 固件任务升级类型 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Type: Integer # @param ProductName: 产品名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ProductName: String # @param UpgradeMode: 固件任务升级模式。originalVersion(按版本号升级)、filename(提交文件升级)、devicenames(按设备名称升级) # 注意:此字段可能返回 null,表示取不到有效值。 # @type UpgradeMode: String # @param ProductId: 产品ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type ProductId: String # @param OriginalVersion: 升级前版本号 # 注意:此字段可能返回 null,表示取不到有效值。 # @type OriginalVersion: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TaskId, :Status, :CreateTime, :Type, :ProductName, :UpgradeMode, :ProductId, :OriginalVersion, :RequestId def initialize(taskid=nil, status=nil, createtime=nil, type=nil, productname=nil, upgrademode=nil, productid=nil, originalversion=nil, requestid=nil) @TaskId = taskid @Status = status @CreateTime = createtime @Type = type @ProductName = productname @UpgradeMode = upgrademode @ProductId = productid @OriginalVersion = originalversion @RequestId = requestid end def deserialize(params) @TaskId = params['TaskId'] @Status = params['Status'] @CreateTime = params['CreateTime'] @Type = params['Type'] @ProductName = params['ProductName'] @UpgradeMode = params['UpgradeMode'] @ProductId = params['ProductId'] @OriginalVersion = params['OriginalVersion'] @RequestId = params['RequestId'] end end # DescribeFirmwareTaskStatistics请求参数结构体 class DescribeFirmwareTaskStatisticsRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param FirmwareVersion: 固件版本号 # @type FirmwareVersion: String attr_accessor :ProductId, :FirmwareVersion def initialize(productid=nil, firmwareversion=nil) @ProductId = productid @FirmwareVersion = firmwareversion end def deserialize(params) @ProductId = params['ProductId'] @FirmwareVersion = params['FirmwareVersion'] end end # DescribeFirmwareTaskStatistics返回参数结构体 class DescribeFirmwareTaskStatisticsResponse < TencentCloud::Common::AbstractModel # @param SuccessTotal: 升级成功的设备总数 # 注意:此字段可能返回 null,表示取不到有效值。 # @type SuccessTotal: Integer # @param FailureTotal: 升级失败的设备总数 # 注意:此字段可能返回 null,表示取不到有效值。 # @type FailureTotal: Integer # @param UpgradingTotal: 正在升级的设备总数 # 注意:此字段可能返回 null,表示取不到有效值。 # @type UpgradingTotal: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :SuccessTotal, :FailureTotal, :UpgradingTotal, :RequestId def initialize(successtotal=nil, failuretotal=nil, upgradingtotal=nil, requestid=nil) @SuccessTotal = successtotal @FailureTotal = failuretotal @UpgradingTotal = upgradingtotal @RequestId = requestid end def deserialize(params) @SuccessTotal = params['SuccessTotal'] @FailureTotal = params['FailureTotal'] @UpgradingTotal = params['UpgradingTotal'] @RequestId = params['RequestId'] end end # DescribeFirmwareTasks请求参数结构体 class DescribeFirmwareTasksRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param FirmwareVersion: 固件版本号 # @type FirmwareVersion: String # @param Offset: 查询偏移量 # @type Offset: Integer # @param Limit: 返回查询结果条数 # @type Limit: Integer # @param Filters: 搜索过滤条件 # @type Filters: Array attr_accessor :ProductId, :FirmwareVersion, :Offset, :Limit, :Filters def initialize(productid=nil, firmwareversion=nil, offset=nil, limit=nil, filters=nil) @ProductId = productid @FirmwareVersion = firmwareversion @Offset = offset @Limit = limit @Filters = filters end def deserialize(params) @ProductId = params['ProductId'] @FirmwareVersion = params['FirmwareVersion'] @Offset = params['Offset'] @Limit = params['Limit'] unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| searchkeyword_tmp = SearchKeyword.new searchkeyword_tmp.deserialize(i) @Filters << searchkeyword_tmp end end end end # DescribeFirmwareTasks返回参数结构体 class DescribeFirmwareTasksResponse < TencentCloud::Common::AbstractModel # @param TaskInfos: 固件升级任务列表 # 注意:此字段可能返回 null,表示取不到有效值。 # @type TaskInfos: Array # @param Total: 固件升级任务总数 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Total: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TaskInfos, :Total, :RequestId def initialize(taskinfos=nil, total=nil, requestid=nil) @TaskInfos = taskinfos @Total = total @RequestId = requestid end def deserialize(params) unless params['TaskInfos'].nil? @TaskInfos = [] params['TaskInfos'].each do |i| firmwaretaskinfo_tmp = FirmwareTaskInfo.new firmwaretaskinfo_tmp.deserialize(i) @TaskInfos << firmwaretaskinfo_tmp end end @Total = params['Total'] @RequestId = params['RequestId'] end end # DescribeGatewayBindDevices请求参数结构体 class DescribeGatewayBindDevicesRequest < TencentCloud::Common::AbstractModel # @param GatewayProductId: 网关设备的产品ID # @type GatewayProductId: String # @param GatewayDeviceName: 网关设备的设备名 # @type GatewayDeviceName: String # @param Offset: 偏移量,Offset从0开始 # @type Offset: Integer # @param Limit: 分页的页大小 # @type Limit: Integer # @param ProductId: LoRa产品的ID # @type ProductId: String attr_accessor :GatewayProductId, :GatewayDeviceName, :Offset, :Limit, :ProductId def initialize(gatewayproductid=nil, gatewaydevicename=nil, offset=nil, limit=nil, productid=nil) @GatewayProductId = gatewayproductid @GatewayDeviceName = gatewaydevicename @Offset = offset @Limit = limit @ProductId = productid end def deserialize(params) @GatewayProductId = params['GatewayProductId'] @GatewayDeviceName = params['GatewayDeviceName'] @Offset = params['Offset'] @Limit = params['Limit'] @ProductId = params['ProductId'] end end # DescribeGatewayBindDevices返回参数结构体 class DescribeGatewayBindDevicesResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 子设备总数 # @type TotalCount: Integer # @param Devices: 子设备信息 # @type Devices: Array # @param ProductName: 子设备所属的产品名 # @type ProductName: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :Devices, :ProductName, :RequestId def initialize(totalcount=nil, devices=nil, productname=nil, requestid=nil) @TotalCount = totalcount @Devices = devices @ProductName = productname @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['Devices'].nil? @Devices = [] params['Devices'].each do |i| binddeviceinfo_tmp = BindDeviceInfo.new binddeviceinfo_tmp.deserialize(i) @Devices << binddeviceinfo_tmp end end @ProductName = params['ProductName'] @RequestId = params['RequestId'] end end # DescribePrivateCABindedProducts请求参数结构体 class DescribePrivateCABindedProductsRequest < TencentCloud::Common::AbstractModel # @param CertName: 证书名称 # @type CertName: String # @param Offset: 查询偏移量 # @type Offset: Integer # @param Limit: 查询的数据量,默认为20, 最大为200 # @type Limit: Integer attr_accessor :CertName, :Offset, :Limit def initialize(certname=nil, offset=nil, limit=nil) @CertName = certname @Offset = offset @Limit = limit end def deserialize(params) @CertName = params['CertName'] @Offset = params['Offset'] @Limit = params['Limit'] end end # DescribePrivateCABindedProducts返回参数结构体 class DescribePrivateCABindedProductsResponse < TencentCloud::Common::AbstractModel # @param Products: 私有CA绑定的产品列表 # @type Products: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Products, :RequestId def initialize(products=nil, requestid=nil) @Products = products @RequestId = requestid end def deserialize(params) unless params['Products'].nil? @Products = [] params['Products'].each do |i| bindproductinfo_tmp = BindProductInfo.new bindproductinfo_tmp.deserialize(i) @Products << bindproductinfo_tmp end end @RequestId = params['RequestId'] end end # DescribePrivateCA请求参数结构体 class DescribePrivateCARequest < TencentCloud::Common::AbstractModel # @param CertName: 私有化CA名称 # @type CertName: String attr_accessor :CertName def initialize(certname=nil) @CertName = certname end def deserialize(params) @CertName = params['CertName'] end end # DescribePrivateCA返回参数结构体 class DescribePrivateCAResponse < TencentCloud::Common::AbstractModel # @param CA: 私有化CA详情 # @type CA: :class:`Tencentcloud::Iotcloud.v20210408.models.CertInfo` # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :CA, :RequestId def initialize(ca=nil, requestid=nil) @CA = ca @RequestId = requestid end def deserialize(params) unless params['CA'].nil? @CA = CertInfo.new @CA.deserialize(params['CA']) end @RequestId = params['RequestId'] end end # DescribePrivateCAs请求参数结构体 class DescribePrivateCAsRequest < TencentCloud::Common::AbstractModel def initialize() end def deserialize(params) end end # DescribePrivateCAs返回参数结构体 class DescribePrivateCAsResponse < TencentCloud::Common::AbstractModel # @param CAs: 私有CA证书列表 # @type CAs: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :CAs, :RequestId def initialize(cas=nil, requestid=nil) @CAs = cas @RequestId = requestid end def deserialize(params) unless params['CAs'].nil? @CAs = [] params['CAs'].each do |i| certinfo_tmp = CertInfo.new certinfo_tmp.deserialize(i) @CAs << certinfo_tmp end end @RequestId = params['RequestId'] end end # DescribeProductCA请求参数结构体 class DescribeProductCARequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String attr_accessor :ProductId def initialize(productid=nil) @ProductId = productid end def deserialize(params) @ProductId = params['ProductId'] end end # DescribeProductCA返回参数结构体 class DescribeProductCAResponse < TencentCloud::Common::AbstractModel # @param CAs: CA证书列表 # @type CAs: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :CAs, :RequestId def initialize(cas=nil, requestid=nil) @CAs = cas @RequestId = requestid end def deserialize(params) unless params['CAs'].nil? @CAs = [] params['CAs'].each do |i| certinfo_tmp = CertInfo.new certinfo_tmp.deserialize(i) @CAs << certinfo_tmp end end @RequestId = params['RequestId'] end end # DescribeProduct请求参数结构体 class DescribeProductRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String attr_accessor :ProductId def initialize(productid=nil) @ProductId = productid end def deserialize(params) @ProductId = params['ProductId'] end end # DescribeProductResource请求参数结构体 class DescribeProductResourceRequest < TencentCloud::Common::AbstractModel # @param ProductID: 需要查看资源列表的产品 ID # @type ProductID: String # @param Name: 需要过滤的资源名称 # @type Name: String attr_accessor :ProductID, :Name def initialize(productid=nil, name=nil) @ProductID = productid @Name = name end def deserialize(params) @ProductID = params['ProductID'] @Name = params['Name'] end end # DescribeProductResource返回参数结构体 class DescribeProductResourceResponse < TencentCloud::Common::AbstractModel # @param Result: 资源详情 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Result: :class:`Tencentcloud::Iotcloud.v20210408.models.ProductResourceInfo` # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Result, :RequestId def initialize(result=nil, requestid=nil) @Result = result @RequestId = requestid end def deserialize(params) unless params['Result'].nil? @Result = ProductResourceInfo.new @Result.deserialize(params['Result']) end @RequestId = params['RequestId'] end end # DescribeProductResources请求参数结构体 class DescribeProductResourcesRequest < TencentCloud::Common::AbstractModel # @param Offset: 偏移量,Offset从0开始 # @type Offset: Integer # @param Limit: 分页的大小,数值范围 10-250 # @type Limit: Integer # @param ProductID: 需要查看资源列表的产品 ID # @type ProductID: String # @param Name: 需要过滤的资源名称 # @type Name: String attr_accessor :Offset, :Limit, :ProductID, :Name def initialize(offset=nil, limit=nil, productid=nil, name=nil) @Offset = offset @Limit = limit @ProductID = productid @Name = name end def deserialize(params) @Offset = params['Offset'] @Limit = params['Limit'] @ProductID = params['ProductID'] @Name = params['Name'] end end # DescribeProductResources返回参数结构体 class DescribeProductResourcesResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 资源总数 # @type TotalCount: Integer # @param Result: 资源详情 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Result: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :Result, :RequestId def initialize(totalcount=nil, result=nil, requestid=nil) @TotalCount = totalcount @Result = result @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['Result'].nil? @Result = [] params['Result'].each do |i| productresourceinfo_tmp = ProductResourceInfo.new productresourceinfo_tmp.deserialize(i) @Result << productresourceinfo_tmp end end @RequestId = params['RequestId'] end end # DescribeProduct返回参数结构体 class DescribeProductResponse < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param ProductName: 产品名 # @type ProductName: String # @param ProductMetadata: 产品元数据 # @type ProductMetadata: :class:`Tencentcloud::Iotcloud.v20210408.models.ProductMetadata` # @param ProductProperties: 产品属性 # @type ProductProperties: :class:`Tencentcloud::Iotcloud.v20210408.models.ProductProperties` # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :ProductId, :ProductName, :ProductMetadata, :ProductProperties, :RequestId def initialize(productid=nil, productname=nil, productmetadata=nil, productproperties=nil, requestid=nil) @ProductId = productid @ProductName = productname @ProductMetadata = productmetadata @ProductProperties = productproperties @RequestId = requestid end def deserialize(params) @ProductId = params['ProductId'] @ProductName = params['ProductName'] unless params['ProductMetadata'].nil? @ProductMetadata = ProductMetadata.new @ProductMetadata.deserialize(params['ProductMetadata']) end unless params['ProductProperties'].nil? @ProductProperties = ProductProperties.new @ProductProperties.deserialize(params['ProductProperties']) end @RequestId = params['RequestId'] end end # DescribeProductTask请求参数结构体 class DescribeProductTaskRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param TaskId: 任务ID # @type TaskId: Integer attr_accessor :ProductId, :TaskId def initialize(productid=nil, taskid=nil) @ProductId = productid @TaskId = taskid end def deserialize(params) @ProductId = params['ProductId'] @TaskId = params['TaskId'] end end # DescribeProductTask返回参数结构体 class DescribeProductTaskResponse < TencentCloud::Common::AbstractModel # @param TaskInfo: 产品任务详细信息 # @type TaskInfo: :class:`Tencentcloud::Iotcloud.v20210408.models.ProductTaskInfo` # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TaskInfo, :RequestId def initialize(taskinfo=nil, requestid=nil) @TaskInfo = taskinfo @RequestId = requestid end def deserialize(params) unless params['TaskInfo'].nil? @TaskInfo = ProductTaskInfo.new @TaskInfo.deserialize(params['TaskInfo']) end @RequestId = params['RequestId'] end end # DescribeProductTasks请求参数结构体 class DescribeProductTasksRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param Offset: 产品级别任务列表偏移量 # @type Offset: Integer # @param Limit: 产品级别任务列表拉取个数 # @type Limit: Integer attr_accessor :ProductId, :Offset, :Limit def initialize(productid=nil, offset=nil, limit=nil) @ProductId = productid @Offset = offset @Limit = limit end def deserialize(params) @ProductId = params['ProductId'] @Offset = params['Offset'] @Limit = params['Limit'] end end # DescribeProductTasks返回参数结构体 class DescribeProductTasksResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 符合条件的任务总个数 # @type TotalCount: Integer # @param TaskInfos: 任务详细信息列表 # @type TaskInfos: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :TaskInfos, :RequestId def initialize(totalcount=nil, taskinfos=nil, requestid=nil) @TotalCount = totalcount @TaskInfos = taskinfos @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['TaskInfos'].nil? @TaskInfos = [] params['TaskInfos'].each do |i| producttaskinfo_tmp = ProductTaskInfo.new producttaskinfo_tmp.deserialize(i) @TaskInfos << producttaskinfo_tmp end end @RequestId = params['RequestId'] end end # DescribeProducts请求参数结构体 class DescribeProductsRequest < TencentCloud::Common::AbstractModel # @param Offset: 偏移量,Offset从0开始 # @type Offset: Integer # @param Limit: 分页大小,当前页面中显示的最大数量,值范围 10-250。 # @type Limit: Integer attr_accessor :Offset, :Limit def initialize(offset=nil, limit=nil) @Offset = offset @Limit = limit end def deserialize(params) @Offset = params['Offset'] @Limit = params['Limit'] end end # DescribeProducts返回参数结构体 class DescribeProductsResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 产品总数 # @type TotalCount: Integer # @param Products: 产品详细信息列表 # @type Products: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :Products, :RequestId def initialize(totalcount=nil, products=nil, requestid=nil) @TotalCount = totalcount @Products = products @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['Products'].nil? @Products = [] params['Products'].each do |i| productinfo_tmp = ProductInfo.new productinfo_tmp.deserialize(i) @Products << productinfo_tmp end end @RequestId = params['RequestId'] end end # DescribePushResourceTaskStatistics请求参数结构体 class DescribePushResourceTaskStatisticsRequest < TencentCloud::Common::AbstractModel # @param ProductID: 产品ID # @type ProductID: String # @param Name: 资源名称 # @type Name: String attr_accessor :ProductID, :Name def initialize(productid=nil, name=nil) @ProductID = productid @Name = name end def deserialize(params) @ProductID = params['ProductID'] @Name = params['Name'] end end # DescribePushResourceTaskStatistics返回参数结构体 class DescribePushResourceTaskStatisticsResponse < TencentCloud::Common::AbstractModel # @param SuccessTotal: 推送成功的设备总数 # 注意:此字段可能返回 null,表示取不到有效值。 # @type SuccessTotal: Integer # @param FailureTotal: 推送失败的设备总数 # 注意:此字段可能返回 null,表示取不到有效值。 # @type FailureTotal: Integer # @param UpgradingTotal: 正在推送的设备总数 # 注意:此字段可能返回 null,表示取不到有效值。 # @type UpgradingTotal: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :SuccessTotal, :FailureTotal, :UpgradingTotal, :RequestId def initialize(successtotal=nil, failuretotal=nil, upgradingtotal=nil, requestid=nil) @SuccessTotal = successtotal @FailureTotal = failuretotal @UpgradingTotal = upgradingtotal @RequestId = requestid end def deserialize(params) @SuccessTotal = params['SuccessTotal'] @FailureTotal = params['FailureTotal'] @UpgradingTotal = params['UpgradingTotal'] @RequestId = params['RequestId'] end end # DescribeResourceTasks请求参数结构体 class DescribeResourceTasksRequest < TencentCloud::Common::AbstractModel # @param ProductID: 产品ID # @type ProductID: String # @param Name: 资源名称 # @type Name: String # @param Offset: 查询偏移量 # @type Offset: Integer # @param Limit: 返回查询结果条数 # @type Limit: Integer # @param Filters: 搜索过滤条件 # @type Filters: Array attr_accessor :ProductID, :Name, :Offset, :Limit, :Filters def initialize(productid=nil, name=nil, offset=nil, limit=nil, filters=nil) @ProductID = productid @Name = name @Offset = offset @Limit = limit @Filters = filters end def deserialize(params) @ProductID = params['ProductID'] @Name = params['Name'] @Offset = params['Offset'] @Limit = params['Limit'] unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| searchkeyword_tmp = SearchKeyword.new searchkeyword_tmp.deserialize(i) @Filters << searchkeyword_tmp end end end end # DescribeResourceTasks返回参数结构体 class DescribeResourceTasksResponse < TencentCloud::Common::AbstractModel # @param TaskInfos: 资源任务列表 # 注意:此字段可能返回 null,表示取不到有效值。 # @type TaskInfos: Array # @param Total: 资源任务总数 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Total: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TaskInfos, :Total, :RequestId def initialize(taskinfos=nil, total=nil, requestid=nil) @TaskInfos = taskinfos @Total = total @RequestId = requestid end def deserialize(params) unless params['TaskInfos'].nil? @TaskInfos = [] params['TaskInfos'].each do |i| firmwaretaskinfo_tmp = FirmwareTaskInfo.new firmwaretaskinfo_tmp.deserialize(i) @TaskInfos << firmwaretaskinfo_tmp end end @Total = params['Total'] @RequestId = params['RequestId'] end end # 设备详细信息 class DeviceInfo < TencentCloud::Common::AbstractModel # @param DeviceName: 设备名 # @type DeviceName: String # @param Online: 设备是否在线,0不在线,1在线 # @type Online: Integer # @param LoginTime: 设备登录时间 # @type LoginTime: Integer # @param Version: 设备版本 # @type Version: String # @param DeviceCert: 设备证书,证书加密的设备返回 # @type DeviceCert: String # @param DevicePsk: 设备密钥,密钥加密的设备返回 # @type DevicePsk: String # @param Tags: 设备属性 # @type Tags: Array # @param DeviceType: 设备类型 # @type DeviceType: Integer # @param Imei: 国际移动设备识别码 IMEI # @type Imei: String # @param Isp: 运营商类型 # @type Isp: Integer # @param NbiotDeviceID: NB IOT运营商处的DeviceID # @type NbiotDeviceID: String # @param ConnIP: IP地址 # @type ConnIP: Integer # @param LastUpdateTime: 设备最后更新时间 # @type LastUpdateTime: Integer # @param LoraDevEui: LoRa设备的dev eui # @type LoraDevEui: String # @param LoraMoteType: LoRa设备的Mote type # @type LoraMoteType: Integer # @param FirstOnlineTime: 首次上线时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type FirstOnlineTime: Integer # @param LastOfflineTime: 最近下线时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type LastOfflineTime: Integer # @param CreateTime: 设备创建时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CreateTime: Integer # @param LogLevel: 设备日志级别 # 注意:此字段可能返回 null,表示取不到有效值。 # @type LogLevel: Integer # @param CertState: 设备证书获取状态, 1 已获取过设备密钥,0 未获取过设备密钥 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CertState: Integer # @param EnableState: 设备可用状态,0禁用,1启用 # 注意:此字段可能返回 null,表示取不到有效值。 # @type EnableState: Integer # @param Labels: 设备标签 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Labels: Array # @param ClientIP: MQTT客户端IP地址 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ClientIP: String # @param FirmwareUpdateTime: ota最后更新时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type FirmwareUpdateTime: Integer attr_accessor :DeviceName, :Online, :LoginTime, :Version, :DeviceCert, :DevicePsk, :Tags, :DeviceType, :Imei, :Isp, :NbiotDeviceID, :ConnIP, :LastUpdateTime, :LoraDevEui, :LoraMoteType, :FirstOnlineTime, :LastOfflineTime, :CreateTime, :LogLevel, :CertState, :EnableState, :Labels, :ClientIP, :FirmwareUpdateTime def initialize(devicename=nil, online=nil, logintime=nil, version=nil, devicecert=nil, devicepsk=nil, tags=nil, devicetype=nil, imei=nil, isp=nil, nbiotdeviceid=nil, connip=nil, lastupdatetime=nil, loradeveui=nil, loramotetype=nil, firstonlinetime=nil, lastofflinetime=nil, createtime=nil, loglevel=nil, certstate=nil, enablestate=nil, labels=nil, clientip=nil, firmwareupdatetime=nil) @DeviceName = devicename @Online = online @LoginTime = logintime @Version = version @DeviceCert = devicecert @DevicePsk = devicepsk @Tags = tags @DeviceType = devicetype @Imei = imei @Isp = isp @NbiotDeviceID = nbiotdeviceid @ConnIP = connip @LastUpdateTime = lastupdatetime @LoraDevEui = loradeveui @LoraMoteType = loramotetype @FirstOnlineTime = firstonlinetime @LastOfflineTime = lastofflinetime @CreateTime = createtime @LogLevel = loglevel @CertState = certstate @EnableState = enablestate @Labels = labels @ClientIP = clientip @FirmwareUpdateTime = firmwareupdatetime end def deserialize(params) @DeviceName = params['DeviceName'] @Online = params['Online'] @LoginTime = params['LoginTime'] @Version = params['Version'] @DeviceCert = params['DeviceCert'] @DevicePsk = params['DevicePsk'] unless params['Tags'].nil? @Tags = [] params['Tags'].each do |i| devicetag_tmp = DeviceTag.new devicetag_tmp.deserialize(i) @Tags << devicetag_tmp end end @DeviceType = params['DeviceType'] @Imei = params['Imei'] @Isp = params['Isp'] @NbiotDeviceID = params['NbiotDeviceID'] @ConnIP = params['ConnIP'] @LastUpdateTime = params['LastUpdateTime'] @LoraDevEui = params['LoraDevEui'] @LoraMoteType = params['LoraMoteType'] @FirstOnlineTime = params['FirstOnlineTime'] @LastOfflineTime = params['LastOfflineTime'] @CreateTime = params['CreateTime'] @LogLevel = params['LogLevel'] @CertState = params['CertState'] @EnableState = params['EnableState'] unless params['Labels'].nil? @Labels = [] params['Labels'].each do |i| devicelabel_tmp = DeviceLabel.new devicelabel_tmp.deserialize(i) @Labels << devicelabel_tmp end end @ClientIP = params['ClientIP'] @FirmwareUpdateTime = params['FirmwareUpdateTime'] end end # 设备标签 class DeviceLabel < TencentCloud::Common::AbstractModel # @param Key: 标签标识 # @type Key: String # @param Value: 标签值 # @type Value: String attr_accessor :Key, :Value def initialize(key=nil, value=nil) @Key = key @Value = value end def deserialize(params) @Key = params['Key'] @Value = params['Value'] end end # 设备资源详细信息 class DeviceResourceInfo < TencentCloud::Common::AbstractModel # @param ProductID: 产品ID # @type ProductID: String # @param ProductName: 产品名 # @type ProductName: String # @param Name: 资源名称 # @type Name: String # @param Md5: 资源文件md5 # @type Md5: String # @param Size: 资源文件大小 # @type Size: Integer # @param UpdateTime: 资源更新时间 # @type UpdateTime: String # @param DeviceName: 设备名称 # @type DeviceName: String # @param Status: 设备资源上传状态 # @type Status: Integer # @param Percent: 设备资源上传百分比 # @type Percent: Integer attr_accessor :ProductID, :ProductName, :Name, :Md5, :Size, :UpdateTime, :DeviceName, :Status, :Percent def initialize(productid=nil, productname=nil, name=nil, md5=nil, size=nil, updatetime=nil, devicename=nil, status=nil, percent=nil) @ProductID = productid @ProductName = productname @Name = name @Md5 = md5 @Size = size @UpdateTime = updatetime @DeviceName = devicename @Status = status @Percent = percent end def deserialize(params) @ProductID = params['ProductID'] @ProductName = params['ProductName'] @Name = params['Name'] @Md5 = params['Md5'] @Size = params['Size'] @UpdateTime = params['UpdateTime'] @DeviceName = params['DeviceName'] @Status = params['Status'] @Percent = params['Percent'] end end # 设备属性 class DeviceTag < TencentCloud::Common::AbstractModel # @param Tag: 属性名称 # @type Tag: String # @param Type: 属性值的类型,1 int,2 string # @type Type: Integer # @param Value: 属性的值 # @type Value: String # @param Name: 属性描述名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Name: String attr_accessor :Tag, :Type, :Value, :Name def initialize(tag=nil, type=nil, value=nil, name=nil) @Tag = tag @Type = type @Value = value @Name = name end def deserialize(params) @Tag = params['Tag'] @Type = params['Type'] @Value = params['Value'] @Name = params['Name'] end end # 设备固件更新状态 class DeviceUpdateStatus < TencentCloud::Common::AbstractModel # @param DeviceName: 设备名 # @type DeviceName: String # @param LastProcessTime: 最后处理时间 # @type LastProcessTime: Integer # @param Status: 状态 # @type Status: Integer # @param ErrMsg: 错误消息 # @type ErrMsg: String # @param Retcode: 返回码 # @type Retcode: Integer # @param DstVersion: 目标更新版本 # @type DstVersion: String # @param Percent: 下载中状态时的下载进度 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Percent: Integer # @param OriVersion: 原版本号 # 注意:此字段可能返回 null,表示取不到有效值。 # @type OriVersion: String # @param TaskId: 任务ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type TaskId: Integer attr_accessor :DeviceName, :LastProcessTime, :Status, :ErrMsg, :Retcode, :DstVersion, :Percent, :OriVersion, :TaskId def initialize(devicename=nil, lastprocesstime=nil, status=nil, errmsg=nil, retcode=nil, dstversion=nil, percent=nil, oriversion=nil, taskid=nil) @DeviceName = devicename @LastProcessTime = lastprocesstime @Status = status @ErrMsg = errmsg @Retcode = retcode @DstVersion = dstversion @Percent = percent @OriVersion = oriversion @TaskId = taskid end def deserialize(params) @DeviceName = params['DeviceName'] @LastProcessTime = params['LastProcessTime'] @Status = params['Status'] @ErrMsg = params['ErrMsg'] @Retcode = params['Retcode'] @DstVersion = params['DstVersion'] @Percent = params['Percent'] @OriVersion = params['OriVersion'] @TaskId = params['TaskId'] end end # DisableTopicRule请求参数结构体 class DisableTopicRuleRequest < TencentCloud::Common::AbstractModel # @param RuleName: 规则名称 # @type RuleName: String attr_accessor :RuleName def initialize(rulename=nil) @RuleName = rulename end def deserialize(params) @RuleName = params['RuleName'] end end # DisableTopicRule返回参数结构体 class DisableTopicRuleResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # DownloadDeviceResource请求参数结构体 class DownloadDeviceResourceRequest < TencentCloud::Common::AbstractModel # @param ProductID: 产品ID # @type ProductID: String # @param Name: 资源名称 # @type Name: String # @param DeviceName: 设备名称 # @type DeviceName: String attr_accessor :ProductID, :Name, :DeviceName def initialize(productid=nil, name=nil, devicename=nil) @ProductID = productid @Name = name @DeviceName = devicename end def deserialize(params) @ProductID = params['ProductID'] @Name = params['Name'] @DeviceName = params['DeviceName'] end end # DownloadDeviceResource返回参数结构体 class DownloadDeviceResourceResponse < TencentCloud::Common::AbstractModel # @param Url: 设备资源的cos链接 # @type Url: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Url, :RequestId def initialize(url=nil, requestid=nil) @Url = url @RequestId = requestid end def deserialize(params) @Url = params['Url'] @RequestId = params['RequestId'] end end # EditFirmware请求参数结构体 class EditFirmwareRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID。 # @type ProductId: String # @param FirmwareVersion: 固件版本号。 # @type FirmwareVersion: String # @param FirmwareName: 固件名称。 # @type FirmwareName: String # @param FirmwareDescription: 固件描述 # @type FirmwareDescription: String attr_accessor :ProductId, :FirmwareVersion, :FirmwareName, :FirmwareDescription def initialize(productid=nil, firmwareversion=nil, firmwarename=nil, firmwaredescription=nil) @ProductId = productid @FirmwareVersion = firmwareversion @FirmwareName = firmwarename @FirmwareDescription = firmwaredescription end def deserialize(params) @ProductId = params['ProductId'] @FirmwareVersion = params['FirmwareVersion'] @FirmwareName = params['FirmwareName'] @FirmwareDescription = params['FirmwareDescription'] end end # EditFirmware返回参数结构体 class EditFirmwareResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # EnableTopicRule请求参数结构体 class EnableTopicRuleRequest < TencentCloud::Common::AbstractModel # @param RuleName: 规则名称 # @type RuleName: String attr_accessor :RuleName def initialize(rulename=nil) @RuleName = rulename end def deserialize(params) @RuleName = params['RuleName'] end end # EnableTopicRule返回参数结构体 class EnableTopicRuleResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # 设备固件详细信息 class FirmwareInfo < TencentCloud::Common::AbstractModel # @param Version: 固件版本 # @type Version: String # @param Md5sum: 固件MD5值 # @type Md5sum: String # @param CreateTime: 固件创建时间 # @type CreateTime: Integer # @param ProductName: 产品名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ProductName: String # @param Name: 固件名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Name: String # @param Description: 固件描述 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Description: String # @param ProductId: 产品ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type ProductId: String attr_accessor :Version, :Md5sum, :CreateTime, :ProductName, :Name, :Description, :ProductId def initialize(version=nil, md5sum=nil, createtime=nil, productname=nil, name=nil, description=nil, productid=nil) @Version = version @Md5sum = md5sum @CreateTime = createtime @ProductName = productname @Name = name @Description = description @ProductId = productid end def deserialize(params) @Version = params['Version'] @Md5sum = params['Md5sum'] @CreateTime = params['CreateTime'] @ProductName = params['ProductName'] @Name = params['Name'] @Description = params['Description'] @ProductId = params['ProductId'] end end # 固件升级任务信息 class FirmwareTaskInfo < TencentCloud::Common::AbstractModel # @param TaskId: 任务ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type TaskId: Integer # @param Status: 任务状态 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Status: Integer # @param Type: 任务类型 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Type: Integer # @param CreateTime: 任务创建时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CreateTime: Integer attr_accessor :TaskId, :Status, :Type, :CreateTime def initialize(taskid=nil, status=nil, type=nil, createtime=nil) @TaskId = taskid @Status = status @Type = type @CreateTime = createtime end def deserialize(params) @TaskId = params['TaskId'] @Status = params['Status'] @Type = params['Type'] @CreateTime = params['CreateTime'] end end # GetAllVersion请求参数结构体 class GetAllVersionRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String attr_accessor :ProductId def initialize(productid=nil) @ProductId = productid end def deserialize(params) @ProductId = params['ProductId'] end end # GetAllVersion返回参数结构体 class GetAllVersionResponse < TencentCloud::Common::AbstractModel # @param Version: 版本号列表 # @type Version: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Version, :RequestId def initialize(version=nil, requestid=nil) @Version = version @RequestId = requestid end def deserialize(params) @Version = params['Version'] @RequestId = params['RequestId'] end end # GetCOSURL请求参数结构体 class GetCOSURLRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param FirmwareVersion: 固件版本 # @type FirmwareVersion: String # @param FileSize: 固件版本大小 # @type FileSize: Integer attr_accessor :ProductId, :FirmwareVersion, :FileSize def initialize(productid=nil, firmwareversion=nil, filesize=nil) @ProductId = productid @FirmwareVersion = firmwareversion @FileSize = filesize end def deserialize(params) @ProductId = params['ProductId'] @FirmwareVersion = params['FirmwareVersion'] @FileSize = params['FileSize'] end end # GetCOSURL返回参数结构体 class GetCOSURLResponse < TencentCloud::Common::AbstractModel # @param Url: 固件URL # @type Url: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Url, :RequestId def initialize(url=nil, requestid=nil) @Url = url @RequestId = requestid end def deserialize(params) @Url = params['Url'] @RequestId = params['RequestId'] end end # GetUserResourceInfo请求参数结构体 class GetUserResourceInfoRequest < TencentCloud::Common::AbstractModel def initialize() end def deserialize(params) end end # GetUserResourceInfo返回参数结构体 class GetUserResourceInfoResponse < TencentCloud::Common::AbstractModel # @param UsedSize: 已使用的资源字节数 # @type UsedSize: Integer # @param Limit: 可以使用资源的总大小 # @type Limit: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :UsedSize, :Limit, :RequestId def initialize(usedsize=nil, limit=nil, requestid=nil) @UsedSize = usedsize @Limit = limit @RequestId = requestid end def deserialize(params) @UsedSize = params['UsedSize'] @Limit = params['Limit'] @RequestId = params['RequestId'] end end # ListFirmwares请求参数结构体 class ListFirmwaresRequest < TencentCloud::Common::AbstractModel # @param PageNum: 获取的页数 # @type PageNum: Integer # @param PageSize: 分页的大小 # @type PageSize: Integer # @param ProductId: 产品ID # @type ProductId: String # @param Filters: 搜索过滤条件 # @type Filters: Array attr_accessor :PageNum, :PageSize, :ProductId, :Filters def initialize(pagenum=nil, pagesize=nil, productid=nil, filters=nil) @PageNum = pagenum @PageSize = pagesize @ProductId = productid @Filters = filters end def deserialize(params) @PageNum = params['PageNum'] @PageSize = params['PageSize'] @ProductId = params['ProductId'] unless params['Filters'].nil? @Filters = [] params['Filters'].each do |i| searchkeyword_tmp = SearchKeyword.new searchkeyword_tmp.deserialize(i) @Filters << searchkeyword_tmp end end end end # ListFirmwares返回参数结构体 class ListFirmwaresResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 固件总数 # @type TotalCount: Integer # @param Firmwares: 固件列表 # @type Firmwares: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :Firmwares, :RequestId def initialize(totalcount=nil, firmwares=nil, requestid=nil) @TotalCount = totalcount @Firmwares = firmwares @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['Firmwares'].nil? @Firmwares = [] params['Firmwares'].each do |i| firmwareinfo_tmp = FirmwareInfo.new firmwareinfo_tmp.deserialize(i) @Firmwares << firmwareinfo_tmp end end @RequestId = params['RequestId'] end end # ListLogPayload请求参数结构体 class ListLogPayloadRequest < TencentCloud::Common::AbstractModel # @param MinTime: 日志开始时间,毫秒级时间戳 # @type MinTime: Integer # @param MaxTime: 日志结束时间,毫秒级时间戳 # @type MaxTime: Integer # @param Keywords: 查询关键字,可以同时支持键值查询和文本查询,例如,查询某key的值为value,并且包含某word的日志,该参数为:key:value word。键值或文本可以包含多个,以空格隔开。其中可以索引的key比如:RequestID、ProductID、DeviceName等。 # 一个典型的查询示例:ProductID:ABCDE12345 DeviceName:test publish # @type Keywords: String # @param Context: 日志检索上下文 # @type Context: String # @param MaxNum: 日志最大条数 # @type MaxNum: Integer attr_accessor :MinTime, :MaxTime, :Keywords, :Context, :MaxNum def initialize(mintime=nil, maxtime=nil, keywords=nil, context=nil, maxnum=nil) @MinTime = mintime @MaxTime = maxtime @Keywords = keywords @Context = context @MaxNum = maxnum end def deserialize(params) @MinTime = params['MinTime'] @MaxTime = params['MaxTime'] @Keywords = params['Keywords'] @Context = params['Context'] @MaxNum = params['MaxNum'] end end # ListLogPayload返回参数结构体 class ListLogPayloadResponse < TencentCloud::Common::AbstractModel # @param Context: 日志上下文 # @type Context: String # @param Listover: 是否还有日志,如有仍有日志,下次查询的请求带上当前请求返回的Context # @type Listover: Boolean # @param Results: 日志列表 # @type Results: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Context, :Listover, :Results, :RequestId def initialize(context=nil, listover=nil, results=nil, requestid=nil) @Context = context @Listover = listover @Results = results @RequestId = requestid end def deserialize(params) @Context = params['Context'] @Listover = params['Listover'] unless params['Results'].nil? @Results = [] params['Results'].each do |i| payloadlogitem_tmp = PayloadLogItem.new payloadlogitem_tmp.deserialize(i) @Results << payloadlogitem_tmp end end @RequestId = params['RequestId'] end end # ListLog请求参数结构体 class ListLogRequest < TencentCloud::Common::AbstractModel # @param MinTime: 日志开始时间,毫秒级时间戳 # @type MinTime: Integer # @param MaxTime: 日志结束时间,毫秒级时间戳 # @type MaxTime: Integer # @param Keywords: 查询关键字,可以同时支持键值查询和文本查询,例如,查询某key的值为value,并且包含某word的日志,该参数为:key:value word。键值或文本可以包含多个,以空格隔开。其中可以索引的key包括:requestid、productid、devicename、scene、content。 # 一个典型的查询示例:productid:ABCDE12345 devicename:test scene:SHADOW content:Device%20connect publish # @type Keywords: String # @param Context: 日志检索上下文 # @type Context: String # @param MaxNum: 查询条数 # @type MaxNum: Integer attr_accessor :MinTime, :MaxTime, :Keywords, :Context, :MaxNum def initialize(mintime=nil, maxtime=nil, keywords=nil, context=nil, maxnum=nil) @MinTime = mintime @MaxTime = maxtime @Keywords = keywords @Context = context @MaxNum = maxnum end def deserialize(params) @MinTime = params['MinTime'] @MaxTime = params['MaxTime'] @Keywords = params['Keywords'] @Context = params['Context'] @MaxNum = params['MaxNum'] end end # ListLog返回参数结构体 class ListLogResponse < TencentCloud::Common::AbstractModel # @param Context: 日志上下文 # @type Context: String # @param Listover: 是否还有日志,如有仍有日志,下次查询的请求带上当前请求返回的Context # @type Listover: Boolean # @param Results: 日志列表 # @type Results: Array # @param TotalCount: 日志总条数 # @type TotalCount: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Context, :Listover, :Results, :TotalCount, :RequestId def initialize(context=nil, listover=nil, results=nil, totalcount=nil, requestid=nil) @Context = context @Listover = listover @Results = results @TotalCount = totalcount @RequestId = requestid end def deserialize(params) @Context = params['Context'] @Listover = params['Listover'] unless params['Results'].nil? @Results = [] params['Results'].each do |i| clslogitem_tmp = CLSLogItem.new clslogitem_tmp.deserialize(i) @Results << clslogitem_tmp end end @TotalCount = params['TotalCount'] @RequestId = params['RequestId'] end end # ListSDKLog请求参数结构体 class ListSDKLogRequest < TencentCloud::Common::AbstractModel # @param MinTime: 日志开始时间 # @type MinTime: Integer # @param MaxTime: 日志结束时间 # @type MaxTime: Integer # @param Keywords: 查询关键字,可以同时支持键值查询和文本查询, # 例如,查询某key的值为value,并且包含某word的日志,该参数为:key:value word。 # 键值或文本可以包含多个,以空格隔开。 # 其中可以索引的key包括:productid、devicename、loglevel # 一个典型的查询示例:productid:7JK1G72JNE devicename:name publish loglevel:WARN一个典型的查询示例:productid:ABCDE12345 devicename:test scene:SHADOW publish # @type Keywords: String # @param Context: 日志检索上下文 # @type Context: String # @param MaxNum: 查询条数 # @type MaxNum: Integer attr_accessor :MinTime, :MaxTime, :Keywords, :Context, :MaxNum def initialize(mintime=nil, maxtime=nil, keywords=nil, context=nil, maxnum=nil) @MinTime = mintime @MaxTime = maxtime @Keywords = keywords @Context = context @MaxNum = maxnum end def deserialize(params) @MinTime = params['MinTime'] @MaxTime = params['MaxTime'] @Keywords = params['Keywords'] @Context = params['Context'] @MaxNum = params['MaxNum'] end end # ListSDKLog返回参数结构体 class ListSDKLogResponse < TencentCloud::Common::AbstractModel # @param Context: 日志检索上下文 # @type Context: String # @param Listover: 是否还有日志,如有仍有日志,下次查询的请求带上当前请求返回的Context # @type Listover: Boolean # @param Results: 日志列表 # @type Results: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Context, :Listover, :Results, :RequestId def initialize(context=nil, listover=nil, results=nil, requestid=nil) @Context = context @Listover = listover @Results = results @RequestId = requestid end def deserialize(params) @Context = params['Context'] @Listover = params['Listover'] unless params['Results'].nil? @Results = [] params['Results'].each do |i| sdklogitem_tmp = SDKLogItem.new sdklogitem_tmp.deserialize(i) @Results << sdklogitem_tmp end end @RequestId = params['RequestId'] end end # ListTopicRules请求参数结构体 class ListTopicRulesRequest < TencentCloud::Common::AbstractModel # @param PageNum: 请求的页数 # @type PageNum: Integer # @param PageSize: 分页的大小 # @type PageSize: Integer attr_accessor :PageNum, :PageSize def initialize(pagenum=nil, pagesize=nil) @PageNum = pagenum @PageSize = pagesize end def deserialize(params) @PageNum = params['PageNum'] @PageSize = params['PageSize'] end end # ListTopicRules返回参数结构体 class ListTopicRulesResponse < TencentCloud::Common::AbstractModel # @param TotalCnt: 规则总数量 # @type TotalCnt: Integer # @param Rules: 规则列表 # @type Rules: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCnt, :Rules, :RequestId def initialize(totalcnt=nil, rules=nil, requestid=nil) @TotalCnt = totalcnt @Rules = rules @RequestId = requestid end def deserialize(params) @TotalCnt = params['TotalCnt'] unless params['Rules'].nil? @Rules = [] params['Rules'].each do |i| topicruleinfo_tmp = TopicRuleInfo.new topicruleinfo_tmp.deserialize(i) @Rules << topicruleinfo_tmp end end @RequestId = params['RequestId'] end end # 内容日志项 class PayloadLogItem < TencentCloud::Common::AbstractModel # @param Uin: 账号id # @type Uin: String # @param ProductId: 产品id # @type ProductId: String # @param DeviceName: 设备名称 # @type DeviceName: String # @param SrcType: 来源类型 # @type SrcType: String # @param SrcName: 来源名称 # @type SrcName: String # @param Topic: 消息topic # @type Topic: String # @param PayloadFormatType: 内容格式类型 # @type PayloadFormatType: String # @param Payload: 内容信息 # @type Payload: String # @param RequestId: 请求ID # @type RequestId: String # @param DateTime: 日期时间 # @type DateTime: String attr_accessor :Uin, :ProductId, :DeviceName, :SrcType, :SrcName, :Topic, :PayloadFormatType, :Payload, :RequestId, :DateTime def initialize(uin=nil, productid=nil, devicename=nil, srctype=nil, srcname=nil, topic=nil, payloadformattype=nil, payload=nil, requestid=nil, datetime=nil) @Uin = uin @ProductId = productid @DeviceName = devicename @SrcType = srctype @SrcName = srcname @Topic = topic @PayloadFormatType = payloadformattype @Payload = payload @RequestId = requestid @DateTime = datetime end def deserialize(params) @Uin = params['Uin'] @ProductId = params['ProductId'] @DeviceName = params['DeviceName'] @SrcType = params['SrcType'] @SrcName = params['SrcName'] @Topic = params['Topic'] @PayloadFormatType = params['PayloadFormatType'] @Payload = params['Payload'] @RequestId = params['RequestId'] @DateTime = params['DateTime'] end end # 产品详细信息 class ProductInfo < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param ProductName: 产品名 # @type ProductName: String # @param ProductMetadata: 产品元数据 # @type ProductMetadata: :class:`Tencentcloud::Iotcloud.v20210408.models.ProductMetadata` # @param ProductProperties: 产品属性 # @type ProductProperties: :class:`Tencentcloud::Iotcloud.v20210408.models.ProductProperties` attr_accessor :ProductId, :ProductName, :ProductMetadata, :ProductProperties def initialize(productid=nil, productname=nil, productmetadata=nil, productproperties=nil) @ProductId = productid @ProductName = productname @ProductMetadata = productmetadata @ProductProperties = productproperties end def deserialize(params) @ProductId = params['ProductId'] @ProductName = params['ProductName'] unless params['ProductMetadata'].nil? @ProductMetadata = ProductMetadata.new @ProductMetadata.deserialize(params['ProductMetadata']) end unless params['ProductProperties'].nil? @ProductProperties = ProductProperties.new @ProductProperties.deserialize(params['ProductProperties']) end end end # 产品元数据 class ProductMetadata < TencentCloud::Common::AbstractModel # @param CreationDate: 产品创建时间 # @type CreationDate: Integer # @param CreateUserId: 创建者 Uin # @type CreateUserId: Integer # @param UserId: 账号 Uin # @type UserId: Integer attr_accessor :CreationDate, :CreateUserId, :UserId def initialize(creationdate=nil, createuserid=nil, userid=nil) @CreationDate = creationdate @CreateUserId = createuserid @UserId = userid end def deserialize(params) @CreationDate = params['CreationDate'] @CreateUserId = params['CreateUserId'] @UserId = params['UserId'] end end # 产品属性 class ProductProperties < TencentCloud::Common::AbstractModel # @param ProductDescription: 产品描述 # @type ProductDescription: String # @param EncryptionType: 加密类型,1表示证书认证,2表示签名认证。如不填写,默认值是1 # @type EncryptionType: String # @param Region: 产品所属区域,目前只支持广州(gz) # @type Region: String # @param ProductType: 产品类型,各个类型值代表的节点-类型如下: # 0 普通产品,2 NB-IoT产品,4 LoRa产品,3 LoRa网关产品,5 普通网关产品 默认值是0 # @type ProductType: Integer # @param Format: 数据格式,取值为json或者custom,默认值是json # @type Format: String # @param Platform: 产品所属平台,默认值是0 # @type Platform: String # @param Appeui: LoRa产品运营侧APPEUI,只有LoRa产品需要填写 # @type Appeui: String # @param ModelId: 产品绑定的物模型ID,-1表示不绑定 # @type ModelId: String # @param ModelName: 产品绑定的物模型名称 # @type ModelName: String # @param ProductKey: 产品密钥,suite产品才会有 # @type ProductKey: String # @param RegisterType: 动态注册类型 0-关闭, 1-预定义设备名 2-动态定义设备名 # @type RegisterType: Integer # @param ProductSecret: 动态注册产品密钥 # @type ProductSecret: String # @param RegisterLimit: RegisterType为2时,设备动态创建的限制数量 # @type RegisterLimit: Integer # @param OriginProductId: 划归的产品,展示为源产品ID,其余为空 # @type OriginProductId: String # @param PrivateCAName: 私有CA名称 # @type PrivateCAName: String # @param OriginUserId: 划归的产品,展示为源用户ID,其余为空 # @type OriginUserId: Integer # @param DeviceLimit: 设备限制 # @type DeviceLimit: Integer # @param ForbiddenStatus: 产品禁用状态 # @type ForbiddenStatus: Integer attr_accessor :ProductDescription, :EncryptionType, :Region, :ProductType, :Format, :Platform, :Appeui, :ModelId, :ModelName, :ProductKey, :RegisterType, :ProductSecret, :RegisterLimit, :OriginProductId, :PrivateCAName, :OriginUserId, :DeviceLimit, :ForbiddenStatus def initialize(productdescription=nil, encryptiontype=nil, region=nil, producttype=nil, format=nil, platform=nil, appeui=nil, modelid=nil, modelname=nil, productkey=nil, registertype=nil, productsecret=nil, registerlimit=nil, originproductid=nil, privatecaname=nil, originuserid=nil, devicelimit=nil, forbiddenstatus=nil) @ProductDescription = productdescription @EncryptionType = encryptiontype @Region = region @ProductType = producttype @Format = format @Platform = platform @Appeui = appeui @ModelId = modelid @ModelName = modelname @ProductKey = productkey @RegisterType = registertype @ProductSecret = productsecret @RegisterLimit = registerlimit @OriginProductId = originproductid @PrivateCAName = privatecaname @OriginUserId = originuserid @DeviceLimit = devicelimit @ForbiddenStatus = forbiddenstatus end def deserialize(params) @ProductDescription = params['ProductDescription'] @EncryptionType = params['EncryptionType'] @Region = params['Region'] @ProductType = params['ProductType'] @Format = params['Format'] @Platform = params['Platform'] @Appeui = params['Appeui'] @ModelId = params['ModelId'] @ModelName = params['ModelName'] @ProductKey = params['ProductKey'] @RegisterType = params['RegisterType'] @ProductSecret = params['ProductSecret'] @RegisterLimit = params['RegisterLimit'] @OriginProductId = params['OriginProductId'] @PrivateCAName = params['PrivateCAName'] @OriginUserId = params['OriginUserId'] @DeviceLimit = params['DeviceLimit'] @ForbiddenStatus = params['ForbiddenStatus'] end end # 产品资源详细信息 class ProductResourceInfo < TencentCloud::Common::AbstractModel # @param ProductID: 产品ID # @type ProductID: String # @param ProductName: 产品名 # @type ProductName: String # @param Name: 资源名称 # @type Name: String # @param Md5: 资源文件md5 # @type Md5: String # @param Size: 资源文件大小 # @type Size: Integer # @param Description: 资源文件描述 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Description: String # @param CreateTime: 资源创建时间 # @type CreateTime: String attr_accessor :ProductID, :ProductName, :Name, :Md5, :Size, :Description, :CreateTime def initialize(productid=nil, productname=nil, name=nil, md5=nil, size=nil, description=nil, createtime=nil) @ProductID = productid @ProductName = productname @Name = name @Md5 = md5 @Size = size @Description = description @CreateTime = createtime end def deserialize(params) @ProductID = params['ProductID'] @ProductName = params['ProductName'] @Name = params['Name'] @Md5 = params['Md5'] @Size = params['Size'] @Description = params['Description'] @CreateTime = params['CreateTime'] end end # 产品级任务详细信息 class ProductTaskInfo < TencentCloud::Common::AbstractModel # @param Id: 任务ID # @type Id: Integer # @param Type: 任务类型 0-批量创建设备类型 # @type Type: Integer # @param State: 任务状态 0-创建中 1-待执行 2-执行中 3-执行失败 4-子任务部分失败 5-执行成功 # @type State: Integer # @param ParametersType: 任务参数类型 cosfile-文件输入 random-随机生成 # @type ParametersType: String # @param Parameters: 任务参数 # @type Parameters: String # @param ResultType: 任务执行结果类型 cosfile-文件输出 errmsg-错误信息 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ResultType: String # @param Result: 任务执行结果 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Result: String # @param BatchCount: 子任务总个数 # 注意:此字段可能返回 null,表示取不到有效值。 # @type BatchCount: Integer # @param BatchOffset: 子任务已执行个数 # 注意:此字段可能返回 null,表示取不到有效值。 # @type BatchOffset: Integer # @param CreateTime: 任务创建时间 # @type CreateTime: Integer # @param UpdateTime: 任务更新时间 # @type UpdateTime: Integer # @param CompleteTime: 任务完成时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CompleteTime: Integer attr_accessor :Id, :Type, :State, :ParametersType, :Parameters, :ResultType, :Result, :BatchCount, :BatchOffset, :CreateTime, :UpdateTime, :CompleteTime def initialize(id=nil, type=nil, state=nil, parameterstype=nil, parameters=nil, resulttype=nil, result=nil, batchcount=nil, batchoffset=nil, createtime=nil, updatetime=nil, completetime=nil) @Id = id @Type = type @State = state @ParametersType = parameterstype @Parameters = parameters @ResultType = resulttype @Result = result @BatchCount = batchcount @BatchOffset = batchoffset @CreateTime = createtime @UpdateTime = updatetime @CompleteTime = completetime end def deserialize(params) @Id = params['Id'] @Type = params['Type'] @State = params['State'] @ParametersType = params['ParametersType'] @Parameters = params['Parameters'] @ResultType = params['ResultType'] @Result = params['Result'] @BatchCount = params['BatchCount'] @BatchOffset = params['BatchOffset'] @CreateTime = params['CreateTime'] @UpdateTime = params['UpdateTime'] @CompleteTime = params['CompleteTime'] end end # PublishBroadcastMessage请求参数结构体 class PublishBroadcastMessageRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param Payload: 消息内容 # @type Payload: String # @param Qos: 消息质量等级 # @type Qos: Integer # @param PayloadEncoding: Payload内容的编码格式,取值为base64或空。base64表示云端将收到的请求数据进行base64解码后下发到设备,空则直接将原始内容下发到设备 # @type PayloadEncoding: String attr_accessor :ProductId, :Payload, :Qos, :PayloadEncoding def initialize(productid=nil, payload=nil, qos=nil, payloadencoding=nil) @ProductId = productid @Payload = payload @Qos = qos @PayloadEncoding = payloadencoding end def deserialize(params) @ProductId = params['ProductId'] @Payload = params['Payload'] @Qos = params['Qos'] @PayloadEncoding = params['PayloadEncoding'] end end # PublishBroadcastMessage返回参数结构体 class PublishBroadcastMessageResponse < TencentCloud::Common::AbstractModel # @param TaskId: 广播消息任务ID # @type TaskId: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TaskId, :RequestId def initialize(taskid=nil, requestid=nil) @TaskId = taskid @RequestId = requestid end def deserialize(params) @TaskId = params['TaskId'] @RequestId = params['RequestId'] end end # PublishMessage请求参数结构体 class PublishMessageRequest < TencentCloud::Common::AbstractModel # @param Topic: 消息发往的主题。命名规则:${ProductId}/${DeviceName}/[a-zA-Z0-9:_-]{1,128} # @type Topic: String # @param Payload: 消息内容 # @type Payload: String # @param ProductId: 产品ID # @type ProductId: String # @param DeviceName: 设备名称 # @type DeviceName: String # @param Qos: 服务质量等级,取值为0或1 # @type Qos: Integer # @param PayloadEncoding: Payload内容的编码格式,取值为base64或空。base64表示云端将收到的请求数据进行base64解码后下发到设备,空则直接将原始内容下发到设备 # @type PayloadEncoding: String attr_accessor :Topic, :Payload, :ProductId, :DeviceName, :Qos, :PayloadEncoding def initialize(topic=nil, payload=nil, productid=nil, devicename=nil, qos=nil, payloadencoding=nil) @Topic = topic @Payload = payload @ProductId = productid @DeviceName = devicename @Qos = qos @PayloadEncoding = payloadencoding end def deserialize(params) @Topic = params['Topic'] @Payload = params['Payload'] @ProductId = params['ProductId'] @DeviceName = params['DeviceName'] @Qos = params['Qos'] @PayloadEncoding = params['PayloadEncoding'] end end # PublishMessage返回参数结构体 class PublishMessageResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # PublishRRPCMessage请求参数结构体 class PublishRRPCMessageRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param DeviceName: 设备名称 # @type DeviceName: String # @param Payload: 消息内容,utf8编码 # @type Payload: String attr_accessor :ProductId, :DeviceName, :Payload def initialize(productid=nil, devicename=nil, payload=nil) @ProductId = productid @DeviceName = devicename @Payload = payload end def deserialize(params) @ProductId = params['ProductId'] @DeviceName = params['DeviceName'] @Payload = params['Payload'] end end # PublishRRPCMessage返回参数结构体 class PublishRRPCMessageResponse < TencentCloud::Common::AbstractModel # @param MessageId: RRPC消息ID # @type MessageId: Integer # @param PayloadBase64: 设备回复的消息内容,采用base64编码 # @type PayloadBase64: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :MessageId, :PayloadBase64, :RequestId def initialize(messageid=nil, payloadbase64=nil, requestid=nil) @MessageId = messageid @PayloadBase64 = payloadbase64 @RequestId = requestid end def deserialize(params) @MessageId = params['MessageId'] @PayloadBase64 = params['PayloadBase64'] @RequestId = params['RequestId'] end end # ReplaceTopicRule请求参数结构体 class ReplaceTopicRuleRequest < TencentCloud::Common::AbstractModel # @param RuleName: 规则名称 # @type RuleName: String # @param TopicRulePayload: 替换的规则包体 # @type TopicRulePayload: :class:`Tencentcloud::Iotcloud.v20210408.models.TopicRulePayload` attr_accessor :RuleName, :TopicRulePayload def initialize(rulename=nil, topicrulepayload=nil) @RuleName = rulename @TopicRulePayload = topicrulepayload end def deserialize(params) @RuleName = params['RuleName'] unless params['TopicRulePayload'].nil? @TopicRulePayload = TopicRulePayload.new @TopicRulePayload.deserialize(params['TopicRulePayload']) end end end # ReplaceTopicRule返回参数结构体 class ReplaceTopicRuleResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # 重置设备状态结果 class ResetDeviceResult < TencentCloud::Common::AbstractModel # @param DeviceName: 设备名 # @type DeviceName: String # @param Success: 是否成功 # @type Success: Boolean # @param Reason: 失败原因 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Reason: String attr_accessor :DeviceName, :Success, :Reason def initialize(devicename=nil, success=nil, reason=nil) @DeviceName = devicename @Success = success @Reason = reason end def deserialize(params) @DeviceName = params['DeviceName'] @Success = params['Success'] @Reason = params['Reason'] end end # ResetDeviceState请求参数结构体 class ResetDeviceStateRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param DeviceNames: 设备名称 # @type DeviceNames: Array attr_accessor :ProductId, :DeviceNames def initialize(productid=nil, devicenames=nil) @ProductId = productid @DeviceNames = devicenames end def deserialize(params) @ProductId = params['ProductId'] @DeviceNames = params['DeviceNames'] end end # ResetDeviceState返回参数结构体 class ResetDeviceStateResponse < TencentCloud::Common::AbstractModel # @param SuccessCount: 批量重置设备成功数 # @type SuccessCount: Integer # @param ResetDeviceResults: 批量重置设备结果 # @type ResetDeviceResults: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :SuccessCount, :ResetDeviceResults, :RequestId def initialize(successcount=nil, resetdeviceresults=nil, requestid=nil) @SuccessCount = successcount @ResetDeviceResults = resetdeviceresults @RequestId = requestid end def deserialize(params) @SuccessCount = params['SuccessCount'] unless params['ResetDeviceResults'].nil? @ResetDeviceResults = [] params['ResetDeviceResults'].each do |i| resetdeviceresult_tmp = ResetDeviceResult.new resetdeviceresult_tmp.deserialize(i) @ResetDeviceResults << resetdeviceresult_tmp end end @RequestId = params['RequestId'] end end # RetryDeviceFirmwareTask请求参数结构体 class RetryDeviceFirmwareTaskRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param DeviceName: 设备名称 # @type DeviceName: String # @param FirmwareVersion: 固件版本号 # @type FirmwareVersion: String # @param TaskId: 固件升级任务ID # @type TaskId: Integer attr_accessor :ProductId, :DeviceName, :FirmwareVersion, :TaskId def initialize(productid=nil, devicename=nil, firmwareversion=nil, taskid=nil) @ProductId = productid @DeviceName = devicename @FirmwareVersion = firmwareversion @TaskId = taskid end def deserialize(params) @ProductId = params['ProductId'] @DeviceName = params['DeviceName'] @FirmwareVersion = params['FirmwareVersion'] @TaskId = params['TaskId'] end end # RetryDeviceFirmwareTask返回参数结构体 class RetryDeviceFirmwareTaskResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # SDK日志项 class SDKLogItem < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param DeviceName: 设备名称 # @type DeviceName: String # @param Level: 日志等级 # @type Level: String # @param DateTime: 日志时间 # @type DateTime: String # @param Content: 日志内容 # @type Content: String attr_accessor :ProductId, :DeviceName, :Level, :DateTime, :Content def initialize(productid=nil, devicename=nil, level=nil, datetime=nil, content=nil) @ProductId = productid @DeviceName = devicename @Level = level @DateTime = datetime @Content = content end def deserialize(params) @ProductId = params['ProductId'] @DeviceName = params['DeviceName'] @Level = params['Level'] @DateTime = params['DateTime'] @Content = params['Content'] end end # 搜索关键词 class SearchKeyword < TencentCloud::Common::AbstractModel # @param Key: 搜索条件的Key # @type Key: String # @param Value: 搜索条件的值 # @type Value: String attr_accessor :Key, :Value def initialize(key=nil, value=nil) @Key = key @Value = value end def deserialize(params) @Key = params['Key'] @Value = params['Value'] end end # SetProductsForbiddenStatus请求参数结构体 class SetProductsForbiddenStatusRequest < TencentCloud::Common::AbstractModel # @param ProductId: 要设置禁用状态的产品列表 # @type ProductId: Array # @param Status: 0启用,1禁用 # @type Status: Integer attr_accessor :ProductId, :Status def initialize(productid=nil, status=nil) @ProductId = productid @Status = status end def deserialize(params) @ProductId = params['ProductId'] @Status = params['Status'] end end # SetProductsForbiddenStatus返回参数结构体 class SetProductsForbiddenStatusResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # 状态统计信息 class StatusStatistic < TencentCloud::Common::AbstractModel # @param Status: 任务状态 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Status: Integer # @param Total: 统计总数 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Total: Integer attr_accessor :Status, :Total def initialize(status=nil, total=nil) @Status = status @Total = total end def deserialize(params) @Status = params['Status'] @Total = params['Total'] end end # 规则详细信息 class TopicRuleInfo < TencentCloud::Common::AbstractModel # @param RuleName: 规则名称 # @type RuleName: String # @param Description: 规则描述 # @type Description: String # @param CreatedAt: 创建时间 # @type CreatedAt: Integer # @param RuleDisabled: 不生效 # @type RuleDisabled: Boolean # @param TopicPattern: 规则模式 # @type TopicPattern: String attr_accessor :RuleName, :Description, :CreatedAt, :RuleDisabled, :TopicPattern def initialize(rulename=nil, description=nil, createdat=nil, ruledisabled=nil, topicpattern=nil) @RuleName = rulename @Description = description @CreatedAt = createdat @RuleDisabled = ruledisabled @TopicPattern = topicpattern end def deserialize(params) @RuleName = params['RuleName'] @Description = params['Description'] @CreatedAt = params['CreatedAt'] @RuleDisabled = params['RuleDisabled'] @TopicPattern = params['TopicPattern'] end end # 创建规则请求包体 class TopicRulePayload < TencentCloud::Common::AbstractModel # @param Sql: 规则的SQL语句,如: SELECT * FROM 'pid/dname/event',然后对其进行base64编码,得:U0VMRUNUICogRlJPTSAncGlkL2RuYW1lL2V2ZW50Jw== # @type Sql: String # @param Actions: 行为的JSON字符串,大部分种类举例如下: # [ # { # "republish": { # "topic": "TEST/test" # } # }, # { # "forward": { # "api": "http://127.0.0.1:8080", # "token":"xxx" # } # }, # { # "ckafka": { # "instance": { # "id": "ckafka-test", # "name": "" # }, # "topic": { # "id": "topic-test", # "name": "test" # }, # "region": "gz" # } # }, # { # "cmqqueue": { # "queuename": "queue-test-TEST", # "region": "gz" # } # }, # { # "mysql": { # "instanceid": "cdb-test", # "region": "gz", # "username": "test", # "userpwd": "*****", # "dbname": "d_mqtt", # "tablename": "t_test", # "fieldpairs": [ # { # "field": "test", # "value": "test" # } # ], # "devicetype": "CUSTOM" # } # } # ] # @type Actions: String # @param Description: 规则描述 # @type Description: String # @param RuleDisabled: 是否禁用规则 # @type RuleDisabled: Boolean attr_accessor :Sql, :Actions, :Description, :RuleDisabled def initialize(sql=nil, actions=nil, description=nil, ruledisabled=nil) @Sql = sql @Actions = actions @Description = description @RuleDisabled = ruledisabled end def deserialize(params) @Sql = params['Sql'] @Actions = params['Actions'] @Description = params['Description'] @RuleDisabled = params['RuleDisabled'] end end # UnbindDevices请求参数结构体 class UnbindDevicesRequest < TencentCloud::Common::AbstractModel # @param GatewayProductId: 网关设备的产品ID # @type GatewayProductId: String # @param GatewayDeviceName: 网关设备的设备名 # @type GatewayDeviceName: String # @param ProductId: 产品ID # @type ProductId: String # @param DeviceNames: 多个设备名 # @type DeviceNames: Array # @param Skey: 中兴CLAA设备的解绑需要Skey,普通设备不需要 # @type Skey: String attr_accessor :GatewayProductId, :GatewayDeviceName, :ProductId, :DeviceNames, :Skey def initialize(gatewayproductid=nil, gatewaydevicename=nil, productid=nil, devicenames=nil, skey=nil) @GatewayProductId = gatewayproductid @GatewayDeviceName = gatewaydevicename @ProductId = productid @DeviceNames = devicenames @Skey = skey end def deserialize(params) @GatewayProductId = params['GatewayProductId'] @GatewayDeviceName = params['GatewayDeviceName'] @ProductId = params['ProductId'] @DeviceNames = params['DeviceNames'] @Skey = params['Skey'] end end # UnbindDevices返回参数结构体 class UnbindDevicesResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # UpdateDeviceAvailableState请求参数结构体 class UpdateDeviceAvailableStateRequest < TencentCloud::Common::AbstractModel # @param ProductId: 设备所属产品id # @type ProductId: String # @param DeviceName: 设备名称 # @type DeviceName: String # @param EnableState: 要设置的设备状态,1为启用,0为禁用 # @type EnableState: Integer attr_accessor :ProductId, :DeviceName, :EnableState def initialize(productid=nil, devicename=nil, enablestate=nil) @ProductId = productid @DeviceName = devicename @EnableState = enablestate end def deserialize(params) @ProductId = params['ProductId'] @DeviceName = params['DeviceName'] @EnableState = params['EnableState'] end end # UpdateDeviceAvailableState返回参数结构体 class UpdateDeviceAvailableStateResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # UpdateDeviceLogLevel请求参数结构体 class UpdateDeviceLogLevelRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param DeviceName: 设备名称 # @type DeviceName: String # @param LogLevel: 日志级别,0:关闭,1:错误,2:告警,3:信息,4:调试 # @type LogLevel: Integer attr_accessor :ProductId, :DeviceName, :LogLevel def initialize(productid=nil, devicename=nil, loglevel=nil) @ProductId = productid @DeviceName = devicename @LogLevel = loglevel end def deserialize(params) @ProductId = params['ProductId'] @DeviceName = params['DeviceName'] @LogLevel = params['LogLevel'] end end # UpdateDeviceLogLevel返回参数结构体 class UpdateDeviceLogLevelResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # UpdateDevicePSK请求参数结构体 class UpdateDevicePSKRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品名 # @type ProductId: String # @param DeviceName: 设备名 # @type DeviceName: String # @param Psk: 设备的psk # @type Psk: String attr_accessor :ProductId, :DeviceName, :Psk def initialize(productid=nil, devicename=nil, psk=nil) @ProductId = productid @DeviceName = devicename @Psk = psk end def deserialize(params) @ProductId = params['ProductId'] @DeviceName = params['DeviceName'] @Psk = params['Psk'] end end # UpdateDevicePSK返回参数结构体 class UpdateDevicePSKResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # UpdateDeviceShadow请求参数结构体 class UpdateDeviceShadowRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param DeviceName: 设备名称 # @type DeviceName: String # @param State: 虚拟设备的状态,JSON字符串格式,由desired结构组成 # @type State: String # @param ShadowVersion: 当前版本号,需要和后台的version保持一致,才能更新成功 # @type ShadowVersion: Integer attr_accessor :ProductId, :DeviceName, :State, :ShadowVersion def initialize(productid=nil, devicename=nil, state=nil, shadowversion=nil) @ProductId = productid @DeviceName = devicename @State = state @ShadowVersion = shadowversion end def deserialize(params) @ProductId = params['ProductId'] @DeviceName = params['DeviceName'] @State = params['State'] @ShadowVersion = params['ShadowVersion'] end end # UpdateDeviceShadow返回参数结构体 class UpdateDeviceShadowResponse < TencentCloud::Common::AbstractModel # @param Data: 设备影子数据,JSON字符串格式 # @type Data: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Data, :RequestId def initialize(data=nil, requestid=nil) @Data = data @RequestId = requestid end def deserialize(params) @Data = params['Data'] @RequestId = params['RequestId'] end end # UpdateDevicesEnableState请求参数结构体 class UpdateDevicesEnableStateRequest < TencentCloud::Common::AbstractModel # @param ProductId: 设备所属产品id # @type ProductId: String # @param DeviceNames: 设备名称集合 # @type DeviceNames: Array # @param Status: 要设置的设备状态,1为启用,0为禁用 # @type Status: Integer attr_accessor :ProductId, :DeviceNames, :Status def initialize(productid=nil, devicenames=nil, status=nil) @ProductId = productid @DeviceNames = devicenames @Status = status end def deserialize(params) @ProductId = params['ProductId'] @DeviceNames = params['DeviceNames'] @Status = params['Status'] end end # UpdateDevicesEnableState返回参数结构体 class UpdateDevicesEnableStateResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # UpdatePrivateCA请求参数结构体 class UpdatePrivateCARequest < TencentCloud::Common::AbstractModel # @param CertName: CA证书名称 # @type CertName: String # @param CertText: CA证书内容 # @type CertText: String # @param VerifyCertText: 校验CA证书的证书内容 # @type VerifyCertText: String attr_accessor :CertName, :CertText, :VerifyCertText def initialize(certname=nil, certtext=nil, verifycerttext=nil) @CertName = certname @CertText = certtext @VerifyCertText = verifycerttext end def deserialize(params) @CertName = params['CertName'] @CertText = params['CertText'] @VerifyCertText = params['VerifyCertText'] end end # UpdatePrivateCA返回参数结构体 class UpdatePrivateCAResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # UpdateProductDynamicRegister请求参数结构体 class UpdateProductDynamicRegisterRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品Id # @type ProductId: String # @param RegisterType: 动态注册类型,0-关闭 1-预创建设备 2-自动创建设备 # @type RegisterType: Integer # @param RegisterLimit: 动态注册设备上限 # @type RegisterLimit: Integer attr_accessor :ProductId, :RegisterType, :RegisterLimit def initialize(productid=nil, registertype=nil, registerlimit=nil) @ProductId = productid @RegisterType = registertype @RegisterLimit = registerlimit end def deserialize(params) @ProductId = params['ProductId'] @RegisterType = params['RegisterType'] @RegisterLimit = params['RegisterLimit'] end end # UpdateProductDynamicRegister返回参数结构体 class UpdateProductDynamicRegisterResponse < TencentCloud::Common::AbstractModel # @param RegisterType: 动态注册类型,0-关闭 1-预创建设备 2-自动创建设备 # @type RegisterType: Integer # @param ProductSecret: 动态注册产品密钥 # @type ProductSecret: String # @param RegisterLimit: 动态注册设备上限 # @type RegisterLimit: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RegisterType, :ProductSecret, :RegisterLimit, :RequestId def initialize(registertype=nil, productsecret=nil, registerlimit=nil, requestid=nil) @RegisterType = registertype @ProductSecret = productsecret @RegisterLimit = registerlimit @RequestId = requestid end def deserialize(params) @RegisterType = params['RegisterType'] @ProductSecret = params['ProductSecret'] @RegisterLimit = params['RegisterLimit'] @RequestId = params['RequestId'] end end # UpdateProductPrivateCA请求参数结构体 class UpdateProductPrivateCARequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param CertName: 私有CA证书名称 # @type CertName: String attr_accessor :ProductId, :CertName def initialize(productid=nil, certname=nil) @ProductId = productid @CertName = certname end def deserialize(params) @ProductId = params['ProductId'] @CertName = params['CertName'] end end # UpdateProductPrivateCA返回参数结构体 class UpdateProductPrivateCAResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # UpdateTopicPolicy请求参数结构体 class UpdateTopicPolicyRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param TopicName: 更新前Topic名 # @type TopicName: String # @param NewTopicName: 更新后Topic名 # @type NewTopicName: String # @param Privilege: Topic权限 # @type Privilege: Integer # @param BrokerSubscribe: 代理订阅信息 # @type BrokerSubscribe: :class:`Tencentcloud::Iotcloud.v20210408.models.BrokerSubscribe` attr_accessor :ProductId, :TopicName, :NewTopicName, :Privilege, :BrokerSubscribe def initialize(productid=nil, topicname=nil, newtopicname=nil, privilege=nil, brokersubscribe=nil) @ProductId = productid @TopicName = topicname @NewTopicName = newtopicname @Privilege = privilege @BrokerSubscribe = brokersubscribe end def deserialize(params) @ProductId = params['ProductId'] @TopicName = params['TopicName'] @NewTopicName = params['NewTopicName'] @Privilege = params['Privilege'] unless params['BrokerSubscribe'].nil? @BrokerSubscribe = BrokerSubscribe.new @BrokerSubscribe.deserialize(params['BrokerSubscribe']) end end end # UpdateTopicPolicy返回参数结构体 class UpdateTopicPolicyResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # UploadFirmware请求参数结构体 class UploadFirmwareRequest < TencentCloud::Common::AbstractModel # @param ProductId: 产品ID # @type ProductId: String # @param FirmwareVersion: 固件版本号 # @type FirmwareVersion: String # @param Md5sum: 固件的MD5值 # @type Md5sum: String # @param FileSize: 固件的大小 # @type FileSize: Integer # @param FirmwareName: 固件名称 # @type FirmwareName: String # @param FirmwareDescription: 固件描述 # @type FirmwareDescription: String attr_accessor :ProductId, :FirmwareVersion, :Md5sum, :FileSize, :FirmwareName, :FirmwareDescription def initialize(productid=nil, firmwareversion=nil, md5sum=nil, filesize=nil, firmwarename=nil, firmwaredescription=nil) @ProductId = productid @FirmwareVersion = firmwareversion @Md5sum = md5sum @FileSize = filesize @FirmwareName = firmwarename @FirmwareDescription = firmwaredescription end def deserialize(params) @ProductId = params['ProductId'] @FirmwareVersion = params['FirmwareVersion'] @Md5sum = params['Md5sum'] @FileSize = params['FileSize'] @FirmwareName = params['FirmwareName'] @FirmwareDescription = params['FirmwareDescription'] end end # UploadFirmware返回参数结构体 class UploadFirmwareResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end end end end