From c8c33200e43f05136eca9fc8ff4942f8def31cc6 Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期三, 18 八月 2021 10:45:40 +0800 Subject: [PATCH] 2021-08-18 1.完善Android对接LinphoneSDK 2.完善SIP相关接口对接 --- HDL_ON/Entity/Function/Function.cs | 168 ++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 152 insertions(+), 16 deletions(-) diff --git a/HDL_ON/Entity/Function/Function.cs b/HDL_ON/Entity/Function/Function.cs index a6beab4..b9e3102 100644 --- a/HDL_ON/Entity/Function/Function.cs +++ b/HDL_ON/Entity/Function/Function.cs @@ -1,4 +1,4 @@ -锘縰sing System; +using System; using System.Collections.Generic; using HDL_ON.Common; using HDL_ON.DAL.Server; @@ -126,7 +126,6 @@ /// <returns>淇敼缁撴灉</returns> public bool SetAttrState(string key, object value) { - //var attrState = status.Find((s) => s.key == key.ToString()); var attr = attributes.Find((s) => s.key == key); if (attr == null) { @@ -173,7 +172,7 @@ #endregion - #region base info + #region base info public string sid = "0301011234567801012301230123"; /// <summary> /// 澶囨敞 @@ -282,6 +281,21 @@ return _trait_on_off; } } + /// <summary> + /// 鍔熻兘鐨勫睘鎬х姸鎬佸垪琛� + /// </summary> + public List<AttributesStatus> status = new List<AttributesStatus>(); + /// <summary> + /// 閫氳繃鐘舵�佸垪琛ㄧ粍瑁呭睘鎬ч噷闈㈢殑鐘舵�� + /// </summary> + public void AssembleStatus() + { + foreach (var sta in status) + { + SetAttrState(sta.key, sta.value); + } + } + /// <summary> /// 浣跨敤娆℃暟 @@ -508,7 +522,25 @@ { attr.curValue = "off"; } - else + else if (attr.key == FunctionAttributeKey.Mode ) + { + if (DB_ResidenceData.Instance.GatewayType == 0) + { + attr.curValue = "0"; + } + else + { + if (SPK.AcSpkList().Contains(spk)) + { + attr.curValue = "cool"; + } + else if (SPK.FhSpkList().Contains(spk)) + { + attr.curValue = "day"; + } + } + } + else { attr.curValue = "0"; } @@ -517,6 +549,10 @@ { double vv = 16; Double.TryParse(attr.curValue.ToString(), out vv); + if (vv == 0) + { + vv = 26; + } sFunc.status.Add(new SceneFunctionStatus() { key = attr.key, value = Convert.ToInt32(vv).ToString() }); } else @@ -639,7 +675,7 @@ public List<AttributesStatus> status = new List<AttributesStatus>(); } /// <summary> - /// a鍗忚鎺у埗鍔ㄤ綔鏁版嵁 + /// 鍔熻兘灞炴�х姸鎬� /// </summary> public class AttributesStatus { @@ -691,6 +727,7 @@ /// </summary> public object curValue = new object(); } + /// <summary> /// 鍔熻兘灞炴�ч敭鍚嶅垪琛� /// </summary> @@ -717,6 +754,10 @@ /// 妯″紡 /// </summary> public const string Mode = "mode"; + /// <summary> + /// 鎵 + /// </summary> + public const string Swing = "swing"; /// <summary> /// 宸ヤ綔妯″紡 /// 鍦扮儹/鍦板喎/鍔熺巼鍦扮儹/鍔熺巼鍦板喎 @@ -748,6 +789,7 @@ /// 绌鸿皟銆佸湴鐑�//app鑷姞 /// </summary> public const string TempType = "temperature_type"; + /// <summary> /// 鏃堕棿鏍囪 /// 鍦扮儹//app鑷姞 @@ -777,6 +819,10 @@ /// 鐘舵��,浼犳劅鍣� /// </summary> public const string Status = "status"; + /// <summary> + /// 姣背娉紶鎰熷櫒锛屽姩浣滅姸鎬� + /// </summary> + public const string ActionStatus = "action_state"; /// <summary> /// 鐢甸噺鐘舵�� /// </summary> @@ -855,6 +901,10 @@ /// </summary> public const string Humidity = "humidity"; /// <summary> + /// 娓╁害 + /// </summary> + public const string Temperature = "temperature"; + /// <summary> /// 瀹ゅ唴娓╁害 /// </summary> public const string IndoorTemp = "indoor_temp"; @@ -877,6 +927,14 @@ /// </summary> public const string TuyaWaterTime = "countdown_1"; #endregion + /// <summary> + /// 鍔熺巼 + /// </summary> + public const string Power = "power"; + /// <summary> + /// 鎬荤數閲� + /// </summary> + public const string TotalElectricity = "total_electricity"; } @@ -934,6 +992,8 @@ public static class SPK { + + #region 鐏厜 /// <summary> @@ -1075,6 +1135,11 @@ /// 鑳芥簮妯″潡 /// </summary> public const string EnergyStandard = "energy.standard"; + + /// <summary> + /// 鑳芥簮-鐢佃兘 + /// </summary> + public const string ElectricEnergy = "energy.electric"; /// <summary> /// 鑳芥簮spk鍒楄〃 /// </summary> @@ -1082,7 +1147,7 @@ public static List<string> EnergySpkList() { var spkList = new List<string>(); - spkList.Add(EnergyStandard); + spkList.Add(ElectricEnergy); return spkList; } #endregion @@ -1142,12 +1207,15 @@ /// <summary> /// 瓒呭0娉紶鎰熷櫒 /// </summary> - public const string SensoruUtrasonic = "sensor.ultrasonic"; + public const string SensorUtrasonic = "sensor.ultrasonic"; /// <summary> /// 锛堝共鎺ョ偣锛� /// </summary> public const string SensorDryContact = "sensor.dryContact"; - + /// <summary> + /// 姣背娉紶鎰熷櫒 + /// </summary> + public const string SenesorMegahealth = "sensor.megahealth"; /// <summary> /// 瀹夐槻浼犳劅鍣╯pk鍒楄〃 /// </summary> @@ -1155,16 +1223,17 @@ public static List<string> ArmSensorSpkList() { var spkList = new List<string>(); - spkList.Add(SensorLight); + //spkList.Add(SensorLight); spkList.Add(SensorPir); spkList.Add(SensorDoorWindow); spkList.Add(SensorSmoke); spkList.Add(SensorWater); - spkList.Add(SensorGas); - spkList.Add(SensorShanLan); - spkList.Add(SensorDuiShe); - spkList.Add(SensoruUtrasonic); - spkList.Add(SensorDryContact); + //spkList.Add(SensorGas); + //spkList.Add(SensorShanLan); + //spkList.Add(SensorDuiShe); + //spkList.Add(SensoruUtrasonic); + //spkList.Add(SensorDryContact); + spkList.Add(SenesorMegahealth); return spkList; } #endregion @@ -1190,6 +1259,13 @@ /// 婀垮害浼犳劅鍣� /// </summary> public const string SensorHumidity = "sensor.humidity"; + /// <summary> + /// 鐜浼犳劅鍣� + /// 鐜妫�娴嬩紶鎰熷櫒 + /// 鐗规畩绫籹pk + /// 璇pk鍔熻兘鏄幆澧冧紶鎰熷櫒鍔熻兘鐨勯泦鎴� + /// </summary> + public const string SensorEnvironment = "sensor.environment"; /// <summary> /// 鐜浼犳劅鍣╯pk鍒楄〃 @@ -1203,6 +1279,7 @@ spkList.Add(SensorCO2); spkList.Add(SensorTVOC); spkList.Add(SensorHumidity); + spkList.Add(SensorEnvironment); return spkList; } #endregion @@ -1222,6 +1299,10 @@ /// </summary> public const string TvIr = "ir.tv"; /// <summary> + /// 绾㈠銆佸皬绫崇數瑙� + /// </summary> + public const string TvXmIr = "ir.tvxm"; + /// <summary> /// 瀹剁數銆侀鎵� /// </summary> public const string ElectricFan = "electrical.fan"; @@ -1233,6 +1314,30 @@ /// 绾㈠閬ユ帶鍣� /// </summary> public const string IrLearn = "ir.learn"; + /// <summary> + /// 绾㈠鎶曞奖浠� + /// </summary> + public const string PjtIr = "ir.pjt"; + /// <summary> + /// 绾㈠鏈洪《鐩� + /// </summary> + public const string StbIr = "ir.stb"; + /// <summary> + /// 绾㈠褰辩鏈� + /// </summary> + public const string DvDIr = "ir.dvd"; + /// <summary> + /// 绾㈠绌烘皵鍑�鍖栧櫒 + /// </summary> + public const string PurifierIr = "ir.air_purifier"; + /// <summary> + /// 绾㈠鐑按鍣� + /// </summary> + public const string HeaterIr = " ir.water_heater"; + /// <summary> + /// 绾㈠椋庢墖 + /// </summary> + public const string FanIr = "ir.fan"; #region 娑傞甫 /// <summary> @@ -1264,9 +1369,13 @@ spkList.Add(ElectricSocket); spkList.Add(ElectricTV); spkList.Add(TvIr); + spkList.Add(TvXmIr); spkList.Add(ElectricFan); + spkList.Add(FanIr); spkList.Add(ClothesHanger); spkList.Add(IrLearn); + spkList.Add(PjtIr); + spkList.Add(StbIr); spkList.Add(ElectricTuyaAirCleaner); spkList.Add(ElectricTuyaFan); spkList.Add(ElectricTuyaWeepRobot); @@ -1295,7 +1404,21 @@ } #endregion - + #region 绗笁鏂箂pk鍒楄〃 + /// <summary> + /// 鑾峰彇鎵�鏈夌涓夋柟鍝佺墝鍔熻兘鐨剆pk + /// </summary> + /// <returns></returns> + public static List<string> GetAll3tySPK() + { + var spkList = new List<string>(); + spkList.Add(ElectricTuyaAirCleaner); + spkList.Add(ElectricTuyaFan); + spkList.Add(ElectricTuyaWaterValve); + spkList.Add(ElectricTuyaWeepRobot); + spkList.Add(SenesorMegahealth); + return spkList; + } /// <summary> /// 鑾峰彇绗笁鏂硅澶噑pk /// </summary> @@ -1306,17 +1429,26 @@ switch (brandType) { - case BrandType.All3tyBrand: case BrandType.Tuya: list.Add(ElectricTuyaAirCleaner); list.Add(ElectricTuyaFan); list.Add(ElectricTuyaWaterValve); list.Add(ElectricTuyaWeepRobot); break; + case BrandType.All3tyBrand: + list.Add(SenesorMegahealth);//鍏嗚 + break; } return list; } + #endregion + /// <summary> + /// 娌℃湁鐘舵�佹樉绀虹殑鍔熻兘spk鍒楄〃 + /// </summary> + public static List<string> NotStatusSpkList = new List<string> { + ElectricTV, FanIr, TvIr, TvXmIr, StbIr, PjtIr, IrLearn + }; /// <summary> /// 绗笁鏂瑰搧鐗屽垪琛� @@ -1326,6 +1458,10 @@ All = 0, Hdl = 1, Tuya = 2, + /// <summary> + /// 鍏嗚 + /// </summary> + Megahealth = 3, All3tyBrand = 999, -- Gitblit v1.8.0