| | |
| | | /// 获取属性当前状态 |
| | | /// </summary> |
| | | /// <param name="key"></param> |
| | | /// <param name="defaultValue">默认值</param> |
| | | /// <returns></returns> |
| | | public string GetAttrState(string key, string defaultValue = "0") |
| | | { |
| | |
| | | if (string.IsNullOrEmpty(attrState.state)) |
| | | { |
| | | //二级查询keyValue值 |
| | | return GetOriginalState(key); |
| | | return GetOriginalState(key, defaultValue); |
| | | } |
| | | return attrState.state; |
| | | } |
| | |
| | | /// 默认值:0 |
| | | /// </summary> |
| | | /// <param name="key">语雀定义的属性值</param> |
| | | /// <param name="defaultValue">默认值</param> |
| | | /// <returns></returns> |
| | | public string GetOriginalState(string key) |
| | | public string GetOriginalState(string key, string defaultValue) |
| | | { |
| | | var originalState = status.Find((s) => s.key == key.ToString()); |
| | | if (originalState == null || string.IsNullOrEmpty(originalState.value)) |
| | | { |
| | | return "0"; |
| | | return defaultValue; |
| | | } |
| | | return originalState.value; |
| | | } |
| | |
| | | string iconPath = spk.Replace(".", ""); |
| | | switch (spk) |
| | | { |
| | | case SPK.SensorDryContact2: |
| | | case SPK.OtherCommon: |
| | | iconPath = "sensordryContact"; |
| | | break; |
| | | //case SPK.SensorLight: |
| | | // iconPath = "lightswitch"; |
| | | // break; |
| | | case SPK.AirSwitchP3: |
| | | iconPath = "electricalbreaker"; |
| | | break; |
| | |
| | | case SPK.HvacFan: |
| | | iconPath = "electricalfan"; |
| | | break; |
| | | case SPK.HvacFloorHeat: |
| | | case SPK.HvacFloorHeat:case SPK.HvacFloorHeatPanel: |
| | | iconPath = "floorHeatstandard"; |
| | | break; |
| | | case SPK.ElectricTuyaFan2: |
| | |
| | | /// 设备spk |
| | | /// </summary> |
| | | public string spk = ""; |
| | | /// <summary> |
| | | /// 扩展信息 |
| | | /// 字符串 |
| | | /// </summary> |
| | | public string extend = ""; |
| | | |
| | | private string _SpkCategory = string.Empty; |
| | | /// <summary> |
| | |
| | | public bool online { |
| | | get |
| | | { |
| | | if (spk == SPK.AirSwitchP3) |
| | | if (spk == SPK.AirSwitchP3|| spk == SPK.ElectricalTvHisense) |
| | | { |
| | | return _online; |
| | | } |
| | |
| | | /// 更新时间 |
| | | /// </summary> |
| | | public DateTime refreshTime = DateTime.MinValue; |
| | | /// <summary> |
| | | /// 最后更新状态的时间 |
| | | /// </summary> |
| | | [Newtonsoft.Json.JsonIgnore] |
| | | public DateTime updateTime = DateTime.MinValue; |
| | | |
| | | /// <summary> |
| | | /// 获取本地控制数据 |
| | |
| | | public const string Temperature = "temperature"; |
| | | public const string Hcho = "hcho"; |
| | | public const string Humidity = "humidity"; |
| | | /// <summary> |
| | | /// 照度 |
| | | /// </summary> |
| | | public const string Illuminance = "illuminance"; |
| | | public const string Pm25 = "pm25"; |
| | | public const string Pm10 = "pm10"; |
| | | public const string Tvoc = "tvoc"; |
| | | /// <summary> |
| | | /// 状态,传感器 |
| | |
| | | public static class SPK |
| | | { |
| | | /// <summary> |
| | | /// 未知SPK |
| | | /// (自定义) |
| | | /// </summary> |
| | | public const string NULL = "NULL"; |
| | | /// <summary> |
| | | /// 西墨可视对讲门口机 |
| | | /// (自定义) |
| | | /// </summary> |
| | | public const string LinphoneXiMo = "door.gate"; |
| | | /// <summary> |
| | | /// 群控(自定义) |
| | | /// </summary> |
| | | public const string GroupControl = "groupControl"; |
| | |
| | | /// 子控 |
| | | /// </summary> |
| | | public const string AcstSub = "acst.sub"; |
| | | /// <summary> |
| | | /// 热水器 |
| | | /// 金茂 |
| | | /// </summary> |
| | | public const string WaterHeaterJinmao = "electrical.water_heater.jinmao"; |
| | | /// <summary> |
| | | /// 逆变器/新能源 |
| | | /// 金茂 |
| | | /// </summary> |
| | | public const string InverterJinmao = "energy.inverter.jinmao"; |
| | | |
| | | /// <summary> |
| | | /// 门锁 |
| | |
| | | /// 地暖 |
| | | /// </summary> |
| | | public const string HvacFloorHeat = "hvac.floorHeat"; |
| | | /// <summary> |
| | | /// 面板地暖 |
| | | /// </summary> |
| | | public const string HvacFloorHeatPanel = "hvac.floorHeat_panel"; |
| | | |
| | | /// <summary> |
| | | /// 地热spk列表 |
| | |
| | | { |
| | | var spkList = new List<string>(); |
| | | spkList.Add(FloorHeatStandard); |
| | | spkList.Add(HvacFloorHeat); |
| | | spkList.Add(HvacFloorHeat); spkList.Add(HvacFloorHeatPanel); |
| | | return spkList; |
| | | } |
| | | #endregion |
| | |
| | | spkList.Add(SensorEnvironment2); |
| | | spkList.Add(SensorEnvironment3); |
| | | spkList.Add(SensorHcho); |
| | | spkList.Add(SensorLight); |
| | | return spkList; |
| | | } |
| | | /// <summary> |
| | |
| | | spkList.Add(SensorTVOC); |
| | | spkList.Add(SensorHumidity); |
| | | spkList.Add(SensorHcho); |
| | | spkList.Add(SensorLight); |
| | | return spkList; |
| | | } |
| | | |
| | |
| | | spkList.Add(SensorEnvironment); spkList.Add(SensorEnvironmentHailin); |
| | | spkList.Add(SensorEnvironment2); |
| | | spkList.Add(SensorEnvironment3); |
| | | |
| | | return spkList; |
| | | } |
| | | |
| | |
| | | /// <summary> |
| | | /// 红外热水器 |
| | | /// </summary> |
| | | public const string HeaterIr = " ir.water_heater"; |
| | | public const string HeaterIr = "ir.water_heater"; |
| | | /// <summary> |
| | | /// 红外风扇 |
| | | /// </summary> |