//using SensorHub.Config; //using SensorHub.Servers.Commands.CASICCommands; //using SensorHub.Utility; //using System; //using System.Collections.Generic; //using System.Linq; //using System.Text; //using System.Threading; //using System.Threading.Tasks; //namespace SensorHub.Servers //{ // class SendConfigThread // { // private CasicServer433 server; // private string code; // public SendConfigThread(CasicServer433 server,String code) // { // this.code = code; // this.server = server; // } // public void doSendConfig() //下发配置线程 // { // RedisHelper redis = new RedisHelper(0); // while (true) // { // String devcode = redis.ListRightPopLeftPush<String>(code, code); // if (!string.IsNullOrEmpty(devcode)) // { // break; // } // String configItem = redis.StringGet(devcode); // devcode = devcode.Replace("$", ""); // byte[] config = null; // if (configItem.Contains("collect")) // { // config = ConfigBuild.buildQueryFrame(devcode); // } // else // { // config = ConfigBuild.buildConfigFrame(devcode, configItem, 0x01); // } // DispatchMessage(code, config); // String devType = devcode.Substring(0, 2); // if (devType == "72" || devType == "73" || devType == "74")//路灯时间长 // { // Thread.Sleep(40000); // } // else // { // Thread.Sleep(15000); // } // } // //concentratorThreadList.Remove(code); // } // private void DispatchMessage(string devCode, byte[] config) // { // foreach (CasicSession session in server.GetAllSessions()) // { // session.Logger.Info("集中器设备编号:" + session.HubAddr + "," + session.SessionID); // if (!session.IsBusy && session.HubAddr == devCode && devCode != null) // { // //当前时间 // SystemTimeConfig sysTimeConfig = new SystemTimeConfig(null); // byte[] btConfig = sysTimeConfig.getConfig(new byte[0]); // btConfig.CopyTo(config, 16); // //增加CRC校验 // String strCrc = StringUtil.To16HexString(String.Format("{0:X}", (int)CodeUtils.CRC16_AD(config))); // byte[] btcrc = { CodeUtils.String2Byte(strCrc.Substring(0, 2)), CodeUtils.String2Byte(strCrc.Substring(2, 2)) }; // byte[] afcrc = new byte[config.Length + 2]; // config.CopyTo(afcrc, 0); // btcrc.CopyTo(afcrc, config.Length); // session.Logger.Info("下发配置信息:" + BitConverter.ToString(afcrc).Replace("-", "")); // session.Send(afcrc, 0, afcrc.Length); // } // } // } // } //}