# 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 # 子产品信息 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 # 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 # 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 # 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 # 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 # 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 # 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 # 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 # 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 # 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 # 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 # 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 # 设备详细信息 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 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 # 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 # 内容日志项 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 ProductMetadata < TencentCloud::Common::AbstractModel # @param CreationDate: 产品创建时间 # @type CreationDate: Integer attr_accessor :CreationDate def initialize(creationdate=nil) @CreationDate = creationdate end def deserialize(params) @CreationDate = params['CreationDate'] 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 attr_accessor :ProductDescription, :EncryptionType, :Region, :ProductType, :Format, :Platform, :Appeui, :ModelId, :ModelName, :ProductKey, :RegisterType, :ProductSecret, :RegisterLimit, :OriginProductId, :PrivateCAName, :OriginUserId 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) @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 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'] 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 # 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 # 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 # 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 # 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 end end end