using Common; using Newtonsoft.Json; using RestSharp; using System.Net; namespace CRICS_SSL { public class XuanZhuResponse { /// /// 酒店编码 /// public string code { get; set; } /// /// 房号 /// public string roomNumber { get; set; } /// /// 回路地址 /// public string address { get; set; } /// /// 回路名称 /// public string name { get; set; } /// /// 状态 /// public int status { get; set; } /// /// 异常类型 /// public int faultType { get; set; } /// /// 异常值 /// public int faultData { get; set; } /// /// 亮度 /// public int brightness { get; set; } /// /// 当前温度 /// public int currentTemp { get; set; } /// /// 设定温度 /// public int settingTemp { get; set; } /// /// 风速 /// public int fanSpeed { get; set; } /// /// 模式 /// public int mode { get; set; } /// /// 阀门 /// public int valve { get; set; } } public class Program { static void Main(string[] args) { Task.Factory.StartNew(() => { while (true) { StreamConsume("UDPData", "Crics1", "task1"); } }, TaskCreationOptions.LongRunning); SendHttpData("", ""); Console.WriteLine("Hello, World!"); Console.ReadLine(); } public static string SendHttpData(string Url, T obj) { var client1 = new RestClient("https://f-xcx.blv-oa.com/rcu/report"); var request1 = new RestRequest("", Method.Post); string jjj = """ {"code":"1085","roomNumber":"8099","address":"009001004","name":"PM2.5浓度","status":1,"faultType":0,"faultData":0,"brightness":45,"currentTemp":0,"settingTemp":0,"fanSpeed":0,"mode":0,"valve":0} """; request1.AddJsonBody(jjj); var QQQ = client1.Execute(request1); HttpStatusCode HHH = QQQ.StatusCode; if (HHH == HttpStatusCode.OK) { } return ""; } public static string UDPAllDataKey = "BaoYi_ReportData"; public static void StreamConsume(string group = "BaoYiData", string consumer = "BaoYiCRICS1", string task_key = "task1") { try { var redis = CSRedisCacheHelper.redis1; var data = redis.XReadGroup(group, consumer, 500, 10, new ValueTuple(UDPAllDataKey, ">")); if (data != null) { //var pending = redis.XPending(UDPAllDataKey, group); foreach (var item in data) { var idarray = item.Item2; string nsa = string.Concat(task_key, "#", idarray.Count().ToString()); CSRedisCacheHelper.Publish("udp_package_consumer", nsa); foreach (var SerializeNo in idarray) { var id1 = SerializeNo.Item1; var str = SerializeNo.Item2[1]; var GGG = JsonConvert.DeserializeObject(str); redis.XAck(UDPAllDataKey, group, id1); redis.XDel(UDPAllDataKey, id1); //ProcessData(GGG); SendHttpData("", ""); } } } } catch (Exception ex) { } } } }