# 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 Iss module V20230517 # AI分析配置 class AIConfig < TencentCloud::Common::AbstractModel # @param DetectType: AI 分析类型。可选值为 Facemask(口罩识别)、Chefhat(厨师帽识别)、Smoking(抽烟检测)、Chefcloth(厨师服识别)、PhoneCall(接打电话识别)、Pet(宠物识别)、Body(人体识别)和Car(车辆车牌识别)等 # @type DetectType: String # @param TimeInterval: 截图频率。可选值1~20秒 # @type TimeInterval: Integer # @param OperTimeSlot: 模板生效的时间段。最多包含5组时间段 # @type OperTimeSlot: Array attr_accessor :DetectType, :TimeInterval, :OperTimeSlot def initialize(detecttype=nil, timeinterval=nil, opertimeslot=nil) @DetectType = detecttype @TimeInterval = timeinterval @OperTimeSlot = opertimeslot end def deserialize(params) @DetectType = params['DetectType'] @TimeInterval = params['TimeInterval'] unless params['OperTimeSlot'].nil? @OperTimeSlot = [] params['OperTimeSlot'].each do |i| opertimeslot_tmp = OperTimeSlot.new opertimeslot_tmp.deserialize(i) @OperTimeSlot << opertimeslot_tmp end end end end # AI任务信息 class AITaskInfo < TencentCloud::Common::AbstractModel # @param TaskId: AI 任务 ID # @type TaskId: String # @param Name: AI 任务名称 # @type Name: String # @param Desc: AI 任务描述 # @type Desc: String # @param Status: AI 任务状态。"on"代表开启了 AI 分析任务,"off"代表停止 AI 分析任务 # @type Status: String # @param ChannelList: 通道 ID 列表 # @type ChannelList: Array # @param CallbackUrl: AI 结果回调地址 # @type CallbackUrl: String # @param Templates: AI 配置列表 # @type Templates: Array # @param CreatedTime: 创建时间 # @type CreatedTime: String # @param UpdatedTime: 更新时间 # @type UpdatedTime: String attr_accessor :TaskId, :Name, :Desc, :Status, :ChannelList, :CallbackUrl, :Templates, :CreatedTime, :UpdatedTime def initialize(taskid=nil, name=nil, desc=nil, status=nil, channellist=nil, callbackurl=nil, templates=nil, createdtime=nil, updatedtime=nil) @TaskId = taskid @Name = name @Desc = desc @Status = status @ChannelList = channellist @CallbackUrl = callbackurl @Templates = templates @CreatedTime = createdtime @UpdatedTime = updatedtime end def deserialize(params) @TaskId = params['TaskId'] @Name = params['Name'] @Desc = params['Desc'] @Status = params['Status'] @ChannelList = params['ChannelList'] @CallbackUrl = params['CallbackUrl'] unless params['Templates'].nil? @Templates = [] params['Templates'].each do |i| aitemplates_tmp = AITemplates.new aitemplates_tmp.deserialize(i) @Templates << aitemplates_tmp end end @CreatedTime = params['CreatedTime'] @UpdatedTime = params['UpdatedTime'] end end # AI分析结果详情 class AITaskResultInfo < TencentCloud::Common::AbstractModel # @param Body: 人体识别结果列表 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Body: Array # @param Pet: 宠物识别结果列表 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Pet: Array # @param Car: 车辆车牌识别结果列表 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Car: Array # @param ChefHat: 厨师帽结果列表 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ChefHat: Array # @param ChefCloth: 厨师服结果列表 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ChefCloth: Array # @param FaceMask: 口罩识别结果列表 # 注意:此字段可能返回 null,表示取不到有效值。 # @type FaceMask: Array # @param Smoking: 抽烟检测结果列表 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Smoking: Array # @param PhoneCall: 接打电话识别结果列表 # 注意:此字段可能返回 null,表示取不到有效值。 # @type PhoneCall: Array attr_accessor :Body, :Pet, :Car, :ChefHat, :ChefCloth, :FaceMask, :Smoking, :PhoneCall def initialize(body=nil, pet=nil, car=nil, chefhat=nil, chefcloth=nil, facemask=nil, smoking=nil, phonecall=nil) @Body = body @Pet = pet @Car = car @ChefHat = chefhat @ChefCloth = chefcloth @FaceMask = facemask @Smoking = smoking @PhoneCall = phonecall end def deserialize(params) unless params['Body'].nil? @Body = [] params['Body'].each do |i| bodyairesultinfo_tmp = BodyAIResultInfo.new bodyairesultinfo_tmp.deserialize(i) @Body << bodyairesultinfo_tmp end end unless params['Pet'].nil? @Pet = [] params['Pet'].each do |i| petairesultinfo_tmp = PetAIResultInfo.new petairesultinfo_tmp.deserialize(i) @Pet << petairesultinfo_tmp end end unless params['Car'].nil? @Car = [] params['Car'].each do |i| carairesultinfo_tmp = CarAIResultInfo.new carairesultinfo_tmp.deserialize(i) @Car << carairesultinfo_tmp end end unless params['ChefHat'].nil? @ChefHat = [] params['ChefHat'].each do |i| chefhatairesultinfo_tmp = ChefHatAIResultInfo.new chefhatairesultinfo_tmp.deserialize(i) @ChefHat << chefhatairesultinfo_tmp end end unless params['ChefCloth'].nil? @ChefCloth = [] params['ChefCloth'].each do |i| chefclothairesultinfo_tmp = ChefClothAIResultInfo.new chefclothairesultinfo_tmp.deserialize(i) @ChefCloth << chefclothairesultinfo_tmp end end unless params['FaceMask'].nil? @FaceMask = [] params['FaceMask'].each do |i| facemaskairesultinfo_tmp = FaceMaskAIResultInfo.new facemaskairesultinfo_tmp.deserialize(i) @FaceMask << facemaskairesultinfo_tmp end end unless params['Smoking'].nil? @Smoking = [] params['Smoking'].each do |i| smokingairesultinfo_tmp = SmokingAIResultInfo.new smokingairesultinfo_tmp.deserialize(i) @Smoking << smokingairesultinfo_tmp end end unless params['PhoneCall'].nil? @PhoneCall = [] params['PhoneCall'].each do |i| phonecallairesultinfo_tmp = PhoneCallAIResultInfo.new phonecallairesultinfo_tmp.deserialize(i) @PhoneCall << phonecallairesultinfo_tmp end end end end # AI识别结果 class AITaskResultResponse < TencentCloud::Common::AbstractModel # @param TaskId: AI 任务 ID # @type TaskId: String # @param AIResultCount: 在 BeginTime 和 EndTime 时间之内,有识别结果的 AI 调用次数(分页依据此数值) # @type AIResultCount: Integer # @param AIResults: AI 任务执行结果详情 # 注意:此字段可能返回 null,表示取不到有效值。 # @type AIResults: :class:`Tencentcloud::Iss.v20230517.models.AITaskResultInfo` attr_accessor :TaskId, :AIResultCount, :AIResults def initialize(taskid=nil, airesultcount=nil, airesults=nil) @TaskId = taskid @AIResultCount = airesultcount @AIResults = airesults end def deserialize(params) @TaskId = params['TaskId'] @AIResultCount = params['AIResultCount'] unless params['AIResults'].nil? @AIResults = AITaskResultInfo.new @AIResults.deserialize(params['AIResults']) end end end # AI模板信息 class AITemplates < TencentCloud::Common::AbstractModel # @param Tag: AI 类别。可选值 AI(AI 分析)和 Snapshot(截图),Templates 列表中只能出现一种类型。 # @type Tag: String # @param AIConfig: AI 分析配置。和"SnapshotConfig"二选一。 # @type AIConfig: :class:`Tencentcloud::Iss.v20230517.models.AIConfig` # @param SnapshotConfig: 截图配置。和"AIConfig"二选一。 # @type SnapshotConfig: :class:`Tencentcloud::Iss.v20230517.models.SnapshotConfig` attr_accessor :Tag, :AIConfig, :SnapshotConfig def initialize(tag=nil, aiconfig=nil, snapshotconfig=nil) @Tag = tag @AIConfig = aiconfig @SnapshotConfig = snapshotconfig end def deserialize(params) @Tag = params['Tag'] unless params['AIConfig'].nil? @AIConfig = AIConfig.new @AIConfig.deserialize(params['AIConfig']) end unless params['SnapshotConfig'].nil? @SnapshotConfig = SnapshotConfig.new @SnapshotConfig.deserialize(params['SnapshotConfig']) end end end # AddAITask请求参数结构体 class AddAITaskRequest < TencentCloud::Common::AbstractModel # @param Name: AI 任务名称。仅支持中文、英文、数字、_、-,长度不超过32个字符 # @type Name: String # @param ChannelList: 通道 ID 列表。不能添加存在于其他 AI 任务的通道,限制1000个通道。 # @type ChannelList: Array # @param Templates: AI 配置列表 # @type Templates: Array # @param Desc: AI 任务描述。仅支持中文、英文、数字、_、-,长度不超过128个字符 # @type Desc: String # @param CallbackUrl: AI 结果回调地址。类似 "http://ip:port/xxx或者https://domain/xxx # @type CallbackUrl: String # @param IsStartTheTask: 是否立即开启 AI 任务。"true"代表立即开启 AI 任务,"false"代表暂不开启 AI 任务,默认为 false。 # @type IsStartTheTask: Boolean attr_accessor :Name, :ChannelList, :Templates, :Desc, :CallbackUrl, :IsStartTheTask def initialize(name=nil, channellist=nil, templates=nil, desc=nil, callbackurl=nil, isstartthetask=nil) @Name = name @ChannelList = channellist @Templates = templates @Desc = desc @CallbackUrl = callbackurl @IsStartTheTask = isstartthetask end def deserialize(params) @Name = params['Name'] @ChannelList = params['ChannelList'] unless params['Templates'].nil? @Templates = [] params['Templates'].each do |i| aitemplates_tmp = AITemplates.new aitemplates_tmp.deserialize(i) @Templates << aitemplates_tmp end end @Desc = params['Desc'] @CallbackUrl = params['CallbackUrl'] @IsStartTheTask = params['IsStartTheTask'] end end # AddAITask返回参数结构体 class AddAITaskResponse < TencentCloud::Common::AbstractModel # @param Data: AI任务信息 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: :class:`Tencentcloud::Iss.v20230517.models.AITaskInfo` # @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) unless params['Data'].nil? @Data = AITaskInfo.new @Data.deserialize(params['Data']) end @RequestId = params['RequestId'] end end # 增加设备接口返回数据 class AddDeviceResponse < TencentCloud::Common::AbstractModel # @param DeviceId: 设备iD # 注意:此字段可能返回 null,表示取不到有效值。 # @type DeviceId: String # @param Code: 设备编码(即我们为设备生成的20位国标编码) # 注意:此字段可能返回 null,表示取不到有效值。 # @type Code: String # @param Name: 设备名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Name: String # @param AccessProtocol: 设备接入协议,1:RTMP,2:GB,3:GW # 注意:此字段可能返回 null,表示取不到有效值。 # @type AccessProtocol: Integer # @param Type: 设备类型,1:IPC,2:NVR # 注意:此字段可能返回 null,表示取不到有效值。 # @type Type: Integer # @param ClusterId: 设备接入服务节点ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type ClusterId: String # @param ClusterName: 设备接入服务节点名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ClusterName: String # @param TransportProtocol: 设备流传输协议,1:UDP,2:TCP # 注意:此字段可能返回 null,表示取不到有效值。 # @type TransportProtocol: Integer # @param Password: 设备密码 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Password: String # @param Description: 设备描述 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Description: String # @param Status: 设备状态,0:未注册,1:在线,2:离线,3:禁用 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Status: Integer # @param OrganizationId: 设备所属组织ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type OrganizationId: Integer # @param GatewayId: 设备接入网关ID,从查询网关列表接口中获取(仅网关接入需要) # 注意:此字段可能返回 null,表示取不到有效值。 # @type GatewayId: String # @param ProtocolType: 网关接入协议类型,1.海康SDK,2.大华SDK,3.宇视SDK,4.Onvif(仅网关接入需要) # 注意:此字段可能返回 null,表示取不到有效值。 # @type ProtocolType: Integer # @param Ip: 设备接入IP(仅网关接入需要) # 注意:此字段可能返回 null,表示取不到有效值。 # @type Ip: String # @param Port: 设备Port(仅网关接入需要) # 注意:此字段可能返回 null,表示取不到有效值。 # @type Port: Integer # @param Username: 设备用户名(仅网关接入需要) # 注意:此字段可能返回 null,表示取不到有效值。 # @type Username: String # @param AppId: 用户ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type AppId: Integer attr_accessor :DeviceId, :Code, :Name, :AccessProtocol, :Type, :ClusterId, :ClusterName, :TransportProtocol, :Password, :Description, :Status, :OrganizationId, :GatewayId, :ProtocolType, :Ip, :Port, :Username, :AppId def initialize(deviceid=nil, code=nil, name=nil, accessprotocol=nil, type=nil, clusterid=nil, clustername=nil, transportprotocol=nil, password=nil, description=nil, status=nil, organizationid=nil, gatewayid=nil, protocoltype=nil, ip=nil, port=nil, username=nil, appid=nil) @DeviceId = deviceid @Code = code @Name = name @AccessProtocol = accessprotocol @Type = type @ClusterId = clusterid @ClusterName = clustername @TransportProtocol = transportprotocol @Password = password @Description = description @Status = status @OrganizationId = organizationid @GatewayId = gatewayid @ProtocolType = protocoltype @Ip = ip @Port = port @Username = username @AppId = appid end def deserialize(params) @DeviceId = params['DeviceId'] @Code = params['Code'] @Name = params['Name'] @AccessProtocol = params['AccessProtocol'] @Type = params['Type'] @ClusterId = params['ClusterId'] @ClusterName = params['ClusterName'] @TransportProtocol = params['TransportProtocol'] @Password = params['Password'] @Description = params['Description'] @Status = params['Status'] @OrganizationId = params['OrganizationId'] @GatewayId = params['GatewayId'] @ProtocolType = params['ProtocolType'] @Ip = params['Ip'] @Port = params['Port'] @Username = params['Username'] @AppId = params['AppId'] end end # 增加组织接口返回数据 class AddOrgResponse < TencentCloud::Common::AbstractModel # @param OrganizationId: 组织 ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type OrganizationId: String # @param Name: 组织名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Name: String # @param ParentId: 组织父节点 ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type ParentId: String # @param Level: 组织层级 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Level: Integer # @param AppId: 用户ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type AppId: Integer # @param ParentIds: 组织结构 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ParentIds: String # @param Total: 设备总数 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Total: Integer # @param Online: 设备在线数量 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Online: Integer attr_accessor :OrganizationId, :Name, :ParentId, :Level, :AppId, :ParentIds, :Total, :Online def initialize(organizationid=nil, name=nil, parentid=nil, level=nil, appid=nil, parentids=nil, total=nil, online=nil) @OrganizationId = organizationid @Name = name @ParentId = parentid @Level = level @AppId = appid @ParentIds = parentids @Total = total @Online = online end def deserialize(params) @OrganizationId = params['OrganizationId'] @Name = params['Name'] @ParentId = params['ParentId'] @Level = params['Level'] @AppId = params['AppId'] @ParentIds = params['ParentIds'] @Total = params['Total'] @Online = params['Online'] end end # AddOrganization请求参数结构体 class AddOrganizationRequest < TencentCloud::Common::AbstractModel # @param Name: 组织名称(仅支持中文、英文、数字、_、-的组合,长度不超过16个字符,且组织名称不能重复) # @type Name: String # @param ParentId: 组织父节点 ID(从查询组织接口DescribeOrganization中获取,填0代表根组织) # @type ParentId: String attr_accessor :Name, :ParentId def initialize(name=nil, parentid=nil) @Name = name @ParentId = parentid end def deserialize(params) @Name = params['Name'] @ParentId = params['ParentId'] end end # AddOrganization返回参数结构体 class AddOrganizationResponse < TencentCloud::Common::AbstractModel # @param Data: 增加组织接口返回数据 # @type Data: :class:`Tencentcloud::Iss.v20230517.models.AddOrgResponse` # @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) unless params['Data'].nil? @Data = AddOrgResponse.new @Data.deserialize(params['Data']) end @RequestId = params['RequestId'] end end # AddRecordBackupPlan请求参数结构体 class AddRecordBackupPlanRequest < TencentCloud::Common::AbstractModel # @param TemplateId: 录制模板ID(录像计划关联的模板ID,从查询录像上云模板列表接口ListRecordBackupTemplates中获取) # @type TemplateId: String # @param PlanName: 录像计划名称(仅支持中文、英文、数字、_、-,长度不超过32个字符,计划名称全局唯一,不能为空,不能重复) # @type PlanName: String # @param Describe: 录像计划描述(仅支持中文、英文、数字、_、-,长度不超过128个字符) # @type Describe: String # @param LifeCycle: 生命周期(录像文件生命周期设置,管理文件冷、热存储的时间) # @type LifeCycle: :class:`Tencentcloud::Iss.v20230517.models.LifeCycleData` # @param Channels: 通道及通道所属设备(添加录像的设备的通道信息,一次添加通道总数不超过5000个,包括组织目录下的通道数量) # @type Channels: Array # @param OrganizationId: 添加组织目录下所有设备通道(Json数组,可以为空,通道总数量不超过5000个(包括Channel字段的数量)) # @type OrganizationId: Array attr_accessor :TemplateId, :PlanName, :Describe, :LifeCycle, :Channels, :OrganizationId def initialize(templateid=nil, planname=nil, describe=nil, lifecycle=nil, channels=nil, organizationid=nil) @TemplateId = templateid @PlanName = planname @Describe = describe @LifeCycle = lifecycle @Channels = channels @OrganizationId = organizationid end def deserialize(params) @TemplateId = params['TemplateId'] @PlanName = params['PlanName'] @Describe = params['Describe'] unless params['LifeCycle'].nil? @LifeCycle = LifeCycleData.new @LifeCycle.deserialize(params['LifeCycle']) end unless params['Channels'].nil? @Channels = [] params['Channels'].each do |i| channelinfo_tmp = ChannelInfo.new channelinfo_tmp.deserialize(i) @Channels << channelinfo_tmp end end @OrganizationId = params['OrganizationId'] end end # 新增录像上云计划返回数据 class AddRecordBackupPlanResponse < TencentCloud::Common::AbstractModel # @param PlanId: 录像上云计划ID # @type PlanId: String # @param PlanName: 录像上云计划名称 # @type PlanName: String # @param TemplateId: 录像上云模板ID # @type TemplateId: String # @param Describe: 录像上云计划描述 # @type Describe: String # @param LifeCycle: 云文件生命周期 # @type LifeCycle: :class:`Tencentcloud::Iss.v20230517.models.LifeCycleData` # @param Status: 录像上云计划状态,1:正常使用中,0:删除中,无法使用 # @type Status: Integer # @param ChannelCount: 通道数量 # @type ChannelCount: Integer # @param CreateAt: 创建时间 # @type CreateAt: String # @param UpdateAt: 修改时间 # @type UpdateAt: String attr_accessor :PlanId, :PlanName, :TemplateId, :Describe, :LifeCycle, :Status, :ChannelCount, :CreateAt, :UpdateAt def initialize(planid=nil, planname=nil, templateid=nil, describe=nil, lifecycle=nil, status=nil, channelcount=nil, createat=nil, updateat=nil) @PlanId = planid @PlanName = planname @TemplateId = templateid @Describe = describe @LifeCycle = lifecycle @Status = status @ChannelCount = channelcount @CreateAt = createat @UpdateAt = updateat end def deserialize(params) @PlanId = params['PlanId'] @PlanName = params['PlanName'] @TemplateId = params['TemplateId'] @Describe = params['Describe'] unless params['LifeCycle'].nil? @LifeCycle = LifeCycleData.new @LifeCycle.deserialize(params['LifeCycle']) end @Status = params['Status'] @ChannelCount = params['ChannelCount'] @CreateAt = params['CreateAt'] @UpdateAt = params['UpdateAt'] end end # AddRecordBackupTemplate请求参数结构体 class AddRecordBackupTemplateRequest < TencentCloud::Common::AbstractModel # @param TemplateName: 模板名称(仅支持中文、英文、数字、_、-,长度不超过32个字符,模板名称全局唯一,不能为空,不能重复) # @type TemplateName: String # @param TimeSections: 上云时间段(按周进行设置,支持一天设置多个时间段,每个时间段不小于10分钟) # @type TimeSections: Array # @param DevTimeSections: 录像时间段(按周进行设置,支持一天设置多个时间段,每个时间段不小于10分钟) # @type DevTimeSections: Array # @param Scale: 上云倍速(支持1,2,4倍速) # @type Scale: Integer attr_accessor :TemplateName, :TimeSections, :DevTimeSections, :Scale def initialize(templatename=nil, timesections=nil, devtimesections=nil, scale=nil) @TemplateName = templatename @TimeSections = timesections @DevTimeSections = devtimesections @Scale = scale end def deserialize(params) @TemplateName = params['TemplateName'] unless params['TimeSections'].nil? @TimeSections = [] params['TimeSections'].each do |i| recordtemplatetimesections_tmp = RecordTemplateTimeSections.new recordtemplatetimesections_tmp.deserialize(i) @TimeSections << recordtemplatetimesections_tmp end end unless params['DevTimeSections'].nil? @DevTimeSections = [] params['DevTimeSections'].each do |i| recordtemplatetimesections_tmp = RecordTemplateTimeSections.new recordtemplatetimesections_tmp.deserialize(i) @DevTimeSections << recordtemplatetimesections_tmp end end @Scale = params['Scale'] end end # 新增录像上云模版返回数据 class AddRecordBackupTemplateResponse < TencentCloud::Common::AbstractModel # @param TemplateId: 模板ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type TemplateId: String # @param TemplateName: 模板名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type TemplateName: String # @param TimeSections: 上云时间段(按周进行设置,支持一天设置多个时间段,每个时间段不小于10分钟) # 注意:此字段可能返回 null,表示取不到有效值。 # @type TimeSections: Array # @param DevTimeSections: 录像时间段(按周进行设置,支持一天设置多个时间段,每个时间段不小于10分钟) # 注意:此字段可能返回 null,表示取不到有效值。 # @type DevTimeSections: Array # @param Scale: 上云倍速(支持1,2,4倍速) # 注意:此字段可能返回 null,表示取不到有效值。 # @type Scale: Integer # @param CreateAt: 创建时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CreateAt: String # @param UpdateAt: 更新时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type UpdateAt: String attr_accessor :TemplateId, :TemplateName, :TimeSections, :DevTimeSections, :Scale, :CreateAt, :UpdateAt def initialize(templateid=nil, templatename=nil, timesections=nil, devtimesections=nil, scale=nil, createat=nil, updateat=nil) @TemplateId = templateid @TemplateName = templatename @TimeSections = timesections @DevTimeSections = devtimesections @Scale = scale @CreateAt = createat @UpdateAt = updateat end def deserialize(params) @TemplateId = params['TemplateId'] @TemplateName = params['TemplateName'] unless params['TimeSections'].nil? @TimeSections = [] params['TimeSections'].each do |i| recordtemplatetimesections_tmp = RecordTemplateTimeSections.new recordtemplatetimesections_tmp.deserialize(i) @TimeSections << recordtemplatetimesections_tmp end end unless params['DevTimeSections'].nil? @DevTimeSections = [] params['DevTimeSections'].each do |i| recordtemplatetimesections_tmp = RecordTemplateTimeSections.new recordtemplatetimesections_tmp.deserialize(i) @DevTimeSections << recordtemplatetimesections_tmp end end @Scale = params['Scale'] @CreateAt = params['CreateAt'] @UpdateAt = params['UpdateAt'] end end # AddRecordPlan请求参数结构体 class AddRecordPlanRequest < TencentCloud::Common::AbstractModel # @param PlanName: 实时上云计划名称,仅支持中文、英文、数字、_、-,长度不超过32个字符,计划名称全局唯一,不能为空,不能重复 # @type PlanName: String # @param TemplateId: 实时上云模板ID # @type TemplateId: String # @param LifeCycle: 生命周期 # @type LifeCycle: :class:`Tencentcloud::Iss.v20230517.models.LifeCycleData` # @param Describe: 上云计划描述,仅支持中文、英文、数字、_、-,长度不超过128个字符 # @type Describe: String # @param StreamType: 码流类型,default:不指定码流类型,以设备默认推送类型为主, main:主码流,sub:子码流,其他根据设备能力集自定义,不填按默认类型处理,长度不能超过32个字节 # @type StreamType: String # @param Channels: 添加录像的设备的通道信息,一次添加通道总数不超过5000个,包括组织目录下的通道数量 # @type Channels: Array # @param OrganizationId: 添加组织目录下所有设备通道,Json数组,可以为空,通道总数量不超过5000个(包括Channel字段的数量) # @type OrganizationId: Array attr_accessor :PlanName, :TemplateId, :LifeCycle, :Describe, :StreamType, :Channels, :OrganizationId def initialize(planname=nil, templateid=nil, lifecycle=nil, describe=nil, streamtype=nil, channels=nil, organizationid=nil) @PlanName = planname @TemplateId = templateid @LifeCycle = lifecycle @Describe = describe @StreamType = streamtype @Channels = channels @OrganizationId = organizationid end def deserialize(params) @PlanName = params['PlanName'] @TemplateId = params['TemplateId'] unless params['LifeCycle'].nil? @LifeCycle = LifeCycleData.new @LifeCycle.deserialize(params['LifeCycle']) end @Describe = params['Describe'] @StreamType = params['StreamType'] unless params['Channels'].nil? @Channels = [] params['Channels'].each do |i| channelinfo_tmp = ChannelInfo.new channelinfo_tmp.deserialize(i) @Channels << channelinfo_tmp end end @OrganizationId = params['OrganizationId'] end end # AddRecordPlan返回参数结构体 class AddRecordPlanResponse < TencentCloud::Common::AbstractModel # @param Data: 返回结果 # @type Data: :class:`Tencentcloud::Iss.v20230517.models.RecordPlanOptResponse` # @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) unless params['Data'].nil? @Data = RecordPlanOptResponse.new @Data.deserialize(params['Data']) end @RequestId = params['RequestId'] end end # AddRecordRetrieveTask请求参数结构体 class AddRecordRetrieveTaskRequest < TencentCloud::Common::AbstractModel # @param TaskName: 任务名称,仅支持中文、英文、数字、_、-,长度不超过32个字符,模板名称全局唯一,不能为空,不能重复 # @type TaskName: String # @param StartTime: 取回录像的开始时间,UTC秒数,例如:1662114146,开始和结束时间段最长为一天,且不能跨天 # @type StartTime: Integer # @param EndTime: 取回录像的结束时间,UTC秒数,例如:1662114146,开始和结束时间段最长为一天,且不能跨天 # @type EndTime: Integer # @param Mode: 取回模式, 1:极速模式,其他暂不支持 # @type Mode: Integer # @param Expiration: 取回录像副本有效期,最小为1天,最大为365天 # @type Expiration: Integer # @param Channels: 设备通道,一个任务最多32个设备通道 # @type Channels: Array # @param Describe: 取回任务描述 # @type Describe: String attr_accessor :TaskName, :StartTime, :EndTime, :Mode, :Expiration, :Channels, :Describe def initialize(taskname=nil, starttime=nil, endtime=nil, mode=nil, expiration=nil, channels=nil, describe=nil) @TaskName = taskname @StartTime = starttime @EndTime = endtime @Mode = mode @Expiration = expiration @Channels = channels @Describe = describe end def deserialize(params) @TaskName = params['TaskName'] @StartTime = params['StartTime'] @EndTime = params['EndTime'] @Mode = params['Mode'] @Expiration = params['Expiration'] unless params['Channels'].nil? @Channels = [] params['Channels'].each do |i| channelinfo_tmp = ChannelInfo.new channelinfo_tmp.deserialize(i) @Channels << channelinfo_tmp end end @Describe = params['Describe'] end end # 查询取回任务详情返回数据 class AddRecordRetrieveTaskResponse < TencentCloud::Common::AbstractModel # @param TaskId: 任务ID # @type TaskId: String # @param TaskName: 任务名称 # @type TaskName: String # @param StartTime: 取回录像的开始时间 # @type StartTime: Integer # @param EndTime: 取回录像的结束时间 # @type EndTime: Integer # @param Mode: 取回模式,1:极速模式,其他暂不支持 # @type Mode: Integer # @param Expiration: 副本有效期 # @type Expiration: Integer # @param Status: 任务状态,0:已取回,1:取回中,2:待取回 # @type Status: Integer # @param Capacity: 取回容量,单位MB # @type Capacity: Float # @param Describe: 任务描述 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Describe: String attr_accessor :TaskId, :TaskName, :StartTime, :EndTime, :Mode, :Expiration, :Status, :Capacity, :Describe def initialize(taskid=nil, taskname=nil, starttime=nil, endtime=nil, mode=nil, expiration=nil, status=nil, capacity=nil, describe=nil) @TaskId = taskid @TaskName = taskname @StartTime = starttime @EndTime = endtime @Mode = mode @Expiration = expiration @Status = status @Capacity = capacity @Describe = describe end def deserialize(params) @TaskId = params['TaskId'] @TaskName = params['TaskName'] @StartTime = params['StartTime'] @EndTime = params['EndTime'] @Mode = params['Mode'] @Expiration = params['Expiration'] @Status = params['Status'] @Capacity = params['Capacity'] @Describe = params['Describe'] end end # AddRecordTemplate请求参数结构体 class AddRecordTemplateRequest < TencentCloud::Common::AbstractModel # @param TemplateName: 模板名称, 仅支持中文、英文、数字、_、-,长度不超过32个字符,模板名称全局唯一,不能为空,不能重复 # @type TemplateName: String # @param TimeSections: 上云时间段,按周进行设置,支持一天设置多个时间段,每个时间段不小于10分钟 # @type TimeSections: Array attr_accessor :TemplateName, :TimeSections def initialize(templatename=nil, timesections=nil) @TemplateName = templatename @TimeSections = timesections end def deserialize(params) @TemplateName = params['TemplateName'] unless params['TimeSections'].nil? @TimeSections = [] params['TimeSections'].each do |i| recordtemplatetimesections_tmp = RecordTemplateTimeSections.new recordtemplatetimesections_tmp.deserialize(i) @TimeSections << recordtemplatetimesections_tmp end end end end # AddRecordTemplate返回参数结构体 class AddRecordTemplateResponse < TencentCloud::Common::AbstractModel # @param Data: 返回结果 # @type Data: :class:`Tencentcloud::Iss.v20230517.models.RecordTemplateInfo` # @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) unless params['Data'].nil? @Data = RecordTemplateInfo.new @Data.deserialize(params['Data']) end @RequestId = params['RequestId'] end end # AddStreamAuth请求参数结构体 class AddStreamAuthRequest < TencentCloud::Common::AbstractModel # @param Id: 鉴权配置ID(uuid) # @type Id: String # @param PullState: 是否开播放鉴权(1:开启,0:关闭) # @type PullState: Integer # @param PullSecret: 播放密钥(仅支持字母数字,长度0-10位) # @type PullSecret: String # @param PullExpired: 播放过期时间(单位:分钟) # @type PullExpired: Integer # @param PushState: 是否开启推流鉴权(1:开启,0:关闭) # @type PushState: Integer # @param PushSecret: 推流密钥(仅支持字母数字,长度0-10位) # @type PushSecret: String # @param PushExpired: 推流过期时间(单位:分钟) # @type PushExpired: Integer attr_accessor :Id, :PullState, :PullSecret, :PullExpired, :PushState, :PushSecret, :PushExpired def initialize(id=nil, pullstate=nil, pullsecret=nil, pullexpired=nil, pushstate=nil, pushsecret=nil, pushexpired=nil) @Id = id @PullState = pullstate @PullSecret = pullsecret @PullExpired = pullexpired @PushState = pushstate @PushSecret = pushsecret @PushExpired = pushexpired end def deserialize(params) @Id = params['Id'] @PullState = params['PullState'] @PullSecret = params['PullSecret'] @PullExpired = params['PullExpired'] @PushState = params['PushState'] @PushSecret = params['PushSecret'] @PushExpired = params['PushExpired'] end end # 设置推拉流鉴权返回数据结构 class AddStreamAuthResponse < TencentCloud::Common::AbstractModel # @param Id: 鉴权配置ID(uuid) # 注意:此字段可能返回 null,表示取不到有效值。 # @type Id: String # @param PullState: 是否开播放鉴权(1:开启,0:关闭) # 注意:此字段可能返回 null,表示取不到有效值。 # @type PullState: Integer # @param PullSecret: 播放密钥(仅支持字母数字,长度0-10位) # 注意:此字段可能返回 null,表示取不到有效值。 # @type PullSecret: String # @param PullExpired: 播放过期时间(单位:分钟) # 注意:此字段可能返回 null,表示取不到有效值。 # @type PullExpired: Integer # @param PushState: 是否开启推流鉴权(1:开启,0:关闭) # 注意:此字段可能返回 null,表示取不到有效值。 # @type PushState: Integer # @param PushSecret: 推流密钥(仅支持字母数字,长度0-10位) # 注意:此字段可能返回 null,表示取不到有效值。 # @type PushSecret: String # @param PushExpired: 推流过期时间(单位:分钟) # 注意:此字段可能返回 null,表示取不到有效值。 # @type PushExpired: Integer # @param AppId: 用户ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type AppId: Integer attr_accessor :Id, :PullState, :PullSecret, :PullExpired, :PushState, :PushSecret, :PushExpired, :AppId def initialize(id=nil, pullstate=nil, pullsecret=nil, pullexpired=nil, pushstate=nil, pushsecret=nil, pushexpired=nil, appid=nil) @Id = id @PullState = pullstate @PullSecret = pullsecret @PullExpired = pullexpired @PushState = pushstate @PushSecret = pushsecret @PushExpired = pushexpired @AppId = appid end def deserialize(params) @Id = params['Id'] @PullState = params['PullState'] @PullSecret = params['PullSecret'] @PullExpired = params['PullExpired'] @PushState = params['PushState'] @PushSecret = params['PushSecret'] @PushExpired = params['PushExpired'] @AppId = params['AppId'] end end # AddUserDevice请求参数结构体 class AddUserDeviceRequest < TencentCloud::Common::AbstractModel # @param Name: 设备名称,仅支持中文、英文、数字、_、-,长度不超过32个字符;(设备名称无需全局唯一,可以重复) # @type Name: String # @param AccessProtocol: 设备接入协议(1:RTMP,2:GB,3:GW) # @type AccessProtocol: Integer # @param Type: 设备类型,1:IPC,2:NVR;(若设备接入协议选择RTMP,则设备类型只能选择IPC) # @type Type: Integer # @param OrganizationId: 设备所属组织ID,从查询组织接口DescribeOrganization中获取 # @type OrganizationId: String # @param ClusterId: 设备接入服务节点ID(从查询设备可用服务节点接口DescribeDeviceRegion中获取的Value字段) # @type ClusterId: String # @param TransportProtocol: 设备流传输协议,1:UDP,2:TCP;(国标设备有效,不填写则默认UDP协议) # @type TransportProtocol: Integer # @param Password: 设备密码(国标,网关设备必填,仅支持数字组合,长度为1-64个字符) # @type Password: String # @param Description: 设备描述,仅支持中文、英文、数字、_、-,长度不超过128个字符 # @type Description: String # @param GatewayId: 设备接入网关ID,从查询网关列表接口中ListGateways获取(仅网关接入需要) # @type GatewayId: String # @param ProtocolType: 网关接入协议类型(从查询网关接入协议接口DescribeGatewayProtocol中获取)1.海康SDK,2.大华SDK,3.宇视SDK,4.Onvif(仅网关接入需要) # @type ProtocolType: Integer # @param Ip: 设备接入IP(仅网关接入需要) # @type Ip: String # @param Port: 设备端口(仅网关接入需要) # @type Port: Integer # @param Username: 设备用户名(仅网关接入需要) # @type Username: String attr_accessor :Name, :AccessProtocol, :Type, :OrganizationId, :ClusterId, :TransportProtocol, :Password, :Description, :GatewayId, :ProtocolType, :Ip, :Port, :Username def initialize(name=nil, accessprotocol=nil, type=nil, organizationid=nil, clusterid=nil, transportprotocol=nil, password=nil, description=nil, gatewayid=nil, protocoltype=nil, ip=nil, port=nil, username=nil) @Name = name @AccessProtocol = accessprotocol @Type = type @OrganizationId = organizationid @ClusterId = clusterid @TransportProtocol = transportprotocol @Password = password @Description = description @GatewayId = gatewayid @ProtocolType = protocoltype @Ip = ip @Port = port @Username = username end def deserialize(params) @Name = params['Name'] @AccessProtocol = params['AccessProtocol'] @Type = params['Type'] @OrganizationId = params['OrganizationId'] @ClusterId = params['ClusterId'] @TransportProtocol = params['TransportProtocol'] @Password = params['Password'] @Description = params['Description'] @GatewayId = params['GatewayId'] @ProtocolType = params['ProtocolType'] @Ip = params['Ip'] @Port = params['Port'] @Username = params['Username'] end end # AddUserDevice返回参数结构体 class AddUserDeviceResponse < TencentCloud::Common::AbstractModel # @param Data: 增加设备返回数据 # @type Data: :class:`Tencentcloud::Iss.v20230517.models.AddDeviceResponse` # @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) unless params['Data'].nil? @Data = AddDeviceResponse.new @Data.deserialize(params['Data']) end @RequestId = params['RequestId'] end end # 通用AI识别结果信息 class BaseAIResultInfo < TencentCloud::Common::AbstractModel # @param Name: 名称。返回值有人体识别结果名称(person)、宠物识别结果名称(cat和dog) 、车辆车牌识别结果名称(vehicle) # @type Name: String # @param Score: 置信度 # @type Score: Integer # @param Location: 截图中坐标信息 # @type Location: :class:`Tencentcloud::Iss.v20230517.models.Location` attr_accessor :Name, :Score, :Location def initialize(name=nil, score=nil, location=nil) @Name = name @Score = score @Location = location end def deserialize(params) @Name = params['Name'] @Score = params['Score'] unless params['Location'].nil? @Location = Location.new @Location.deserialize(params['Location']) end end end # 人体识别结果详情 class BodyAIResultInfo < TencentCloud::Common::AbstractModel # @param Time: 时间字符串 # @type Time: String # @param Url: 截图 URL # @type Url: String # @param BodyInfo: 人体信息 # @type BodyInfo: Array attr_accessor :Time, :Url, :BodyInfo def initialize(time=nil, url=nil, bodyinfo=nil) @Time = time @Url = url @BodyInfo = bodyinfo end def deserialize(params) @Time = params['Time'] @Url = params['Url'] unless params['BodyInfo'].nil? @BodyInfo = [] params['BodyInfo'].each do |i| baseairesultinfo_tmp = BaseAIResultInfo.new baseairesultinfo_tmp.deserialize(i) @BodyInfo << baseairesultinfo_tmp end end end end # 车辆车牌识别结果信息 class CarAIResultInfo < TencentCloud::Common::AbstractModel # @param Serial: 车系 # @type Serial: String # @param Brand: 车辆品牌 # @type Brand: String # @param Type: 车辆类型 # @type Type: String # @param Color: 车辆颜色 # @type Color: String # @param Confidence: 置信度,0 - 100 # @type Confidence: Integer # @param Year: 年份,识别不出年份时返回0 # @type Year: Integer # @param PlateContent: 车牌信息 # @type PlateContent: :class:`Tencentcloud::Iss.v20230517.models.PlateContent` # @param Location: 截图中坐标信息 # @type Location: :class:`Tencentcloud::Iss.v20230517.models.Location` attr_accessor :Serial, :Brand, :Type, :Color, :Confidence, :Year, :PlateContent, :Location def initialize(serial=nil, brand=nil, type=nil, color=nil, confidence=nil, year=nil, platecontent=nil, location=nil) @Serial = serial @Brand = brand @Type = type @Color = color @Confidence = confidence @Year = year @PlateContent = platecontent @Location = location end def deserialize(params) @Serial = params['Serial'] @Brand = params['Brand'] @Type = params['Type'] @Color = params['Color'] @Confidence = params['Confidence'] @Year = params['Year'] unless params['PlateContent'].nil? @PlateContent = PlateContent.new @PlateContent.deserialize(params['PlateContent']) end unless params['Location'].nil? @Location = Location.new @Location.deserialize(params['Location']) end end end # 通道及通道所属设备信息 class ChannelInfo < TencentCloud::Common::AbstractModel # @param DeviceId: 通道所属的设备ID # @type DeviceId: String # @param ChannelId: 设备通道ID,一个设备通道只允许被一个上云计划添加 # @type ChannelId: String attr_accessor :DeviceId, :ChannelId def initialize(deviceid=nil, channelid=nil) @DeviceId = deviceid @ChannelId = channelid end def deserialize(params) @DeviceId = params['DeviceId'] @ChannelId = params['ChannelId'] end end # CheckDomain请求参数结构体 class CheckDomainRequest < TencentCloud::Common::AbstractModel # @param PlayDomain: 播放域名 # @type PlayDomain: String # @param InternalDomain: CNAME 记录值 # @type InternalDomain: String attr_accessor :PlayDomain, :InternalDomain def initialize(playdomain=nil, internaldomain=nil) @PlayDomain = playdomain @InternalDomain = internaldomain end def deserialize(params) @PlayDomain = params['PlayDomain'] @InternalDomain = params['InternalDomain'] end end # CheckDomain返回参数结构体 class CheckDomainResponse < TencentCloud::Common::AbstractModel # @param Data: 是否备案 # @type Data: Boolean # @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 # 厨师服识别结果详情 class ChefClothAIResultInfo < TencentCloud::Common::AbstractModel # @param Time: 时间字符串 # @type Time: String # @param Url: 截图 URL # @type Url: String # @param ChefClothInfoInfo: 厨师服信息 # @type ChefClothInfoInfo: Array attr_accessor :Time, :Url, :ChefClothInfoInfo def initialize(time=nil, url=nil, chefclothinfoinfo=nil) @Time = time @Url = url @ChefClothInfoInfo = chefclothinfoinfo end def deserialize(params) @Time = params['Time'] @Url = params['Url'] unless params['ChefClothInfoInfo'].nil? @ChefClothInfoInfo = [] params['ChefClothInfoInfo'].each do |i| baseairesultinfo_tmp = BaseAIResultInfo.new baseairesultinfo_tmp.deserialize(i) @ChefClothInfoInfo << baseairesultinfo_tmp end end end end # 厨师帽识别结果详情 class ChefHatAIResultInfo < TencentCloud::Common::AbstractModel # @param Time: 时间字符串 # @type Time: String # @param Url: 截图 URL # @type Url: String # @param ChefHatInfo: 厨师帽信息 # @type ChefHatInfo: Array attr_accessor :Time, :Url, :ChefHatInfo def initialize(time=nil, url=nil, chefhatinfo=nil) @Time = time @Url = url @ChefHatInfo = chefhatinfo end def deserialize(params) @Time = params['Time'] @Url = params['Url'] unless params['ChefHatInfo'].nil? @ChefHatInfo = [] params['ChefHatInfo'].each do |i| baseairesultinfo_tmp = BaseAIResultInfo.new baseairesultinfo_tmp.deserialize(i) @ChefHatInfo << baseairesultinfo_tmp end end end end # ControlDevicePTZ请求参数结构体 class ControlDevicePTZRequest < TencentCloud::Common::AbstractModel # @param ChannelId: 通道 ID(从通道查询接口DescribeDeviceChannel中获取) # @type ChannelId: String # @param Type: 命令类型(上:up,下:down,左:left,右:right # 上左:leftup,上右:rightup,下左:leftdown,下右:rightdown # 放大:zoomin,缩小:zoomout # 聚焦远:focusfar,聚焦近:focusnear # 光圈放大:irisin,光圈缩小:irisout) # @type Type: String # @param Speed: 命令描述(速度值范围1-8) # @type Speed: Integer attr_accessor :ChannelId, :Type, :Speed def initialize(channelid=nil, type=nil, speed=nil) @ChannelId = channelid @Type = type @Speed = speed end def deserialize(params) @ChannelId = params['ChannelId'] @Type = params['Type'] @Speed = params['Speed'] end end # ControlDevicePTZ返回参数结构体 class ControlDevicePTZResponse < 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 # ControlDevicePreset请求参数结构体 class ControlDevicePresetRequest < TencentCloud::Common::AbstractModel # @param ChannelId: 通道 ID(从通道查询接口DescribeDeviceChannel中获取) # @type ChannelId: String # @param Cmd: 命令(goto:预置位调用; # set:预置位设置; # del:预置位删除) # @type Cmd: String # @param Index: 预置位索引(只支持1-10的索引位置,超出报错) # @type Index: Integer attr_accessor :ChannelId, :Cmd, :Index def initialize(channelid=nil, cmd=nil, index=nil) @ChannelId = channelid @Cmd = cmd @Index = index end def deserialize(params) @ChannelId = params['ChannelId'] @Cmd = params['Cmd'] @Index = params['Index'] end end # ControlDevicePreset返回参数结构体 class ControlDevicePresetResponse < 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 # ControlDeviceStream请求参数结构体 class ControlDeviceStreamRequest < TencentCloud::Common::AbstractModel # @param ChannelId: 通道 ID(从通道查询接口DescribeDeviceChannel中获取) # @type ChannelId: String # @param StreamType: 流类型(1:主码流; # 2:子码流(不可以和 Resolution 同时下发)) # @type StreamType: String # @param Resolution: 分辨率(1:QCIF; # 2:CIF; # 3:4CIF; # 4:D1; # 5:720P; # 6:1080P/I; # 自定义的19201080等等(需设备支持)(不可以和 StreamType 同时下发)) # @type Resolution: String attr_accessor :ChannelId, :StreamType, :Resolution def initialize(channelid=nil, streamtype=nil, resolution=nil) @ChannelId = channelid @StreamType = streamtype @Resolution = resolution end def deserialize(params) @ChannelId = params['ChannelId'] @StreamType = params['StreamType'] @Resolution = params['Resolution'] end end # 获取开流地址返回数据 class ControlDeviceStreamResponse < TencentCloud::Common::AbstractModel # @param Flv: flv 流地址 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Flv: String # @param Hls: hls 流地址 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Hls: String # @param Rtmp: rtmp 流地址 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Rtmp: String attr_accessor :Flv, :Hls, :Rtmp def initialize(flv=nil, hls=nil, rtmp=nil) @Flv = flv @Hls = hls @Rtmp = rtmp end def deserialize(params) @Flv = params['Flv'] @Hls = params['Hls'] @Rtmp = params['Rtmp'] end end # ControlRecord请求参数结构体 class ControlRecordRequest < TencentCloud::Common::AbstractModel # @param ChannelId: 通道ID(录像播放地址格式 https://${domain}/live/${ChannelId}@${Session}) # @type ChannelId: String # @param Session: 录像会话 ID ( 录像播放地址格式 https://${domain}/live/${ChannelId}@${Session}) # @type Session: String # @param ControlAction: 录像操作类型 (play:播放;pause:暂停 ;stop:关闭) # @type ControlAction: String # @param Position: 跳转进度 ( 参数应大于等于0,跳转到录像开始时间的相对时间(单位秒),例如0就是跳转到录像开始的时间,不可以和 Scale 参数同时出现) # @type Position: Integer # @param Scale: 速度 ( 范围(0.25,0.5,1,2,4,8),不可以和 Pos 参数同时出现) # @type Scale: Float attr_accessor :ChannelId, :Session, :ControlAction, :Position, :Scale def initialize(channelid=nil, session=nil, controlaction=nil, position=nil, scale=nil) @ChannelId = channelid @Session = session @ControlAction = controlaction @Position = position @Scale = scale end def deserialize(params) @ChannelId = params['ChannelId'] @Session = params['Session'] @ControlAction = params['ControlAction'] @Position = params['Position'] @Scale = params['Scale'] end end # ControlRecord返回参数结构体 class ControlRecordResponse < 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 # ControlRecordTimeline请求参数结构体 class ControlRecordTimelineRequest < TencentCloud::Common::AbstractModel # @param ChannelId: 通道 ID(从通道查询接口DescribeDeviceChannel中获取) # @type ChannelId: String # @param Start: 起始时间 # @type Start: Integer # @param End: 结束时间 # @type End: Integer attr_accessor :ChannelId, :Start, :End def initialize(channelid=nil, start=nil, _end=nil) @ChannelId = channelid @Start = start @End = _end end def deserialize(params) @ChannelId = params['ChannelId'] @Start = params['Start'] @End = params['End'] end end # ControlRecordTimeline返回参数结构体 class ControlRecordTimelineResponse < TencentCloud::Common::AbstractModel # @param Data: 返回数据 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: Array # @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) unless params['Data'].nil? @Data = [] params['Data'].each do |i| timeline_tmp = Timeline.new timeline_tmp.deserialize(i) @Data << timeline_tmp end end @RequestId = params['RequestId'] end end # DeleteAITask请求参数结构体 class DeleteAITaskRequest < TencentCloud::Common::AbstractModel # @param TaskId: AI任务ID # @type TaskId: String attr_accessor :TaskId def initialize(taskid=nil) @TaskId = taskid end def deserialize(params) @TaskId = params['TaskId'] end end # DeleteAITask返回参数结构体 class DeleteAITaskResponse < 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 # DeleteDomain请求参数结构体 class DeleteDomainRequest < TencentCloud::Common::AbstractModel # @param Id: 域名 ID # @type Id: String attr_accessor :Id def initialize(id=nil) @Id = id end def deserialize(params) @Id = params['Id'] end end # DeleteDomain返回参数结构体 class DeleteDomainResponse < 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 # DeleteGateway请求参数结构体 class DeleteGatewayRequest < TencentCloud::Common::AbstractModel # @param GatewayId: 网关索引ID(从获取网关列表接口ListGateways中获取) # @type GatewayId: String attr_accessor :GatewayId def initialize(gatewayid=nil) @GatewayId = gatewayid end def deserialize(params) @GatewayId = params['GatewayId'] end end # DeleteGateway返回参数结构体 class DeleteGatewayResponse < 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 # DeleteOrganization请求参数结构体 class DeleteOrganizationRequest < TencentCloud::Common::AbstractModel # @param OrganizationId: 组织ID(从查询组织接口DescribeOrganization中获取) # @type OrganizationId: String attr_accessor :OrganizationId def initialize(organizationid=nil) @OrganizationId = organizationid end def deserialize(params) @OrganizationId = params['OrganizationId'] end end # DeleteOrganization返回参数结构体 class DeleteOrganizationResponse < 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 # DeleteRecordBackupPlan请求参数结构体 class DeleteRecordBackupPlanRequest < TencentCloud::Common::AbstractModel # @param PlanId: 录像上云计划ID(从查询录像上云计划列表接口ListRecordBackupPlans中获取) # @type PlanId: String attr_accessor :PlanId def initialize(planid=nil) @PlanId = planid end def deserialize(params) @PlanId = params['PlanId'] end end # DeleteRecordBackupPlan返回参数结构体 class DeleteRecordBackupPlanResponse < 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 # DeleteRecordBackupTemplate请求参数结构体 class DeleteRecordBackupTemplateRequest < TencentCloud::Common::AbstractModel # @param TemplateId: 模板ID(从查询录像上云模板列表接口ListRecordBackupTemplates中获取) # @type TemplateId: String attr_accessor :TemplateId def initialize(templateid=nil) @TemplateId = templateid end def deserialize(params) @TemplateId = params['TemplateId'] end end # DeleteRecordBackupTemplate返回参数结构体 class DeleteRecordBackupTemplateResponse < 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 # DeleteRecordPlan请求参数结构体 class DeleteRecordPlanRequest < TencentCloud::Common::AbstractModel # @param PlanId: 上云计划ID # @type PlanId: String attr_accessor :PlanId def initialize(planid=nil) @PlanId = planid end def deserialize(params) @PlanId = params['PlanId'] end end # DeleteRecordPlan返回参数结构体 class DeleteRecordPlanResponse < 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 # DeleteRecordRetrieveTask请求参数结构体 class DeleteRecordRetrieveTaskRequest < TencentCloud::Common::AbstractModel # @param TaskId: 取回任务ID # @type TaskId: String attr_accessor :TaskId def initialize(taskid=nil) @TaskId = taskid end def deserialize(params) @TaskId = params['TaskId'] end end # DeleteRecordRetrieveTask返回参数结构体 class DeleteRecordRetrieveTaskResponse < 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 # DeleteRecordTemplate请求参数结构体 class DeleteRecordTemplateRequest < TencentCloud::Common::AbstractModel # @param TemplateId: 模板ID # @type TemplateId: String attr_accessor :TemplateId def initialize(templateid=nil) @TemplateId = templateid end def deserialize(params) @TemplateId = params['TemplateId'] end end # DeleteRecordTemplate返回参数结构体 class DeleteRecordTemplateResponse < 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 # DeleteUserDevice请求参数结构体 class DeleteUserDeviceRequest < TencentCloud::Common::AbstractModel # @param DeviceId: 设备ID(从获取设备列表ListDevices接口中获取) # @type DeviceId: String attr_accessor :DeviceId def initialize(deviceid=nil) @DeviceId = deviceid end def deserialize(params) @DeviceId = params['DeviceId'] end end # DeleteUserDevice返回参数结构体 class DeleteUserDeviceResponse < 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 # DescribeAITask请求参数结构体 class DescribeAITaskRequest < TencentCloud::Common::AbstractModel # @param TaskId: AI任务ID # @type TaskId: String attr_accessor :TaskId def initialize(taskid=nil) @TaskId = taskid end def deserialize(params) @TaskId = params['TaskId'] end end # DescribeAITask返回参数结构体 class DescribeAITaskResponse < TencentCloud::Common::AbstractModel # @param Data: AI任务详情 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: :class:`Tencentcloud::Iss.v20230517.models.AITaskInfo` # @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) unless params['Data'].nil? @Data = AITaskInfo.new @Data.deserialize(params['Data']) end @RequestId = params['RequestId'] end end # DescribeAITaskResult请求参数结构体 class DescribeAITaskResultRequest < TencentCloud::Common::AbstractModel # @param TaskId: AI 任务 ID # @type TaskId: String # @param ChannelId: 通道ID # @type ChannelId: String # @param Object: 桶内文件的路径。 # @type Object: String # @param DetectType: AI 任务识别类型。可选值为 Facemask(口罩识别)、Chefhat(厨师帽识别)、Smoking(抽烟检测)、Chefcloth(厨师服识别)、PhoneCall(接打电话识别)、Pet(宠物识别)、Body(人体识别)和 Car(车辆车牌识别) # @type DetectType: String # @param BeginTime: 开始时间时间。秒级时间戳。开始时间和结束时间跨度小于等于30天 # @type BeginTime: String # @param EndTime: 结束时间时间。秒级时间戳。开始时间和结束时间跨度小于等于30天 # @type EndTime: String # @param PageNumber: 页码。默认为1 # @type PageNumber: Integer # @param PageSize: 每页 AI 识别结果数量。可选值1~100,默认为10(按时间倒序显示识别结果) # @type PageSize: Integer attr_accessor :TaskId, :ChannelId, :Object, :DetectType, :BeginTime, :EndTime, :PageNumber, :PageSize def initialize(taskid=nil, channelid=nil, object=nil, detecttype=nil, begintime=nil, endtime=nil, pagenumber=nil, pagesize=nil) @TaskId = taskid @ChannelId = channelid @Object = object @DetectType = detecttype @BeginTime = begintime @EndTime = endtime @PageNumber = pagenumber @PageSize = pagesize end def deserialize(params) @TaskId = params['TaskId'] @ChannelId = params['ChannelId'] @Object = params['Object'] @DetectType = params['DetectType'] @BeginTime = params['BeginTime'] @EndTime = params['EndTime'] @PageNumber = params['PageNumber'] @PageSize = params['PageSize'] end end # DescribeAITaskResult返回参数结构体 class DescribeAITaskResultResponse < TencentCloud::Common::AbstractModel # @param Data: AI识别结果 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: :class:`Tencentcloud::Iss.v20230517.models.AITaskResultResponse` # @param TotalCount: AI识别结果数量 # @type TotalCount: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Data, :TotalCount, :RequestId def initialize(data=nil, totalcount=nil, requestid=nil) @Data = data @TotalCount = totalcount @RequestId = requestid end def deserialize(params) unless params['Data'].nil? @Data = AITaskResultResponse.new @Data.deserialize(params['Data']) end @TotalCount = params['TotalCount'] @RequestId = params['RequestId'] end end # DescribeCNAME请求参数结构体 class DescribeCNAMERequest < TencentCloud::Common::AbstractModel # @param ClusterId: 服务节点 ID(从查询域名可绑定服务节点接口DescribeDomainRegion中获取) # @type ClusterId: String attr_accessor :ClusterId def initialize(clusterid=nil) @ClusterId = clusterid end def deserialize(params) @ClusterId = params['ClusterId'] end end # DescribeCNAME返回参数结构体 class DescribeCNAMEResponse < TencentCloud::Common::AbstractModel # @param Data: CNAME 记录值 # @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 # DescribeDeviceChannel请求参数结构体 class DescribeDeviceChannelRequest < TencentCloud::Common::AbstractModel # @param DeviceId: 设备ID(从获取设备列表接口ListDevices中获取) # @type DeviceId: String attr_accessor :DeviceId def initialize(deviceid=nil) @DeviceId = deviceid end def deserialize(params) @DeviceId = params['DeviceId'] end end # 查询设备通道信息返回结果 class DescribeDeviceChannelResponse < TencentCloud::Common::AbstractModel # @param DeviceId: 设备 ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type DeviceId: String # @param ChannelId: 通道 ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type ChannelId: String # @param ChannelCode: 通道编码 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ChannelCode: String # @param Name: 通道名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Name: String # @param Status: 流状态(0:未传输,1:传输中) # 注意:此字段可能返回 null,表示取不到有效值。 # @type Status: Integer # @param PTZType: 是否可控 Ptz(0:不可控,1:可控) # 注意:此字段可能返回 null,表示取不到有效值。 # @type PTZType: Integer # @param Manufacturer: 通道厂商 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Manufacturer: String # @param Resolution: 通道支持分辨率(分辨率列表由‘/’隔开,国标协议样例(6/3),自定义样例(12800960/640480)) # 注意:此字段可能返回 null,表示取不到有效值。 # @type Resolution: String # @param State: 通道在离线状态(0:离线,1:在线) # 注意:此字段可能返回 null,表示取不到有效值。 # @type State: Integer # @param Region: 所在地域 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Region: String attr_accessor :DeviceId, :ChannelId, :ChannelCode, :Name, :Status, :PTZType, :Manufacturer, :Resolution, :State, :Region def initialize(deviceid=nil, channelid=nil, channelcode=nil, name=nil, status=nil, ptztype=nil, manufacturer=nil, resolution=nil, state=nil, region=nil) @DeviceId = deviceid @ChannelId = channelid @ChannelCode = channelcode @Name = name @Status = status @PTZType = ptztype @Manufacturer = manufacturer @Resolution = resolution @State = state @Region = region end def deserialize(params) @DeviceId = params['DeviceId'] @ChannelId = params['ChannelId'] @ChannelCode = params['ChannelCode'] @Name = params['Name'] @Status = params['Status'] @PTZType = params['PTZType'] @Manufacturer = params['Manufacturer'] @Resolution = params['Resolution'] @State = params['State'] @Region = params['Region'] end end # DescribeDevicePreset请求参数结构体 class DescribeDevicePresetRequest < TencentCloud::Common::AbstractModel # @param ChannelId: 通道ID(从通道查询接口DescribeDeviceChannel中获取) # @type ChannelId: String attr_accessor :ChannelId def initialize(channelid=nil) @ChannelId = channelid end def deserialize(params) @ChannelId = params['ChannelId'] end end # 查询设备预置位返回数据 class DescribeDevicePresetResponse < TencentCloud::Common::AbstractModel # @param Index: 预置位索引 只支持1-10的索引 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Index: Integer # @param Name: 预置位名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Name: String attr_accessor :Index, :Name def initialize(index=nil, name=nil) @Index = index @Name = name end def deserialize(params) @Index = params['Index'] @Name = params['Name'] end end # 查询设备可接入集群信息 class DescribeDeviceRegion < TencentCloud::Common::AbstractModel # @param Label: 服务节点描述 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Label: String # @param Value: 服务节点 ID(对应为其他接口中所需的 ClusterId) # 注意:此字段可能返回 null,表示取不到有效值。 # @type Value: String # @param Region: 地域信息 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Region: String attr_accessor :Label, :Value, :Region def initialize(label=nil, value=nil, region=nil) @Label = label @Value = value @Region = region end def deserialize(params) @Label = params['Label'] @Value = params['Value'] @Region = params['Region'] end end # DescribeDeviceRegion请求参数结构体 class DescribeDeviceRegionRequest < TencentCloud::Common::AbstractModel def initialize() end def deserialize(params) end end # DescribeDeviceRegion返回参数结构体 class DescribeDeviceRegionResponse < TencentCloud::Common::AbstractModel # @param Data: 返回数据 # @type Data: Array # @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) unless params['Data'].nil? @Data = [] params['Data'].each do |i| describedeviceregion_tmp = DescribeDeviceRegion.new describedeviceregion_tmp.deserialize(i) @Data << describedeviceregion_tmp end end @RequestId = params['RequestId'] end end # 查询设备接口返回数据 class DescribeDeviceResponse < TencentCloud::Common::AbstractModel # @param DeviceId: 设备ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type DeviceId: String # @param Code: 设备编码(即我们为设备生成的20位国标编码) # 注意:此字段可能返回 null,表示取不到有效值。 # @type Code: String # @param Name: 设备名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Name: String # @param AccessProtocol: 设备接入协议,1:RTMP,2:GB,3:GW # 注意:此字段可能返回 null,表示取不到有效值。 # @type AccessProtocol: Integer # @param Type: 设备类型,1:IPC,2:NVR # 注意:此字段可能返回 null,表示取不到有效值。 # @type Type: Integer # @param ClusterId: 设备接入服务节点id # 注意:此字段可能返回 null,表示取不到有效值。 # @type ClusterId: String # @param ClusterName: 设备接入服务节点名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ClusterName: String # @param TransportProtocol: 设备流传输协议,1:UDP,2:TCP # 注意:此字段可能返回 null,表示取不到有效值。 # @type TransportProtocol: Integer # @param Password: 设备密码 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Password: String # @param Description: 设备描述 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Description: String # @param SipId: sip服务ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type SipId: String # @param SipDomain: sip服务域 # 注意:此字段可能返回 null,表示取不到有效值。 # @type SipDomain: String # @param SipIp: sip服务IP地址 # 注意:此字段可能返回 null,表示取不到有效值。 # @type SipIp: String # @param SipPort: sip服务端口 # 注意:此字段可能返回 null,表示取不到有效值。 # @type SipPort: Integer # @param PushStreamUrl: Rtmp设备推流地址(仅rtmp设备有效) # 注意:此字段可能返回 null,表示取不到有效值。 # @type PushStreamUrl: String # @param Status: 设备状态,0:未注册,1:在线,2:离线,3:禁用 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Status: Integer # @param OrganizationId: 设备所属组织ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type OrganizationId: String # @param GatewayId: 设备接入网关ID,从查询网关列表接口中获取(仅网关接入需要) # 注意:此字段可能返回 null,表示取不到有效值。 # @type GatewayId: String # @param GatewayName: 设备所属网关名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type GatewayName: String # @param ProtocolTypeName: 设备网关协议名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ProtocolTypeName: String # @param ProtocolType: 网关接入协议类型,1.海康SDK,2.大华SDK,3.宇视SDK,4.Onvif(仅网关接入需要) # 注意:此字段可能返回 null,表示取不到有效值。 # @type ProtocolType: Integer # @param Ip: 设备接入IP # 注意:此字段可能返回 null,表示取不到有效值。 # @type Ip: String # @param Port: 设备Port # 注意:此字段可能返回 null,表示取不到有效值。 # @type Port: Integer # @param Username: 设备用户名 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Username: String # @param Region: 设备地域 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Region: String # @param Manufacturer: 设备厂商 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Manufacturer: String attr_accessor :DeviceId, :Code, :Name, :AccessProtocol, :Type, :ClusterId, :ClusterName, :TransportProtocol, :Password, :Description, :SipId, :SipDomain, :SipIp, :SipPort, :PushStreamUrl, :Status, :OrganizationId, :GatewayId, :GatewayName, :ProtocolTypeName, :ProtocolType, :Ip, :Port, :Username, :Region, :Manufacturer def initialize(deviceid=nil, code=nil, name=nil, accessprotocol=nil, type=nil, clusterid=nil, clustername=nil, transportprotocol=nil, password=nil, description=nil, sipid=nil, sipdomain=nil, sipip=nil, sipport=nil, pushstreamurl=nil, status=nil, organizationid=nil, gatewayid=nil, gatewayname=nil, protocoltypename=nil, protocoltype=nil, ip=nil, port=nil, username=nil, region=nil, manufacturer=nil) @DeviceId = deviceid @Code = code @Name = name @AccessProtocol = accessprotocol @Type = type @ClusterId = clusterid @ClusterName = clustername @TransportProtocol = transportprotocol @Password = password @Description = description @SipId = sipid @SipDomain = sipdomain @SipIp = sipip @SipPort = sipport @PushStreamUrl = pushstreamurl @Status = status @OrganizationId = organizationid @GatewayId = gatewayid @GatewayName = gatewayname @ProtocolTypeName = protocoltypename @ProtocolType = protocoltype @Ip = ip @Port = port @Username = username @Region = region @Manufacturer = manufacturer end def deserialize(params) @DeviceId = params['DeviceId'] @Code = params['Code'] @Name = params['Name'] @AccessProtocol = params['AccessProtocol'] @Type = params['Type'] @ClusterId = params['ClusterId'] @ClusterName = params['ClusterName'] @TransportProtocol = params['TransportProtocol'] @Password = params['Password'] @Description = params['Description'] @SipId = params['SipId'] @SipDomain = params['SipDomain'] @SipIp = params['SipIp'] @SipPort = params['SipPort'] @PushStreamUrl = params['PushStreamUrl'] @Status = params['Status'] @OrganizationId = params['OrganizationId'] @GatewayId = params['GatewayId'] @GatewayName = params['GatewayName'] @ProtocolTypeName = params['ProtocolTypeName'] @ProtocolType = params['ProtocolType'] @Ip = params['Ip'] @Port = params['Port'] @Username = params['Username'] @Region = params['Region'] @Manufacturer = params['Manufacturer'] end end # DescribeDomainRegion请求参数结构体 class DescribeDomainRegionRequest < TencentCloud::Common::AbstractModel def initialize() end def deserialize(params) end end # 查询域名可绑定集群数据 class DescribeDomainRegionResponse < TencentCloud::Common::AbstractModel # @param Label: 服务节点描述 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Label: String # @param Value: 服务节点 ID(对应为其他接口中所需的 ClusterId) # 注意:此字段可能返回 null,表示取不到有效值。 # @type Value: String # @param Region: 地域信息 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Region: String attr_accessor :Label, :Value, :Region def initialize(label=nil, value=nil, region=nil) @Label = label @Value = value @Region = region end def deserialize(params) @Label = params['Label'] @Value = params['Value'] @Region = params['Region'] end end # DescribeDomain请求参数结构体 class DescribeDomainRequest < TencentCloud::Common::AbstractModel def initialize() end def deserialize(params) end end # 查询域名详情数据 class DescribeDomainResponse < TencentCloud::Common::AbstractModel # @param Id: 域名ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type Id: String # @param PlayDomain: 播放域名 # 注意:此字段可能返回 null,表示取不到有效值。 # @type PlayDomain: String # @param InternalDomain: CNAME 记录值 # 注意:此字段可能返回 null,表示取不到有效值。 # @type InternalDomain: String # @param HaveCert: 是否上传证书(0:否,1:是) # 注意:此字段可能返回 null,表示取不到有效值。 # @type HaveCert: Integer # @param ClusterId: 服务节点 ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type ClusterId: String # @param ClusterName: 服务节点名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ClusterName: String # @param AppId: 用户ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type AppId: Integer attr_accessor :Id, :PlayDomain, :InternalDomain, :HaveCert, :ClusterId, :ClusterName, :AppId def initialize(id=nil, playdomain=nil, internaldomain=nil, havecert=nil, clusterid=nil, clustername=nil, appid=nil) @Id = id @PlayDomain = playdomain @InternalDomain = internaldomain @HaveCert = havecert @ClusterId = clusterid @ClusterName = clustername @AppId = appid end def deserialize(params) @Id = params['Id'] @PlayDomain = params['PlayDomain'] @InternalDomain = params['InternalDomain'] @HaveCert = params['HaveCert'] @ClusterId = params['ClusterId'] @ClusterName = params['ClusterName'] @AppId = params['AppId'] end end # 查询网关监控信息返回结果 class DescribeGatewayMonitor < TencentCloud::Common::AbstractModel # @param DeviceTotal: 设备接入总数 # 注意:此字段可能返回 null,表示取不到有效值。 # @type DeviceTotal: Integer # @param DeviceOnline: 设备在线数 # 注意:此字段可能返回 null,表示取不到有效值。 # @type DeviceOnline: Integer # @param DeviceOffline: 设备离线数 # 注意:此字段可能返回 null,表示取不到有效值。 # @type DeviceOffline: Integer # @param ChannelTotal: 视频通道总数 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ChannelTotal: Integer # @param ChannelOnline: 视频通道在线数 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ChannelOnline: Integer # @param ChannelOffline: 视频通道离线数 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ChannelOffline: Integer # @param UpFlow: 网关上行流量,单位kbps # 注意:此字段可能返回 null,表示取不到有效值。 # @type UpFlow: Integer # @param ChannelPull: 流在传输中的通道数 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ChannelPull: Integer # @param ChannelUnPull: 流未传输中的通道数 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ChannelUnPull: Integer attr_accessor :DeviceTotal, :DeviceOnline, :DeviceOffline, :ChannelTotal, :ChannelOnline, :ChannelOffline, :UpFlow, :ChannelPull, :ChannelUnPull def initialize(devicetotal=nil, deviceonline=nil, deviceoffline=nil, channeltotal=nil, channelonline=nil, channeloffline=nil, upflow=nil, channelpull=nil, channelunpull=nil) @DeviceTotal = devicetotal @DeviceOnline = deviceonline @DeviceOffline = deviceoffline @ChannelTotal = channeltotal @ChannelOnline = channelonline @ChannelOffline = channeloffline @UpFlow = upflow @ChannelPull = channelpull @ChannelUnPull = channelunpull end def deserialize(params) @DeviceTotal = params['DeviceTotal'] @DeviceOnline = params['DeviceOnline'] @DeviceOffline = params['DeviceOffline'] @ChannelTotal = params['ChannelTotal'] @ChannelOnline = params['ChannelOnline'] @ChannelOffline = params['ChannelOffline'] @UpFlow = params['UpFlow'] @ChannelPull = params['ChannelPull'] @ChannelUnPull = params['ChannelUnPull'] end end # DescribeGatewayMonitor请求参数结构体 class DescribeGatewayMonitorRequest < TencentCloud::Common::AbstractModel # @param GatewayId: 网关索引ID(从获取网关列表接口ListGateways中获取) # @type GatewayId: String attr_accessor :GatewayId def initialize(gatewayid=nil) @GatewayId = gatewayid end def deserialize(params) @GatewayId = params['GatewayId'] end end # DescribeGatewayMonitor返回参数结构体 class DescribeGatewayMonitorResponse < TencentCloud::Common::AbstractModel # @param Data: 返回数据 # @type Data: :class:`Tencentcloud::Iss.v20230517.models.DescribeGatewayMonitor` # @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) unless params['Data'].nil? @Data = DescribeGatewayMonitor.new @Data.deserialize(params['Data']) end @RequestId = params['RequestId'] end end # DescribeGatewayProtocol请求参数结构体 class DescribeGatewayProtocolRequest < TencentCloud::Common::AbstractModel def initialize() end def deserialize(params) end end # 查询网关所支持的接入协议 class DescribeGatewayProtocolResponse < TencentCloud::Common::AbstractModel # @param TypeCode: 接入协议的字典码 # 注意:此字段可能返回 null,表示取不到有效值。 # @type TypeCode: String # @param Value: 接入协议类型值 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Value: Integer # @param Label: 接入协议的类型描述 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Label: String attr_accessor :TypeCode, :Value, :Label def initialize(typecode=nil, value=nil, label=nil) @TypeCode = typecode @Value = value @Label = label end def deserialize(params) @TypeCode = params['TypeCode'] @Value = params['Value'] @Label = params['Label'] end end # DescribeGateway请求参数结构体 class DescribeGatewayRequest < TencentCloud::Common::AbstractModel # @param GatewayId: 网关索引ID(从获取网关列表接口ListGateways中获取) # @type GatewayId: String attr_accessor :GatewayId def initialize(gatewayid=nil) @GatewayId = gatewayid end def deserialize(params) @GatewayId = params['GatewayId'] end end # 查询网关信息返回结果 class DescribeGatewayResponse < TencentCloud::Common::AbstractModel # @param GatewayId: 网关索引ID,用于网关查询,更新,删除操作 # 注意:此字段可能返回 null,表示取不到有效值。 # @type GatewayId: String # @param GwId: 网关编码,由网关设备生成的唯一编码 # 注意:此字段可能返回 null,表示取不到有效值。 # @type GwId: String # @param Name: 网关名称,仅支持中文、英文、数字、_、-,长度不超过32个字符 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Name: String # @param Description: 网关描述,仅支持中文、英文、数字、_、-,长度不超过128个字符 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Description: String # @param ClusterId: 服务节点id # 注意:此字段可能返回 null,表示取不到有效值。 # @type ClusterId: String # @param ClusterName: 服务节点名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ClusterName: String # @param Status: 网关状态,0:离线,1:在线 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Status: Integer # @param Version: 网关版本 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Version: Array # @param DeviceNum: 网关下挂设备数量 # 注意:此字段可能返回 null,表示取不到有效值。 # @type DeviceNum: Integer # @param CreatedAt: 激活时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CreatedAt: String # @param Region: 所属地域 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Region: String attr_accessor :GatewayId, :GwId, :Name, :Description, :ClusterId, :ClusterName, :Status, :Version, :DeviceNum, :CreatedAt, :Region def initialize(gatewayid=nil, gwid=nil, name=nil, description=nil, clusterid=nil, clustername=nil, status=nil, version=nil, devicenum=nil, createdat=nil, region=nil) @GatewayId = gatewayid @GwId = gwid @Name = name @Description = description @ClusterId = clusterid @ClusterName = clustername @Status = status @Version = version @DeviceNum = devicenum @CreatedAt = createdat @Region = region end def deserialize(params) @GatewayId = params['GatewayId'] @GwId = params['GwId'] @Name = params['Name'] @Description = params['Description'] @ClusterId = params['ClusterId'] @ClusterName = params['ClusterName'] @Status = params['Status'] unless params['Version'].nil? @Version = [] params['Version'].each do |i| gatewayversion_tmp = GatewayVersion.new gatewayversion_tmp.deserialize(i) @Version << gatewayversion_tmp end end @DeviceNum = params['DeviceNum'] @CreatedAt = params['CreatedAt'] @Region = params['Region'] end end # 查询网关服务版本信息返回数据 class DescribeGatewayVersion < TencentCloud::Common::AbstractModel # @param Name: 服务名 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Name: String # @param Version: 服务版本 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Version: String # @param LatestVersion: 服务最新版本 # 注意:此字段可能返回 null,表示取不到有效值。 # @type LatestVersion: String # @param IsUpdate: 是否需要更新 # 注意:此字段可能返回 null,表示取不到有效值。 # @type IsUpdate: Boolean # @param UpgradeInfo: 升级信息 # 注意:此字段可能返回 null,表示取不到有效值。 # @type UpgradeInfo: Array attr_accessor :Name, :Version, :LatestVersion, :IsUpdate, :UpgradeInfo def initialize(name=nil, version=nil, latestversion=nil, isupdate=nil, upgradeinfo=nil) @Name = name @Version = version @LatestVersion = latestversion @IsUpdate = isupdate @UpgradeInfo = upgradeinfo end def deserialize(params) @Name = params['Name'] @Version = params['Version'] @LatestVersion = params['LatestVersion'] @IsUpdate = params['IsUpdate'] @UpgradeInfo = params['UpgradeInfo'] end end # DescribeGatewayVersion请求参数结构体 class DescribeGatewayVersionRequest < TencentCloud::Common::AbstractModel # @param GatewayId: 网关索引ID(从获取网关列表接口ListGateways中获取) # @type GatewayId: String attr_accessor :GatewayId def initialize(gatewayid=nil) @GatewayId = gatewayid end def deserialize(params) @GatewayId = params['GatewayId'] end end # 查询网关服务版本信息返回数据 class DescribeGatewayVersionResponse < TencentCloud::Common::AbstractModel # @param Services: 网关服务列表 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Services: Array attr_accessor :Services def initialize(services=nil) @Services = services end def deserialize(params) unless params['Services'].nil? @Services = [] params['Services'].each do |i| describegatewayversion_tmp = DescribeGatewayVersion.new describegatewayversion_tmp.deserialize(i) @Services << describegatewayversion_tmp end end end end # DescribeOrganization请求参数结构体 class DescribeOrganizationRequest < TencentCloud::Common::AbstractModel def initialize() end def deserialize(params) end end # 查询组织数据返回结果 class DescribeOrganizationResponse < TencentCloud::Common::AbstractModel # @param OrganizationId: 组织 ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type OrganizationId: String # @param Name: 组织名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Name: String # @param ParentId: 组织父节点 ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type ParentId: String # @param Level: 组织层级 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Level: Integer # @param AppId: 用户id # 注意:此字段可能返回 null,表示取不到有效值。 # @type AppId: Integer # @param ParentIds: 组织结构 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ParentIds: String # @param Total: 设备总数 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Total: Integer # @param Online: 设备在线数量 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Online: Integer attr_accessor :OrganizationId, :Name, :ParentId, :Level, :AppId, :ParentIds, :Total, :Online def initialize(organizationid=nil, name=nil, parentid=nil, level=nil, appid=nil, parentids=nil, total=nil, online=nil) @OrganizationId = organizationid @Name = name @ParentId = parentid @Level = level @AppId = appid @ParentIds = parentids @Total = total @Online = online end def deserialize(params) @OrganizationId = params['OrganizationId'] @Name = params['Name'] @ParentId = params['ParentId'] @Level = params['Level'] @AppId = params['AppId'] @ParentIds = params['ParentIds'] @Total = params['Total'] @Online = params['Online'] end end # DescribeRecordBackupPlan请求参数结构体 class DescribeRecordBackupPlanRequest < TencentCloud::Common::AbstractModel # @param PlanId: 录像上云计划ID(从查询录像上云计划列表接口ListRecordBackupPlans中获取) # @type PlanId: String attr_accessor :PlanId def initialize(planid=nil) @PlanId = planid end def deserialize(params) @PlanId = params['PlanId'] end end # 查询录像上云计划返回数据 class DescribeRecordBackupPlanResponse < TencentCloud::Common::AbstractModel # @param PlanId: 录像上云计划ID # @type PlanId: String # @param PlanName: 录像上云计划名称 # @type PlanName: String # @param TemplateId: 录像上云模板ID # @type TemplateId: String # @param Describe: 录像上云计划描述 # @type Describe: String # @param LifeCycle: 云文件生命周期 # @type LifeCycle: :class:`Tencentcloud::Iss.v20230517.models.LifeCycleData` # @param Status: 录像上云计划状态,1:正常使用中,0:删除中,无法使用 # @type Status: Integer # @param ChannelCount: 通道数量 # @type ChannelCount: Integer # @param CreateAt: 创建时间 # @type CreateAt: String # @param UpdateAt: 修改时间 # @type UpdateAt: String attr_accessor :PlanId, :PlanName, :TemplateId, :Describe, :LifeCycle, :Status, :ChannelCount, :CreateAt, :UpdateAt def initialize(planid=nil, planname=nil, templateid=nil, describe=nil, lifecycle=nil, status=nil, channelcount=nil, createat=nil, updateat=nil) @PlanId = planid @PlanName = planname @TemplateId = templateid @Describe = describe @LifeCycle = lifecycle @Status = status @ChannelCount = channelcount @CreateAt = createat @UpdateAt = updateat end def deserialize(params) @PlanId = params['PlanId'] @PlanName = params['PlanName'] @TemplateId = params['TemplateId'] @Describe = params['Describe'] unless params['LifeCycle'].nil? @LifeCycle = LifeCycleData.new @LifeCycle.deserialize(params['LifeCycle']) end @Status = params['Status'] @ChannelCount = params['ChannelCount'] @CreateAt = params['CreateAt'] @UpdateAt = params['UpdateAt'] end end # DescribeRecordBackupTemplate请求参数结构体 class DescribeRecordBackupTemplateRequest < TencentCloud::Common::AbstractModel # @param TemplateId: 模板ID(从查询录像上云模板列表接口ListRecordBackupTemplates中获取) # @type TemplateId: String attr_accessor :TemplateId def initialize(templateid=nil) @TemplateId = templateid end def deserialize(params) @TemplateId = params['TemplateId'] end end # 查询录像上云模版返回数据 class DescribeRecordBackupTemplateResponse < TencentCloud::Common::AbstractModel # @param TemplateId: 模板ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type TemplateId: String # @param TemplateName: 模板名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type TemplateName: String # @param TimeSections: 上云时间段(按周进行设置,支持一天设置多个时间段,每个时间段不小于10分钟) # 注意:此字段可能返回 null,表示取不到有效值。 # @type TimeSections: Array # @param DevTimeSections: 录像时间段(按周进行设置,支持一天设置多个时间段,每个时间段不小于10分钟) # 注意:此字段可能返回 null,表示取不到有效值。 # @type DevTimeSections: Array # @param Scale: 上云倍速(支持1,2,4倍速) # 注意:此字段可能返回 null,表示取不到有效值。 # @type Scale: Integer # @param CreateAt: 创建时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CreateAt: String # @param UpdateAt: 更新时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type UpdateAt: String attr_accessor :TemplateId, :TemplateName, :TimeSections, :DevTimeSections, :Scale, :CreateAt, :UpdateAt def initialize(templateid=nil, templatename=nil, timesections=nil, devtimesections=nil, scale=nil, createat=nil, updateat=nil) @TemplateId = templateid @TemplateName = templatename @TimeSections = timesections @DevTimeSections = devtimesections @Scale = scale @CreateAt = createat @UpdateAt = updateat end def deserialize(params) @TemplateId = params['TemplateId'] @TemplateName = params['TemplateName'] unless params['TimeSections'].nil? @TimeSections = [] params['TimeSections'].each do |i| recordtemplatetimesections_tmp = RecordTemplateTimeSections.new recordtemplatetimesections_tmp.deserialize(i) @TimeSections << recordtemplatetimesections_tmp end end unless params['DevTimeSections'].nil? @DevTimeSections = [] params['DevTimeSections'].each do |i| recordtemplatetimesections_tmp = RecordTemplateTimeSections.new recordtemplatetimesections_tmp.deserialize(i) @DevTimeSections << recordtemplatetimesections_tmp end end @Scale = params['Scale'] @CreateAt = params['CreateAt'] @UpdateAt = params['UpdateAt'] end end # DescribeRecordFile请求参数结构体 class DescribeRecordFileRequest < TencentCloud::Common::AbstractModel # @param DeviceId: 通道所属设备ID # @type DeviceId: String # @param ChannelId: 通道ID # @type ChannelId: String # @param StartTime: 检索开始时间,UTC秒数,例如:1662114146,开始和结束时间段最长为一天,且不能跨天 # @type StartTime: Integer # @param EndTime: 检索结束时间,UTC秒数,例如:1662114246,开始和结束时间段最长为一天,且不能跨天 # @type EndTime: Integer attr_accessor :DeviceId, :ChannelId, :StartTime, :EndTime def initialize(deviceid=nil, channelid=nil, starttime=nil, endtime=nil) @DeviceId = deviceid @ChannelId = channelid @StartTime = starttime @EndTime = endtime end def deserialize(params) @DeviceId = params['DeviceId'] @ChannelId = params['ChannelId'] @StartTime = params['StartTime'] @EndTime = params['EndTime'] end end # 用于查询设备云端录像时间轴信息返回数据 class DescribeRecordFileResponse < TencentCloud::Common::AbstractModel # @param Tips: 提示类型,0:时间段内无归档录像,1:时间段内有归档录像 # @type Tips: Integer # @param List: 存在为数组格式,不存在字段内容为空 # 注意:此字段可能返回 null,表示取不到有效值。 # @type List: Array attr_accessor :Tips, :List def initialize(tips=nil, list=nil) @Tips = tips @List = list end def deserialize(params) @Tips = params['Tips'] unless params['List'].nil? @List = [] params['List'].each do |i| recordtimeline_tmp = RecordTimeLine.new recordtimeline_tmp.deserialize(i) @List << recordtimeline_tmp end end end end # DescribeRecordPlan请求参数结构体 class DescribeRecordPlanRequest < TencentCloud::Common::AbstractModel # @param PlanId: 实时上云计划ID # @type PlanId: String attr_accessor :PlanId def initialize(planid=nil) @PlanId = planid end def deserialize(params) @PlanId = params['PlanId'] end end # DescribeRecordPlan返回参数结构体 class DescribeRecordPlanResponse < TencentCloud::Common::AbstractModel # @param Data: 返回结果 # @type Data: :class:`Tencentcloud::Iss.v20230517.models.RecordPlanBaseInfo` # @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) unless params['Data'].nil? @Data = RecordPlanBaseInfo.new @Data.deserialize(params['Data']) end @RequestId = params['RequestId'] end end # DescribeRecordPlaybackUrl请求参数结构体 class DescribeRecordPlaybackUrlRequest < TencentCloud::Common::AbstractModel # @param ChannelId: 设备通道ID # @type ChannelId: String # @param StartTime: 回放开始时间,UTC秒数,例如:1662114146,开始和结束时间段最长为一天,且不能跨天 # @type StartTime: Integer # @param EndTime: 回放结束时间,UTC秒数,例如:1662114246,开始和结束时间段最长为一天,且不能跨天 # @type EndTime: Integer attr_accessor :ChannelId, :StartTime, :EndTime def initialize(channelid=nil, starttime=nil, endtime=nil) @ChannelId = channelid @StartTime = starttime @EndTime = endtime end def deserialize(params) @ChannelId = params['ChannelId'] @StartTime = params['StartTime'] @EndTime = params['EndTime'] end end # DescribeRecordPlaybackUrl返回参数结构体 class DescribeRecordPlaybackUrlResponse < TencentCloud::Common::AbstractModel # @param Data: 返回结果 # @type Data: :class:`Tencentcloud::Iss.v20230517.models.RecordPlaybackUrl` # @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) unless params['Data'].nil? @Data = RecordPlaybackUrl.new @Data.deserialize(params['Data']) end @RequestId = params['RequestId'] end end # DescribeRecordRetrieveTask请求参数结构体 class DescribeRecordRetrieveTaskRequest < TencentCloud::Common::AbstractModel # @param TaskId: 云录像取回任务ID # @type TaskId: String attr_accessor :TaskId def initialize(taskid=nil) @TaskId = taskid end def deserialize(params) @TaskId = params['TaskId'] end end # 查询云录像取回任务详情返回数据 class DescribeRecordRetrieveTaskResponse < TencentCloud::Common::AbstractModel # @param TaskId: 取回任务ID # @type TaskId: String # @param TaskName: 取回任务名称 # @type TaskName: String # @param StartTime: 取回录像的开始时间 # @type StartTime: Integer # @param EndTime: 取回录像的结束时间 # @type EndTime: Integer # @param Mode: 取回模式,1:极速模式,其他暂不支持 # @type Mode: Integer # @param Expiration: 副本有效期 # @type Expiration: Integer # @param Status: 任务状态,0:已取回,1:取回中,2:待取回 # @type Status: Integer # @param Capacity: 取回容量,单位MB # @type Capacity: Float # @param Channels: 任务的设备通道id # @type Channels: Array # @param Describe: 任务描述 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Describe: String # @param ChannelCount: 任务通道数量 # @type ChannelCount: Integer attr_accessor :TaskId, :TaskName, :StartTime, :EndTime, :Mode, :Expiration, :Status, :Capacity, :Channels, :Describe, :ChannelCount def initialize(taskid=nil, taskname=nil, starttime=nil, endtime=nil, mode=nil, expiration=nil, status=nil, capacity=nil, channels=nil, describe=nil, channelcount=nil) @TaskId = taskid @TaskName = taskname @StartTime = starttime @EndTime = endtime @Mode = mode @Expiration = expiration @Status = status @Capacity = capacity @Channels = channels @Describe = describe @ChannelCount = channelcount end def deserialize(params) @TaskId = params['TaskId'] @TaskName = params['TaskName'] @StartTime = params['StartTime'] @EndTime = params['EndTime'] @Mode = params['Mode'] @Expiration = params['Expiration'] @Status = params['Status'] @Capacity = params['Capacity'] unless params['Channels'].nil? @Channels = [] params['Channels'].each do |i| recordretrievetaskchannelinfo_tmp = RecordRetrieveTaskChannelInfo.new recordretrievetaskchannelinfo_tmp.deserialize(i) @Channels << recordretrievetaskchannelinfo_tmp end end @Describe = params['Describe'] @ChannelCount = params['ChannelCount'] end end # DescribeRecordTemplate请求参数结构体 class DescribeRecordTemplateRequest < TencentCloud::Common::AbstractModel # @param TemplateId: 模板ID # @type TemplateId: String attr_accessor :TemplateId def initialize(templateid=nil) @TemplateId = templateid end def deserialize(params) @TemplateId = params['TemplateId'] end end # DescribeRecordTemplate返回参数结构体 class DescribeRecordTemplateResponse < TencentCloud::Common::AbstractModel # @param Data: 返回结果 # @type Data: :class:`Tencentcloud::Iss.v20230517.models.RecordTemplateInfo` # @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) unless params['Data'].nil? @Data = RecordTemplateInfo.new @Data.deserialize(params['Data']) end @RequestId = params['RequestId'] end end # DescribeStreamAuth请求参数结构体 class DescribeStreamAuthRequest < TencentCloud::Common::AbstractModel def initialize() end def deserialize(params) end end # 查询推拉流鉴权返回数据结构 class DescribeStreamAuthResponse < TencentCloud::Common::AbstractModel # @param Id: 鉴权配置ID(uuid) # 注意:此字段可能返回 null,表示取不到有效值。 # @type Id: String # @param PullState: 是否开播放鉴权(1:开启,0:关闭) # 注意:此字段可能返回 null,表示取不到有效值。 # @type PullState: Integer # @param PullSecret: 播放密钥(仅支持字母数字,长度0-10位) # 注意:此字段可能返回 null,表示取不到有效值。 # @type PullSecret: String # @param PullExpired: 播放过期时间(单位:分钟) # 注意:此字段可能返回 null,表示取不到有效值。 # @type PullExpired: Integer # @param PushState: 是否开启推流鉴权(1:开启,0:关闭) # 注意:此字段可能返回 null,表示取不到有效值。 # @type PushState: Integer # @param PushSecret: 推流密钥(仅支持字母数字,长度0-10位) # 注意:此字段可能返回 null,表示取不到有效值。 # @type PushSecret: String # @param PushExpired: 推流过期时间(单位:分钟) # 注意:此字段可能返回 null,表示取不到有效值。 # @type PushExpired: Integer # @param AppId: 用户ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type AppId: Integer attr_accessor :Id, :PullState, :PullSecret, :PullExpired, :PushState, :PushSecret, :PushExpired, :AppId def initialize(id=nil, pullstate=nil, pullsecret=nil, pullexpired=nil, pushstate=nil, pushsecret=nil, pushexpired=nil, appid=nil) @Id = id @PullState = pullstate @PullSecret = pullsecret @PullExpired = pullexpired @PushState = pushstate @PushSecret = pushsecret @PushExpired = pushexpired @AppId = appid end def deserialize(params) @Id = params['Id'] @PullState = params['PullState'] @PullSecret = params['PullSecret'] @PullExpired = params['PullExpired'] @PushState = params['PushState'] @PushSecret = params['PushSecret'] @PushExpired = params['PushExpired'] @AppId = params['AppId'] end end # DescribeUserDevice请求参数结构体 class DescribeUserDeviceRequest < TencentCloud::Common::AbstractModel # @param DeviceId: 设备ID(从获取设备列表接口ListDevices中获取) # @type DeviceId: String attr_accessor :DeviceId def initialize(deviceid=nil) @DeviceId = deviceid end def deserialize(params) @DeviceId = params['DeviceId'] end end # DescribeUserDevice返回参数结构体 class DescribeUserDeviceResponse < TencentCloud::Common::AbstractModel # @param Data: 返回结果 # @type Data: :class:`Tencentcloud::Iss.v20230517.models.DescribeDeviceResponse` # @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) unless params['Data'].nil? @Data = DescribeDeviceResponse.new @Data.deserialize(params['Data']) end @RequestId = params['RequestId'] end end # DescribeVideoDownloadUrl请求参数结构体 class DescribeVideoDownloadUrlRequest < TencentCloud::Common::AbstractModel # @param ChannelId: 通道 ID # @type ChannelId: String # @param BeginTime: 下载的开始时间,UTC 秒数,开始和结束时间段最长为30分钟,且不能跨天 # @type BeginTime: String # @param EndTime: 下载的结束时间,UTC 秒数,开始和结束时间段最长为30分钟,且不能跨天 # @type EndTime: String # @param FileType: 文件格式,"mp4":mp4格式,"ts":ts文件格式 # @type FileType: String # @param IsRespActualTime: 响应data中是否携带实际下载录像的开始时间与结束时间 # @type IsRespActualTime: Boolean attr_accessor :ChannelId, :BeginTime, :EndTime, :FileType, :IsRespActualTime def initialize(channelid=nil, begintime=nil, endtime=nil, filetype=nil, isrespactualtime=nil) @ChannelId = channelid @BeginTime = begintime @EndTime = endtime @FileType = filetype @IsRespActualTime = isrespactualtime end def deserialize(params) @ChannelId = params['ChannelId'] @BeginTime = params['BeginTime'] @EndTime = params['EndTime'] @FileType = params['FileType'] @IsRespActualTime = params['IsRespActualTime'] end end # 获取云录像下载URL返回的数据 class DescribeVideoDownloadUrlResponse < TencentCloud::Common::AbstractModel # @param Url: 录像文件下载 URL # 注意: # URL 有效期是10分钟,过期后将拒绝访问,若需再用请重新获取 # 录像文件下载采用分块传输编码,响应头Transfer-Encoding:chunked # 下载文件命名格式为{ChannelId}-{BeginTime}-{EndTime}.{FileType} # @type Url: String # @param ActualBeginTime: 实际下载录像的开始时间 # 注意:当请求中指定IsRespActualTime参数为true时,才有该字段 # @type ActualBeginTime: String # @param ActualEndTime: 实际下载录像的结束时间 # 注意:当请求中指定IsRespActualTime参数为true时,才有该字段 # @type ActualEndTime: String attr_accessor :Url, :ActualBeginTime, :ActualEndTime def initialize(url=nil, actualbegintime=nil, actualendtime=nil) @Url = url @ActualBeginTime = actualbegintime @ActualEndTime = actualendtime end def deserialize(params) @Url = params['Url'] @ActualBeginTime = params['ActualBeginTime'] @ActualEndTime = params['ActualEndTime'] end end # 口罩识别结果详情 class FaceMaskAIResultInfo < TencentCloud::Common::AbstractModel # @param Time: 时间字符串 # @type Time: String # @param Url: 截图 URL # @type Url: String # @param FaceMaskInfo: 口罩信息 # @type FaceMaskInfo: Array attr_accessor :Time, :Url, :FaceMaskInfo def initialize(time=nil, url=nil, facemaskinfo=nil) @Time = time @Url = url @FaceMaskInfo = facemaskinfo end def deserialize(params) @Time = params['Time'] @Url = params['Url'] unless params['FaceMaskInfo'].nil? @FaceMaskInfo = [] params['FaceMaskInfo'].each do |i| baseairesultinfo_tmp = BaseAIResultInfo.new baseairesultinfo_tmp.deserialize(i) @FaceMaskInfo << baseairesultinfo_tmp end end end end # 网关详情版本信息 class GatewayVersion < TencentCloud::Common::AbstractModel # @param Name: 服务名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Name: String # @param Version: 服务版本 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Version: String attr_accessor :Name, :Version def initialize(name=nil, version=nil) @Name = name @Version = version end def deserialize(params) @Name = params['Name'] @Version = params['Version'] end end # 查询网关列表返回结果 class GatewaysData < TencentCloud::Common::AbstractModel # @param GatewayId: 网关索引ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type GatewayId: String # @param GwId: 网关编码 # 注意:此字段可能返回 null,表示取不到有效值。 # @type GwId: String # @param Name: 网关名称,仅支持中文、英文、数字、_、-,长度不超过32个字符 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Name: String # @param Description: 网关描述,仅支持中文、英文、数字、_、-,长度不超过128个字符 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Description: String # @param ClusterId: 网关所属服务节点ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type ClusterId: String # @param ClusterName: 网关所属服务节点名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ClusterName: String # @param Region: 网关所属地域 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Region: String # @param Status: 网关状态,0:离线,1:在线 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Status: Integer # @param CreatedAt: 网关激活时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CreatedAt: String # @param DeviceNum: 所属网关设备数量 # 注意:此字段可能返回 null,表示取不到有效值。 # @type DeviceNum: Integer attr_accessor :GatewayId, :GwId, :Name, :Description, :ClusterId, :ClusterName, :Region, :Status, :CreatedAt, :DeviceNum def initialize(gatewayid=nil, gwid=nil, name=nil, description=nil, clusterid=nil, clustername=nil, region=nil, status=nil, createdat=nil, devicenum=nil) @GatewayId = gatewayid @GwId = gwid @Name = name @Description = description @ClusterId = clusterid @ClusterName = clustername @Region = region @Status = status @CreatedAt = createdat @DeviceNum = devicenum end def deserialize(params) @GatewayId = params['GatewayId'] @GwId = params['GwId'] @Name = params['Name'] @Description = params['Description'] @ClusterId = params['ClusterId'] @ClusterName = params['ClusterName'] @Region = params['Region'] @Status = params['Status'] @CreatedAt = params['CreatedAt'] @DeviceNum = params['DeviceNum'] end end # 生命周期,云文件生命周期设置,管理文件冷、热存储的时间 class LifeCycleData < TencentCloud::Common::AbstractModel # @param Transition: 云文件热存储时长,单位天,最小1天,最大3650天 # @type Transition: Integer # @param Expiration: 云文件冷存储时长, 单位天,0表示不设置,设置时最小60天,Expiration字段加Transition字段不超过3650天 # @type Expiration: Integer attr_accessor :Transition, :Expiration def initialize(transition=nil, expiration=nil) @Transition = transition @Expiration = expiration end def deserialize(params) @Transition = params['Transition'] @Expiration = params['Expiration'] end end # 获取AI任务列表的数据 class ListAITaskData < TencentCloud::Common::AbstractModel # @param List: AI任务列表 # 注意:此字段可能返回 null,表示取不到有效值。 # @type List: Array attr_accessor :List def initialize(list=nil) @List = list end def deserialize(params) unless params['List'].nil? @List = [] params['List'].each do |i| aitaskinfo_tmp = AITaskInfo.new aitaskinfo_tmp.deserialize(i) @List << aitaskinfo_tmp end end end end # ListAITasks请求参数结构体 class ListAITasksRequest < TencentCloud::Common::AbstractModel # @param IsContainChannelList: 是否包含通道列表。"true"代表包含通道列表,"false"代表不包含通道列表,默认为 false # @type IsContainChannelList: Boolean # @param IsContainTemplate: 是否包含AI配置。"true"代表包含任务配置,"false"代表不包含任务配置,默认为 false。 # @type IsContainTemplate: Boolean # @param PageNumber: 页码。默认为1 # @type PageNumber: Integer # @param PageSize: 每页数量。可选值1~200,默认为20 # @type PageSize: Integer attr_accessor :IsContainChannelList, :IsContainTemplate, :PageNumber, :PageSize def initialize(iscontainchannellist=nil, iscontaintemplate=nil, pagenumber=nil, pagesize=nil) @IsContainChannelList = iscontainchannellist @IsContainTemplate = iscontaintemplate @PageNumber = pagenumber @PageSize = pagesize end def deserialize(params) @IsContainChannelList = params['IsContainChannelList'] @IsContainTemplate = params['IsContainTemplate'] @PageNumber = params['PageNumber'] @PageSize = params['PageSize'] end end # ListAITasks返回参数结构体 class ListAITasksResponse < TencentCloud::Common::AbstractModel # @param TotalCount: AI 任务数量 # @type TotalCount: Integer # @param Data: AI任务列表 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: :class:`Tencentcloud::Iss.v20230517.models.ListAITaskData` # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :Data, :RequestId def initialize(totalcount=nil, data=nil, requestid=nil) @TotalCount = totalcount @Data = data @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['Data'].nil? @Data = ListAITaskData.new @Data.deserialize(params['Data']) end @RequestId = params['RequestId'] end end # 获取设备列表的响应 class ListDeviceInfo < TencentCloud::Common::AbstractModel # @param DeviceId: 设备 ID # @type DeviceId: String # @param Code: 设备国标编码 # @type Code: String # @param Status: 设备状态。0:未注册,1:在线,2:离线,3:禁用 # @type Status: Integer # @param TransportProtocol: 设备流传输协议。1:UDP,2:TCP # @type TransportProtocol: Integer # @param Name: 设备名称 # @type Name: String # @param Type: 设备类型。1:IPC,2:NVR # @type Type: Integer # @param Password: 设备密码 # @type Password: String # @param Description: 描述 # @type Description: String # @param ClusterId: 设备接入服务节点 ID # @type ClusterId: String # @param ClusterName: 服务节点名称 # @type ClusterName: String # @param AccessProtocol: 接入协议。1:RTMP,2:GB,3:GW # @type AccessProtocol: Integer # @param OrganizationId: 设备所属组织 ID # @type OrganizationId: String # @param ChannelNum: 通道数量 # @type ChannelNum: Integer attr_accessor :DeviceId, :Code, :Status, :TransportProtocol, :Name, :Type, :Password, :Description, :ClusterId, :ClusterName, :AccessProtocol, :OrganizationId, :ChannelNum def initialize(deviceid=nil, code=nil, status=nil, transportprotocol=nil, name=nil, type=nil, password=nil, description=nil, clusterid=nil, clustername=nil, accessprotocol=nil, organizationid=nil, channelnum=nil) @DeviceId = deviceid @Code = code @Status = status @TransportProtocol = transportprotocol @Name = name @Type = type @Password = password @Description = description @ClusterId = clusterid @ClusterName = clustername @AccessProtocol = accessprotocol @OrganizationId = organizationid @ChannelNum = channelnum end def deserialize(params) @DeviceId = params['DeviceId'] @Code = params['Code'] @Status = params['Status'] @TransportProtocol = params['TransportProtocol'] @Name = params['Name'] @Type = params['Type'] @Password = params['Password'] @Description = params['Description'] @ClusterId = params['ClusterId'] @ClusterName = params['ClusterName'] @AccessProtocol = params['AccessProtocol'] @OrganizationId = params['OrganizationId'] @ChannelNum = params['ChannelNum'] end end # ListDevices请求参数结构体 class ListDevicesRequest < TencentCloud::Common::AbstractModel # @param OrganizationId: 组织ID # @type OrganizationId: String # @param IsContainSubLevel: 是否获取当前层级及子层级的设备列表,默认false # @type IsContainSubLevel: Boolean # @param AccessProtocol: 设备接入协议。1:RTMP,2:GB,3:GW # @type AccessProtocol: Integer # @param Type: 设备类型。1:IPC,2:NVR # @type Type: Integer # @param Status: 设备状态。0:未注册,1:在线,2:离线,3:禁用 # @type Status: Integer # @param ClusterId: 服务节点ID # @type ClusterId: String # @param Keyword: 模糊搜索设备关键字 # @type Keyword: String # @param CurrentUin: 当前用户Uin # @type CurrentUin: Integer # @param PageNumber: 页码,默认为1。 # @type PageNumber: Integer # @param PageSize: 每页数量,默认为20。 # @type PageSize: Integer attr_accessor :OrganizationId, :IsContainSubLevel, :AccessProtocol, :Type, :Status, :ClusterId, :Keyword, :CurrentUin, :PageNumber, :PageSize def initialize(organizationid=nil, iscontainsublevel=nil, accessprotocol=nil, type=nil, status=nil, clusterid=nil, keyword=nil, currentuin=nil, pagenumber=nil, pagesize=nil) @OrganizationId = organizationid @IsContainSubLevel = iscontainsublevel @AccessProtocol = accessprotocol @Type = type @Status = status @ClusterId = clusterid @Keyword = keyword @CurrentUin = currentuin @PageNumber = pagenumber @PageSize = pagesize end def deserialize(params) @OrganizationId = params['OrganizationId'] @IsContainSubLevel = params['IsContainSubLevel'] @AccessProtocol = params['AccessProtocol'] @Type = params['Type'] @Status = params['Status'] @ClusterId = params['ClusterId'] @Keyword = params['Keyword'] @CurrentUin = params['CurrentUin'] @PageNumber = params['PageNumber'] @PageSize = params['PageSize'] end end # ListDevices返回参数结构体 class ListDevicesResponse < TencentCloud::Common::AbstractModel # @param Data: 设备列表详情 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: Array # @param TotalCount: 设备总数 # @type TotalCount: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Data, :TotalCount, :RequestId def initialize(data=nil, totalcount=nil, requestid=nil) @Data = data @TotalCount = totalcount @RequestId = requestid end def deserialize(params) unless params['Data'].nil? @Data = [] params['Data'].each do |i| listdeviceinfo_tmp = ListDeviceInfo.new listdeviceinfo_tmp.deserialize(i) @Data << listdeviceinfo_tmp end end @TotalCount = params['TotalCount'] @RequestId = params['RequestId'] end end # ListGateways请求参数结构体 class ListGatewaysRequest < TencentCloud::Common::AbstractModel # @param PageNumber: 页码,默认为1 # @type PageNumber: Integer # @param PageSize: 每页数量,默认为20 # @type PageSize: Integer # @param Name: 网关名称 # @type Name: String # @param ClusterId: 服务节点ID # @type ClusterId: String # @param Status: 网关状态(0:离线,1 :在线) # @type Status: Integer attr_accessor :PageNumber, :PageSize, :Name, :ClusterId, :Status def initialize(pagenumber=nil, pagesize=nil, name=nil, clusterid=nil, status=nil) @PageNumber = pagenumber @PageSize = pagesize @Name = name @ClusterId = clusterid @Status = status end def deserialize(params) @PageNumber = params['PageNumber'] @PageSize = params['PageSize'] @Name = params['Name'] @ClusterId = params['ClusterId'] @Status = params['Status'] end end # 查询网关列表返回结果 class ListGatewaysResponse < TencentCloud::Common::AbstractModel # @param List: 网关列表 # 注意:此字段可能返回 null,表示取不到有效值。 # @type List: Array # @param TotalCount: 网关数量 # 注意:此字段可能返回 null,表示取不到有效值。 # @type TotalCount: Integer attr_accessor :List, :TotalCount def initialize(list=nil, totalcount=nil) @List = list @TotalCount = totalcount end def deserialize(params) unless params['List'].nil? @List = [] params['List'].each do |i| gatewaysdata_tmp = GatewaysData.new gatewaysdata_tmp.deserialize(i) @List << gatewaysdata_tmp end end @TotalCount = params['TotalCount'] end end # ListOrganizationChannelNumbers请求参数结构体 class ListOrganizationChannelNumbersRequest < TencentCloud::Common::AbstractModel # @param OrganizationId: 组织ID,json数组格式,最多一次支持10个组织 # @type OrganizationId: Array attr_accessor :OrganizationId def initialize(organizationid=nil) @OrganizationId = organizationid end def deserialize(params) @OrganizationId = params['OrganizationId'] end end # 组织目录下的未添加到实时上云计划中的通道数量返回数据 class ListOrganizationChannelNumbersResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 组织下通道总数 # @type TotalCount: Integer # @param NotInPlanCount: 组织下未添加到计划的通道总数 # @type NotInPlanCount: Integer attr_accessor :TotalCount, :NotInPlanCount def initialize(totalcount=nil, notinplancount=nil) @TotalCount = totalcount @NotInPlanCount = notinplancount end def deserialize(params) @TotalCount = params['TotalCount'] @NotInPlanCount = params['NotInPlanCount'] end end # ListOrganizationChannels请求参数结构体 class ListOrganizationChannelsRequest < TencentCloud::Common::AbstractModel # @param OrganizationId: 组织ID # @type OrganizationId: String # @param PageSize: 每页最大数量 # @type PageSize: Integer # @param PageNumber: 第几页 # @type PageNumber: Integer # @param DeviceName: 查询条件,则按照设备名称查询 # 查询条件同时只有一个生效。长度不超过32字节 # @type DeviceName: String # @param ChannelName: 查询条件,则按照通道名称查询 # 查询条件同时只有一个生效。长度不超过32字节 # @type ChannelName: String attr_accessor :OrganizationId, :PageSize, :PageNumber, :DeviceName, :ChannelName def initialize(organizationid=nil, pagesize=nil, pagenumber=nil, devicename=nil, channelname=nil) @OrganizationId = organizationid @PageSize = pagesize @PageNumber = pagenumber @DeviceName = devicename @ChannelName = channelname end def deserialize(params) @OrganizationId = params['OrganizationId'] @PageSize = params['PageSize'] @PageNumber = params['PageNumber'] @DeviceName = params['DeviceName'] @ChannelName = params['ChannelName'] end end # 查询组织目录下的通道列表返回数据 class ListOrganizationChannelsResponse < TencentCloud::Common::AbstractModel # @param PageNumber: 第几页 # @type PageNumber: Integer # @param PageSize: 当前页的设备数量 # @type PageSize: Integer # @param TotalCount: 本次查询的设备通道总数 # @type TotalCount: Integer # @param List: 设备通道信息列表 # 注意:此字段可能返回 null,表示取不到有效值。 # @type List: Array attr_accessor :PageNumber, :PageSize, :TotalCount, :List def initialize(pagenumber=nil, pagesize=nil, totalcount=nil, list=nil) @PageNumber = pagenumber @PageSize = pagesize @TotalCount = totalcount @List = list end def deserialize(params) @PageNumber = params['PageNumber'] @PageSize = params['PageSize'] @TotalCount = params['TotalCount'] unless params['List'].nil? @List = [] params['List'].each do |i| organizationchannelinfo_tmp = OrganizationChannelInfo.new organizationchannelinfo_tmp.deserialize(i) @List << organizationchannelinfo_tmp end end end end # ListRecordBackupPlanDevices请求参数结构体 class ListRecordBackupPlanDevicesRequest < TencentCloud::Common::AbstractModel # @param PlanId: 录像计划ID(从查询录像上云计划列表接口ListRecordBackupPlans中获取) # @type PlanId: String # @param DeviceName: 按照设备名称查询(为空时,不参考该参数) # @type DeviceName: String # @param ChannelName: 按照通道名称查询(为空时,不参考该参数) # @type ChannelName: String # @param OrganizationName: 按照组织名称查询(为空时,不参考该参数) # @type OrganizationName: String # @param PageSize: 每页最大数量 # @type PageSize: String # @param PageNumber: 第几页 # @type PageNumber: String attr_accessor :PlanId, :DeviceName, :ChannelName, :OrganizationName, :PageSize, :PageNumber def initialize(planid=nil, devicename=nil, channelname=nil, organizationname=nil, pagesize=nil, pagenumber=nil) @PlanId = planid @DeviceName = devicename @ChannelName = channelname @OrganizationName = organizationname @PageSize = pagesize @PageNumber = pagenumber end def deserialize(params) @PlanId = params['PlanId'] @DeviceName = params['DeviceName'] @ChannelName = params['ChannelName'] @OrganizationName = params['OrganizationName'] @PageSize = params['PageSize'] @PageNumber = params['PageNumber'] end end # 查询录像上云计划关联通道的返回数据 class ListRecordBackupPlanDevicesResponse < TencentCloud::Common::AbstractModel # @param PageNumber: 第几页 # 注意:此字段可能返回 null,表示取不到有效值。 # @type PageNumber: Integer # @param PageSize: 当前页的设备数量 # 注意:此字段可能返回 null,表示取不到有效值。 # @type PageSize: Integer # @param TotalCount: 本次查询的设备通道总数 # 注意:此字段可能返回 null,表示取不到有效值。 # @type TotalCount: Integer # @param List: 设备通道信息列表 # 注意:此字段可能返回 null,表示取不到有效值。 # @type List: :class:`Tencentcloud::Iss.v20230517.models.RecordPlanChannelInfo` attr_accessor :PageNumber, :PageSize, :TotalCount, :List def initialize(pagenumber=nil, pagesize=nil, totalcount=nil, list=nil) @PageNumber = pagenumber @PageSize = pagesize @TotalCount = totalcount @List = list end def deserialize(params) @PageNumber = params['PageNumber'] @PageSize = params['PageSize'] @TotalCount = params['TotalCount'] unless params['List'].nil? @List = RecordPlanChannelInfo.new @List.deserialize(params['List']) end end end # 查询录像上云计划列表返回数据 class ListRecordBackupPlanResponse < TencentCloud::Common::AbstractModel # @param PlanId: 录像上云计划ID # @type PlanId: String # @param PlanName: 录像上云计划名称 # @type PlanName: String # @param TemplateId: 录像上云模板ID # @type TemplateId: String # @param Describe: 录像上云计划描述 # @type Describe: String # @param LifeCycle: 云文件生命周期 # @type LifeCycle: :class:`Tencentcloud::Iss.v20230517.models.LifeCycleData` # @param Status: 录像上云计划状态,1:正常使用中,0:删除中,无法使用 # @type Status: Integer # @param ChannelCount: 通道数量 # @type ChannelCount: Integer # @param CreateAt: 创建时间 # @type CreateAt: String # @param UpdateAt: 修改时间 # @type UpdateAt: String attr_accessor :PlanId, :PlanName, :TemplateId, :Describe, :LifeCycle, :Status, :ChannelCount, :CreateAt, :UpdateAt def initialize(planid=nil, planname=nil, templateid=nil, describe=nil, lifecycle=nil, status=nil, channelcount=nil, createat=nil, updateat=nil) @PlanId = planid @PlanName = planname @TemplateId = templateid @Describe = describe @LifeCycle = lifecycle @Status = status @ChannelCount = channelcount @CreateAt = createat @UpdateAt = updateat end def deserialize(params) @PlanId = params['PlanId'] @PlanName = params['PlanName'] @TemplateId = params['TemplateId'] @Describe = params['Describe'] unless params['LifeCycle'].nil? @LifeCycle = LifeCycleData.new @LifeCycle.deserialize(params['LifeCycle']) end @Status = params['Status'] @ChannelCount = params['ChannelCount'] @CreateAt = params['CreateAt'] @UpdateAt = params['UpdateAt'] end end # ListRecordBackupPlans请求参数结构体 class ListRecordBackupPlansRequest < TencentCloud::Common::AbstractModel def initialize() end def deserialize(params) end end # ListRecordBackupPlans返回参数结构体 class ListRecordBackupPlansResponse < TencentCloud::Common::AbstractModel # @param Data: 返回数据 # @type Data: Array # @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) unless params['Data'].nil? @Data = [] params['Data'].each do |i| listrecordbackupplanresponse_tmp = ListRecordBackupPlanResponse.new listrecordbackupplanresponse_tmp.deserialize(i) @Data << listrecordbackupplanresponse_tmp end end @RequestId = params['RequestId'] end end # ListRecordBackupTemplates请求参数结构体 class ListRecordBackupTemplatesRequest < TencentCloud::Common::AbstractModel def initialize() end def deserialize(params) end end # 查询录像上云模板列表返回数据 class ListRecordBackupTemplatesResponse < TencentCloud::Common::AbstractModel # @param TemplateId: 模板ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type TemplateId: String # @param TemplateName: 模板名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type TemplateName: String # @param TimeSections: 上云时间段(按周进行设置,支持一天设置多个时间段,每个时间段不小于10分钟) # 注意:此字段可能返回 null,表示取不到有效值。 # @type TimeSections: Array # @param DevTimeSections: 录像时间段(按周进行设置,支持一天设置多个时间段,每个时间段不小于10分钟) # 注意:此字段可能返回 null,表示取不到有效值。 # @type DevTimeSections: Array # @param Scale: 上云倍速(支持1,2,4倍速) # 注意:此字段可能返回 null,表示取不到有效值。 # @type Scale: Integer # @param CreateAt: 创建时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CreateAt: String # @param UpdateAt: 更新时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type UpdateAt: String attr_accessor :TemplateId, :TemplateName, :TimeSections, :DevTimeSections, :Scale, :CreateAt, :UpdateAt def initialize(templateid=nil, templatename=nil, timesections=nil, devtimesections=nil, scale=nil, createat=nil, updateat=nil) @TemplateId = templateid @TemplateName = templatename @TimeSections = timesections @DevTimeSections = devtimesections @Scale = scale @CreateAt = createat @UpdateAt = updateat end def deserialize(params) @TemplateId = params['TemplateId'] @TemplateName = params['TemplateName'] unless params['TimeSections'].nil? @TimeSections = [] params['TimeSections'].each do |i| recordtemplatetimesections_tmp = RecordTemplateTimeSections.new recordtemplatetimesections_tmp.deserialize(i) @TimeSections << recordtemplatetimesections_tmp end end unless params['DevTimeSections'].nil? @DevTimeSections = [] params['DevTimeSections'].each do |i| recordtemplatetimesections_tmp = RecordTemplateTimeSections.new recordtemplatetimesections_tmp.deserialize(i) @DevTimeSections << recordtemplatetimesections_tmp end end @Scale = params['Scale'] @CreateAt = params['CreateAt'] @UpdateAt = params['UpdateAt'] end end # ListRecordPlanChannels请求参数结构体 class ListRecordPlanChannelsRequest < TencentCloud::Common::AbstractModel def initialize() end def deserialize(params) end end # 用户下所有实时上云计划中的通道id列表返回数据 class ListRecordPlanChannelsResponse < TencentCloud::Common::AbstractModel # @param List: 用户所有计划下通道id,存在通道是为数组格式,不存在时,字段数据为空 # 注意:此字段可能返回 null,表示取不到有效值。 # @type List: Array attr_accessor :List def initialize(list=nil) @List = list end def deserialize(params) @List = params['List'] end end # ListRecordPlanDevices请求参数结构体 class ListRecordPlanDevicesRequest < TencentCloud::Common::AbstractModel # @param PlanId: 上云计划ID # @type PlanId: String # @param PageSize: 每页最大数量 # @type PageSize: Integer # @param PageNumber: 第几页 # @type PageNumber: Integer # @param DeviceName: 按照设备名称查询,为空时,不参考该参数 # 通道名称、设备名称、组织名称同时只有一个有效,如果同时多个字段有值,按照通道名称、设备名称、组织名称的优先级顺序查询,如果都为空,则全量查询。长度不超过32字节 # @type DeviceName: String # @param ChannelName: 按照通道名称查询,为空时,不参考该参数 # 通道名称、设备名称、组织名称同时只有一个有效,如果同时多个字段有值,按照通道名称、设备名称、组织名称的优先级顺序查询,如果都为空,则全量查询。长度不超过32字节 # @type ChannelName: String # @param OrganizationName: 按照组织名称查询|,为空时,不参考该参数 # 通道名称、设备名称、组织名称同时只有一个有效,如果同时多个字段有值,按照通道名称、设备名称、组织名称的优先级顺序查询,如果都为空,则全量查询。长度不超过32字节 # @type OrganizationName: String attr_accessor :PlanId, :PageSize, :PageNumber, :DeviceName, :ChannelName, :OrganizationName def initialize(planid=nil, pagesize=nil, pagenumber=nil, devicename=nil, channelname=nil, organizationname=nil) @PlanId = planid @PageSize = pagesize @PageNumber = pagenumber @DeviceName = devicename @ChannelName = channelname @OrganizationName = organizationname end def deserialize(params) @PlanId = params['PlanId'] @PageSize = params['PageSize'] @PageNumber = params['PageNumber'] @DeviceName = params['DeviceName'] @ChannelName = params['ChannelName'] @OrganizationName = params['OrganizationName'] end end # 云计划下的设备通道列表返回数据 class ListRecordPlanDevicesResponse < TencentCloud::Common::AbstractModel # @param PageNumber: 第几页 # @type PageNumber: Integer # @param PageSize: 当前页的设备数量 # @type PageSize: Integer # @param TotalCount: 本次查询的设备通道总数 # @type TotalCount: Integer # @param List: 设备通道信息列表 # 注意:此字段可能返回 null,表示取不到有效值。 # @type List: Array attr_accessor :PageNumber, :PageSize, :TotalCount, :List def initialize(pagenumber=nil, pagesize=nil, totalcount=nil, list=nil) @PageNumber = pagenumber @PageSize = pagesize @TotalCount = totalcount @List = list end def deserialize(params) @PageNumber = params['PageNumber'] @PageSize = params['PageSize'] @TotalCount = params['TotalCount'] unless params['List'].nil? @List = [] params['List'].each do |i| recordplanchannelinfo_tmp = RecordPlanChannelInfo.new recordplanchannelinfo_tmp.deserialize(i) @List << recordplanchannelinfo_tmp end end end end # ListRecordPlans请求参数结构体 class ListRecordPlansRequest < TencentCloud::Common::AbstractModel def initialize() end def deserialize(params) end end # ListRecordPlans返回参数结构体 class ListRecordPlansResponse < TencentCloud::Common::AbstractModel # @param Data: 返回结果,存在计划时,为Json数组格式,不存在计划时,字段数据为空 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: Array # @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) unless params['Data'].nil? @Data = [] params['Data'].each do |i| recordplanbaseinfo_tmp = RecordPlanBaseInfo.new recordplanbaseinfo_tmp.deserialize(i) @Data << recordplanbaseinfo_tmp end end @RequestId = params['RequestId'] end end # ListRecordRetrieveTasks请求参数结构体 class ListRecordRetrieveTasksRequest < TencentCloud::Common::AbstractModel def initialize() end def deserialize(params) end end # ListRecordRetrieveTasks返回参数结构体 class ListRecordRetrieveTasksResponse < TencentCloud::Common::AbstractModel # @param Data: 返回结果 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: Array # @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) unless params['Data'].nil? @Data = [] params['Data'].each do |i| recordretrievetaskdetailsinfo_tmp = RecordRetrieveTaskDetailsInfo.new recordretrievetaskdetailsinfo_tmp.deserialize(i) @Data << recordretrievetaskdetailsinfo_tmp end end @RequestId = params['RequestId'] end end # ListRecordTemplates请求参数结构体 class ListRecordTemplatesRequest < TencentCloud::Common::AbstractModel def initialize() end def deserialize(params) end end # ListRecordTemplates返回参数结构体 class ListRecordTemplatesResponse < TencentCloud::Common::AbstractModel # @param Data: 返回结果,存在模板时,为Json数组格式,不存在模板时,字段数据为空 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: Array # @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) unless params['Data'].nil? @Data = [] params['Data'].each do |i| recordtemplateinfo_tmp = RecordTemplateInfo.new recordtemplateinfo_tmp.deserialize(i) @Data << recordtemplateinfo_tmp end end @RequestId = params['RequestId'] end end # AI识别结果在画面中坐标 class Location < TencentCloud::Common::AbstractModel # @param X: 左上角 X 坐标轴 # @type X: Integer # @param Y: 左上角 Y 坐标轴 # @type Y: Integer # @param Width: 方框宽 # @type Width: Integer # @param Height: 方框高 # @type Height: Integer attr_accessor :X, :Y, :Width, :Height def initialize(x=nil, y=nil, width=nil, height=nil) @X = x @Y = y @Width = width @Height = height end def deserialize(params) @X = params['X'] @Y = params['Y'] @Width = params['Width'] @Height = params['Height'] end end # AI分析的时间段配置 class OperTimeSlot < TencentCloud::Common::AbstractModel # @param Start: 开始时间。格式为"hh:mm:ss",且 Start 必须小于 End # @type Start: String # @param End: 结束时间。格式为"hh:mm:ss",且 Start 必须小于 End # @type End: String attr_accessor :Start, :End def initialize(start=nil, _end=nil) @Start = start @End = _end end def deserialize(params) @Start = params['Start'] @End = params['End'] end end # 组织目录下的通道信息 class OrganizationChannelInfo < TencentCloud::Common::AbstractModel # @param DeviceId: 设备通道所属的设备ID # @type DeviceId: String # @param DeviceName: 设备通道所属的设备名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type DeviceName: String # @param ChannelId: 设备通道ID # @type ChannelId: String # @param ChannelName: 设备通道名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ChannelName: String # @param InPlan: 该通道是否在上云计划中,如果是,则不能在添加到其他上云计划|true:在上云计划中,false:不在上云计划中 # @type InPlan: Boolean attr_accessor :DeviceId, :DeviceName, :ChannelId, :ChannelName, :InPlan def initialize(deviceid=nil, devicename=nil, channelid=nil, channelname=nil, inplan=nil) @DeviceId = deviceid @DeviceName = devicename @ChannelId = channelid @ChannelName = channelname @InPlan = inplan end def deserialize(params) @DeviceId = params['DeviceId'] @DeviceName = params['DeviceName'] @ChannelId = params['ChannelId'] @ChannelName = params['ChannelName'] @InPlan = params['InPlan'] end end # 宠物识别结果详情 class PetAIResultInfo < TencentCloud::Common::AbstractModel # @param Time: 时间字符串 # @type Time: String # @param Url: 截图 URL # @type Url: String # @param PetInfo: 宠物信息 # @type PetInfo: Array attr_accessor :Time, :Url, :PetInfo def initialize(time=nil, url=nil, petinfo=nil) @Time = time @Url = url @PetInfo = petinfo end def deserialize(params) @Time = params['Time'] @Url = params['Url'] unless params['PetInfo'].nil? @PetInfo = [] params['PetInfo'].each do |i| baseairesultinfo_tmp = BaseAIResultInfo.new baseairesultinfo_tmp.deserialize(i) @PetInfo << baseairesultinfo_tmp end end end end # 打电话识别结果详情 class PhoneCallAIResultInfo < TencentCloud::Common::AbstractModel # @param Time: 时间字符串 # @type Time: String # @param Url: 截图 URL # @type Url: String # @param PhoneCallInfo: 打电话信息 # @type PhoneCallInfo: Array attr_accessor :Time, :Url, :PhoneCallInfo def initialize(time=nil, url=nil, phonecallinfo=nil) @Time = time @Url = url @PhoneCallInfo = phonecallinfo end def deserialize(params) @Time = params['Time'] @Url = params['Url'] unless params['PhoneCallInfo'].nil? @PhoneCallInfo = [] params['PhoneCallInfo'].each do |i| baseairesultinfo_tmp = BaseAIResultInfo.new baseairesultinfo_tmp.deserialize(i) @PhoneCallInfo << baseairesultinfo_tmp end end end end # AI车牌信息 class PlateContent < TencentCloud::Common::AbstractModel # @param Plate: 车牌号信息 # @type Plate: String # @param Color: 车牌的颜色 # @type Color: String # @param Type: 车牌的种类,例如普通蓝牌 # @type Type: String # @param Location: 截图中坐标信息 # @type Location: :class:`Tencentcloud::Iss.v20230517.models.Location` attr_accessor :Plate, :Color, :Type, :Location def initialize(plate=nil, color=nil, type=nil, location=nil) @Plate = plate @Color = color @Type = type @Location = location end def deserialize(params) @Plate = params['Plate'] @Color = params['Color'] @Type = params['Type'] unless params['Location'].nil? @Location = Location.new @Location.deserialize(params['Location']) end end end # PlayRecord请求参数结构体 class PlayRecordRequest < TencentCloud::Common::AbstractModel # @param ChannelId: 通道 ID(从查询通道DescribeDeviceChannel接口中获取) # @type ChannelId: String # @param Start: 起始时间 # @type Start: Integer # @param End: 结束时间 # @type End: Integer # @param StreamType: 流类型(1:主码流;2:子码流(不可以和 Resolution 同时下发)) # @type StreamType: Integer # @param Resolution: 分辨率(1:QCIF;2:CIF; 3:4CIF; 4:D1; 5:720P; 6:1080P/I; 自定义的19201080等等(需设备支持)(不可以和 StreamType 同时下发)) # @type Resolution: String attr_accessor :ChannelId, :Start, :End, :StreamType, :Resolution def initialize(channelid=nil, start=nil, _end=nil, streamtype=nil, resolution=nil) @ChannelId = channelid @Start = start @End = _end @StreamType = streamtype @Resolution = resolution end def deserialize(params) @ChannelId = params['ChannelId'] @Start = params['Start'] @End = params['End'] @StreamType = params['StreamType'] @Resolution = params['Resolution'] end end # 本地录像播放url数据结构 class PlayRecordResponse < TencentCloud::Common::AbstractModel # @param Flv: 录像播放地址 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Flv: String attr_accessor :Flv def initialize(flv=nil) @Flv = flv end def deserialize(params) @Flv = params['Flv'] end end # 实时上云计划基础信息 class RecordPlanBaseInfo < TencentCloud::Common::AbstractModel # @param PlanId: 上云计划ID # @type PlanId: String # @param PlanName: 上云计划名称 # @type PlanName: String # @param TemplateId: 上云模板ID # @type TemplateId: String # @param Describe: 上云计划描述 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Describe: String # @param StreamType: 码流类型,default:设备默认码流类型,main:主码流,sub:子码流,其他根据设备能力集自定义 # 注意:此字段可能返回 null,表示取不到有效值。 # @type StreamType: String # @param LifeCycle: 云文件生命周期 # @type LifeCycle: :class:`Tencentcloud::Iss.v20230517.models.LifeCycleData` # @param Status: 录像计划状态,1:正常使用中,0:删除中,无法使用 # @type Status: Integer # @param ChannelCount: 通道总数 # @type ChannelCount: Integer attr_accessor :PlanId, :PlanName, :TemplateId, :Describe, :StreamType, :LifeCycle, :Status, :ChannelCount def initialize(planid=nil, planname=nil, templateid=nil, describe=nil, streamtype=nil, lifecycle=nil, status=nil, channelcount=nil) @PlanId = planid @PlanName = planname @TemplateId = templateid @Describe = describe @StreamType = streamtype @LifeCycle = lifecycle @Status = status @ChannelCount = channelcount end def deserialize(params) @PlanId = params['PlanId'] @PlanName = params['PlanName'] @TemplateId = params['TemplateId'] @Describe = params['Describe'] @StreamType = params['StreamType'] unless params['LifeCycle'].nil? @LifeCycle = LifeCycleData.new @LifeCycle.deserialize(params['LifeCycle']) end @Status = params['Status'] @ChannelCount = params['ChannelCount'] end end # 计划下的设备通道信息 class RecordPlanChannelInfo < TencentCloud::Common::AbstractModel # @param DeviceId: 设备通道所属的设备ID # @type DeviceId: String # @param DeviceName: 设备通道所属的设备名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type DeviceName: String # @param ChannelId: 设备通道ID # @type ChannelId: String # @param ChannelName: 设备通道名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ChannelName: String # @param OrganizationName: 所属组织名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type OrganizationName: String attr_accessor :DeviceId, :DeviceName, :ChannelId, :ChannelName, :OrganizationName def initialize(deviceid=nil, devicename=nil, channelid=nil, channelname=nil, organizationname=nil) @DeviceId = deviceid @DeviceName = devicename @ChannelId = channelid @ChannelName = channelname @OrganizationName = organizationname end def deserialize(params) @DeviceId = params['DeviceId'] @DeviceName = params['DeviceName'] @ChannelId = params['ChannelId'] @ChannelName = params['ChannelName'] @OrganizationName = params['OrganizationName'] end end # 实时上云计划添加和修改的返回数据 class RecordPlanOptResponse < TencentCloud::Common::AbstractModel # @param PlanId: 上云计划ID # @type PlanId: String # @param PlanName: 上云计划名称 # @type PlanName: String # @param TemplateId: 上云模板ID # @type TemplateId: String # @param Describe: 上云计划描述 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Describe: String # @param LifeCycle: 云文件生命周期 # @type LifeCycle: :class:`Tencentcloud::Iss.v20230517.models.LifeCycleData` # @param StreamType: 码流类型,default:设备默认码流类型,main:主码流,sub:子码流,其他根据设备能力集自定义 # 注意:此字段可能返回 null,表示取不到有效值。 # @type StreamType: String attr_accessor :PlanId, :PlanName, :TemplateId, :Describe, :LifeCycle, :StreamType def initialize(planid=nil, planname=nil, templateid=nil, describe=nil, lifecycle=nil, streamtype=nil) @PlanId = planid @PlanName = planname @TemplateId = templateid @Describe = describe @LifeCycle = lifecycle @StreamType = streamtype end def deserialize(params) @PlanId = params['PlanId'] @PlanName = params['PlanName'] @TemplateId = params['TemplateId'] @Describe = params['Describe'] unless params['LifeCycle'].nil? @LifeCycle = LifeCycleData.new @LifeCycle.deserialize(params['LifeCycle']) end @StreamType = params['StreamType'] end end # 云录像回放url class RecordPlaybackUrl < TencentCloud::Common::AbstractModel # @param Hls: hls回放url # @type Hls: String attr_accessor :Hls def initialize(hls=nil) @Hls = hls end def deserialize(params) @Hls = params['Hls'] end end # 取回任务通道信息 class RecordRetrieveTaskChannelInfo < TencentCloud::Common::AbstractModel # @param DeviceId: 设备通道所属的设备ID # @type DeviceId: String # @param DeviceName: 设备通道所属的设备名称 # @type DeviceName: String # @param ChannelId: 设备通道ID # @type ChannelId: String # @param ChannelName: 设备通道名称 # @type ChannelName: String # @param Status: 任务状态,0:已取回,1:取回中,2:待取回, 3:无归档录像 # @type Status: Integer attr_accessor :DeviceId, :DeviceName, :ChannelId, :ChannelName, :Status def initialize(deviceid=nil, devicename=nil, channelid=nil, channelname=nil, status=nil) @DeviceId = deviceid @DeviceName = devicename @ChannelId = channelid @ChannelName = channelname @Status = status end def deserialize(params) @DeviceId = params['DeviceId'] @DeviceName = params['DeviceName'] @ChannelId = params['ChannelId'] @ChannelName = params['ChannelName'] @Status = params['Status'] end end # 录像取回任务详情基础信息 class RecordRetrieveTaskDetailsInfo < TencentCloud::Common::AbstractModel # @param TaskId: 任务ID # @type TaskId: String # @param TaskName: 任务名称 # @type TaskName: String # @param StartTime: 取回录像的开始时间 # @type StartTime: Integer # @param EndTime: 取回录像的结束时间 # @type EndTime: Integer # @param Mode: 取回模式,1:极速模式,其他暂不支持 # @type Mode: Integer # @param Expiration: 副本有效期 # @type Expiration: Integer # @param Status: 任务状态, 0:已取回,1:取回中,2:待取回 # @type Status: Integer # @param Capacity: 取回容量,单位MB # @type Capacity: Integer # @param Describe: 任务描述 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Describe: String # @param ChannelCount: 任务通道数量 # @type ChannelCount: Integer attr_accessor :TaskId, :TaskName, :StartTime, :EndTime, :Mode, :Expiration, :Status, :Capacity, :Describe, :ChannelCount def initialize(taskid=nil, taskname=nil, starttime=nil, endtime=nil, mode=nil, expiration=nil, status=nil, capacity=nil, describe=nil, channelcount=nil) @TaskId = taskid @TaskName = taskname @StartTime = starttime @EndTime = endtime @Mode = mode @Expiration = expiration @Status = status @Capacity = capacity @Describe = describe @ChannelCount = channelcount end def deserialize(params) @TaskId = params['TaskId'] @TaskName = params['TaskName'] @StartTime = params['StartTime'] @EndTime = params['EndTime'] @Mode = params['Mode'] @Expiration = params['Expiration'] @Status = params['Status'] @Capacity = params['Capacity'] @Describe = params['Describe'] @ChannelCount = params['ChannelCount'] end end # 实时上云模板信息数据 class RecordTemplateInfo < TencentCloud::Common::AbstractModel # @param TemplateId: 模板ID # @type TemplateId: String # @param TemplateName: 模板名称 # @type TemplateName: String # @param TimeSections: 上云时间段,按周进行设置,支持一天设置多个时间段,每个时间段不小于10分钟 # @type TimeSections: Array attr_accessor :TemplateId, :TemplateName, :TimeSections def initialize(templateid=nil, templatename=nil, timesections=nil) @TemplateId = templateid @TemplateName = templatename @TimeSections = timesections end def deserialize(params) @TemplateId = params['TemplateId'] @TemplateName = params['TemplateName'] unless params['TimeSections'].nil? @TimeSections = [] params['TimeSections'].each do |i| recordtemplatetimesections_tmp = RecordTemplateTimeSections.new recordtemplatetimesections_tmp.deserialize(i) @TimeSections << recordtemplatetimesections_tmp end end end end # 上云模板的时间片段数据格式 class RecordTemplateTimeSections < TencentCloud::Common::AbstractModel # @param DayOfWeek: 周日期,取值范围1~7(对应周一~周日 # @type DayOfWeek: Integer # @param StartTime: 开始时间,格式:HH:MM:SS,范围:[00:00:00~23:59:59] # @type StartTime: String # @param EndTime: 结束时间,格式:HH:MM:SS,范围:[00:00:00~23:59:59] # @type EndTime: String attr_accessor :DayOfWeek, :StartTime, :EndTime def initialize(dayofweek=nil, starttime=nil, endtime=nil) @DayOfWeek = dayofweek @StartTime = starttime @EndTime = endtime end def deserialize(params) @DayOfWeek = params['DayOfWeek'] @StartTime = params['StartTime'] @EndTime = params['EndTime'] end end # 云录像时间片段 class RecordTimeLine < TencentCloud::Common::AbstractModel # @param Begin: 时间片段开始时间,UTC秒数,例如:1662114146 # @type Begin: Integer # @param End: 时间片段结束时间,UTC秒数,例如:1662114146 # @type End: Integer attr_accessor :Begin, :End def initialize(_begin=nil, _end=nil) @Begin = _begin @End = _end end def deserialize(params) @Begin = params['Begin'] @End = params['End'] end end # RefreshDeviceChannel请求参数结构体 class RefreshDeviceChannelRequest < TencentCloud::Common::AbstractModel # @param DeviceId: 设备 ID(从获取设备列表ListDevices接口中获取) # @type DeviceId: String attr_accessor :DeviceId def initialize(deviceid=nil) @DeviceId = deviceid end def deserialize(params) @DeviceId = params['DeviceId'] end end # RefreshDeviceChannel返回参数结构体 class RefreshDeviceChannelResponse < 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 SmokingAIResultInfo < TencentCloud::Common::AbstractModel # @param Time: 时间字符串 # @type Time: String # @param Url: 截图 URL # @type Url: String # @param SmokingInfo: 抽烟信息 # @type SmokingInfo: Array attr_accessor :Time, :Url, :SmokingInfo def initialize(time=nil, url=nil, smokinginfo=nil) @Time = time @Url = url @SmokingInfo = smokinginfo end def deserialize(params) @Time = params['Time'] @Url = params['Url'] unless params['SmokingInfo'].nil? @SmokingInfo = [] params['SmokingInfo'].each do |i| baseairesultinfo_tmp = BaseAIResultInfo.new baseairesultinfo_tmp.deserialize(i) @SmokingInfo << baseairesultinfo_tmp end end end end # 截图配置 class SnapshotConfig < TencentCloud::Common::AbstractModel # @param TimeInterval: 截图频率。可选值1~20秒 # @type TimeInterval: Integer # @param OperTimeSlot: 模板生效的时间段。最多包含5组时间段 # @type OperTimeSlot: Array attr_accessor :TimeInterval, :OperTimeSlot def initialize(timeinterval=nil, opertimeslot=nil) @TimeInterval = timeinterval @OperTimeSlot = opertimeslot end def deserialize(params) @TimeInterval = params['TimeInterval'] unless params['OperTimeSlot'].nil? @OperTimeSlot = [] params['OperTimeSlot'].each do |i| opertimeslot_tmp = OperTimeSlot.new opertimeslot_tmp.deserialize(i) @OperTimeSlot << opertimeslot_tmp end end end end # 时间片段结构体 class Timeline < TencentCloud::Common::AbstractModel # @param Begin: 分片起始时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Begin: Integer # @param End: 分片结束时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type End: Integer attr_accessor :Begin, :End def initialize(_begin=nil, _end=nil) @Begin = _begin @End = _end end def deserialize(params) @Begin = params['Begin'] @End = params['End'] end end # UpdateAITask请求参数结构体 class UpdateAITaskRequest < TencentCloud::Common::AbstractModel # @param TaskId: AI 任务 ID # @type TaskId: String # @param Name: AI 任务名称。仅支持中文、英文、数字、_、-,长度不超过32个字符 # @type Name: String # @param Desc: AI 任务描述。仅支持中文、英文、数字、_、-,长度不超过128个字符 # @type Desc: String # @param ChannelList: 通道 ID 列表。不能添加存在于其他 AI 任务的通道,限制1000个通道。 # @type ChannelList: Array # @param CallbackUrl: AI 结果回调地址。类似 "http://ip:port/xxx或者https://domain/xxx # @type CallbackUrl: String # @param IsStartTheTask: 是否立即开启 AI 任务。"true"代表立即开启 AI 任务,"false"代表暂不开启 AI 任务,默认为 false。 # @type IsStartTheTask: Boolean # @param Templates: AI 配置列表 # @type Templates: Array attr_accessor :TaskId, :Name, :Desc, :ChannelList, :CallbackUrl, :IsStartTheTask, :Templates def initialize(taskid=nil, name=nil, desc=nil, channellist=nil, callbackurl=nil, isstartthetask=nil, templates=nil) @TaskId = taskid @Name = name @Desc = desc @ChannelList = channellist @CallbackUrl = callbackurl @IsStartTheTask = isstartthetask @Templates = templates end def deserialize(params) @TaskId = params['TaskId'] @Name = params['Name'] @Desc = params['Desc'] @ChannelList = params['ChannelList'] @CallbackUrl = params['CallbackUrl'] @IsStartTheTask = params['IsStartTheTask'] unless params['Templates'].nil? @Templates = [] params['Templates'].each do |i| aitemplates_tmp = AITemplates.new aitemplates_tmp.deserialize(i) @Templates << aitemplates_tmp end end end end # UpdateAITask返回参数结构体 class UpdateAITaskResponse < TencentCloud::Common::AbstractModel # @param Data: AI任务信息 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Data: :class:`Tencentcloud::Iss.v20230517.models.AITaskInfo` # @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) unless params['Data'].nil? @Data = AITaskInfo.new @Data.deserialize(params['Data']) end @RequestId = params['RequestId'] end end # UpdateAITaskStatus请求参数结构体 class UpdateAITaskStatusRequest < TencentCloud::Common::AbstractModel # @param TaskId: AI 任务 ID # @type TaskId: String # @param Status: AI 任务状态。"on"代表开启了 AI 分析任务,"off"代表停止AI分析任务 # @type Status: String attr_accessor :TaskId, :Status def initialize(taskid=nil, status=nil) @TaskId = taskid @Status = status end def deserialize(params) @TaskId = params['TaskId'] @Status = params['Status'] end end # UpdateAITaskStatus返回参数结构体 class UpdateAITaskStatusResponse < 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 # UpdateDeviceOrganization请求参数结构体 class UpdateDeviceOrganizationRequest < TencentCloud::Common::AbstractModel # @param DeviceIds: 设备 ID 数组(从获取设备列表接口ListDevices中获取) # @type DeviceIds: Array # @param OrganizationId: 组织 ID(从查询组织接口DescribeOrganization中获取) # @type OrganizationId: String attr_accessor :DeviceIds, :OrganizationId def initialize(deviceids=nil, organizationid=nil) @DeviceIds = deviceids @OrganizationId = organizationid end def deserialize(params) @DeviceIds = params['DeviceIds'] @OrganizationId = params['OrganizationId'] end end # UpdateDeviceOrganization返回参数结构体 class UpdateDeviceOrganizationResponse < 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 UpdateDeviceResponse < TencentCloud::Common::AbstractModel # @param DeviceId: 设备ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type DeviceId: String # @param Code: 设备编码(即我们为设备生成的20位国标编码) # 注意:此字段可能返回 null,表示取不到有效值。 # @type Code: String # @param Name: 设备名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Name: String # @param AccessProtocol: 设备接入协议,1:RTMP,2:GB,3:GW # 注意:此字段可能返回 null,表示取不到有效值。 # @type AccessProtocol: Integer # @param Type: 设备类型,1:IPC,2:NVR # 注意:此字段可能返回 null,表示取不到有效值。 # @type Type: Integer # @param ClusterId: 设备接入服务节点ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type ClusterId: String # @param ClusterName: 设备接入服务节点名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ClusterName: String # @param TransportProtocol: 设备流传输协议,1:UDP,2:TCP # 注意:此字段可能返回 null,表示取不到有效值。 # @type TransportProtocol: Integer # @param Password: 设备密码 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Password: String # @param Description: 设备描述 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Description: String # @param Status: 设备状态,0:未注册,1:在线,2:离线,3:禁用 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Status: Integer # @param OrganizationId: 设备所属组织ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type OrganizationId: Integer # @param GatewayId: 设备接入网关ID,从查询网关列表接口中获取(仅网关接入需要) # 注意:此字段可能返回 null,表示取不到有效值。 # @type GatewayId: String # @param ProtocolType: 网关接入协议类型,1.海康SDK,2.大华SDK,3.宇视SDK,4.Onvif(仅网关接入需要) # 注意:此字段可能返回 null,表示取不到有效值。 # @type ProtocolType: Integer # @param Ip: 设备接入IP # 注意:此字段可能返回 null,表示取不到有效值。 # @type Ip: String # @param Port: 设备Port # 注意:此字段可能返回 null,表示取不到有效值。 # @type Port: Integer # @param Username: 设备用户名 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Username: String # @param AppId: 用户Id # 注意:此字段可能返回 null,表示取不到有效值。 # @type AppId: Integer attr_accessor :DeviceId, :Code, :Name, :AccessProtocol, :Type, :ClusterId, :ClusterName, :TransportProtocol, :Password, :Description, :Status, :OrganizationId, :GatewayId, :ProtocolType, :Ip, :Port, :Username, :AppId def initialize(deviceid=nil, code=nil, name=nil, accessprotocol=nil, type=nil, clusterid=nil, clustername=nil, transportprotocol=nil, password=nil, description=nil, status=nil, organizationid=nil, gatewayid=nil, protocoltype=nil, ip=nil, port=nil, username=nil, appid=nil) @DeviceId = deviceid @Code = code @Name = name @AccessProtocol = accessprotocol @Type = type @ClusterId = clusterid @ClusterName = clustername @TransportProtocol = transportprotocol @Password = password @Description = description @Status = status @OrganizationId = organizationid @GatewayId = gatewayid @ProtocolType = protocoltype @Ip = ip @Port = port @Username = username @AppId = appid end def deserialize(params) @DeviceId = params['DeviceId'] @Code = params['Code'] @Name = params['Name'] @AccessProtocol = params['AccessProtocol'] @Type = params['Type'] @ClusterId = params['ClusterId'] @ClusterName = params['ClusterName'] @TransportProtocol = params['TransportProtocol'] @Password = params['Password'] @Description = params['Description'] @Status = params['Status'] @OrganizationId = params['OrganizationId'] @GatewayId = params['GatewayId'] @ProtocolType = params['ProtocolType'] @Ip = params['Ip'] @Port = params['Port'] @Username = params['Username'] @AppId = params['AppId'] end end # UpdateDeviceStatus请求参数结构体 class UpdateDeviceStatusRequest < TencentCloud::Common::AbstractModel # @param DeviceId: 设备 ID(从获取设备列表接口ListDevices中获取) # @type DeviceId: String # @param Status: 禁用启用状态码(2:启用,3:禁用) # @type Status: Integer attr_accessor :DeviceId, :Status def initialize(deviceid=nil, status=nil) @DeviceId = deviceid @Status = status end def deserialize(params) @DeviceId = params['DeviceId'] @Status = params['Status'] end end # UpdateDeviceStatus返回参数结构体 class UpdateDeviceStatusResponse < 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 # UpdateGateway请求参数结构体 class UpdateGatewayRequest < TencentCloud::Common::AbstractModel # @param GatewayId: 网关索引ID(从获取网关列表ListGateways接口中获取) # @type GatewayId: String # @param Name: 仅支持中文、英文、数网关名称,字、_、-,长度不超过32个字符 # @type Name: String # @param Description: 网关描述,仅支持中文、英文、数字、_、-,长度不超过128个字符 # @type Description: String attr_accessor :GatewayId, :Name, :Description def initialize(gatewayid=nil, name=nil, description=nil) @GatewayId = gatewayid @Name = name @Description = description end def deserialize(params) @GatewayId = params['GatewayId'] @Name = params['Name'] @Description = params['Description'] end end # 修改网关信息返回结果 class UpdateGatewayResponse < TencentCloud::Common::AbstractModel # @param GatewayId: 网关索引ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type GatewayId: String # @param GwId: 网关编码 # 注意:此字段可能返回 null,表示取不到有效值。 # @type GwId: String # @param Name: 网关名称,仅支持中文、英文、数字、_、-,长度不超过32个字符 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Name: String # @param Description: 网关描述,仅支持中文、英文、数字、_、-,长度不超过128个字符 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Description: String # @param ClusterId: 服务节点ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type ClusterId: String # @param ClusterName: 服务节点名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ClusterName: String # @param Status: 网关状态,0:离线,1:在线 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Status: Integer # @param CreatedAt: 激活时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CreatedAt: Integer # @param Secret: 网关密钥 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Secret: String # @param Version: 网关版本信息 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Version: String attr_accessor :GatewayId, :GwId, :Name, :Description, :ClusterId, :ClusterName, :Status, :CreatedAt, :Secret, :Version def initialize(gatewayid=nil, gwid=nil, name=nil, description=nil, clusterid=nil, clustername=nil, status=nil, createdat=nil, secret=nil, version=nil) @GatewayId = gatewayid @GwId = gwid @Name = name @Description = description @ClusterId = clusterid @ClusterName = clustername @Status = status @CreatedAt = createdat @Secret = secret @Version = version end def deserialize(params) @GatewayId = params['GatewayId'] @GwId = params['GwId'] @Name = params['Name'] @Description = params['Description'] @ClusterId = params['ClusterId'] @ClusterName = params['ClusterName'] @Status = params['Status'] @CreatedAt = params['CreatedAt'] @Secret = params['Secret'] @Version = params['Version'] end end # 修改组织接口返回数据 class UpdateOrgResponse < TencentCloud::Common::AbstractModel # @param OrganizationId: 组织 ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type OrganizationId: String # @param Name: 组织名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Name: String # @param ParentId: 组织父节点 ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type ParentId: String # @param Level: 组织层级 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Level: Integer # @param AppId: 用户ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type AppId: Integer # @param ParentIds: 组织结构 # 注意:此字段可能返回 null,表示取不到有效值。 # @type ParentIds: String # @param Total: 设备总数 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Total: Integer # @param Online: 设备在线数量 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Online: Integer attr_accessor :OrganizationId, :Name, :ParentId, :Level, :AppId, :ParentIds, :Total, :Online def initialize(organizationid=nil, name=nil, parentid=nil, level=nil, appid=nil, parentids=nil, total=nil, online=nil) @OrganizationId = organizationid @Name = name @ParentId = parentid @Level = level @AppId = appid @ParentIds = parentids @Total = total @Online = online end def deserialize(params) @OrganizationId = params['OrganizationId'] @Name = params['Name'] @ParentId = params['ParentId'] @Level = params['Level'] @AppId = params['AppId'] @ParentIds = params['ParentIds'] @Total = params['Total'] @Online = params['Online'] end end # UpdateOrganization请求参数结构体 class UpdateOrganizationRequest < TencentCloud::Common::AbstractModel # @param OrganizationId: 组织ID(从查询组织接口DescribeOrganization中获取) # @type OrganizationId: String # @param Name: 组织名称 # @type Name: String attr_accessor :OrganizationId, :Name def initialize(organizationid=nil, name=nil) @OrganizationId = organizationid @Name = name end def deserialize(params) @OrganizationId = params['OrganizationId'] @Name = params['Name'] end end # UpdateOrganization返回参数结构体 class UpdateOrganizationResponse < TencentCloud::Common::AbstractModel # @param Data: 返回结果 # @type Data: :class:`Tencentcloud::Iss.v20230517.models.UpdateOrgResponse` # @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) unless params['Data'].nil? @Data = UpdateOrgResponse.new @Data.deserialize(params['Data']) end @RequestId = params['RequestId'] end end # 修改录像上云计划数据结构 class UpdateRecordBackupPlanModify < TencentCloud::Common::AbstractModel # @param PlanName: 录像计划名称(仅支持中文、英文、数字、_、-,长度不超过32个字符,计划名称全局唯一,不能为空,不能重复,不修改名称时,不需要该字段) # @type PlanName: String # @param TemplateId: 录制模板ID(从查询录像上云模板列表接口ListRecordBackupTemplates中获取,不修改模板ID时,不需要该字段) # @type TemplateId: String # @param Describe: 录像计划描述(仅支持中文、英文、数字、_、-,长度不超过128个字符, 不修改描述时,不需要该字段) # @type Describe: String # @param LifeCycle: 生命周期(录像文件生命周期设置,管理文件冷、热存储的时间,不修改生命周期时,不需要该字段) # @type LifeCycle: :class:`Tencentcloud::Iss.v20230517.models.LifeCycleData` # @param Add: 要新增的设备通道(Json数组,没有新增时,不需要该字段,一次添加通道总数不超过5000个,包括组织目录下的通道数量) # @type Add: String # @param Del: 要删除的设备通道(Json数组,内容为要删除的设备通道id,没有删除设备通道时,不需要该字段) # @type Del: String # @param OrganizationId: 添加组织目录下所有设备通道(Json数组,可以为空,并且通道总数量不超过5000个(包括Add字段通道数量)) # @type OrganizationId: String attr_accessor :PlanName, :TemplateId, :Describe, :LifeCycle, :Add, :Del, :OrganizationId def initialize(planname=nil, templateid=nil, describe=nil, lifecycle=nil, add=nil, del=nil, organizationid=nil) @PlanName = planname @TemplateId = templateid @Describe = describe @LifeCycle = lifecycle @Add = add @Del = del @OrganizationId = organizationid end def deserialize(params) @PlanName = params['PlanName'] @TemplateId = params['TemplateId'] @Describe = params['Describe'] unless params['LifeCycle'].nil? @LifeCycle = LifeCycleData.new @LifeCycle.deserialize(params['LifeCycle']) end @Add = params['Add'] @Del = params['Del'] @OrganizationId = params['OrganizationId'] end end # UpdateRecordBackupPlan请求参数结构体 class UpdateRecordBackupPlanRequest < TencentCloud::Common::AbstractModel # @param PlanId: 计划ID # @type PlanId: String # @param Mod: 修改的内容 # @type Mod: :class:`Tencentcloud::Iss.v20230517.models.UpdateRecordBackupPlanModify` attr_accessor :PlanId, :Mod def initialize(planid=nil, mod=nil) @PlanId = planid @Mod = mod end def deserialize(params) @PlanId = params['PlanId'] unless params['Mod'].nil? @Mod = UpdateRecordBackupPlanModify.new @Mod.deserialize(params['Mod']) end end end # 修改录像上云计划返回数据 class UpdateRecordBackupPlanResponse < TencentCloud::Common::AbstractModel # @param PlanId: 录像上云计划ID # @type PlanId: String # @param PlanName: 录像上云计划名称 # @type PlanName: String # @param TemplateId: 录像上云模板ID # @type TemplateId: String # @param Describe: 录像上云计划描述 # @type Describe: String # @param LifeCycle: 云文件生命周期 # @type LifeCycle: :class:`Tencentcloud::Iss.v20230517.models.LifeCycleData` # @param Status: 录像上云计划状态,1:正常使用中,0:删除中,无法使用 # @type Status: Integer # @param ChannelCount: 通道数量 # @type ChannelCount: Integer # @param CreateAt: 创建时间 # @type CreateAt: String # @param UpdateAt: 修改时间 # @type UpdateAt: String attr_accessor :PlanId, :PlanName, :TemplateId, :Describe, :LifeCycle, :Status, :ChannelCount, :CreateAt, :UpdateAt def initialize(planid=nil, planname=nil, templateid=nil, describe=nil, lifecycle=nil, status=nil, channelcount=nil, createat=nil, updateat=nil) @PlanId = planid @PlanName = planname @TemplateId = templateid @Describe = describe @LifeCycle = lifecycle @Status = status @ChannelCount = channelcount @CreateAt = createat @UpdateAt = updateat end def deserialize(params) @PlanId = params['PlanId'] @PlanName = params['PlanName'] @TemplateId = params['TemplateId'] @Describe = params['Describe'] unless params['LifeCycle'].nil? @LifeCycle = LifeCycleData.new @LifeCycle.deserialize(params['LifeCycle']) end @Status = params['Status'] @ChannelCount = params['ChannelCount'] @CreateAt = params['CreateAt'] @UpdateAt = params['UpdateAt'] end end # 修改录像上云模板数据结构 class UpdateRecordBackupTemplateModify < TencentCloud::Common::AbstractModel # @param TemplateName: 模板名称(不修改名称时,不需要带该字段) # @type TemplateName: String # @param TimeSections: 上云时间段(按周进行设置,支持一天设置多个时间段,每个时间段不小于10分钟) # @type TimeSections: Array # @param DevTimeSections: 录像时间段(按周进行设置,支持一天设置多个时间段,每个时间段不小于10分钟) # @type DevTimeSections: Array # @param Scale: 上云倍速(支持1,2,4倍速) # @type Scale: Integer attr_accessor :TemplateName, :TimeSections, :DevTimeSections, :Scale def initialize(templatename=nil, timesections=nil, devtimesections=nil, scale=nil) @TemplateName = templatename @TimeSections = timesections @DevTimeSections = devtimesections @Scale = scale end def deserialize(params) @TemplateName = params['TemplateName'] unless params['TimeSections'].nil? @TimeSections = [] params['TimeSections'].each do |i| recordtemplatetimesections_tmp = RecordTemplateTimeSections.new recordtemplatetimesections_tmp.deserialize(i) @TimeSections << recordtemplatetimesections_tmp end end unless params['DevTimeSections'].nil? @DevTimeSections = [] params['DevTimeSections'].each do |i| recordtemplatetimesections_tmp = RecordTemplateTimeSections.new recordtemplatetimesections_tmp.deserialize(i) @DevTimeSections << recordtemplatetimesections_tmp end end @Scale = params['Scale'] end end # UpdateRecordBackupTemplate请求参数结构体 class UpdateRecordBackupTemplateRequest < TencentCloud::Common::AbstractModel # @param TemplateId: 模板ID(从查询录像上云模板列表接口ListRecordBackupTemplates中获取) # @type TemplateId: String # @param Mod: 修改录像上云模板数据 # @type Mod: :class:`Tencentcloud::Iss.v20230517.models.UpdateRecordBackupTemplateModify` attr_accessor :TemplateId, :Mod def initialize(templateid=nil, mod=nil) @TemplateId = templateid @Mod = mod end def deserialize(params) @TemplateId = params['TemplateId'] unless params['Mod'].nil? @Mod = UpdateRecordBackupTemplateModify.new @Mod.deserialize(params['Mod']) end end end # 修改录像上云模版返回数据 class UpdateRecordBackupTemplateResponse < TencentCloud::Common::AbstractModel # @param TemplateId: 模板ID # 注意:此字段可能返回 null,表示取不到有效值。 # @type TemplateId: String # @param TemplateName: 模板名称 # 注意:此字段可能返回 null,表示取不到有效值。 # @type TemplateName: String # @param TimeSections: 上云时间段(按周进行设置,支持一天设置多个时间段,每个时间段不小于10分钟) # 注意:此字段可能返回 null,表示取不到有效值。 # @type TimeSections: Array # @param DevTimeSections: 录像时间段(按周进行设置,支持一天设置多个时间段,每个时间段不小于10分钟) # 注意:此字段可能返回 null,表示取不到有效值。 # @type DevTimeSections: Array # @param Scale: 上云倍速(支持1,2,4倍速) # 注意:此字段可能返回 null,表示取不到有效值。 # @type Scale: Integer # @param CreateAt: 创建时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type CreateAt: String # @param UpdateAt: 更新时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type UpdateAt: String attr_accessor :TemplateId, :TemplateName, :TimeSections, :DevTimeSections, :Scale, :CreateAt, :UpdateAt def initialize(templateid=nil, templatename=nil, timesections=nil, devtimesections=nil, scale=nil, createat=nil, updateat=nil) @TemplateId = templateid @TemplateName = templatename @TimeSections = timesections @DevTimeSections = devtimesections @Scale = scale @CreateAt = createat @UpdateAt = updateat end def deserialize(params) @TemplateId = params['TemplateId'] @TemplateName = params['TemplateName'] unless params['TimeSections'].nil? @TimeSections = [] params['TimeSections'].each do |i| recordtemplatetimesections_tmp = RecordTemplateTimeSections.new recordtemplatetimesections_tmp.deserialize(i) @TimeSections << recordtemplatetimesections_tmp end end unless params['DevTimeSections'].nil? @DevTimeSections = [] params['DevTimeSections'].each do |i| recordtemplatetimesections_tmp = RecordTemplateTimeSections.new recordtemplatetimesections_tmp.deserialize(i) @DevTimeSections << recordtemplatetimesections_tmp end end @Scale = params['Scale'] @CreateAt = params['CreateAt'] @UpdateAt = params['UpdateAt'] end end # 修改实时上云录像计划的数据 class UpdateRecordPlanData < TencentCloud::Common::AbstractModel # @param PlanName: 上云计划名称,仅支持中文、英文、数字、_、-,长度不超过32个字符,计划名称全局唯一,不能为空,不能重复,不修改名称时,不需要该字段 # @type PlanName: String # @param TemplateId: 上云模板ID,不修改模板ID时,不需要该字段 # @type TemplateId: String # @param Describe: 上云计划描述,仅支持中文、英文、数字、_、-,长度不超过128个字符, 不修改描述时,不需要该字段 # @type Describe: String # @param StreamType: 码流类型,default:不指定码流类型,以设备默认推送类型为主, main:主码流,sub:子码流,其他根据设备能力集自定义,长度不能超过32个字节 # @type StreamType: String # @param LifeCycle: 生命周期,文件生命周期设置,管理文件冷、热存储的时间,不修改生命周期时,不需要该字段 # @type LifeCycle: :class:`Tencentcloud::Iss.v20230517.models.LifeCycleData` # @param Add: 要新增的设备通道,Json数组,没有新增时,不需要该字段,一次添加通道总数不超过5000个,包括组织目录下的通道数量 # @type Add: Array # @param Del: 要删除的设备通道,Json数组,内容为要删除的设备通道id,没有删除设备通道时,不需要该字段 # @type Del: Array # @param OrganizationId: 组织目录ID,添加组织目录下所有设备通道,Json数组,可以为空,并且通道总数量不超过5000个(包括Add字段通道数量) # @type OrganizationId: Array attr_accessor :PlanName, :TemplateId, :Describe, :StreamType, :LifeCycle, :Add, :Del, :OrganizationId def initialize(planname=nil, templateid=nil, describe=nil, streamtype=nil, lifecycle=nil, add=nil, del=nil, organizationid=nil) @PlanName = planname @TemplateId = templateid @Describe = describe @StreamType = streamtype @LifeCycle = lifecycle @Add = add @Del = del @OrganizationId = organizationid end def deserialize(params) @PlanName = params['PlanName'] @TemplateId = params['TemplateId'] @Describe = params['Describe'] @StreamType = params['StreamType'] unless params['LifeCycle'].nil? @LifeCycle = LifeCycleData.new @LifeCycle.deserialize(params['LifeCycle']) end unless params['Add'].nil? @Add = [] params['Add'].each do |i| channelinfo_tmp = ChannelInfo.new channelinfo_tmp.deserialize(i) @Add << channelinfo_tmp end end @Del = params['Del'] @OrganizationId = params['OrganizationId'] end end # UpdateRecordPlan请求参数结构体 class UpdateRecordPlanRequest < TencentCloud::Common::AbstractModel # @param PlanId: 计划ID # @type PlanId: String # @param Mod: 修改计划的内容 # @type Mod: :class:`Tencentcloud::Iss.v20230517.models.UpdateRecordPlanData` attr_accessor :PlanId, :Mod def initialize(planid=nil, mod=nil) @PlanId = planid @Mod = mod end def deserialize(params) @PlanId = params['PlanId'] unless params['Mod'].nil? @Mod = UpdateRecordPlanData.new @Mod.deserialize(params['Mod']) end end end # UpdateRecordPlan返回参数结构体 class UpdateRecordPlanResponse < TencentCloud::Common::AbstractModel # @param Data: 返回结果 # @type Data: :class:`Tencentcloud::Iss.v20230517.models.RecordPlanOptResponse` # @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) unless params['Data'].nil? @Data = RecordPlanOptResponse.new @Data.deserialize(params['Data']) end @RequestId = params['RequestId'] end end # 修改实时上云模板的请求数据结构 class UpdateRecordTemplateData < TencentCloud::Common::AbstractModel # @param TemplateName: 模板名称, 不修改名称时,不需要带该字段 # @type TemplateName: String # @param TimeSections: 上云时间段,不修改名称时,不需要带该字段 # @type TimeSections: Array attr_accessor :TemplateName, :TimeSections def initialize(templatename=nil, timesections=nil) @TemplateName = templatename @TimeSections = timesections end def deserialize(params) @TemplateName = params['TemplateName'] unless params['TimeSections'].nil? @TimeSections = [] params['TimeSections'].each do |i| recordtemplatetimesections_tmp = RecordTemplateTimeSections.new recordtemplatetimesections_tmp.deserialize(i) @TimeSections << recordtemplatetimesections_tmp end end end end # UpdateRecordTemplate请求参数结构体 class UpdateRecordTemplateRequest < TencentCloud::Common::AbstractModel # @param TemplateId: 模板ID # @type TemplateId: String # @param Mod: 修改内容 # @type Mod: :class:`Tencentcloud::Iss.v20230517.models.UpdateRecordTemplateData` attr_accessor :TemplateId, :Mod def initialize(templateid=nil, mod=nil) @TemplateId = templateid @Mod = mod end def deserialize(params) @TemplateId = params['TemplateId'] unless params['Mod'].nil? @Mod = UpdateRecordTemplateData.new @Mod.deserialize(params['Mod']) end end end # UpdateRecordTemplate返回参数结构体 class UpdateRecordTemplateResponse < TencentCloud::Common::AbstractModel # @param Data: 返回结果 # @type Data: :class:`Tencentcloud::Iss.v20230517.models.RecordTemplateInfo` # @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) unless params['Data'].nil? @Data = RecordTemplateInfo.new @Data.deserialize(params['Data']) end @RequestId = params['RequestId'] end end # UpdateUserDevice请求参数结构体 class UpdateUserDeviceRequest < TencentCloud::Common::AbstractModel # @param DeviceId: 设备ID(从获取设备列表接口ListDevices中获取) # @type DeviceId: String # @param Name: 设备名称(仅支持中文、英文、数字、_、-,长度不超过32个字符) # @type Name: String # @param TransportProtocol: 设备流传输协议,仅国标设备有效,填0则不做更改(1:UDP,2:TCP) # @type TransportProtocol: Integer # @param Password: 设备密码(仅国标,网关设备支持) # @type Password: String # @param Description: 设备描述(仅支持中文、英文、数字、_、-,长度不超过128位) # @type Description: String # @param Ip: 设备接入Ip(仅网关接入支持) # @type Ip: String # @param Port: 设备Port(仅网关接入支持) # @type Port: Integer # @param Username: 设备用户名(仅网关接入支持) # @type Username: String attr_accessor :DeviceId, :Name, :TransportProtocol, :Password, :Description, :Ip, :Port, :Username def initialize(deviceid=nil, name=nil, transportprotocol=nil, password=nil, description=nil, ip=nil, port=nil, username=nil) @DeviceId = deviceid @Name = name @TransportProtocol = transportprotocol @Password = password @Description = description @Ip = ip @Port = port @Username = username end def deserialize(params) @DeviceId = params['DeviceId'] @Name = params['Name'] @TransportProtocol = params['TransportProtocol'] @Password = params['Password'] @Description = params['Description'] @Ip = params['Ip'] @Port = params['Port'] @Username = params['Username'] end end # UpdateUserDevice返回参数结构体 class UpdateUserDeviceResponse < TencentCloud::Common::AbstractModel # @param Data: 返回数据 # @type Data: :class:`Tencentcloud::Iss.v20230517.models.UpdateDeviceResponse` # @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) unless params['Data'].nil? @Data = UpdateDeviceResponse.new @Data.deserialize(params['Data']) end @RequestId = params['RequestId'] end end # UpgradeGateway请求参数结构体 class UpgradeGatewayRequest < TencentCloud::Common::AbstractModel # @param GatewayId: 网关索引ID(从获取网关列表ListGateways接口中获取) # @type GatewayId: String attr_accessor :GatewayId def initialize(gatewayid=nil) @GatewayId = gatewayid end def deserialize(params) @GatewayId = params['GatewayId'] end end # UpgradeGateway返回参数结构体 class UpgradeGatewayResponse < 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