# -*- coding: utf8 -*- # Copyright (c) 2017-2021 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. import warnings from tencentcloud.common.abstract_model import AbstractModel class BatchDeleteDevicesRequest(AbstractModel): """BatchDeleteDevices请求参数结构体 """ def __init__(self): r""" :param _ProjectId: 目标删除设备所属项目ID :type ProjectId: str :param _DeviceIds: 目标删除设备的设备ID数组 :type DeviceIds: list of str """ self._ProjectId = None self._DeviceIds = None @property def ProjectId(self): """目标删除设备所属项目ID :rtype: str """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId @property def DeviceIds(self): """目标删除设备的设备ID数组 :rtype: list of str """ return self._DeviceIds @DeviceIds.setter def DeviceIds(self, DeviceIds): self._DeviceIds = DeviceIds def _deserialize(self, params): self._ProjectId = params.get("ProjectId") self._DeviceIds = params.get("DeviceIds") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class BatchDeleteDevicesResponse(AbstractModel): """BatchDeleteDevices返回参数结构体 """ def __init__(self): r""" :param _FailedDeviceIds: 删除失败的设备ID列表 :type FailedDeviceIds: list of str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._FailedDeviceIds = None self._RequestId = None @property def FailedDeviceIds(self): """删除失败的设备ID列表 :rtype: list of str """ return self._FailedDeviceIds @FailedDeviceIds.setter def FailedDeviceIds(self, FailedDeviceIds): self._FailedDeviceIds = FailedDeviceIds @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._FailedDeviceIds = params.get("FailedDeviceIds") self._RequestId = params.get("RequestId") class BatchDeletePolicyRequest(AbstractModel): """BatchDeletePolicy请求参数结构体 """ def __init__(self): r""" :param _ProjectId: 删除权限配置的项目ID :type ProjectId: str :param _RemoteDeviceIds: 删除权限配置的远端设备ID列表 :type RemoteDeviceIds: list of str :param _PolicyMode: 删除权限配置的权限模式, black为黑名单,white为白名单 :type PolicyMode: str """ self._ProjectId = None self._RemoteDeviceIds = None self._PolicyMode = None @property def ProjectId(self): """删除权限配置的项目ID :rtype: str """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId @property def RemoteDeviceIds(self): """删除权限配置的远端设备ID列表 :rtype: list of str """ return self._RemoteDeviceIds @RemoteDeviceIds.setter def RemoteDeviceIds(self, RemoteDeviceIds): self._RemoteDeviceIds = RemoteDeviceIds @property def PolicyMode(self): """删除权限配置的权限模式, black为黑名单,white为白名单 :rtype: str """ return self._PolicyMode @PolicyMode.setter def PolicyMode(self, PolicyMode): self._PolicyMode = PolicyMode def _deserialize(self, params): self._ProjectId = params.get("ProjectId") self._RemoteDeviceIds = params.get("RemoteDeviceIds") self._PolicyMode = params.get("PolicyMode") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class BatchDeletePolicyResponse(AbstractModel): """BatchDeletePolicy返回参数结构体 """ def __init__(self): r""" :param _FailedRemoteDeviceIds: 删除权限配置失败的远端设备ID列表 :type FailedRemoteDeviceIds: list of str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._FailedRemoteDeviceIds = None self._RequestId = None @property def FailedRemoteDeviceIds(self): """删除权限配置失败的远端设备ID列表 :rtype: list of str """ return self._FailedRemoteDeviceIds @FailedRemoteDeviceIds.setter def FailedRemoteDeviceIds(self, FailedRemoteDeviceIds): self._FailedRemoteDeviceIds = FailedRemoteDeviceIds @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._FailedRemoteDeviceIds = params.get("FailedRemoteDeviceIds") self._RequestId = params.get("RequestId") class BoundLicensesRequest(AbstractModel): """BoundLicenses请求参数结构体 """ def __init__(self): r""" :param _Count: license数量 :type Count: int :param _DeviceId: 设备id :type DeviceId: str :param _ProjectId: 项目ID :type ProjectId: str """ self._Count = None self._DeviceId = None self._ProjectId = None @property def Count(self): """license数量 :rtype: int """ return self._Count @Count.setter def Count(self, Count): self._Count = Count @property def DeviceId(self): """设备id :rtype: str """ return self._DeviceId @DeviceId.setter def DeviceId(self, DeviceId): self._DeviceId = DeviceId @property def ProjectId(self): """项目ID :rtype: str """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId def _deserialize(self, params): self._Count = params.get("Count") self._DeviceId = params.get("DeviceId") self._ProjectId = params.get("ProjectId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class BoundLicensesResponse(AbstractModel): """BoundLicenses返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class CreateDeviceRequest(AbstractModel): """CreateDevice请求参数结构体 """ def __init__(self): r""" :param _ProjectId: 创建设备所归属的项目ID :type ProjectId: str :param _DeviceId: 创建设备ID,项目内需要唯一,由小写英文字母、数字和下划线构成,长度不超过18 :type DeviceId: str :param _DeviceName: 创建设备名称,长度小于24, 可包含中文、数字、英文字母和下划线 :type DeviceName: str :param _DeviceType: 设备类型,field为现场设备(受控设备),remote为远端设备(操控设备),不填默认为field :type DeviceType: str :param _DeviceToken: 设备认证口令,由大小写英文字母和数字构成,须为16位 :type DeviceToken: str """ self._ProjectId = None self._DeviceId = None self._DeviceName = None self._DeviceType = None self._DeviceToken = None @property def ProjectId(self): """创建设备所归属的项目ID :rtype: str """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId @property def DeviceId(self): """创建设备ID,项目内需要唯一,由小写英文字母、数字和下划线构成,长度不超过18 :rtype: str """ return self._DeviceId @DeviceId.setter def DeviceId(self, DeviceId): self._DeviceId = DeviceId @property def DeviceName(self): """创建设备名称,长度小于24, 可包含中文、数字、英文字母和下划线 :rtype: str """ return self._DeviceName @DeviceName.setter def DeviceName(self, DeviceName): self._DeviceName = DeviceName @property def DeviceType(self): """设备类型,field为现场设备(受控设备),remote为远端设备(操控设备),不填默认为field :rtype: str """ return self._DeviceType @DeviceType.setter def DeviceType(self, DeviceType): self._DeviceType = DeviceType @property def DeviceToken(self): """设备认证口令,由大小写英文字母和数字构成,须为16位 :rtype: str """ return self._DeviceToken @DeviceToken.setter def DeviceToken(self, DeviceToken): self._DeviceToken = DeviceToken def _deserialize(self, params): self._ProjectId = params.get("ProjectId") self._DeviceId = params.get("DeviceId") self._DeviceName = params.get("DeviceName") self._DeviceType = params.get("DeviceType") self._DeviceToken = params.get("DeviceToken") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class CreateDeviceResponse(AbstractModel): """CreateDevice返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class CreateProjectRequest(AbstractModel): """CreateProject请求参数结构体 """ def __init__(self): r""" :param _ProjectName: 项目名称,长度不超过24个字符 :type ProjectName: str :param _ProjectDescription: 项目描述,长度不超过120个字符,不填默认为空 :type ProjectDescription: str :param _PolicyMode: 权限模式,black为黑名单,white为白名单,不填默认为black :type PolicyMode: str """ self._ProjectName = None self._ProjectDescription = None self._PolicyMode = None @property def ProjectName(self): """项目名称,长度不超过24个字符 :rtype: str """ return self._ProjectName @ProjectName.setter def ProjectName(self, ProjectName): self._ProjectName = ProjectName @property def ProjectDescription(self): """项目描述,长度不超过120个字符,不填默认为空 :rtype: str """ return self._ProjectDescription @ProjectDescription.setter def ProjectDescription(self, ProjectDescription): self._ProjectDescription = ProjectDescription @property def PolicyMode(self): """权限模式,black为黑名单,white为白名单,不填默认为black :rtype: str """ return self._PolicyMode @PolicyMode.setter def PolicyMode(self, PolicyMode): self._PolicyMode = PolicyMode def _deserialize(self, params): self._ProjectName = params.get("ProjectName") self._ProjectDescription = params.get("ProjectDescription") self._PolicyMode = params.get("PolicyMode") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class CreateProjectResponse(AbstractModel): """CreateProject返回参数结构体 """ def __init__(self): r""" :param _ProjectId: 项目ID,长度为16位 :type ProjectId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._ProjectId = None self._RequestId = None @property def ProjectId(self): """项目ID,长度为16位 :rtype: str """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._ProjectId = params.get("ProjectId") self._RequestId = params.get("RequestId") class DeleteProjectRequest(AbstractModel): """DeleteProject请求参数结构体 """ def __init__(self): r""" :param _ProjectId: 项目ID :type ProjectId: str """ self._ProjectId = None @property def ProjectId(self): """项目ID :rtype: str """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId def _deserialize(self, params): self._ProjectId = params.get("ProjectId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DeleteProjectResponse(AbstractModel): """DeleteProject返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class DescribeDeviceInfoRequest(AbstractModel): """DescribeDeviceInfo请求参数结构体 """ def __init__(self): r""" :param _ProjectId: 目标设备所属项目ID :type ProjectId: str :param _DeviceId: 目标设备ID :type DeviceId: str """ self._ProjectId = None self._DeviceId = None @property def ProjectId(self): """目标设备所属项目ID :rtype: str """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId @property def DeviceId(self): """目标设备ID :rtype: str """ return self._DeviceId @DeviceId.setter def DeviceId(self, DeviceId): self._DeviceId = DeviceId def _deserialize(self, params): self._ProjectId = params.get("ProjectId") self._DeviceId = params.get("DeviceId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeDeviceInfoResponse(AbstractModel): """DescribeDeviceInfo返回参数结构体 """ def __init__(self): r""" :param _DeviceName: 设备名称 :type DeviceName: str :param _DeviceType: 设备类型,field为现场设备(被控方),remote为远端设备(操控方) :type DeviceType: str :param _DeviceStatus: 设备状态,offline为离线,ready为在线准备,connected为会话中 :type DeviceStatus: str :param _LastReportTime: 设备状态最后更新时间 :type LastReportTime: str :param _ModifyTime: 设备信息最后修改时间 :type ModifyTime: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._DeviceName = None self._DeviceType = None self._DeviceStatus = None self._LastReportTime = None self._ModifyTime = None self._RequestId = None @property def DeviceName(self): """设备名称 :rtype: str """ return self._DeviceName @DeviceName.setter def DeviceName(self, DeviceName): self._DeviceName = DeviceName @property def DeviceType(self): """设备类型,field为现场设备(被控方),remote为远端设备(操控方) :rtype: str """ return self._DeviceType @DeviceType.setter def DeviceType(self, DeviceType): self._DeviceType = DeviceType @property def DeviceStatus(self): """设备状态,offline为离线,ready为在线准备,connected为会话中 :rtype: str """ return self._DeviceStatus @DeviceStatus.setter def DeviceStatus(self, DeviceStatus): self._DeviceStatus = DeviceStatus @property def LastReportTime(self): """设备状态最后更新时间 :rtype: str """ return self._LastReportTime @LastReportTime.setter def LastReportTime(self, LastReportTime): self._LastReportTime = LastReportTime @property def ModifyTime(self): """设备信息最后修改时间 :rtype: str """ return self._ModifyTime @ModifyTime.setter def ModifyTime(self, ModifyTime): self._ModifyTime = ModifyTime @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._DeviceName = params.get("DeviceName") self._DeviceType = params.get("DeviceType") self._DeviceStatus = params.get("DeviceStatus") self._LastReportTime = params.get("LastReportTime") self._ModifyTime = params.get("ModifyTime") self._RequestId = params.get("RequestId") class DescribeDeviceListRequest(AbstractModel): """DescribeDeviceList请求参数结构体 """ def __init__(self): r""" :param _ProjectId: 设备所属项目ID :type ProjectId: str :param _DeviceType: 设备类型筛选,不填默认为全部设备类型 :type DeviceType: str :param _SearchWords: 对设备ID或Name按关键字进行模糊匹配,不填则不进行模糊匹配 :type SearchWords: str :param _PageSize: 每页返回的最大设备数,不填默认为10 :type PageSize: int :param _PageNumber: 当前页码,不填默认为1(首页) :type PageNumber: int :param _DeviceStatus: 设备状态筛选,不填默认为不过滤。取值:["ready","connected","online"],online代表ready或connected :type DeviceStatus: str """ self._ProjectId = None self._DeviceType = None self._SearchWords = None self._PageSize = None self._PageNumber = None self._DeviceStatus = None @property def ProjectId(self): """设备所属项目ID :rtype: str """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId @property def DeviceType(self): """设备类型筛选,不填默认为全部设备类型 :rtype: str """ return self._DeviceType @DeviceType.setter def DeviceType(self, DeviceType): self._DeviceType = DeviceType @property def SearchWords(self): """对设备ID或Name按关键字进行模糊匹配,不填则不进行模糊匹配 :rtype: str """ return self._SearchWords @SearchWords.setter def SearchWords(self, SearchWords): self._SearchWords = SearchWords @property def PageSize(self): """每页返回的最大设备数,不填默认为10 :rtype: int """ return self._PageSize @PageSize.setter def PageSize(self, PageSize): self._PageSize = PageSize @property def PageNumber(self): """当前页码,不填默认为1(首页) :rtype: int """ return self._PageNumber @PageNumber.setter def PageNumber(self, PageNumber): self._PageNumber = PageNumber @property def DeviceStatus(self): """设备状态筛选,不填默认为不过滤。取值:["ready","connected","online"],online代表ready或connected :rtype: str """ return self._DeviceStatus @DeviceStatus.setter def DeviceStatus(self, DeviceStatus): self._DeviceStatus = DeviceStatus def _deserialize(self, params): self._ProjectId = params.get("ProjectId") self._DeviceType = params.get("DeviceType") self._SearchWords = params.get("SearchWords") self._PageSize = params.get("PageSize") self._PageNumber = params.get("PageNumber") self._DeviceStatus = params.get("DeviceStatus") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeDeviceListResponse(AbstractModel): """DescribeDeviceList返回参数结构体 """ def __init__(self): r""" :param _Devices: 设备信息列表 :type Devices: list of DeviceInfo :param _Total: 设备总数 :type Total: int :param _Num: 本次返回的设备数 :type Num: int :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._Devices = None self._Total = None self._Num = None self._RequestId = None @property def Devices(self): """设备信息列表 :rtype: list of DeviceInfo """ return self._Devices @Devices.setter def Devices(self, Devices): self._Devices = Devices @property def Total(self): """设备总数 :rtype: int """ return self._Total @Total.setter def Total(self, Total): self._Total = Total @property def Num(self): """本次返回的设备数 :rtype: int """ return self._Num @Num.setter def Num(self, Num): self._Num = Num @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): if params.get("Devices") is not None: self._Devices = [] for item in params.get("Devices"): obj = DeviceInfo() obj._deserialize(item) self._Devices.append(obj) self._Total = params.get("Total") self._Num = params.get("Num") self._RequestId = params.get("RequestId") class DescribeDeviceSessionDetailsRequest(AbstractModel): """DescribeDeviceSessionDetails请求参数结构体 """ def __init__(self): r""" :param _SessionId: 会话ID :type SessionId: str """ self._SessionId = None @property def SessionId(self): """会话ID :rtype: str """ return self._SessionId @SessionId.setter def SessionId(self, SessionId): self._SessionId = SessionId def _deserialize(self, params): self._SessionId = params.get("SessionId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeDeviceSessionDetailsResponse(AbstractModel): """DescribeDeviceSessionDetails返回参数结构体 """ def __init__(self): r""" :param _Details: 按设备区分的会话详细数据 :type Details: list of SessionDeviceDetail :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._Details = None self._RequestId = None @property def Details(self): """按设备区分的会话详细数据 :rtype: list of SessionDeviceDetail """ return self._Details @Details.setter def Details(self, Details): self._Details = Details @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): if params.get("Details") is not None: self._Details = [] for item in params.get("Details"): obj = SessionDeviceDetail() obj._deserialize(item) self._Details.append(obj) self._RequestId = params.get("RequestId") class DescribeDeviceSessionListRequest(AbstractModel): """DescribeDeviceSessionList请求参数结构体 """ def __init__(self): r""" :param _ProjectId: 项目ID :type ProjectId: str :param _PageNumber: 页码,从1开始 :type PageNumber: int :param _PageSize: 每页个数 :type PageSize: int :param _DeviceId: 设备ID :type DeviceId: str :param _StartTime: 开始时间 :type StartTime: int :param _EndTime: 结束时间 :type EndTime: int """ self._ProjectId = None self._PageNumber = None self._PageSize = None self._DeviceId = None self._StartTime = None self._EndTime = None @property def ProjectId(self): """项目ID :rtype: str """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId @property def PageNumber(self): """页码,从1开始 :rtype: int """ return self._PageNumber @PageNumber.setter def PageNumber(self, PageNumber): self._PageNumber = PageNumber @property def PageSize(self): """每页个数 :rtype: int """ return self._PageSize @PageSize.setter def PageSize(self, PageSize): self._PageSize = PageSize @property def DeviceId(self): """设备ID :rtype: str """ return self._DeviceId @DeviceId.setter def DeviceId(self, DeviceId): self._DeviceId = DeviceId @property def StartTime(self): """开始时间 :rtype: int """ return self._StartTime @StartTime.setter def StartTime(self, StartTime): self._StartTime = StartTime @property def EndTime(self): """结束时间 :rtype: int """ return self._EndTime @EndTime.setter def EndTime(self, EndTime): self._EndTime = EndTime def _deserialize(self, params): self._ProjectId = params.get("ProjectId") self._PageNumber = params.get("PageNumber") self._PageSize = params.get("PageSize") self._DeviceId = params.get("DeviceId") self._StartTime = params.get("StartTime") self._EndTime = params.get("EndTime") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeDeviceSessionListResponse(AbstractModel): """DescribeDeviceSessionList返回参数结构体 """ def __init__(self): r""" :param _Total: 总个数 :type Total: int :param _DeviceSessionList: 会话列表 :type DeviceSessionList: list of SessionInfo :param _Num: 本页数量 :type Num: int :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._Total = None self._DeviceSessionList = None self._Num = None self._RequestId = None @property def Total(self): """总个数 :rtype: int """ return self._Total @Total.setter def Total(self, Total): self._Total = Total @property def DeviceSessionList(self): """会话列表 :rtype: list of SessionInfo """ return self._DeviceSessionList @DeviceSessionList.setter def DeviceSessionList(self, DeviceSessionList): self._DeviceSessionList = DeviceSessionList @property def Num(self): """本页数量 :rtype: int """ return self._Num @Num.setter def Num(self, Num): self._Num = Num @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._Total = params.get("Total") if params.get("DeviceSessionList") is not None: self._DeviceSessionList = [] for item in params.get("DeviceSessionList"): obj = SessionInfo() obj._deserialize(item) self._DeviceSessionList.append(obj) self._Num = params.get("Num") self._RequestId = params.get("RequestId") class DescribePolicyRequest(AbstractModel): """DescribePolicy请求参数结构体 """ def __init__(self): r""" :param _ProjectId: 查看权限的项目ID :type ProjectId: str :param _PolicyMode: 查看的权限模式,black为黑名单,white为白名单,不填默认为当前项目生效的权限模式 :type PolicyMode: str :param _SearchMode: 模糊匹配模式,remoteMatch为远端设备ID匹配,fieldMatch为现场ID匹配,不填默认为remoteMatch :type SearchMode: str :param _SearchWords: 模糊匹配关键字,不填默认不进行模糊匹配 :type SearchWords: str :param _PageSize: 每页返回的最大数量,不填默认为10 :type PageSize: int :param _PageNumber: 当前页码,不填默认为1(首页) :type PageNumber: int """ self._ProjectId = None self._PolicyMode = None self._SearchMode = None self._SearchWords = None self._PageSize = None self._PageNumber = None @property def ProjectId(self): """查看权限的项目ID :rtype: str """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId @property def PolicyMode(self): """查看的权限模式,black为黑名单,white为白名单,不填默认为当前项目生效的权限模式 :rtype: str """ return self._PolicyMode @PolicyMode.setter def PolicyMode(self, PolicyMode): self._PolicyMode = PolicyMode @property def SearchMode(self): """模糊匹配模式,remoteMatch为远端设备ID匹配,fieldMatch为现场ID匹配,不填默认为remoteMatch :rtype: str """ return self._SearchMode @SearchMode.setter def SearchMode(self, SearchMode): self._SearchMode = SearchMode @property def SearchWords(self): """模糊匹配关键字,不填默认不进行模糊匹配 :rtype: str """ return self._SearchWords @SearchWords.setter def SearchWords(self, SearchWords): self._SearchWords = SearchWords @property def PageSize(self): """每页返回的最大数量,不填默认为10 :rtype: int """ return self._PageSize @PageSize.setter def PageSize(self, PageSize): self._PageSize = PageSize @property def PageNumber(self): """当前页码,不填默认为1(首页) :rtype: int """ return self._PageNumber @PageNumber.setter def PageNumber(self, PageNumber): self._PageNumber = PageNumber def _deserialize(self, params): self._ProjectId = params.get("ProjectId") self._PolicyMode = params.get("PolicyMode") self._SearchMode = params.get("SearchMode") self._SearchWords = params.get("SearchWords") self._PageSize = params.get("PageSize") self._PageNumber = params.get("PageNumber") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribePolicyResponse(AbstractModel): """DescribePolicy返回参数结构体 """ def __init__(self): r""" :param _PolicyMode: 权限模式 :type PolicyMode: str :param _PolicyEnabled: 返回的权限模式是否为当前生效的权限模式 :type PolicyEnabled: bool :param _PolicyInfo: 权限信息列表 :type PolicyInfo: list of PolicyInfo :param _Num: 本次返回的权限信息数量 :type Num: int :param _Total: 权限信息总数 :type Total: int :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._PolicyMode = None self._PolicyEnabled = None self._PolicyInfo = None self._Num = None self._Total = None self._RequestId = None @property def PolicyMode(self): """权限模式 :rtype: str """ return self._PolicyMode @PolicyMode.setter def PolicyMode(self, PolicyMode): self._PolicyMode = PolicyMode @property def PolicyEnabled(self): """返回的权限模式是否为当前生效的权限模式 :rtype: bool """ return self._PolicyEnabled @PolicyEnabled.setter def PolicyEnabled(self, PolicyEnabled): self._PolicyEnabled = PolicyEnabled @property def PolicyInfo(self): """权限信息列表 :rtype: list of PolicyInfo """ return self._PolicyInfo @PolicyInfo.setter def PolicyInfo(self, PolicyInfo): self._PolicyInfo = PolicyInfo @property def Num(self): """本次返回的权限信息数量 :rtype: int """ return self._Num @Num.setter def Num(self, Num): self._Num = Num @property def Total(self): """权限信息总数 :rtype: int """ return self._Total @Total.setter def Total(self, Total): self._Total = Total @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._PolicyMode = params.get("PolicyMode") self._PolicyEnabled = params.get("PolicyEnabled") if params.get("PolicyInfo") is not None: self._PolicyInfo = [] for item in params.get("PolicyInfo"): obj = PolicyInfo() obj._deserialize(item) self._PolicyInfo.append(obj) self._Num = params.get("Num") self._Total = params.get("Total") self._RequestId = params.get("RequestId") class DescribeProjectInfoRequest(AbstractModel): """DescribeProjectInfo请求参数结构体 """ def __init__(self): r""" :param _ProjectId: 目标项目ID,必填参数 :type ProjectId: str """ self._ProjectId = None @property def ProjectId(self): """目标项目ID,必填参数 :rtype: str """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId def _deserialize(self, params): self._ProjectId = params.get("ProjectId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeProjectInfoResponse(AbstractModel): """DescribeProjectInfo返回参数结构体 """ def __init__(self): r""" :param _ProjectName: 项目名称 :type ProjectName: str :param _ProjectDescription: 项目描述 :type ProjectDescription: str :param _PolicyMode: 项目权限模式,black为黑名单,white为白名单 :type PolicyMode: str :param _ModifyTime: 项目信息修改时间 :type ModifyTime: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._ProjectName = None self._ProjectDescription = None self._PolicyMode = None self._ModifyTime = None self._RequestId = None @property def ProjectName(self): """项目名称 :rtype: str """ return self._ProjectName @ProjectName.setter def ProjectName(self, ProjectName): self._ProjectName = ProjectName @property def ProjectDescription(self): """项目描述 :rtype: str """ return self._ProjectDescription @ProjectDescription.setter def ProjectDescription(self, ProjectDescription): self._ProjectDescription = ProjectDescription @property def PolicyMode(self): """项目权限模式,black为黑名单,white为白名单 :rtype: str """ return self._PolicyMode @PolicyMode.setter def PolicyMode(self, PolicyMode): self._PolicyMode = PolicyMode @property def ModifyTime(self): """项目信息修改时间 :rtype: str """ return self._ModifyTime @ModifyTime.setter def ModifyTime(self, ModifyTime): self._ModifyTime = ModifyTime @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._ProjectName = params.get("ProjectName") self._ProjectDescription = params.get("ProjectDescription") self._PolicyMode = params.get("PolicyMode") self._ModifyTime = params.get("ModifyTime") self._RequestId = params.get("RequestId") class DescribeProjectListRequest(AbstractModel): """DescribeProjectList请求参数结构体 """ def __init__(self): r""" :param _PageSize: 每页返回的最大项目数量,不填默认为10 :type PageSize: int :param _PageNumber: 当前页码,不填默认为1(首页) :type PageNumber: int """ self._PageSize = None self._PageNumber = None @property def PageSize(self): """每页返回的最大项目数量,不填默认为10 :rtype: int """ return self._PageSize @PageSize.setter def PageSize(self, PageSize): self._PageSize = PageSize @property def PageNumber(self): """当前页码,不填默认为1(首页) :rtype: int """ return self._PageNumber @PageNumber.setter def PageNumber(self, PageNumber): self._PageNumber = PageNumber def _deserialize(self, params): self._PageSize = params.get("PageSize") self._PageNumber = params.get("PageNumber") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeProjectListResponse(AbstractModel): """DescribeProjectList返回参数结构体 """ def __init__(self): r""" :param _Projects: 项目信息数组 :type Projects: list of ProjectInfo :param _Total: 项目总数 :type Total: int :param _Num: 本次返回的项目数 :type Num: int :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._Projects = None self._Total = None self._Num = None self._RequestId = None @property def Projects(self): """项目信息数组 :rtype: list of ProjectInfo """ return self._Projects @Projects.setter def Projects(self, Projects): self._Projects = Projects @property def Total(self): """项目总数 :rtype: int """ return self._Total @Total.setter def Total(self, Total): self._Total = Total @property def Num(self): """本次返回的项目数 :rtype: int """ return self._Num @Num.setter def Num(self, Num): self._Num = Num @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): if params.get("Projects") is not None: self._Projects = [] for item in params.get("Projects"): obj = ProjectInfo() obj._deserialize(item) self._Projects.append(obj) self._Total = params.get("Total") self._Num = params.get("Num") self._RequestId = params.get("RequestId") class DescribeRecentSessionListRequest(AbstractModel): """DescribeRecentSessionList请求参数结构体 """ def __init__(self): r""" :param _ProjectId: 项目ID :type ProjectId: str :param _PageNumber: 页码,从1开始 :type PageNumber: int :param _PageSize: 每页个数 :type PageSize: int :param _DeviceId: 设备ID,支持过滤远端设备或现场设备 :type DeviceId: str :param _StartTime: 时间范围的起始时间。时间范围最大为最近两小时,若不传或超出范围,则起始时间按两小时前计算 :type StartTime: int :param _EndTime: 时间范围的结束时间。时间范围最大为最近两小时,若不传或超出范围,则结束时间按当前时间计算 :type EndTime: int """ self._ProjectId = None self._PageNumber = None self._PageSize = None self._DeviceId = None self._StartTime = None self._EndTime = None @property def ProjectId(self): """项目ID :rtype: str """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId @property def PageNumber(self): """页码,从1开始 :rtype: int """ return self._PageNumber @PageNumber.setter def PageNumber(self, PageNumber): self._PageNumber = PageNumber @property def PageSize(self): """每页个数 :rtype: int """ return self._PageSize @PageSize.setter def PageSize(self, PageSize): self._PageSize = PageSize @property def DeviceId(self): """设备ID,支持过滤远端设备或现场设备 :rtype: str """ return self._DeviceId @DeviceId.setter def DeviceId(self, DeviceId): self._DeviceId = DeviceId @property def StartTime(self): """时间范围的起始时间。时间范围最大为最近两小时,若不传或超出范围,则起始时间按两小时前计算 :rtype: int """ return self._StartTime @StartTime.setter def StartTime(self, StartTime): self._StartTime = StartTime @property def EndTime(self): """时间范围的结束时间。时间范围最大为最近两小时,若不传或超出范围,则结束时间按当前时间计算 :rtype: int """ return self._EndTime @EndTime.setter def EndTime(self, EndTime): self._EndTime = EndTime def _deserialize(self, params): self._ProjectId = params.get("ProjectId") self._PageNumber = params.get("PageNumber") self._PageSize = params.get("PageSize") self._DeviceId = params.get("DeviceId") self._StartTime = params.get("StartTime") self._EndTime = params.get("EndTime") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeRecentSessionListResponse(AbstractModel): """DescribeRecentSessionList返回参数结构体 """ def __init__(self): r""" :param _Total: 总个数 :type Total: int :param _RecentSessionList: 会话列表 :type RecentSessionList: list of RecentSessionInfo :param _Num: 本页数量 :type Num: int :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._Total = None self._RecentSessionList = None self._Num = None self._RequestId = None @property def Total(self): """总个数 :rtype: int """ return self._Total @Total.setter def Total(self, Total): self._Total = Total @property def RecentSessionList(self): """会话列表 :rtype: list of RecentSessionInfo """ return self._RecentSessionList @RecentSessionList.setter def RecentSessionList(self, RecentSessionList): self._RecentSessionList = RecentSessionList @property def Num(self): """本页数量 :rtype: int """ return self._Num @Num.setter def Num(self, Num): self._Num = Num @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._Total = params.get("Total") if params.get("RecentSessionList") is not None: self._RecentSessionList = [] for item in params.get("RecentSessionList"): obj = RecentSessionInfo() obj._deserialize(item) self._RecentSessionList.append(obj) self._Num = params.get("Num") self._RequestId = params.get("RequestId") class DescribeSessionStatisticsByIntervalRequest(AbstractModel): """DescribeSessionStatisticsByInterval请求参数结构体 """ def __init__(self): r""" :param _ProjectId: 项目ID :type ProjectId: str :param _StatisticInterval: 统计时间间隔:hour|day|month :type StatisticInterval: str :param _DeviceId: 设备ID :type DeviceId: str :param _StartTime: 起始时间,单位:秒 :type StartTime: int :param _EndTime: 结束时间,单位:秒 :type EndTime: int """ self._ProjectId = None self._StatisticInterval = None self._DeviceId = None self._StartTime = None self._EndTime = None @property def ProjectId(self): """项目ID :rtype: str """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId @property def StatisticInterval(self): """统计时间间隔:hour|day|month :rtype: str """ return self._StatisticInterval @StatisticInterval.setter def StatisticInterval(self, StatisticInterval): self._StatisticInterval = StatisticInterval @property def DeviceId(self): """设备ID :rtype: str """ return self._DeviceId @DeviceId.setter def DeviceId(self, DeviceId): self._DeviceId = DeviceId @property def StartTime(self): """起始时间,单位:秒 :rtype: int """ return self._StartTime @StartTime.setter def StartTime(self, StartTime): self._StartTime = StartTime @property def EndTime(self): """结束时间,单位:秒 :rtype: int """ return self._EndTime @EndTime.setter def EndTime(self, EndTime): self._EndTime = EndTime def _deserialize(self, params): self._ProjectId = params.get("ProjectId") self._StatisticInterval = params.get("StatisticInterval") self._DeviceId = params.get("DeviceId") self._StartTime = params.get("StartTime") self._EndTime = params.get("EndTime") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeSessionStatisticsByIntervalResponse(AbstractModel): """DescribeSessionStatisticsByInterval返回参数结构体 """ def __init__(self): r""" :param _SessionStatistics: 各时间段的会话统计数据 :type SessionStatistics: list of SessionIntervalStatistic :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._SessionStatistics = None self._RequestId = None @property def SessionStatistics(self): """各时间段的会话统计数据 :rtype: list of SessionIntervalStatistic """ return self._SessionStatistics @SessionStatistics.setter def SessionStatistics(self, SessionStatistics): self._SessionStatistics = SessionStatistics @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): if params.get("SessionStatistics") is not None: self._SessionStatistics = [] for item in params.get("SessionStatistics"): obj = SessionIntervalStatistic() obj._deserialize(item) self._SessionStatistics.append(obj) self._RequestId = params.get("RequestId") class DescribeSessionStatisticsRequest(AbstractModel): """DescribeSessionStatistics请求参数结构体 """ def __init__(self): r""" :param _ProjectId: 项目ID :type ProjectId: str :param _DeviceId: 设备ID :type DeviceId: str :param _StartTime: 起始时间,单位:秒 :type StartTime: int :param _EndTime: 结束时间,单位:秒 :type EndTime: int """ self._ProjectId = None self._DeviceId = None self._StartTime = None self._EndTime = None @property def ProjectId(self): """项目ID :rtype: str """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId @property def DeviceId(self): """设备ID :rtype: str """ return self._DeviceId @DeviceId.setter def DeviceId(self, DeviceId): self._DeviceId = DeviceId @property def StartTime(self): """起始时间,单位:秒 :rtype: int """ return self._StartTime @StartTime.setter def StartTime(self, StartTime): self._StartTime = StartTime @property def EndTime(self): """结束时间,单位:秒 :rtype: int """ return self._EndTime @EndTime.setter def EndTime(self, EndTime): self._EndTime = EndTime def _deserialize(self, params): self._ProjectId = params.get("ProjectId") self._DeviceId = params.get("DeviceId") self._StartTime = params.get("StartTime") self._EndTime = params.get("EndTime") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeSessionStatisticsResponse(AbstractModel): """DescribeSessionStatistics返回参数结构体 """ def __init__(self): r""" :param _SessionNum: 会话数量 :type SessionNum: int :param _TotalDuration: 通话时长,单位:分钟 :type TotalDuration: int :param _ActiveFieldDeviceNum: 活跃现场设备数 :type ActiveFieldDeviceNum: int :param _ActiveRemoteDeviceNum: 活跃远端设备数 :type ActiveRemoteDeviceNum: int :param _NotBadSessionRatio: 优良会话占比,单位:% :type NotBadSessionRatio: int :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._SessionNum = None self._TotalDuration = None self._ActiveFieldDeviceNum = None self._ActiveRemoteDeviceNum = None self._NotBadSessionRatio = None self._RequestId = None @property def SessionNum(self): """会话数量 :rtype: int """ return self._SessionNum @SessionNum.setter def SessionNum(self, SessionNum): self._SessionNum = SessionNum @property def TotalDuration(self): """通话时长,单位:分钟 :rtype: int """ return self._TotalDuration @TotalDuration.setter def TotalDuration(self, TotalDuration): self._TotalDuration = TotalDuration @property def ActiveFieldDeviceNum(self): """活跃现场设备数 :rtype: int """ return self._ActiveFieldDeviceNum @ActiveFieldDeviceNum.setter def ActiveFieldDeviceNum(self, ActiveFieldDeviceNum): self._ActiveFieldDeviceNum = ActiveFieldDeviceNum @property def ActiveRemoteDeviceNum(self): """活跃远端设备数 :rtype: int """ return self._ActiveRemoteDeviceNum @ActiveRemoteDeviceNum.setter def ActiveRemoteDeviceNum(self, ActiveRemoteDeviceNum): self._ActiveRemoteDeviceNum = ActiveRemoteDeviceNum @property def NotBadSessionRatio(self): """优良会话占比,单位:% :rtype: int """ return self._NotBadSessionRatio @NotBadSessionRatio.setter def NotBadSessionRatio(self, NotBadSessionRatio): self._NotBadSessionRatio = NotBadSessionRatio @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._SessionNum = params.get("SessionNum") self._TotalDuration = params.get("TotalDuration") self._ActiveFieldDeviceNum = params.get("ActiveFieldDeviceNum") self._ActiveRemoteDeviceNum = params.get("ActiveRemoteDeviceNum") self._NotBadSessionRatio = params.get("NotBadSessionRatio") self._RequestId = params.get("RequestId") class Device(AbstractModel): """查询用户设备的授权绑定情况 """ def __init__(self): r""" :param _DeviceId: 设备ID :type DeviceId: str :param _DeviceName: 设备名称 :type DeviceName: str :param _LicenseCount: 已经绑定license数量 :type LicenseCount: int :param _RemainDay: 剩余天数:天 :type RemainDay: int :param _ExpireTime: 过期时间:s :type ExpireTime: str :param _Duration: 服务时长:s :type Duration: str :param _LicenseIds: 已经绑定licenseId列表 :type LicenseIds: list of str :param _MonthlyRemainTime: 每月license的限定时长 :type MonthlyRemainTime: int :param _LimitedTime: 月封顶时长(分钟) :type LimitedTime: int """ self._DeviceId = None self._DeviceName = None self._LicenseCount = None self._RemainDay = None self._ExpireTime = None self._Duration = None self._LicenseIds = None self._MonthlyRemainTime = None self._LimitedTime = None @property def DeviceId(self): """设备ID :rtype: str """ return self._DeviceId @DeviceId.setter def DeviceId(self, DeviceId): self._DeviceId = DeviceId @property def DeviceName(self): """设备名称 :rtype: str """ return self._DeviceName @DeviceName.setter def DeviceName(self, DeviceName): self._DeviceName = DeviceName @property def LicenseCount(self): """已经绑定license数量 :rtype: int """ return self._LicenseCount @LicenseCount.setter def LicenseCount(self, LicenseCount): self._LicenseCount = LicenseCount @property def RemainDay(self): """剩余天数:天 :rtype: int """ return self._RemainDay @RemainDay.setter def RemainDay(self, RemainDay): self._RemainDay = RemainDay @property def ExpireTime(self): """过期时间:s :rtype: str """ return self._ExpireTime @ExpireTime.setter def ExpireTime(self, ExpireTime): self._ExpireTime = ExpireTime @property def Duration(self): """服务时长:s :rtype: str """ return self._Duration @Duration.setter def Duration(self, Duration): self._Duration = Duration @property def LicenseIds(self): """已经绑定licenseId列表 :rtype: list of str """ return self._LicenseIds @LicenseIds.setter def LicenseIds(self, LicenseIds): self._LicenseIds = LicenseIds @property def MonthlyRemainTime(self): """每月license的限定时长 :rtype: int """ return self._MonthlyRemainTime @MonthlyRemainTime.setter def MonthlyRemainTime(self, MonthlyRemainTime): self._MonthlyRemainTime = MonthlyRemainTime @property def LimitedTime(self): """月封顶时长(分钟) :rtype: int """ return self._LimitedTime @LimitedTime.setter def LimitedTime(self, LimitedTime): self._LimitedTime = LimitedTime def _deserialize(self, params): self._DeviceId = params.get("DeviceId") self._DeviceName = params.get("DeviceName") self._LicenseCount = params.get("LicenseCount") self._RemainDay = params.get("RemainDay") self._ExpireTime = params.get("ExpireTime") self._Duration = params.get("Duration") self._LicenseIds = params.get("LicenseIds") self._MonthlyRemainTime = params.get("MonthlyRemainTime") self._LimitedTime = params.get("LimitedTime") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DeviceInfo(AbstractModel): """设备信息 """ def __init__(self): r""" :param _DeviceId: 设备ID :type DeviceId: str :param _DeviceName: 设备名称 :type DeviceName: str :param _DeviceStatus: 设备状态,offline为离线,ready为在线准备,connected为会话中 :type DeviceStatus: str :param _DeviceType: 设备类型,field为现场设备(受控方),remote为远端设备(操控方) :type DeviceType: str :param _ModifyTime: 设备信息最近修改时间 :type ModifyTime: str :param _LastReportTime: 设备状态最近更新时间 :type LastReportTime: str :param _ProjectId: 设备所属项目Id :type ProjectId: str """ self._DeviceId = None self._DeviceName = None self._DeviceStatus = None self._DeviceType = None self._ModifyTime = None self._LastReportTime = None self._ProjectId = None @property def DeviceId(self): """设备ID :rtype: str """ return self._DeviceId @DeviceId.setter def DeviceId(self, DeviceId): self._DeviceId = DeviceId @property def DeviceName(self): """设备名称 :rtype: str """ return self._DeviceName @DeviceName.setter def DeviceName(self, DeviceName): self._DeviceName = DeviceName @property def DeviceStatus(self): """设备状态,offline为离线,ready为在线准备,connected为会话中 :rtype: str """ return self._DeviceStatus @DeviceStatus.setter def DeviceStatus(self, DeviceStatus): self._DeviceStatus = DeviceStatus @property def DeviceType(self): """设备类型,field为现场设备(受控方),remote为远端设备(操控方) :rtype: str """ return self._DeviceType @DeviceType.setter def DeviceType(self, DeviceType): self._DeviceType = DeviceType @property def ModifyTime(self): """设备信息最近修改时间 :rtype: str """ return self._ModifyTime @ModifyTime.setter def ModifyTime(self, ModifyTime): self._ModifyTime = ModifyTime @property def LastReportTime(self): """设备状态最近更新时间 :rtype: str """ return self._LastReportTime @LastReportTime.setter def LastReportTime(self, LastReportTime): self._LastReportTime = LastReportTime @property def ProjectId(self): """设备所属项目Id :rtype: str """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId def _deserialize(self, params): self._DeviceId = params.get("DeviceId") self._DeviceName = params.get("DeviceName") self._DeviceStatus = params.get("DeviceStatus") self._DeviceType = params.get("DeviceType") self._ModifyTime = params.get("ModifyTime") self._LastReportTime = params.get("LastReportTime") self._ProjectId = params.get("ProjectId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class GetDeviceLicenseRequest(AbstractModel): """GetDeviceLicense请求参数结构体 """ def __init__(self): r""" :param _ProjectId: 目标设备所属项目ID :type ProjectId: str :param _DeviceId: 目标设备ID :type DeviceId: str """ self._ProjectId = None self._DeviceId = None @property def ProjectId(self): """目标设备所属项目ID :rtype: str """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId @property def DeviceId(self): """目标设备ID :rtype: str """ return self._DeviceId @DeviceId.setter def DeviceId(self, DeviceId): self._DeviceId = DeviceId def _deserialize(self, params): self._ProjectId = params.get("ProjectId") self._DeviceId = params.get("DeviceId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class GetDeviceLicenseResponse(AbstractModel): """GetDeviceLicense返回参数结构体 """ def __init__(self): r""" :param _AvailableCount: 指定设备已经绑定的可用license数量 :type AvailableCount: int :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._AvailableCount = None self._RequestId = None @property def AvailableCount(self): """指定设备已经绑定的可用license数量 :rtype: int """ return self._AvailableCount @AvailableCount.setter def AvailableCount(self, AvailableCount): self._AvailableCount = AvailableCount @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._AvailableCount = params.get("AvailableCount") self._RequestId = params.get("RequestId") class GetDevicesRequest(AbstractModel): """GetDevices请求参数结构体 """ def __init__(self): r""" :param _PageNum: 页码 :type PageNum: int :param _PageSize: 页面数量 :type PageSize: int :param _ProjectId: 项目 ID :type ProjectId: str :param _DeviceId: 设备ID :type DeviceId: str """ self._PageNum = None self._PageSize = None self._ProjectId = None self._DeviceId = None @property def PageNum(self): """页码 :rtype: int """ return self._PageNum @PageNum.setter def PageNum(self, PageNum): self._PageNum = PageNum @property def PageSize(self): """页面数量 :rtype: int """ return self._PageSize @PageSize.setter def PageSize(self, PageSize): self._PageSize = PageSize @property def ProjectId(self): """项目 ID :rtype: str """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId @property def DeviceId(self): """设备ID :rtype: str """ return self._DeviceId @DeviceId.setter def DeviceId(self, DeviceId): self._DeviceId = DeviceId def _deserialize(self, params): self._PageNum = params.get("PageNum") self._PageSize = params.get("PageSize") self._ProjectId = params.get("ProjectId") self._DeviceId = params.get("DeviceId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class GetDevicesResponse(AbstractModel): """GetDevices返回参数结构体 """ def __init__(self): r""" :param _Devices: 设备授权列表 :type Devices: list of Device :param _TotalCount: 列表数量 :type TotalCount: int :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._Devices = None self._TotalCount = None self._RequestId = None @property def Devices(self): """设备授权列表 :rtype: list of Device """ return self._Devices @Devices.setter def Devices(self, Devices): self._Devices = Devices @property def TotalCount(self): """列表数量 :rtype: int """ return self._TotalCount @TotalCount.setter def TotalCount(self, TotalCount): self._TotalCount = TotalCount @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): if params.get("Devices") is not None: self._Devices = [] for item in params.get("Devices"): obj = Device() obj._deserialize(item) self._Devices.append(obj) self._TotalCount = params.get("TotalCount") self._RequestId = params.get("RequestId") class GetLicenseStatRequest(AbstractModel): """GetLicenseStat请求参数结构体 """ class GetLicenseStatResponse(AbstractModel): """GetLicenseStat返回参数结构体 """ def __init__(self): r""" :param _Valid: 有效授权 :type Valid: int :param _Bound: 已绑定授权 :type Bound: int :param _UnBound: 未绑定授权 :type UnBound: int :param _Expire: 过期授权 :type Expire: int :param _MonthlyExpire: 当月用量超时授权个数 :type MonthlyExpire: int :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._Valid = None self._Bound = None self._UnBound = None self._Expire = None self._MonthlyExpire = None self._RequestId = None @property def Valid(self): """有效授权 :rtype: int """ return self._Valid @Valid.setter def Valid(self, Valid): self._Valid = Valid @property def Bound(self): """已绑定授权 :rtype: int """ return self._Bound @Bound.setter def Bound(self, Bound): self._Bound = Bound @property def UnBound(self): """未绑定授权 :rtype: int """ return self._UnBound @UnBound.setter def UnBound(self, UnBound): self._UnBound = UnBound @property def Expire(self): """过期授权 :rtype: int """ return self._Expire @Expire.setter def Expire(self, Expire): self._Expire = Expire @property def MonthlyExpire(self): """当月用量超时授权个数 :rtype: int """ return self._MonthlyExpire @MonthlyExpire.setter def MonthlyExpire(self, MonthlyExpire): self._MonthlyExpire = MonthlyExpire @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._Valid = params.get("Valid") self._Bound = params.get("Bound") self._UnBound = params.get("UnBound") self._Expire = params.get("Expire") self._MonthlyExpire = params.get("MonthlyExpire") self._RequestId = params.get("RequestId") class GetLicensesRequest(AbstractModel): """GetLicenses请求参数结构体 """ def __init__(self): r""" :param _PageNum: 页码 :type PageNum: int :param _PageSize: 页面数量 :type PageSize: int :param _ProjectId: projectId :type ProjectId: str :param _DeviceId: DeviceId :type DeviceId: str :param _Status: license状态:0:未绑定;1:已绑定;2:已停服;3:已退费 :type Status: int """ self._PageNum = None self._PageSize = None self._ProjectId = None self._DeviceId = None self._Status = None @property def PageNum(self): """页码 :rtype: int """ return self._PageNum @PageNum.setter def PageNum(self, PageNum): self._PageNum = PageNum @property def PageSize(self): """页面数量 :rtype: int """ return self._PageSize @PageSize.setter def PageSize(self, PageSize): self._PageSize = PageSize @property def ProjectId(self): """projectId :rtype: str """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId @property def DeviceId(self): """DeviceId :rtype: str """ return self._DeviceId @DeviceId.setter def DeviceId(self, DeviceId): self._DeviceId = DeviceId @property def Status(self): """license状态:0:未绑定;1:已绑定;2:已停服;3:已退费 :rtype: int """ return self._Status @Status.setter def Status(self, Status): self._Status = Status def _deserialize(self, params): self._PageNum = params.get("PageNum") self._PageSize = params.get("PageSize") self._ProjectId = params.get("ProjectId") self._DeviceId = params.get("DeviceId") self._Status = params.get("Status") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class GetLicensesResponse(AbstractModel): """GetLicenses返回参数结构体 """ def __init__(self): r""" :param _Licenses: license列表 :type Licenses: list of License :param _TotalCount: license列表项数量 :type TotalCount: int :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._Licenses = None self._TotalCount = None self._RequestId = None @property def Licenses(self): """license列表 :rtype: list of License """ return self._Licenses @Licenses.setter def Licenses(self, Licenses): self._Licenses = Licenses @property def TotalCount(self): """license列表项数量 :rtype: int """ return self._TotalCount @TotalCount.setter def TotalCount(self, TotalCount): self._TotalCount = TotalCount @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): if params.get("Licenses") is not None: self._Licenses = [] for item in params.get("Licenses"): obj = License() obj._deserialize(item) self._Licenses.append(obj) self._TotalCount = params.get("TotalCount") self._RequestId = params.get("RequestId") class License(AbstractModel): """按授权查看的license列表 """ def __init__(self): r""" :param _Count: 该类型的license个数 :type Count: int :param _Status: license状态:0:未绑定;1:已绑定;2:已停服;3:已退费 :type Status: int :param _ExpireTime: 到期时间戳:s :type ExpireTime: str :param _Duration: 服务时长:s :type Duration: str :param _RemainDay: 剩余天数:天 :type RemainDay: int :param _LicenseIds: 该类型的licenseId列表 :type LicenseIds: list of str """ self._Count = None self._Status = None self._ExpireTime = None self._Duration = None self._RemainDay = None self._LicenseIds = None @property def Count(self): """该类型的license个数 :rtype: int """ return self._Count @Count.setter def Count(self, Count): self._Count = Count @property def Status(self): """license状态:0:未绑定;1:已绑定;2:已停服;3:已退费 :rtype: int """ return self._Status @Status.setter def Status(self, Status): self._Status = Status @property def ExpireTime(self): """到期时间戳:s :rtype: str """ return self._ExpireTime @ExpireTime.setter def ExpireTime(self, ExpireTime): self._ExpireTime = ExpireTime @property def Duration(self): """服务时长:s :rtype: str """ return self._Duration @Duration.setter def Duration(self, Duration): self._Duration = Duration @property def RemainDay(self): """剩余天数:天 :rtype: int """ return self._RemainDay @RemainDay.setter def RemainDay(self, RemainDay): self._RemainDay = RemainDay @property def LicenseIds(self): """该类型的licenseId列表 :rtype: list of str """ return self._LicenseIds @LicenseIds.setter def LicenseIds(self, LicenseIds): self._LicenseIds = LicenseIds def _deserialize(self, params): self._Count = params.get("Count") self._Status = params.get("Status") self._ExpireTime = params.get("ExpireTime") self._Duration = params.get("Duration") self._RemainDay = params.get("RemainDay") self._LicenseIds = params.get("LicenseIds") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ModifyDeviceRequest(AbstractModel): """ModifyDevice请求参数结构体 """ def __init__(self): r""" :param _ProjectId: 要修改设备归属项目的项目ID :type ProjectId: str :param _DeviceId: 要修改设备的设备ID :type DeviceId: str :param _DeviceName: 修改后的设备名称,不填则不修改 :type DeviceName: str :param _DeviceToken: 修改后的设备认证口令,不填则不修改 :type DeviceToken: str """ self._ProjectId = None self._DeviceId = None self._DeviceName = None self._DeviceToken = None @property def ProjectId(self): """要修改设备归属项目的项目ID :rtype: str """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId @property def DeviceId(self): """要修改设备的设备ID :rtype: str """ return self._DeviceId @DeviceId.setter def DeviceId(self, DeviceId): self._DeviceId = DeviceId @property def DeviceName(self): """修改后的设备名称,不填则不修改 :rtype: str """ return self._DeviceName @DeviceName.setter def DeviceName(self, DeviceName): self._DeviceName = DeviceName @property def DeviceToken(self): """修改后的设备认证口令,不填则不修改 :rtype: str """ return self._DeviceToken @DeviceToken.setter def DeviceToken(self, DeviceToken): self._DeviceToken = DeviceToken def _deserialize(self, params): self._ProjectId = params.get("ProjectId") self._DeviceId = params.get("DeviceId") self._DeviceName = params.get("DeviceName") self._DeviceToken = params.get("DeviceToken") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ModifyDeviceResponse(AbstractModel): """ModifyDevice返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class ModifyPolicyRequest(AbstractModel): """ModifyPolicy请求参数结构体 """ def __init__(self): r""" :param _ProjectId: 修改权限配置的项目ID :type ProjectId: str :param _RemoteDeviceId: 修改权限配置的远端设备ID :type RemoteDeviceId: str :param _FieldDeviceIds: 权限修改涉及的现场设备ID数组 :type FieldDeviceIds: list of str :param _PolicyMode: 修改的目标权限模式,black为黑名单,white为白名单 :type PolicyMode: str :param _ModifyMode: 修改模式,add为新增(添加现场设备I关联),remove为删除(解除现场设备关联),set为设置(更新现场设备关联) :type ModifyMode: str """ self._ProjectId = None self._RemoteDeviceId = None self._FieldDeviceIds = None self._PolicyMode = None self._ModifyMode = None @property def ProjectId(self): """修改权限配置的项目ID :rtype: str """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId @property def RemoteDeviceId(self): """修改权限配置的远端设备ID :rtype: str """ return self._RemoteDeviceId @RemoteDeviceId.setter def RemoteDeviceId(self, RemoteDeviceId): self._RemoteDeviceId = RemoteDeviceId @property def FieldDeviceIds(self): """权限修改涉及的现场设备ID数组 :rtype: list of str """ return self._FieldDeviceIds @FieldDeviceIds.setter def FieldDeviceIds(self, FieldDeviceIds): self._FieldDeviceIds = FieldDeviceIds @property def PolicyMode(self): """修改的目标权限模式,black为黑名单,white为白名单 :rtype: str """ return self._PolicyMode @PolicyMode.setter def PolicyMode(self, PolicyMode): self._PolicyMode = PolicyMode @property def ModifyMode(self): """修改模式,add为新增(添加现场设备I关联),remove为删除(解除现场设备关联),set为设置(更新现场设备关联) :rtype: str """ return self._ModifyMode @ModifyMode.setter def ModifyMode(self, ModifyMode): self._ModifyMode = ModifyMode def _deserialize(self, params): self._ProjectId = params.get("ProjectId") self._RemoteDeviceId = params.get("RemoteDeviceId") self._FieldDeviceIds = params.get("FieldDeviceIds") self._PolicyMode = params.get("PolicyMode") self._ModifyMode = params.get("ModifyMode") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ModifyPolicyResponse(AbstractModel): """ModifyPolicy返回参数结构体 """ def __init__(self): r""" :param _FailedInsertIds: 添加关联失败的现场设备ID列表 :type FailedInsertIds: list of str :param _FailedDeleteIds: 解除关联失败的现场设备ID列表 :type FailedDeleteIds: list of str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._FailedInsertIds = None self._FailedDeleteIds = None self._RequestId = None @property def FailedInsertIds(self): """添加关联失败的现场设备ID列表 :rtype: list of str """ return self._FailedInsertIds @FailedInsertIds.setter def FailedInsertIds(self, FailedInsertIds): self._FailedInsertIds = FailedInsertIds @property def FailedDeleteIds(self): """解除关联失败的现场设备ID列表 :rtype: list of str """ return self._FailedDeleteIds @FailedDeleteIds.setter def FailedDeleteIds(self, FailedDeleteIds): self._FailedDeleteIds = FailedDeleteIds @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._FailedInsertIds = params.get("FailedInsertIds") self._FailedDeleteIds = params.get("FailedDeleteIds") self._RequestId = params.get("RequestId") class ModifyProjectRequest(AbstractModel): """ModifyProject请求参数结构体 """ def __init__(self): r""" :param _ProjectId: 目标修改项目的项目ID :type ProjectId: str :param _ProjectName: 修改后的项目名称,不填则不修改 :type ProjectName: str :param _ProjectDescription: 修改后的项目描述,不填则不修改 :type ProjectDescription: str :param _PolicyMode: 修改后的权限模式,black为黑名单,white为白名单,不填则不修改 :type PolicyMode: str """ self._ProjectId = None self._ProjectName = None self._ProjectDescription = None self._PolicyMode = None @property def ProjectId(self): """目标修改项目的项目ID :rtype: str """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId @property def ProjectName(self): """修改后的项目名称,不填则不修改 :rtype: str """ return self._ProjectName @ProjectName.setter def ProjectName(self, ProjectName): self._ProjectName = ProjectName @property def ProjectDescription(self): """修改后的项目描述,不填则不修改 :rtype: str """ return self._ProjectDescription @ProjectDescription.setter def ProjectDescription(self, ProjectDescription): self._ProjectDescription = ProjectDescription @property def PolicyMode(self): """修改后的权限模式,black为黑名单,white为白名单,不填则不修改 :rtype: str """ return self._PolicyMode @PolicyMode.setter def PolicyMode(self, PolicyMode): self._PolicyMode = PolicyMode def _deserialize(self, params): self._ProjectId = params.get("ProjectId") self._ProjectName = params.get("ProjectName") self._ProjectDescription = params.get("ProjectDescription") self._PolicyMode = params.get("PolicyMode") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ModifyProjectResponse(AbstractModel): """ModifyProject返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class MultiNet(AbstractModel): """多网的网卡状态信息 """ def __init__(self): r""" :param _NetId: 网卡序号 :type NetId: int :param _NetIp: 网卡IP :type NetIp: str :param _Rtt: 时延,单位ms :type Rtt: list of int :param _Lost: 丢包率,单位% :type Lost: list of int :param _SendBps: 发送bps,单位kbps :type SendBps: list of int :param _RecvBps: 接收bps,单位kbps :type RecvBps: list of int """ self._NetId = None self._NetIp = None self._Rtt = None self._Lost = None self._SendBps = None self._RecvBps = None @property def NetId(self): """网卡序号 :rtype: int """ return self._NetId @NetId.setter def NetId(self, NetId): self._NetId = NetId @property def NetIp(self): """网卡IP :rtype: str """ return self._NetIp @NetIp.setter def NetIp(self, NetIp): self._NetIp = NetIp @property def Rtt(self): """时延,单位ms :rtype: list of int """ return self._Rtt @Rtt.setter def Rtt(self, Rtt): self._Rtt = Rtt @property def Lost(self): """丢包率,单位% :rtype: list of int """ return self._Lost @Lost.setter def Lost(self, Lost): self._Lost = Lost @property def SendBps(self): """发送bps,单位kbps :rtype: list of int """ return self._SendBps @SendBps.setter def SendBps(self, SendBps): self._SendBps = SendBps @property def RecvBps(self): """接收bps,单位kbps :rtype: list of int """ return self._RecvBps @RecvBps.setter def RecvBps(self, RecvBps): self._RecvBps = RecvBps def _deserialize(self, params): self._NetId = params.get("NetId") self._NetIp = params.get("NetIp") self._Rtt = params.get("Rtt") self._Lost = params.get("Lost") self._SendBps = params.get("SendBps") self._RecvBps = params.get("RecvBps") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class PolicyInfo(AbstractModel): """权限信息 """ def __init__(self): r""" :param _RemoteDeviceId: 远端设备ID :type RemoteDeviceId: str :param _FieldDeviceIds: 关联的现场设备ID :type FieldDeviceIds: list of str :param _ModifyTime: 最近添加时间 :type ModifyTime: str """ self._RemoteDeviceId = None self._FieldDeviceIds = None self._ModifyTime = None @property def RemoteDeviceId(self): """远端设备ID :rtype: str """ return self._RemoteDeviceId @RemoteDeviceId.setter def RemoteDeviceId(self, RemoteDeviceId): self._RemoteDeviceId = RemoteDeviceId @property def FieldDeviceIds(self): """关联的现场设备ID :rtype: list of str """ return self._FieldDeviceIds @FieldDeviceIds.setter def FieldDeviceIds(self, FieldDeviceIds): self._FieldDeviceIds = FieldDeviceIds @property def ModifyTime(self): """最近添加时间 :rtype: str """ return self._ModifyTime @ModifyTime.setter def ModifyTime(self, ModifyTime): self._ModifyTime = ModifyTime def _deserialize(self, params): self._RemoteDeviceId = params.get("RemoteDeviceId") self._FieldDeviceIds = params.get("FieldDeviceIds") self._ModifyTime = params.get("ModifyTime") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ProjectInfo(AbstractModel): """项目信息 """ def __init__(self): r""" :param _ProjectId: 项目ID :type ProjectId: str :param _ProjectName: 项目名称 :type ProjectName: str :param _ProjectDescription: 项目描述 :type ProjectDescription: str :param _PolicyMode: 项目权限模式,black为黑名单,white为白名单 :type PolicyMode: str :param _ModifyTime: 项目信息修改时间 :type ModifyTime: str """ self._ProjectId = None self._ProjectName = None self._ProjectDescription = None self._PolicyMode = None self._ModifyTime = None @property def ProjectId(self): """项目ID :rtype: str """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId @property def ProjectName(self): """项目名称 :rtype: str """ return self._ProjectName @ProjectName.setter def ProjectName(self, ProjectName): self._ProjectName = ProjectName @property def ProjectDescription(self): """项目描述 :rtype: str """ return self._ProjectDescription @ProjectDescription.setter def ProjectDescription(self, ProjectDescription): self._ProjectDescription = ProjectDescription @property def PolicyMode(self): """项目权限模式,black为黑名单,white为白名单 :rtype: str """ return self._PolicyMode @PolicyMode.setter def PolicyMode(self, PolicyMode): self._PolicyMode = PolicyMode @property def ModifyTime(self): """项目信息修改时间 :rtype: str """ return self._ModifyTime @ModifyTime.setter def ModifyTime(self, ModifyTime): self._ModifyTime = ModifyTime def _deserialize(self, params): self._ProjectId = params.get("ProjectId") self._ProjectName = params.get("ProjectName") self._ProjectDescription = params.get("ProjectDescription") self._PolicyMode = params.get("PolicyMode") self._ModifyTime = params.get("ModifyTime") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class RecentSessionInfo(AbstractModel): """最新会话信息 """ def __init__(self): r""" :param _SessionId: 会话ID :type SessionId: str :param _RemoteDeviceId: 远端设备ID :type RemoteDeviceId: str :param _FieldDeviceId: 现场设备ID :type FieldDeviceId: str :param _Resolution: 分辨率 :type Resolution: str :param _StartTime: 会话开始时间 :type StartTime: int :param _LatestUpdateTime: 最后更新时间 :type LatestUpdateTime: int """ self._SessionId = None self._RemoteDeviceId = None self._FieldDeviceId = None self._Resolution = None self._StartTime = None self._LatestUpdateTime = None @property def SessionId(self): """会话ID :rtype: str """ return self._SessionId @SessionId.setter def SessionId(self, SessionId): self._SessionId = SessionId @property def RemoteDeviceId(self): """远端设备ID :rtype: str """ return self._RemoteDeviceId @RemoteDeviceId.setter def RemoteDeviceId(self, RemoteDeviceId): self._RemoteDeviceId = RemoteDeviceId @property def FieldDeviceId(self): """现场设备ID :rtype: str """ return self._FieldDeviceId @FieldDeviceId.setter def FieldDeviceId(self, FieldDeviceId): self._FieldDeviceId = FieldDeviceId @property def Resolution(self): """分辨率 :rtype: str """ return self._Resolution @Resolution.setter def Resolution(self, Resolution): self._Resolution = Resolution @property def StartTime(self): """会话开始时间 :rtype: int """ return self._StartTime @StartTime.setter def StartTime(self, StartTime): self._StartTime = StartTime @property def LatestUpdateTime(self): """最后更新时间 :rtype: int """ return self._LatestUpdateTime @LatestUpdateTime.setter def LatestUpdateTime(self, LatestUpdateTime): self._LatestUpdateTime = LatestUpdateTime def _deserialize(self, params): self._SessionId = params.get("SessionId") self._RemoteDeviceId = params.get("RemoteDeviceId") self._FieldDeviceId = params.get("FieldDeviceId") self._Resolution = params.get("Resolution") self._StartTime = params.get("StartTime") self._LatestUpdateTime = params.get("LatestUpdateTime") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class SessionDeviceDetail(AbstractModel): """会话数据详单(按设备区分) """ def __init__(self): r""" :param _DeviceType: 设备类型:field或remote :type DeviceType: str :param _StartTime: 起始点位时间,单位:秒 :type StartTime: int :param _EndTime: 结束点位时间,单位:秒 :type EndTime: int :param _SessionId: 会话ID :type SessionId: str :param _Rate: 码率,单位:kbps :type Rate: list of int :param _Fps: 帧率 :type Fps: list of int :param _Lost: 丢包率,单位:% :type Lost: list of float :param _NetworkLatency: 网络时延,单位:ms :type NetworkLatency: list of int :param _VideoLatency: 视频时延,单位:ms :type VideoLatency: list of int :param _CpuUsed: CPU使用率,单位:% :type CpuUsed: list of float :param _MemUsed: 内存使用率,单位:% :type MemUsed: list of float :param _TimeOffset: 时间偏移量,单位:秒 :type TimeOffset: list of int non-negative :param _ProjectId: 项目ID :type ProjectId: str :param _DeviceId: 设备ID :type DeviceId: str :param _Ver: sdk版本 :type Ver: str :param _SdkMode: 模式(p2p/server) :type SdkMode: str :param _DecodeCost: 解码耗时,单位:ms :type DecodeCost: list of int :param _RenderConst: 【已废弃,使用RenderCost】 注意:此字段可能返回 null,表示取不到有效值。 :type RenderConst: list of int :param _K100: 卡顿k100 :type K100: list of float :param _K150: 卡顿k150 :type K150: list of float :param _NACK: nack请求数 :type NACK: list of int :param _BitRateEstimate: 服务端调控码率,单位:kbps :type BitRateEstimate: list of int :param _Width: 宽度 :type Width: int :param _Height: 高度 :type Height: int :param _EncodeCost: 编码耗时,单位:ms :type EncodeCost: list of int :param _CaptureCost: 采集耗时,单位:ms :type CaptureCost: list of int :param _RenderCost: 渲染耗时,单位:ms :type RenderCost: list of int :param _ConfigWidth: 配置宽度 :type ConfigWidth: int :param _ConfigHeight: 配置高度 :type ConfigHeight: int :param _FrameDelta: 平均帧间隔 :type FrameDelta: list of int :param _MaxFrameDelta: 最大帧间隔 :type MaxFrameDelta: list of int :param _TotalBitrateEstimate: 总码率评估,单位:kbps :type TotalBitrateEstimate: list of int :param _Lag100Duration: 帧间隔大于100ms的卡顿时长 :type Lag100Duration: list of int :param _Lag150Duration: 帧间隔大于150ms的卡顿时长 :type Lag150Duration: list of int :param _MultiMode: 是否开启多网:0 单网,1 多网 :type MultiMode: int :param _MultiNet: 多网卡信息 :type MultiNet: list of MultiNet """ self._DeviceType = None self._StartTime = None self._EndTime = None self._SessionId = None self._Rate = None self._Fps = None self._Lost = None self._NetworkLatency = None self._VideoLatency = None self._CpuUsed = None self._MemUsed = None self._TimeOffset = None self._ProjectId = None self._DeviceId = None self._Ver = None self._SdkMode = None self._DecodeCost = None self._RenderConst = None self._K100 = None self._K150 = None self._NACK = None self._BitRateEstimate = None self._Width = None self._Height = None self._EncodeCost = None self._CaptureCost = None self._RenderCost = None self._ConfigWidth = None self._ConfigHeight = None self._FrameDelta = None self._MaxFrameDelta = None self._TotalBitrateEstimate = None self._Lag100Duration = None self._Lag150Duration = None self._MultiMode = None self._MultiNet = None @property def DeviceType(self): """设备类型:field或remote :rtype: str """ return self._DeviceType @DeviceType.setter def DeviceType(self, DeviceType): self._DeviceType = DeviceType @property def StartTime(self): """起始点位时间,单位:秒 :rtype: int """ return self._StartTime @StartTime.setter def StartTime(self, StartTime): self._StartTime = StartTime @property def EndTime(self): """结束点位时间,单位:秒 :rtype: int """ return self._EndTime @EndTime.setter def EndTime(self, EndTime): self._EndTime = EndTime @property def SessionId(self): """会话ID :rtype: str """ return self._SessionId @SessionId.setter def SessionId(self, SessionId): self._SessionId = SessionId @property def Rate(self): """码率,单位:kbps :rtype: list of int """ return self._Rate @Rate.setter def Rate(self, Rate): self._Rate = Rate @property def Fps(self): """帧率 :rtype: list of int """ return self._Fps @Fps.setter def Fps(self, Fps): self._Fps = Fps @property def Lost(self): """丢包率,单位:% :rtype: list of float """ return self._Lost @Lost.setter def Lost(self, Lost): self._Lost = Lost @property def NetworkLatency(self): """网络时延,单位:ms :rtype: list of int """ return self._NetworkLatency @NetworkLatency.setter def NetworkLatency(self, NetworkLatency): self._NetworkLatency = NetworkLatency @property def VideoLatency(self): """视频时延,单位:ms :rtype: list of int """ return self._VideoLatency @VideoLatency.setter def VideoLatency(self, VideoLatency): self._VideoLatency = VideoLatency @property def CpuUsed(self): """CPU使用率,单位:% :rtype: list of float """ return self._CpuUsed @CpuUsed.setter def CpuUsed(self, CpuUsed): self._CpuUsed = CpuUsed @property def MemUsed(self): """内存使用率,单位:% :rtype: list of float """ return self._MemUsed @MemUsed.setter def MemUsed(self, MemUsed): self._MemUsed = MemUsed @property def TimeOffset(self): """时间偏移量,单位:秒 :rtype: list of int non-negative """ return self._TimeOffset @TimeOffset.setter def TimeOffset(self, TimeOffset): self._TimeOffset = TimeOffset @property def ProjectId(self): """项目ID :rtype: str """ return self._ProjectId @ProjectId.setter def ProjectId(self, ProjectId): self._ProjectId = ProjectId @property def DeviceId(self): """设备ID :rtype: str """ return self._DeviceId @DeviceId.setter def DeviceId(self, DeviceId): self._DeviceId = DeviceId @property def Ver(self): """sdk版本 :rtype: str """ return self._Ver @Ver.setter def Ver(self, Ver): self._Ver = Ver @property def SdkMode(self): """模式(p2p/server) :rtype: str """ return self._SdkMode @SdkMode.setter def SdkMode(self, SdkMode): self._SdkMode = SdkMode @property def DecodeCost(self): """解码耗时,单位:ms :rtype: list of int """ return self._DecodeCost @DecodeCost.setter def DecodeCost(self, DecodeCost): self._DecodeCost = DecodeCost @property def RenderConst(self): warnings.warn("parameter `RenderConst` is deprecated", DeprecationWarning) """【已废弃,使用RenderCost】 注意:此字段可能返回 null,表示取不到有效值。 :rtype: list of int """ return self._RenderConst @RenderConst.setter def RenderConst(self, RenderConst): warnings.warn("parameter `RenderConst` is deprecated", DeprecationWarning) self._RenderConst = RenderConst @property def K100(self): """卡顿k100 :rtype: list of float """ return self._K100 @K100.setter def K100(self, K100): self._K100 = K100 @property def K150(self): """卡顿k150 :rtype: list of float """ return self._K150 @K150.setter def K150(self, K150): self._K150 = K150 @property def NACK(self): """nack请求数 :rtype: list of int """ return self._NACK @NACK.setter def NACK(self, NACK): self._NACK = NACK @property def BitRateEstimate(self): """服务端调控码率,单位:kbps :rtype: list of int """ return self._BitRateEstimate @BitRateEstimate.setter def BitRateEstimate(self, BitRateEstimate): self._BitRateEstimate = BitRateEstimate @property def Width(self): """宽度 :rtype: int """ return self._Width @Width.setter def Width(self, Width): self._Width = Width @property def Height(self): """高度 :rtype: int """ return self._Height @Height.setter def Height(self, Height): self._Height = Height @property def EncodeCost(self): """编码耗时,单位:ms :rtype: list of int """ return self._EncodeCost @EncodeCost.setter def EncodeCost(self, EncodeCost): self._EncodeCost = EncodeCost @property def CaptureCost(self): """采集耗时,单位:ms :rtype: list of int """ return self._CaptureCost @CaptureCost.setter def CaptureCost(self, CaptureCost): self._CaptureCost = CaptureCost @property def RenderCost(self): """渲染耗时,单位:ms :rtype: list of int """ return self._RenderCost @RenderCost.setter def RenderCost(self, RenderCost): self._RenderCost = RenderCost @property def ConfigWidth(self): """配置宽度 :rtype: int """ return self._ConfigWidth @ConfigWidth.setter def ConfigWidth(self, ConfigWidth): self._ConfigWidth = ConfigWidth @property def ConfigHeight(self): """配置高度 :rtype: int """ return self._ConfigHeight @ConfigHeight.setter def ConfigHeight(self, ConfigHeight): self._ConfigHeight = ConfigHeight @property def FrameDelta(self): """平均帧间隔 :rtype: list of int """ return self._FrameDelta @FrameDelta.setter def FrameDelta(self, FrameDelta): self._FrameDelta = FrameDelta @property def MaxFrameDelta(self): """最大帧间隔 :rtype: list of int """ return self._MaxFrameDelta @MaxFrameDelta.setter def MaxFrameDelta(self, MaxFrameDelta): self._MaxFrameDelta = MaxFrameDelta @property def TotalBitrateEstimate(self): """总码率评估,单位:kbps :rtype: list of int """ return self._TotalBitrateEstimate @TotalBitrateEstimate.setter def TotalBitrateEstimate(self, TotalBitrateEstimate): self._TotalBitrateEstimate = TotalBitrateEstimate @property def Lag100Duration(self): """帧间隔大于100ms的卡顿时长 :rtype: list of int """ return self._Lag100Duration @Lag100Duration.setter def Lag100Duration(self, Lag100Duration): self._Lag100Duration = Lag100Duration @property def Lag150Duration(self): """帧间隔大于150ms的卡顿时长 :rtype: list of int """ return self._Lag150Duration @Lag150Duration.setter def Lag150Duration(self, Lag150Duration): self._Lag150Duration = Lag150Duration @property def MultiMode(self): """是否开启多网:0 单网,1 多网 :rtype: int """ return self._MultiMode @MultiMode.setter def MultiMode(self, MultiMode): self._MultiMode = MultiMode @property def MultiNet(self): """多网卡信息 :rtype: list of MultiNet """ return self._MultiNet @MultiNet.setter def MultiNet(self, MultiNet): self._MultiNet = MultiNet def _deserialize(self, params): self._DeviceType = params.get("DeviceType") self._StartTime = params.get("StartTime") self._EndTime = params.get("EndTime") self._SessionId = params.get("SessionId") self._Rate = params.get("Rate") self._Fps = params.get("Fps") self._Lost = params.get("Lost") self._NetworkLatency = params.get("NetworkLatency") self._VideoLatency = params.get("VideoLatency") self._CpuUsed = params.get("CpuUsed") self._MemUsed = params.get("MemUsed") self._TimeOffset = params.get("TimeOffset") self._ProjectId = params.get("ProjectId") self._DeviceId = params.get("DeviceId") self._Ver = params.get("Ver") self._SdkMode = params.get("SdkMode") self._DecodeCost = params.get("DecodeCost") self._RenderConst = params.get("RenderConst") self._K100 = params.get("K100") self._K150 = params.get("K150") self._NACK = params.get("NACK") self._BitRateEstimate = params.get("BitRateEstimate") self._Width = params.get("Width") self._Height = params.get("Height") self._EncodeCost = params.get("EncodeCost") self._CaptureCost = params.get("CaptureCost") self._RenderCost = params.get("RenderCost") self._ConfigWidth = params.get("ConfigWidth") self._ConfigHeight = params.get("ConfigHeight") self._FrameDelta = params.get("FrameDelta") self._MaxFrameDelta = params.get("MaxFrameDelta") self._TotalBitrateEstimate = params.get("TotalBitrateEstimate") self._Lag100Duration = params.get("Lag100Duration") self._Lag150Duration = params.get("Lag150Duration") self._MultiMode = params.get("MultiMode") if params.get("MultiNet") is not None: self._MultiNet = [] for item in params.get("MultiNet"): obj = MultiNet() obj._deserialize(item) self._MultiNet.append(obj) memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class SessionInfo(AbstractModel): """会话信息 """ def __init__(self): r""" :param _SessionId: 会话ID :type SessionId: str :param _RemoteDeviceId: 远端设备ID :type RemoteDeviceId: str :param _FieldDeviceId: 现场设备ID :type FieldDeviceId: str :param _Resolution: 分辨率 :type Resolution: str :param _StartTime: 会话开始时间 :type StartTime: int :param _EndTime: 会话结束时间 :type EndTime: int :param _Quality: 通话质量:good|normal|bad,对应优良差 :type Quality: str """ self._SessionId = None self._RemoteDeviceId = None self._FieldDeviceId = None self._Resolution = None self._StartTime = None self._EndTime = None self._Quality = None @property def SessionId(self): """会话ID :rtype: str """ return self._SessionId @SessionId.setter def SessionId(self, SessionId): self._SessionId = SessionId @property def RemoteDeviceId(self): """远端设备ID :rtype: str """ return self._RemoteDeviceId @RemoteDeviceId.setter def RemoteDeviceId(self, RemoteDeviceId): self._RemoteDeviceId = RemoteDeviceId @property def FieldDeviceId(self): """现场设备ID :rtype: str """ return self._FieldDeviceId @FieldDeviceId.setter def FieldDeviceId(self, FieldDeviceId): self._FieldDeviceId = FieldDeviceId @property def Resolution(self): """分辨率 :rtype: str """ return self._Resolution @Resolution.setter def Resolution(self, Resolution): self._Resolution = Resolution @property def StartTime(self): """会话开始时间 :rtype: int """ return self._StartTime @StartTime.setter def StartTime(self, StartTime): self._StartTime = StartTime @property def EndTime(self): """会话结束时间 :rtype: int """ return self._EndTime @EndTime.setter def EndTime(self, EndTime): self._EndTime = EndTime @property def Quality(self): """通话质量:good|normal|bad,对应优良差 :rtype: str """ return self._Quality @Quality.setter def Quality(self, Quality): self._Quality = Quality def _deserialize(self, params): self._SessionId = params.get("SessionId") self._RemoteDeviceId = params.get("RemoteDeviceId") self._FieldDeviceId = params.get("FieldDeviceId") self._Resolution = params.get("Resolution") self._StartTime = params.get("StartTime") self._EndTime = params.get("EndTime") self._Quality = params.get("Quality") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class SessionIntervalStatistic(AbstractModel): """单位时间间隔的会话统计数据 """ def __init__(self): r""" :param _ActiveFieldDeviceNum: 活跃现场设备数 :type ActiveFieldDeviceNum: int :param _ActiveRemoteDeviceNum: 活跃远端设备数 :type ActiveRemoteDeviceNum: int :param _SessionNum: 会话数量 :type SessionNum: int :param _TotalDuration: 会话时长,单位:分钟 :type TotalDuration: int :param _StartTime: 时间戳,单位:秒 :type StartTime: int :param _EndTime: 时间戳,单位:秒 :type EndTime: int :param _NotBadSessionRatio: 优良会话占比,单位:% :type NotBadSessionRatio: int """ self._ActiveFieldDeviceNum = None self._ActiveRemoteDeviceNum = None self._SessionNum = None self._TotalDuration = None self._StartTime = None self._EndTime = None self._NotBadSessionRatio = None @property def ActiveFieldDeviceNum(self): """活跃现场设备数 :rtype: int """ return self._ActiveFieldDeviceNum @ActiveFieldDeviceNum.setter def ActiveFieldDeviceNum(self, ActiveFieldDeviceNum): self._ActiveFieldDeviceNum = ActiveFieldDeviceNum @property def ActiveRemoteDeviceNum(self): """活跃远端设备数 :rtype: int """ return self._ActiveRemoteDeviceNum @ActiveRemoteDeviceNum.setter def ActiveRemoteDeviceNum(self, ActiveRemoteDeviceNum): self._ActiveRemoteDeviceNum = ActiveRemoteDeviceNum @property def SessionNum(self): """会话数量 :rtype: int """ return self._SessionNum @SessionNum.setter def SessionNum(self, SessionNum): self._SessionNum = SessionNum @property def TotalDuration(self): """会话时长,单位:分钟 :rtype: int """ return self._TotalDuration @TotalDuration.setter def TotalDuration(self, TotalDuration): self._TotalDuration = TotalDuration @property def StartTime(self): """时间戳,单位:秒 :rtype: int """ return self._StartTime @StartTime.setter def StartTime(self, StartTime): self._StartTime = StartTime @property def EndTime(self): """时间戳,单位:秒 :rtype: int """ return self._EndTime @EndTime.setter def EndTime(self, EndTime): self._EndTime = EndTime @property def NotBadSessionRatio(self): """优良会话占比,单位:% :rtype: int """ return self._NotBadSessionRatio @NotBadSessionRatio.setter def NotBadSessionRatio(self, NotBadSessionRatio): self._NotBadSessionRatio = NotBadSessionRatio def _deserialize(self, params): self._ActiveFieldDeviceNum = params.get("ActiveFieldDeviceNum") self._ActiveRemoteDeviceNum = params.get("ActiveRemoteDeviceNum") self._SessionNum = params.get("SessionNum") self._TotalDuration = params.get("TotalDuration") self._StartTime = params.get("StartTime") self._EndTime = params.get("EndTime") self._NotBadSessionRatio = params.get("NotBadSessionRatio") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set))
Memory