| | |
| | | try |
| | | { |
| | | //账号没登录不回复 |
| | | if ( UserInfo.Current == null || ! UserInfo.Current.IsLogin) |
| | | if ( UserInfo.Current == null )///|| ! UserInfo.Current.IsLogin) |
| | | { |
| | | return; |
| | | } |
| | |
| | | break; |
| | | case SPK.LightRGB: |
| | | break; |
| | | case SPK.HvacFloorHeat:case SPK.FloorHeatStandard: |
| | | case SPK.HvacFloorHeat:case SPK.HvacFloorHeatPanel: |
| | | case SPK.FloorHeatStandard: |
| | | if (f.status.Find((obj)=>obj.key ==FunctionAttributeKey.Mode) == null) |
| | | { |
| | | foreach (var dic in f.status) |
| | |
| | | } |
| | | } |
| | | break; |
| | | case SPK.OtherCommon://2024-02-01 15:19:28 |
| | | foreach (var attr in f.status) |
| | | { |
| | | if (attr.key == FunctionAttributeKey.OnOff) |
| | | { |
| | | byte onOffValue = 0; |
| | | switch (attr.value) |
| | | { |
| | | case "on": |
| | | onOffValue = 0; |
| | | break; |
| | | case "off": |
| | | onOffValue = 255; |
| | | break; |
| | | } |
| | | ControlBytesSend(Command.SetCommonSwitch, f.localFunction.bus.SubnetID, f.localFunction.bus.DeviceID, |
| | | new byte[] { f.localFunction.bus.LoopId, onOffValue }); |
| | | break; |
| | | } |
| | | } |
| | | break; |
| | | } |
| | | } |
| | | } |
| | |
| | | { |
| | | case SPK.LightCCT: |
| | | #region cct light |
| | | byte b0 = 100; |
| | | if (commandDictionary.ContainsKey(FunctionAttributeKey.OnOff)) |
| | | byte b0 = Convert.ToByte(function.lastBrightness); |
| | | if (commandDictionary.ContainsKey(FunctionAttributeKey.Brightness)) |
| | | { |
| | | if (function.trait_on_off.curValue.ToString() == "off") |
| | | { |
| | | b0 = 0; |
| | | } |
| | | else |
| | | { |
| | | b0 = function.lastBrightness == 0 ? (byte)100 : Convert.ToByte(function.lastBrightness); |
| | | } |
| | | b0 = Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness)); |
| | | } |
| | | else |
| | | { |
| | | b0 = Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness)); |
| | | if (commandDictionary.ContainsKey(FunctionAttributeKey.OnOff)) |
| | | { |
| | | if (function.trait_on_off.curValue.ToString() == "off") |
| | | { |
| | | b0 = 0; |
| | | } |
| | | else |
| | | { |
| | | b0 = function.lastBrightness == 0 ? (byte)100 : Convert.ToByte(function.lastBrightness); |
| | | } |
| | | } |
| | | } |
| | | var bytes0 = new byte[] { function.bus.LoopId, |
| | | b0, |
| | |
| | | break; |
| | | case SPK.LightRGB: |
| | | #region rgb light |
| | | byte b = 100; |
| | | if (commandDictionary.ContainsKey(FunctionAttributeKey.OnOff)) |
| | | byte b = Convert.ToByte(function.lastBrightness); |
| | | if (commandDictionary.ContainsKey(FunctionAttributeKey.Brightness)) |
| | | { |
| | | if (function.trait_on_off.curValue.ToString() == "off") |
| | | { |
| | | b = 0; |
| | | } |
| | | else |
| | | { |
| | | b = function.lastBrightness == 0 ? (byte)100 : Convert.ToByte(function.lastBrightness); |
| | | } |
| | | b = Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness)); |
| | | } |
| | | else |
| | | { |
| | | b = Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness)); |
| | | if (commandDictionary.ContainsKey(FunctionAttributeKey.OnOff)) |
| | | { |
| | | if (function.trait_on_off.curValue.ToString() == "off") |
| | | { |
| | | b = 0; |
| | | } |
| | | else |
| | | { |
| | | b = function.lastBrightness == 0 ? (byte)100 : Convert.ToByte(function.lastBrightness); |
| | | } |
| | | } |
| | | } |
| | | var tempLight = new Light(); |
| | | var bytes = new byte[] { function.bus.LoopId, |
| | |
| | | break; |
| | | case SPK.LightDimming: |
| | | #region dimming light |
| | | byte b1 = 100; |
| | | if (commandDictionary.ContainsKey(FunctionAttributeKey.OnOff)) |
| | | byte b1 = Convert.ToByte(function.lastBrightness); |
| | | if (commandDictionary.ContainsKey(FunctionAttributeKey.Brightness)) |
| | | { |
| | | if (function.trait_on_off.curValue.ToString() == "off") |
| | | { |
| | | b1 = 0; |
| | | } |
| | | else |
| | | { |
| | | b1 = function.lastBrightness == 0 ? (byte)100 : Convert.ToByte(function.lastBrightness); |
| | | } |
| | | b1 = Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness)); |
| | | } |
| | | else |
| | | { |
| | | b1 = Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness)); |
| | | if (commandDictionary.ContainsKey(FunctionAttributeKey.OnOff)) |
| | | { |
| | | if (function.trait_on_off.curValue.ToString() == "off") |
| | | { |
| | | b1 = 0; |
| | | } |
| | | else |
| | | { |
| | | b1 = function.lastBrightness == 0 ? (byte)100 : Convert.ToByte(function.lastBrightness); |
| | | } |
| | | } |
| | | } |
| | | ControlBytesSend(Command.SetSingleLight, subnetId, deviceId, new byte[] { |
| | | function.bus.LoopId, |
| | |
| | | 0,0,0,0,0,0,0,onoff,mode,fan,temp,sanfan}); |
| | | |
| | | break; |
| | | case SPK.HvacFloorHeat:case SPK.FloorHeatStandard: |
| | | case SPK.HvacFloorHeat:case SPK.FloorHeatStandard:case SPK.HvacFloorHeatPanel: |
| | | var fhTemp = new FloorHeating(); |
| | | if (function.Fh_Mode_Temp.Count == 4) |
| | | { |
| | |
| | | case SPK.HvacAC: |
| | | ControlBytesSend(Command.ReadACMode, subnetId, deviceId, new byte[] { function.bus.LoopId }); |
| | | break; |
| | | case SPK.HvacFloorHeat:case SPK.FloorHeatStandard: |
| | | case SPK.HvacFloorHeat:case SPK.FloorHeatStandard:case SPK.HvacFloorHeatPanel: |
| | | ControlBytesSend(Command.ReadFloorHeat, subnetId, deviceId, new byte[] { function.bus.LoopId }); |
| | | break; |
| | | case SPK.HvacFan: |
| | |
| | | /// </summary> |
| | | public void SearchLocalGateway(bool broadcast = false) |
| | | { |
| | | //MainPage.Log("SearchLocalGateway"); |
| | | try |
| | | { |
| | | var sendJob = new JObject { { "id", Control.Ins.msg_id.ToString() }, { "time_stamp", Utlis.GetTimestamp ()} }; |