ChatHub.cs 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. using AmrControl.ADS;
  2. using Microsoft.AspNetCore.SignalR;
  3. using Newtonsoft.Json;
  4. using System.Xml.Linq;
  5. namespace AmrControl.Common
  6. {
  7. public class ChatHub :Hub,IChatHub
  8. {
  9. protected static bool writebool = false;
  10. public async Task SendMessage(string topic, string message)
  11. {
  12. //try
  13. //{
  14. // //TcClient.GetInstance().WriteBool("MAIN.testBool", writebool);
  15. // //TcClient.GetInstance().WriteValue<bool>("MAIN.testBool", writebool);
  16. // //TcClient.GetInstance().WriteValue<short>("MAIN.curr", 123);
  17. // //TcClient.GetInstance().WriteValue<byte[]>("serial_send_byte.array_send_data", new byte[] { 11, 22, 33, 44 });
  18. // //writebool = !writebool;
  19. // //bool val1 = TcClient.GetInstance().ReadValue<bool>("MAIN.testBool");
  20. // //short val2 = TcClient.GetInstance().ReadValue<short>("MAIN.curr");
  21. // //byte[] val3 = TcClient.GetInstance().ReadValue<byte[]>("serial_send_byte.array_send_data");
  22. // //string str = AppHelper.BytesToString(val3);
  23. // //await Clients.All.SendAsync("ReceiveMessage", topic, $"bool:{val1} , curr:{val2} ,send_data:{str}");
  24. // byte[] val = TcClient.GetInstance().ReadValue<byte[]>("MAIN.jgrVar");
  25. // JGR_Tc_Model model = AppHelper.BytesToStruct<JGR_Tc_Model>(val);
  26. // string str = JsonConvert.SerializeObject(model);
  27. // await Clients.All.SendAsync("ReceiveMessage", topic, $"jgr小车数据结构:{str}");
  28. //}
  29. //catch(Exception ex)
  30. //{
  31. // await Clients.All.SendAsync("ReceiveMessage", topic, ex.Message);
  32. //}
  33. await Clients.All.SendAsync("ReceiveMessage", topic, message);
  34. }
  35. public override Task OnConnectedAsync()
  36. {
  37. return base.OnConnectedAsync();
  38. }
  39. public override Task OnDisconnectedAsync(Exception? exception)
  40. {
  41. return base.OnDisconnectedAsync(exception);
  42. }
  43. }
  44. public interface IChatHub
  45. {
  46. Task SendMessage(string topic, string message);
  47. }
  48. }