您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

47 行
1.8 KiB

  1. using JT809.Protocol.Enums;
  2. using JT809.Protocol.Extensions;
  3. using JT809.Protocol.Formatters;
  4. using JT809.Protocol.Interfaces;
  5. using JT809.Protocol.MessagePack;
  6. using System.Text.Json;
  7. namespace JT809.Protocol.MessageBody
  8. {
  9. /// <summary>
  10. ///从链路注销请求消息
  11. ///<para>链路类型:从链路</para>
  12. ///<para>消息方向:上级平台往下级平台</para>
  13. ///<para>业务数据类型标识:DOWN_DISCONNIrCT_REQ</para>
  14. ///<para>描述:从链路建立后,上级平台在取消该链路时,应向下级平台发送从链路注销请求消息</para>
  15. /// </summary>
  16. public class JT809_0x9003: JT809Bodies, IJT809MessagePackFormatter<JT809_0x9003>, IJT809Analyze
  17. {
  18. public override ushort MsgId => JT809BusinessType.从链路注销请求消息.ToUInt16Value();
  19. public override string Description => "从链路注销请求消息";
  20. public override JT809_LinkType LinkType => JT809_LinkType.subordinate;
  21. /// <summary>
  22. /// 校验码
  23. /// </summary>
  24. public uint VerifyCode { get; set; }
  25. public void Analyze(ref JT809MessagePackReader reader, Utf8JsonWriter writer, IJT809Config config)
  26. {
  27. JT809_0x9003 value = new JT809_0x9003();
  28. value.VerifyCode = reader.ReadUInt32();
  29. writer.WriteNumber($"[{value.VerifyCode.ReadNumber()}校验码]", value.VerifyCode);
  30. }
  31. public JT809_0x9003 Deserialize(ref JT809MessagePackReader reader, IJT809Config config)
  32. {
  33. JT809_0x9003 value = new JT809_0x9003();
  34. value.VerifyCode = reader.ReadUInt32();
  35. return value;
  36. }
  37. public void Serialize(ref JT809MessagePackWriter writer, JT809_0x9003 value, IJT809Config config)
  38. {
  39. writer.WriteUInt32(value.VerifyCode);
  40. }
  41. }
  42. }