using Application.Domain.Entities; using System.ComponentModel.DataAnnotations; namespace IoT.Shared.Application.Models { public enum DataKeys { [IoTDataConfig( IoTDataType.Info,IoTValueType.Int,hide:true)] [Display(Name = "设备分类")] DeviceId, [IoTDataConfig(IoTDataType.Info,valueType: IoTValueType.Array)] [Display(Name = "指令")] Buttons, [IoTDataConfig(IoTDataType.Info)] [Display(Name = "版本")] GatewayVersion, [IoTDataConfig(IoTDataType.Info, hide: true)] [Display(Name = "版本")] IrVersion, [Display(Name = "空调按键")] [IoTDataConfig(valueType:IoTValueType.Int)] KeyPress1, [Display(Name = "电视按键")] [IoTDataConfig(valueType: IoTValueType.Int)] KeyPress2, [Display(Name = "机顶盒按键")] [IoTDataConfig(valueType: IoTValueType.Int)] KeyPress3, [Display(Name = "DVD按键")] [IoTDataConfig(valueType: IoTValueType.Int)] KeyPress4, [Display(Name = "其他按键")] [IoTDataConfig(valueType: IoTValueType.Int)] KeyPress5, [Display(Name = "设备1")] [IoTDataConfig(valueType: IoTValueType.Double)] Device1, [Display(Name = "设备2")] [IoTDataConfig(valueType: IoTValueType.Double)] Device2, [Display(Name = "设备3")] [IoTDataConfig(valueType: IoTValueType.Double)] Device3, [Display(Name = "设备4")] [IoTDataConfig(valueType: IoTValueType.Double)] Device4, [Display(Name = "设备5")] [IoTDataConfig(valueType: IoTValueType.Double)] Device5, [Display(Name = "设备6")] [IoTDataConfig(valueType: IoTValueType.Double)] Device6, [Display(Name = "设备7")] [IoTDataConfig(valueType: IoTValueType.Double)] Device7, [Display(Name = "设备8")] [IoTDataConfig(valueType: IoTValueType.Double)] Device8, [IoTDataConfig(hide: true)] [Display(Name = "地址")] Address, [IoTDataConfig(hide:true)] [Display(Name = "设备类型")] ZoneType, [IoTDataConfig(IoTDataType.Info, IoTValueType.Int, hide: true)] [Display(Name = "端口")] EndPoint, [IoTDataConfig(valueType: IoTValueType.Int, hide: true)] [Display(Name = "端口数")] EndPointCount, [Display(Name = "电量")] [IoTDataConfig(IoTDataType.Info, IoTValueType.Double,"kWh")] Electricity, [Display(Name = "总量乘数")] [IoTDataConfig(IoTDataType.Info, IoTValueType.Int, hide: true)] ElectricityMultiplier, [Display(Name = "总量除数")] [IoTDataConfig(IoTDataType.Info, IoTValueType.Int, hide: true)] ElectricityDivisor, [Display(Name = "电流乘数")] [IoTDataConfig(IoTDataType.Info, IoTValueType.Int, hide: true)] PowerMultiplier, [Display(Name = "电流除数")] [IoTDataConfig(IoTDataType.Info, IoTValueType.Int, hide: true)] PowerDivisor, [Display(Name = "设备数量")] [IoTDataConfig(valueType: IoTValueType.Int)] DeviceCount, [IoTDataConfig(valueType: IoTValueType.Double,unit:"W")] [Display(Name = "功率")] Power, [Display(Name = "光照度")] [IoTDataConfig(valueType:IoTValueType.Int, unit: "lux")] Light, [Display(Name = "温度")] [IoTDataConfig(valueType:IoTValueType.Double, unit: "℃")] Temperature, [Display(Name = "湿度")] [IoTDataConfig(valueType: IoTValueType.Double, unit: "RH%")] Humidity, [IoTDataConfig(IoTDataType.Event,IoTValueType.Int, enumValues: "正常,报警")] [Display(Name = "警报")] Warning, [IoTDataConfig(hide:true)] [Display(Name = "FFmpeg路径")] FFmpegFile, [IoTDataConfig(hide: true)] [Display(Name = "FFmpeg参数")] FFmpegArgs, [IoTDataConfig(IoTDataType.Info)] [Display(Name = "云台地址")] PtzAddress, [IoTDataConfig(IoTDataType.Info, IoTValueType.Int,enumValues:"是,否")] [Display(Name = "缩放支持")] Ptz3DZoomSupport, [IoTDataConfig(IoTDataType.Info ,hide: true)] [Display(Name = "设备地址")] DeviceUrl, [IoTDataConfig(IoTDataType.Info, hide: true)] [Display(Name = "媒体地址")] MediaUrl, [Display(Name = "Profiles")] [IoTDataConfig(IoTDataType.Info,valueType:IoTValueType.Object)] Profiles, [IoTDataConfig(IoTDataType.Data)] [Display(Name = "ProfileToken")] ProfileToken, [IoTDataConfig(IoTDataType.Info, hide: true)] [Display(Name = "截图地址")] SnapshotUri, [IoTDataConfig(IoTDataType.Info, hide: true)] [Display(Name = "流地址")] StreamUri, [IoTDataConfig(IoTDataType.Info)] [Display(Name = "需要认证")] NeedAuth, [IoTDataConfig(IoTDataType.Info)] [Display(Name = "已认证")] HasAuth, [IoTDataConfig(IoTDataType.Info)] [Display(Name = "推流")] Push, [IoTDataConfig(IoTDataType.Info)] [Display(Name = "录像")] Record, [IoTDataConfig(valueType:IoTValueType.Int,unit: "μg/m³")] [Display(Name = "PM2.5")] PM25, [IoTDataConfig(valueType: IoTValueType.Int, unit: "μg/m³")] [Display(Name = "PM10")] PM100, [IoTDataConfig(valueType: IoTValueType.Int, unit: "μg/m³")] [Display(Name = "PM1.0")] PM10, [IoTDataConfig(IoTDataType.Info,IoTValueType.Double)] [Display(Name = "电量")] Battery, [IoTDataConfig(IoTDataType.Info,valueType: IoTValueType.Int, enumValues: "正常,欠压")] [Display(Name = "电压低")] LowVoltage, [Display(Name = "状态")] [IoTDataConfig(valueType: IoTValueType.Int, enumValues: "关,开")] PowerState, [Display(Name = "L1状态")] [IoTDataConfig(valueType: IoTValueType.Int, enumValues: "关,开")] L1State, [Display(Name = "L2状态")] [IoTDataConfig(valueType: IoTValueType.Int, enumValues: "关,开")] L2State, [Display(Name = "L3状态")] [IoTDataConfig(valueType: IoTValueType.Int, enumValues: "关,开")] L3State, [Display(Name = "状态")] [IoTDataConfig(valueType: IoTValueType.Int, enumValues: "关,开,停")] CurtainState, [Display(Name = "亮度")] [IoTDataConfig(valueType: IoTValueType.Int)] Brightness, [Display(Name = "色调")] [IoTDataConfig(valueType: IoTValueType.Int)] Hue, [Display(Name = "饱和度")] [IoTDataConfig(valueType: IoTValueType.Int)] Saturation, [Display(Name = "色温")] [IoTDataConfig(valueType: IoTValueType.Int)] ColorTemperature, [Display(Name = "状态")] [IoTDataConfig(IoTDataType.Event, IoTValueType.String)] Status, [Display(Name = "型号")] [IoTDataConfig(IoTDataType.Info)] Hardware, [Display(Name = "周期")] [IoTDataConfig(IoTDataType.Info)] Period, } }