Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

40 řádky
1.6 KiB

  1. using JT808.Protocol.Attributes;
  2. using JT808.Protocol.Formatters;
  3. using JT808.Protocol.MessagePack;
  4. namespace JT808.Protocol.MessageBody
  5. {
  6. /// <summary>
  7. /// 备份服务器 APN,无线通信拨号访问点
  8. /// </summary>
  9. public class JT808_0x8103_0x0014 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0014>
  10. {
  11. public override uint ParamId { get; set; } = 0x0014;
  12. /// <summary>
  13. /// 数据 长度
  14. /// </summary>
  15. public override byte ParamLength { get; set; }
  16. /// <summary>
  17. /// 备份服务器 APN,无线通信拨号访问点
  18. /// </summary>
  19. public string ParamValue { get; set; }
  20. public JT808_0x8103_0x0014 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
  21. {
  22. JT808_0x8103_0x0014 jT808_0x8103_0x0014 = new JT808_0x8103_0x0014();
  23. jT808_0x8103_0x0014.ParamId = reader.ReadUInt32();
  24. jT808_0x8103_0x0014.ParamLength = reader.ReadByte();
  25. jT808_0x8103_0x0014.ParamValue = reader.ReadString(jT808_0x8103_0x0014.ParamLength);
  26. return jT808_0x8103_0x0014;
  27. }
  28. public void Serialize(ref JT808MessagePackWriter writer, JT808_0x8103_0x0014 value, IJT808Config config)
  29. {
  30. writer.WriteUInt32(value.ParamId);
  31. writer.Skip(1, out int skipPosition);
  32. writer.WriteString(value.ParamValue);
  33. int length = writer.GetCurrentPosition() - skipPosition - 1;
  34. writer.WriteByteReturn((byte)length, skipPosition);
  35. }
  36. }
  37. }