浏览代码

8103 json解析

tags/v2.2.6
waterliu99 5 年前
父节点
当前提交
6fe3762d64
共有 87 个文件被更改,包括 961 次插入155 次删除
  1. +9
    -9
      src/JT808.Protocol/JT808.Protocol.xml
  2. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0001.cs
  3. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0002.cs
  4. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0003.cs
  5. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0004.cs
  6. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0005.cs
  7. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0006.cs
  8. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0007.cs
  9. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0010.cs
  10. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0011.cs
  11. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0012.cs
  12. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0013.cs
  13. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0014.cs
  14. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0015.cs
  15. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0016.cs
  16. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0017.cs
  17. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0018.cs
  18. +2
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0019.cs
  19. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x001A.cs
  20. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x001B.cs
  21. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x001C.cs
  22. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x001D.cs
  23. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0020.cs
  24. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0021.cs
  25. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0022.cs
  26. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0023.cs
  27. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0024.cs
  28. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0025.cs
  29. +2
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0026.cs
  30. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0027.cs
  31. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0028.cs
  32. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0029.cs
  33. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x002C.cs
  34. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x002D.cs
  35. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x002E.cs
  36. +1
    -1
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x002F.cs
  37. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0030.cs
  38. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0031.cs
  39. +17
    -3
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0032.cs
  40. +20
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0040.cs
  41. +18
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0041.cs
  42. +18
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0042.cs
  43. +18
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0043.cs
  44. +18
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0044.cs
  45. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0045.cs
  46. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0046.cs
  47. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0047.cs
  48. +18
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0048.cs
  49. +18
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0049.cs
  50. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0050.cs
  51. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0051.cs
  52. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0052.cs
  53. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0053.cs
  54. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0054.cs
  55. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0055.cs
  56. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0056.cs
  57. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0057.cs
  58. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0058.cs
  59. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0059.cs
  60. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x005A.cs
  61. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x005B.cs
  62. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x005C.cs
  63. +18
    -3
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x005D.cs
  64. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x005E.cs
  65. +19
    -4
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0064.cs
  66. +19
    -4
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0065.cs
  67. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0070.cs
  68. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0071.cs
  69. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0072.cs
  70. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0073.cs
  71. +18
    -3
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0074.cs
  72. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0080.cs
  73. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0081.cs
  74. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0082.cs
  75. +18
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0083.cs
  76. +16
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0084.cs
  77. +22
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0090.cs
  78. +18
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0091.cs
  79. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0092.cs
  80. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0093.cs
  81. +36
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0094.cs
  82. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0095.cs
  83. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0100.cs
  84. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0101.cs
  85. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0102.cs
  86. +17
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0103.cs
  87. +25
    -2
      src/JT808.Protocol/MessageBody/JT808_0x8103_0x0110.cs

+ 9
- 9
src/JT808.Protocol/JT808.Protocol.xml 查看文件

@@ -4616,7 +4616,7 @@
</member>
<member name="P:JT808.Protocol.MessageBody.JT808_0x8103_0x0019.ParamValue">
<summary>
服务器 TCP 端口
服务器 UDP 端口
</summary>
</member>
<member name="T:JT808.Protocol.MessageBody.JT808_0x8103_0x001A">
@@ -4774,7 +4774,7 @@
</member>
<member name="T:JT808.Protocol.MessageBody.JT808_0x8103_0x0026">
<summary>
从服务器无线通信拨号密码。该值为空,终端应使用主服务器相同配置
从服务器备份地址IP。该值为空,终端应使用主服务器相同配置
2019版本
</summary>
</member>
@@ -4927,7 +4927,7 @@
</member>
<member name="P:JT808.Protocol.MessageBody.JT808_0x8103_0x0032.ParamValue">
<summary>
电子围栏半径(非法位移阈值),单位为米
违规行驶时段范围(非法位移阈值),单位为米
</summary>
</member>
<member name="T:JT808.Protocol.MessageBody.JT808_0x8103_0x0040">
@@ -5290,7 +5290,7 @@
<member name="P:JT808.Protocol.MessageBody.JT808_0x8103_0x005D.ParamValue">
<summary>
碰撞报警参数设置
b7-b0: 碰撞时间,单位 4ms;
b7-b0: 碰撞时间,单位4ms;
b15-b8:碰撞加速度,单位 0.1g,设置范围在:0-79 之间,默认为10。
</summary>
</member>
@@ -5313,7 +5313,7 @@
</member>
<member name="T:JT808.Protocol.MessageBody.JT808_0x8103_0x0064">
<summary>
定时拍照控制,见 表 13
定时拍照控制,见 表 14
</summary>
</member>
<member name="P:JT808.Protocol.MessageBody.JT808_0x8103_0x0064.ParamLength">
@@ -5323,12 +5323,12 @@
</member>
<member name="P:JT808.Protocol.MessageBody.JT808_0x8103_0x0064.ParamValue">
<summary>
定时拍照控制,见 表 13
定时拍照控制,见 表 14
</summary>
</member>
<member name="T:JT808.Protocol.MessageBody.JT808_0x8103_0x0065">
<summary>
定距拍照控制,见 表 14
定距拍照控制,见 表 15
</summary>
</member>
<member name="P:JT808.Protocol.MessageBody.JT808_0x8103_0x0065.ParamLength">
@@ -5338,7 +5338,7 @@
</member>
<member name="P:JT808.Protocol.MessageBody.JT808_0x8103_0x0065.ParamValue">
<summary>
定距拍照控制,见 表 14
定距拍照控制,见 表 15
</summary>
</member>
<member name="T:JT808.Protocol.MessageBody.JT808_0x8103_0x0070">
@@ -5413,7 +5413,7 @@
</member>
<member name="P:JT808.Protocol.MessageBody.JT808_0x8103_0x0074.ParamValue">
<summary>
饱和度,0-127
色度,0-255
</summary>
</member>
<member name="T:JT808.Protocol.MessageBody.JT808_0x8103_0x0080">


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0001.cs 查看文件

@@ -31,7 +31,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x0001.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0001.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0001.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0001.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0001.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0001.ParamValue.ReadNumber()}]参数值", jT808_0x8103_0x0001.ParamValue);
writer.WriteNumber($"[{ jT808_0x8103_0x0001.ParamValue.ReadNumber()}]参数值[终端心跳发送间隔s]", jT808_0x8103_0x0001.ParamValue);
}

public JT808_0x8103_0x0001 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0002.cs 查看文件

@@ -31,7 +31,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x0002.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0002.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0002.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0002.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0002.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0002.ParamValue.ReadNumber()}]参数值", jT808_0x8103_0x0002.ParamValue);
writer.WriteNumber($"[{ jT808_0x8103_0x0002.ParamValue.ReadNumber()}]参数值[TCP消息应答超时时间s]", jT808_0x8103_0x0002.ParamValue);
}

public JT808_0x8103_0x0002 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0003.cs 查看文件

@@ -31,7 +31,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x0003.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0003.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0003.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0003.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0003.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0003.ParamValue.ReadNumber()}]参数值", jT808_0x8103_0x0003.ParamValue);
writer.WriteNumber($"[{ jT808_0x8103_0x0003.ParamValue.ReadNumber()}]参数值[TCP消息重传次数]", jT808_0x8103_0x0003.ParamValue);
}

public JT808_0x8103_0x0003 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0004.cs 查看文件

@@ -31,7 +31,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x0004.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0004.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0004.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0004.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0004.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0004.ParamValue.ReadNumber()}]参数值", jT808_0x8103_0x0004.ParamValue);
writer.WriteNumber($"[{ jT808_0x8103_0x0004.ParamValue.ReadNumber()}]参数值[UDP消息应答超时时间s]", jT808_0x8103_0x0004.ParamValue);
}

public JT808_0x8103_0x0004 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0005.cs 查看文件

@@ -31,7 +31,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x0005.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0005.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0005.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0005.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0005.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0005.ParamValue.ReadNumber()}]参数值", jT808_0x8103_0x0005.ParamValue);
writer.WriteNumber($"[{ jT808_0x8103_0x0005.ParamValue.ReadNumber()}]参数值[UDP消息重传次数]", jT808_0x8103_0x0005.ParamValue);
}

public JT808_0x8103_0x0005 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0006.cs 查看文件

@@ -31,7 +31,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x0006.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0006.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0006.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0006.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0006.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0006.ParamValue.ReadNumber()}]参数值", jT808_0x8103_0x0006.ParamValue);
writer.WriteNumber($"[{ jT808_0x8103_0x0006.ParamValue.ReadNumber()}]参数值[SMS消息应答超时时间s]", jT808_0x8103_0x0006.ParamValue);
}

public JT808_0x8103_0x0006 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0007.cs 查看文件

@@ -31,7 +31,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x0007.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0007.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0007.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0007.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0007.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0007.ParamValue.ReadNumber()}]参数值", jT808_0x8103_0x0007.ParamValue);
writer.WriteNumber($"[{ jT808_0x8103_0x0007.ParamValue.ReadNumber()}]参数值[SMS消息重传次数]", jT808_0x8103_0x0007.ParamValue);
}

public JT808_0x8103_0x0007 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0010.cs 查看文件

@@ -31,7 +31,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x0010.ParamValue = reader.ReadString(jT808_0x8103_0x0010.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0010.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0010.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0010.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0010.ParamLength);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值", jT808_0x8103_0x0010.ParamValue);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值[主服务器APN]", jT808_0x8103_0x0010.ParamValue);
}

public JT808_0x8103_0x0010 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0011.cs 查看文件

@@ -31,7 +31,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x0011.ParamValue = reader.ReadString(jT808_0x8103_0x0011.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0011.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0011.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0011.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0011.ParamLength);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值", jT808_0x8103_0x0011.ParamValue);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值[主服务器无线通信拨号用户名]", jT808_0x8103_0x0011.ParamValue);
}

public JT808_0x8103_0x0011 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0012.cs 查看文件

@@ -31,7 +31,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x0012.ParamValue = reader.ReadString(jT808_0x8103_0x0012.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0012.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0012.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0012.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0012.ParamLength);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值", jT808_0x8103_0x0012.ParamValue);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值[主服务器无线通信拨号密码]", jT808_0x8103_0x0012.ParamValue);
}

public JT808_0x8103_0x0012 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0013.cs 查看文件

@@ -31,7 +31,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x0013.ParamValue = reader.ReadString(jT808_0x8103_0x0013.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0013.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0013.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0013.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0013.ParamLength);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值", jT808_0x8103_0x0013.ParamValue);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值[主服务器地址IP]", jT808_0x8103_0x0013.ParamValue);
}

public JT808_0x8103_0x0013 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0014.cs 查看文件

@@ -31,7 +31,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x0014.ParamValue = reader.ReadString(jT808_0x8103_0x0014.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0014.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0014.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0014.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0014.ParamLength);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值", jT808_0x8103_0x0014.ParamValue);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值[备份服务器APN]", jT808_0x8103_0x0014.ParamValue);
}

public JT808_0x8103_0x0014 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0015.cs 查看文件

@@ -31,7 +31,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x0015.ParamValue = reader.ReadString(jT808_0x8103_0x0015.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0015.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0015.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0015.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0015.ParamLength);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值", jT808_0x8103_0x0015.ParamValue);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值[备份服务器无线通信拨号用户名]", jT808_0x8103_0x0015.ParamValue);
}

public JT808_0x8103_0x0015 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0016.cs 查看文件

@@ -31,7 +31,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x0016.ParamValue = reader.ReadString(jT808_0x8103_0x0016.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0016.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0016.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0016.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0016.ParamLength);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值", jT808_0x8103_0x0016.ParamValue);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值[备份服务器无线通信拨号密码]", jT808_0x8103_0x0016.ParamValue);
}

public JT808_0x8103_0x0016 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0017.cs 查看文件

@@ -31,7 +31,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x0017.ParamValue = reader.ReadString(jT808_0x8103_0x0017.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0017.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0017.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0017.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0017.ParamLength);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值", jT808_0x8103_0x0017.ParamValue);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值[备份服务器地址IP]", jT808_0x8103_0x0017.ParamValue);
}

public JT808_0x8103_0x0017 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0018.cs 查看文件

@@ -32,7 +32,7 @@ namespace JT808.Protocol.MessageBody
value.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ value.ParamId.ReadNumber()}]参数ID", value.ParamId);
writer.WriteNumber($"[{value.ParamLength.ReadNumber()}]参数长度", value.ParamLength);
writer.WriteNumber($"[{ value.ParamValue.ReadNumber()}]参数值", value.ParamValue);
writer.WriteNumber($"[{ value.ParamValue.ReadNumber()}]参数值[服务器TCP端口]", value.ParamValue);
}

public JT808_0x8103_0x0018 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 2
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0019.cs 查看文件

@@ -20,7 +20,7 @@ namespace JT808.Protocol.MessageBody
/// </summary>
public override byte ParamLength { get; set; } = 4;
/// <summary>
///服务器 TCP 端口
///服务器 UDP 端口
/// </summary>
public uint ParamValue { get; set; }

@@ -32,7 +32,7 @@ namespace JT808.Protocol.MessageBody
value.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ value.ParamId.ReadNumber()}]参数ID", value.ParamId);
writer.WriteNumber($"[{value.ParamLength.ReadNumber()}]参数长度", value.ParamLength);
writer.WriteNumber($"[{ value.ParamValue.ReadNumber()}]参数值", value.ParamValue);
writer.WriteNumber($"[{ value.ParamValue.ReadNumber()}]参数值[服务器UDP端口]", value.ParamValue);
}

public JT808_0x8103_0x0019 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x001A.cs 查看文件

@@ -31,7 +31,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x001A.ParamValue = reader.ReadString(jT808_0x8103_0x001A.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x001A.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x001A.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x001A.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x001A.ParamLength);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值", jT808_0x8103_0x001A.ParamValue);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值[道路运输证IC卡认证主服务器 IP]", jT808_0x8103_0x001A.ParamValue);
}

public JT808_0x8103_0x001A Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x001B.cs 查看文件

@@ -30,7 +30,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x001B.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x001B.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x001B.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x001B.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x001B.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x001B.ParamValue.ReadNumber()}]参数值", jT808_0x8103_0x001B.ParamValue);
writer.WriteNumber($"[{ jT808_0x8103_0x001B.ParamValue.ReadNumber()}]参数值[道路运输证IC卡认证主服务器TCP端口]", jT808_0x8103_0x001B.ParamValue);
}

public JT808_0x8103_0x001B Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x001C.cs 查看文件

@@ -30,7 +30,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x001C.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x001C.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x001C.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x001C.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x001C.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x001C.ParamValue.ReadNumber()}]参数值", jT808_0x8103_0x001C.ParamValue);
writer.WriteNumber($"[{ jT808_0x8103_0x001C.ParamValue.ReadNumber()}]参数值[道路运输证IC卡认证主服务器UDP端口]", jT808_0x8103_0x001C.ParamValue);
}

public JT808_0x8103_0x001C Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x001D.cs 查看文件

@@ -31,7 +31,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x001D.ParamValue = reader.ReadString(jT808_0x8103_0x001D.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x001D.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x001D.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x001D.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x001D.ParamLength);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值", jT808_0x8103_0x001D.ParamValue);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值[道路运输证IC卡认证备份服务器IP]", jT808_0x8103_0x001D.ParamValue);
}

public JT808_0x8103_0x001D Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0020.cs 查看文件

@@ -30,7 +30,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x0020.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0020.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0020.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0020.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0020.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0020.ParamValue.ReadNumber()}]参数值", jT808_0x8103_0x0020.ParamValue);
writer.WriteNumber($"[{ jT808_0x8103_0x0020.ParamValue.ReadNumber()}]参数值[位置汇报策略,0:定时汇报;1:定距汇报;2:定时和定距汇报]", jT808_0x8103_0x0020.ParamValue);
}

public JT808_0x8103_0x0020 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0021.cs 查看文件

@@ -30,7 +30,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x0021.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0021.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0021.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0021.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0021.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0021.ParamValue.ReadNumber()}]参数值", jT808_0x8103_0x0021.ParamValue);
writer.WriteNumber($"[{ jT808_0x8103_0x0021.ParamValue.ReadNumber()}]参数值[位置汇报方案,0:根据 ACC 状态; 1:根据登录状态和 ACC 状态]", jT808_0x8103_0x0021.ParamValue);
}

public JT808_0x8103_0x0021 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0022.cs 查看文件

@@ -30,7 +30,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x0022.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0022.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0022.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0022.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0022.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0022.ParamValue.ReadNumber()}]参数值", jT808_0x8103_0x0022.ParamValue);
writer.WriteNumber($"[{ jT808_0x8103_0x0022.ParamValue.ReadNumber()}]参数值[驾驶员未登录汇报时间间隔s]", jT808_0x8103_0x0022.ParamValue);
}

public JT808_0x8103_0x0022 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0023.cs 查看文件

@@ -32,7 +32,7 @@ namespace JT808.Protocol.MessageBody
value.ParamValue = reader.ReadString(value.ParamLength);
writer.WriteNumber($"[{ value.ParamId.ReadNumber()}]参数ID", value.ParamId);
writer.WriteNumber($"[{value.ParamLength.ReadNumber()}]参数长度", value.ParamLength);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值", value.ParamValue);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值[从服务器APN]", value.ParamValue);
}

public JT808_0x8103_0x0023 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0024.cs 查看文件

@@ -32,7 +32,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x0024.ParamValue = reader.ReadString(jT808_0x8103_0x0024.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0024.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0024.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0024.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0024.ParamLength);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值", jT808_0x8103_0x0024.ParamValue);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值[从服务器无线通信拨号用户名]", jT808_0x8103_0x0024.ParamValue);
}

public JT808_0x8103_0x0024 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0025.cs 查看文件

@@ -32,7 +32,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x0025.ParamValue = reader.ReadString(jT808_0x8103_0x0025.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0025.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0025.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0025.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0025.ParamLength);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值", jT808_0x8103_0x0025.ParamValue);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值[从服务器无线通信拨号密码]", jT808_0x8103_0x0025.ParamValue);
}

public JT808_0x8103_0x0025 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 2
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0026.cs 查看文件

@@ -8,7 +8,7 @@ using JT808.Protocol.MessagePack;
namespace JT808.Protocol.MessageBody
{
/// <summary>
/// 从服务器无线通信拨号密码。该值为空,终端应使用主服务器相同配置
/// 从服务器备份地址IP。该值为空,终端应使用主服务器相同配置
/// 2019版本
/// </summary>
public class JT808_0x8103_0x0026 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0026>, IJT808_2019_Version, IJT808Analyze
@@ -32,7 +32,7 @@ namespace JT808.Protocol.MessageBody
value.ParamValue = reader.ReadString(value.ParamLength);
writer.WriteNumber($"[{ value.ParamId.ReadNumber()}]参数ID", value.ParamId);
writer.WriteNumber($"[{value.ParamLength.ReadNumber()}]参数长度", value.ParamLength);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值", value.ParamValue);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值[从服务器备份地址IP]", value.ParamValue);
}

public JT808_0x8103_0x0026 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0027.cs 查看文件

@@ -30,7 +30,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x0027.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0027.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0027.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0027.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0027.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0027.ParamValue.ReadNumber()}]参数值", jT808_0x8103_0x0027.ParamValue);
writer.WriteNumber($"[{ jT808_0x8103_0x0027.ParamValue.ReadNumber()}]参数值[休眠时汇报时间间隔s]", jT808_0x8103_0x0027.ParamValue);
}

public JT808_0x8103_0x0027 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0028.cs 查看文件

@@ -30,7 +30,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x0028.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0028.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0028.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0028.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0028.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0028.ParamValue.ReadNumber()}]参数值", jT808_0x8103_0x0028.ParamValue);
writer.WriteNumber($"[{ jT808_0x8103_0x0028.ParamValue.ReadNumber()}]参数值[紧急报警时汇报时间间隔s]", jT808_0x8103_0x0028.ParamValue);
}

public JT808_0x8103_0x0028 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0029.cs 查看文件

@@ -30,7 +30,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x0029.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0029.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0029.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0029.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0029.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0029.ParamValue.ReadNumber()}]参数值", jT808_0x8103_0x0029.ParamValue);
writer.WriteNumber($"[{ jT808_0x8103_0x0029.ParamValue.ReadNumber()}]参数值[缺省时间汇报间隔s]", jT808_0x8103_0x0029.ParamValue);
}

public JT808_0x8103_0x0029 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x002C.cs 查看文件

@@ -30,7 +30,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x002C.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x002C.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x002C.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x002C.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x002C.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x002C.ParamValue.ReadNumber()}]参数值", jT808_0x8103_0x002C.ParamValue);
writer.WriteNumber($"[{ jT808_0x8103_0x002C.ParamValue.ReadNumber()}]参数值[缺省距离汇报间隔m]", jT808_0x8103_0x002C.ParamValue);
}

public JT808_0x8103_0x002C Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x002D.cs 查看文件

@@ -30,7 +30,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x002D.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x002D.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x002D.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x002D.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x002D.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x002D.ParamValue.ReadNumber()}]参数值", jT808_0x8103_0x002D.ParamValue);
writer.WriteNumber($"[{ jT808_0x8103_0x002D.ParamValue.ReadNumber()}]参数值[驾驶员未登录汇报距离间隔m]", jT808_0x8103_0x002D.ParamValue);
}
public JT808_0x8103_0x002D Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x002E.cs 查看文件

@@ -30,7 +30,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x002E.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x002E.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x002E.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x002E.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x002E.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x002E.ParamValue.ReadNumber()}]参数值", jT808_0x8103_0x002E.ParamValue);
writer.WriteNumber($"[{ jT808_0x8103_0x002E.ParamValue.ReadNumber()}]参数值[休眠时汇报距离间隔m]", jT808_0x8103_0x002E.ParamValue);
}

public JT808_0x8103_0x002E Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 1
- 1
src/JT808.Protocol/MessageBody/JT808_0x8103_0x002F.cs 查看文件

@@ -30,7 +30,7 @@ namespace JT808.Protocol.MessageBody
jT808_0x8103_0x002F.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x002F.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x002F.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x002F.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x002F.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x002F.ParamValue.ReadNumber()}]参数值", jT808_0x8103_0x002F.ParamValue);
writer.WriteNumber($"[{ jT808_0x8103_0x002F.ParamValue.ReadNumber()}]参数值[紧急报警时汇报距离间隔m]", jT808_0x8103_0x002F.ParamValue);
}

public JT808_0x8103_0x002F Deserialize(ref JT808MessagePackReader reader, IJT808Config config)


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0030.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 拐点补传角度,<180
/// </summary>
public class JT808_0x8103_0x0030 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0030>
public class JT808_0x8103_0x0030 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0030>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0030;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 拐点补传角度,<180
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0030 jT808_0x8103_0x0030 = new JT808_0x8103_0x0030();
jT808_0x8103_0x0030.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0030.ParamLength = reader.ReadByte();
jT808_0x8103_0x0030.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0030.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0030.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0030.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0030.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0030.ParamValue.ReadNumber()}]参数值[拐点补传角度,<180]", jT808_0x8103_0x0030.ParamValue);
}

public JT808_0x8103_0x0030 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0030 jT808_0x8103_0x0030 = new JT808_0x8103_0x0030();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0031.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 电子围栏半径(非法位移阈值),单位为米
/// </summary>
public class JT808_0x8103_0x0031 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0031>
public class JT808_0x8103_0x0031 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0031>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0031;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 电子围栏半径(非法位移阈值),单位为米
/// </summary>
public ushort ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0031 jT808_0x8103_0x0031 = new JT808_0x8103_0x0031();
jT808_0x8103_0x0031.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0031.ParamLength = reader.ReadByte();
jT808_0x8103_0x0031.ParamValue = reader.ReadUInt16();
writer.WriteNumber($"[{ jT808_0x8103_0x0031.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0031.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0031.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0031.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0031.ParamValue.ReadNumber()}]参数值[电子围栏半径m]", jT808_0x8103_0x0031.ParamValue);
}

public JT808_0x8103_0x0031 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0031 jT808_0x8103_0x0031 = new JT808_0x8103_0x0031();


+ 17
- 3
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0032.cs 查看文件

@@ -1,4 +1,6 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;
@@ -8,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 违规行驶时段范围
/// </summary>
public class JT808_0x8103_0x0032 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0032>, IJT808_2019_Version
public class JT808_0x8103_0x0032 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0032>, IJT808_2019_Version, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0032;
/// <summary>
@@ -16,9 +18,21 @@ namespace JT808.Protocol.MessageBody
/// </summary>
public override byte ParamLength { get; set; } = 4;
/// <summary>
/// 电子围栏半径(非法位移阈值),单位为米
/// 违规行驶时段范围(非法位移阈值),单位为米
/// </summary>
public byte[] ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0032 value = new JT808_0x8103_0x0032();
value.ParamId = reader.ReadUInt32();
value.ParamLength = reader.ReadByte();
value.ParamValue = reader.ReadArray(4).ToArray();
writer.WriteNumber($"[{ value.ParamId.ReadNumber()}]参数ID", value.ParamId);
writer.WriteNumber($"[{value.ParamLength.ReadNumber()}]参数长度", value.ParamLength);
writer.WriteString($"[{ value.ParamValue.ToHexString()}]参数值[违规行驶时段范围]", $"开始时间{value.ParamValue[0]}时{value.ParamValue[1]}分,结束时间{value.ParamValue[2]}时{value.ParamValue[3]}分");
}

public JT808_0x8103_0x0032 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0032 value = new JT808_0x8103_0x0032();


+ 20
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0040.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 监控平台电话号码
/// </summary>
public class JT808_0x8103_0x0040 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0040>
public class JT808_0x8103_0x0040 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0040>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0040;
/// <summary>
@@ -18,6 +21,19 @@ namespace JT808.Protocol.MessageBody
/// 监控平台电话号码
/// </summary>
public string ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0040 jT808_0x8103_0x0040 = new JT808_0x8103_0x0040();
jT808_0x8103_0x0040.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0040.ParamLength = reader.ReadByte();
var paramValue = reader.ReadVirtualArray(jT808_0x8103_0x0040.ParamLength);
jT808_0x8103_0x0040.ParamValue = reader.ReadString(jT808_0x8103_0x0040.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0040.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0040.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0040.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0040.ParamLength);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值[监控平台电话号码]", jT808_0x8103_0x0040.ParamValue);
}

public JT808_0x8103_0x0040 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0040 jT808_0x8103_0x0040 = new JT808_0x8103_0x0040();
@@ -37,3 +53,5 @@ namespace JT808.Protocol.MessageBody
}
}
}



+ 18
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0041.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 复位电话号码,可采用此电话号码拨打终端电话让终端复位
/// </summary>
public class JT808_0x8103_0x0041 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0041>
public class JT808_0x8103_0x0041 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0041>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0041;
/// <summary>
@@ -18,6 +21,19 @@ namespace JT808.Protocol.MessageBody
/// 复位电话号码,可采用此电话号码拨打终端电话让终端复位
/// </summary>
public string ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0041 jT808_0x8103_0x0041 = new JT808_0x8103_0x0041();
jT808_0x8103_0x0041.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0041.ParamLength = reader.ReadByte();
var paramValue = reader.ReadVirtualArray(jT808_0x8103_0x0041.ParamLength);
jT808_0x8103_0x0041.ParamValue = reader.ReadString(jT808_0x8103_0x0041.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0041.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0041.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0041.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0041.ParamLength);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值[复位电话号码]", jT808_0x8103_0x0041.ParamValue);
}

public JT808_0x8103_0x0041 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0041 jT808_0x8103_0x0041 = new JT808_0x8103_0x0041();


+ 18
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0042.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 恢复出厂设置电话号码,可采用此电话号码拨打终端电话让终端恢复出厂设置
/// </summary>
public class JT808_0x8103_0x0042 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0042>
public class JT808_0x8103_0x0042 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0042>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0042;
/// <summary>
@@ -18,6 +21,19 @@ namespace JT808.Protocol.MessageBody
/// 恢复出厂设置电话号码,可采用此电话号码拨打终端电话让终端恢复出厂设置
/// </summary>
public string ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0042 jT808_0x8103_0x0042 = new JT808_0x8103_0x0042();
jT808_0x8103_0x0042.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0042.ParamLength = reader.ReadByte();
var paramValue = reader.ReadVirtualArray(jT808_0x8103_0x0042.ParamLength);
jT808_0x8103_0x0042.ParamValue = reader.ReadString(jT808_0x8103_0x0042.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0042.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0042.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0042.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0042.ParamLength);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值[恢复出厂设置电话号码]", jT808_0x8103_0x0042.ParamValue);
}

public JT808_0x8103_0x0042 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0042 jT808_0x8103_0x0042 = new JT808_0x8103_0x0042();


+ 18
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0043.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 监控平台 SMS 电话号码
/// </summary>
public class JT808_0x8103_0x0043 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0043>
public class JT808_0x8103_0x0043 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0043>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0043;
/// <summary>
@@ -18,6 +21,19 @@ namespace JT808.Protocol.MessageBody
/// 监控平台 SMS 电话号码
/// </summary>
public string ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0043 jT808_0x8103_0x0043 = new JT808_0x8103_0x0043();
jT808_0x8103_0x0043.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0043.ParamLength = reader.ReadByte();
var paramValue = reader.ReadVirtualArray(jT808_0x8103_0x0043.ParamLength);
jT808_0x8103_0x0043.ParamValue = reader.ReadString(jT808_0x8103_0x0043.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0043.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0043.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0043.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0043.ParamLength);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值[监控平台SMS电话号码]", jT808_0x8103_0x0043.ParamValue);
}

public JT808_0x8103_0x0043 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0043 jT808_0x8103_0x0043 = new JT808_0x8103_0x0043();


+ 18
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0044.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 接收终端 SMS 文本报警号码
/// </summary>
public class JT808_0x8103_0x0044 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0044>
public class JT808_0x8103_0x0044 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0044>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0044;
/// <summary>
@@ -18,6 +21,19 @@ namespace JT808.Protocol.MessageBody
/// 接收终端 SMS 文本报警号码
/// </summary>
public string ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0044 jT808_0x8103_0x0044 = new JT808_0x8103_0x0044();
jT808_0x8103_0x0044.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0044.ParamLength = reader.ReadByte();
var paramValue = reader.ReadVirtualArray(jT808_0x8103_0x0044.ParamLength);
jT808_0x8103_0x0044.ParamValue = reader.ReadString(jT808_0x8103_0x0044.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0044.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0044.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0044.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0044.ParamLength);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值[接收终端SMS文本报警号码]", jT808_0x8103_0x0044.ParamValue);
}

public JT808_0x8103_0x0044 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0044 jT808_0x8103_0x0044 = new JT808_0x8103_0x0044();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0045.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 终端电话接听策略,0:自动接听;1:ACC ON 时自动接听,OFF 时手动接听
/// </summary>
public class JT808_0x8103_0x0045 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0045>
public class JT808_0x8103_0x0045 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0045>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0045;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 终端电话接听策略,0:自动接听;1:ACC ON 时自动接听,OFF 时手动接听
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0045 jT808_0x8103_0x0045 = new JT808_0x8103_0x0045();
jT808_0x8103_0x0045.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0045.ParamLength = reader.ReadByte();
jT808_0x8103_0x0045.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0045.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0045.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0045.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0045.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0045.ParamValue.ReadNumber()}]参数值[终端电话接听策略,0:自动接听;1:ACC ON 时自动接听,OFF 时手动接听]", jT808_0x8103_0x0045.ParamValue);
}

public JT808_0x8103_0x0045 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0045 jT808_0x8103_0x0045 = new JT808_0x8103_0x0045();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0046.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 每次最长通话时间,单位为秒(s),0 为不允许通话,0xFFFFFFFF 为不限制
/// </summary>
public class JT808_0x8103_0x0046 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0046>
public class JT808_0x8103_0x0046 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0046>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0046;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 每次最长通话时间,单位为秒(s),0 为不允许通话,0xFFFFFFFF 为不限制
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0046 jT808_0x8103_0x0046 = new JT808_0x8103_0x0046();
jT808_0x8103_0x0046.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0046.ParamLength = reader.ReadByte();
jT808_0x8103_0x0046.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0046.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0046.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0046.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0046.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0046.ParamValue.ReadNumber()}]参数值[每次最长通话时间s]", jT808_0x8103_0x0046.ParamValue);
}

public JT808_0x8103_0x0046 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0046 jT808_0x8103_0x0046 = new JT808_0x8103_0x0046();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0047.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 当月最长通话时间,单位为秒(s),0 为不允许通话,0xFFFFFFFF 为不限制
/// </summary>
public class JT808_0x8103_0x0047 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0047>
public class JT808_0x8103_0x0047 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0047>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0047;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 当月最长通话时间,单位为秒(s),0 为不允许通话,0xFFFFFFFF 为不限制
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0047 jT808_0x8103_0x0047 = new JT808_0x8103_0x0047();
jT808_0x8103_0x0047.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0047.ParamLength = reader.ReadByte();
jT808_0x8103_0x0047.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0047.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0047.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0047.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0047.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0047.ParamValue.ReadNumber()}]参数值[当月最长通话时间s]", jT808_0x8103_0x0047.ParamValue);
}

public JT808_0x8103_0x0047 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0047 jT808_0x8103_0x0047 = new JT808_0x8103_0x0047();


+ 18
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0048.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 监听电话号码
/// </summary>
public class JT808_0x8103_0x0048 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0048>
public class JT808_0x8103_0x0048 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0048>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0048;
/// <summary>
@@ -18,6 +21,19 @@ namespace JT808.Protocol.MessageBody
/// 监听电话号码
/// </summary>
public string ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0048 jT808_0x8103_0x0048 = new JT808_0x8103_0x0048();
jT808_0x8103_0x0048.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0048.ParamLength = reader.ReadByte();
var paramValue = reader.ReadVirtualArray(jT808_0x8103_0x0048.ParamLength);
jT808_0x8103_0x0048.ParamValue = reader.ReadString(jT808_0x8103_0x0048.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0048.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0048.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0048.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0048.ParamLength);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值[监听电话号码]", jT808_0x8103_0x0048.ParamValue);
}

public JT808_0x8103_0x0048 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0048 jT808_0x8103_0x0048 = new JT808_0x8103_0x0048();


+ 18
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0049.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 监管平台特权短信号码
/// </summary>
public class JT808_0x8103_0x0049 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0049>
public class JT808_0x8103_0x0049 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0049>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0049;
/// <summary>
@@ -18,6 +21,19 @@ namespace JT808.Protocol.MessageBody
/// 监管平台特权短信号码
/// </summary>
public string ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0049 jT808_0x8103_0x0049 = new JT808_0x8103_0x0049();
jT808_0x8103_0x0049.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0049.ParamLength = reader.ReadByte();
var paramValue = reader.ReadVirtualArray(jT808_0x8103_0x0049.ParamLength);
jT808_0x8103_0x0049.ParamValue = reader.ReadString(jT808_0x8103_0x0049.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0049.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0049.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0049.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0049.ParamLength);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值[监管平台特权短信号码]", jT808_0x8103_0x0049.ParamValue);
}

public JT808_0x8103_0x0049 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0049 jT808_0x8103_0x0049 = new JT808_0x8103_0x0049();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0050.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 报警屏蔽字,与位置信息汇报消息中的报警标志相对应,相应位为 1则相应报警被屏蔽
/// </summary>
public class JT808_0x8103_0x0050 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0050>
public class JT808_0x8103_0x0050 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0050>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0050;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 报警屏蔽字,与位置信息汇报消息中的报警标志相对应,相应位为 1则相应报警被屏蔽
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0050 jT808_0x8103_0x0050 = new JT808_0x8103_0x0050();
jT808_0x8103_0x0050.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0050.ParamLength = reader.ReadByte();
jT808_0x8103_0x0050.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0050.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0050.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0050.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0050.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0050.ParamValue.ReadNumber()}]参数值[报警屏蔽字,与位置信息汇报消息中的报警标志相对应]", jT808_0x8103_0x0050.ParamValue);
}

public JT808_0x8103_0x0050 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0050 jT808_0x8103_0x0050 = new JT808_0x8103_0x0050();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0051.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 报警发送文本 SMS 开关,与位置信息汇报消息中的报警标志相对应,相应位为 1 则相应报警时发送文本 SMS
/// </summary>
public class JT808_0x8103_0x0051 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0051>
public class JT808_0x8103_0x0051 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0051>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0051;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 报警发送文本 SMS 开关,与位置信息汇报消息中的报警标志相对应,相应位为 1 则相应报警时发送文本 SMS
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0051 jT808_0x8103_0x0051 = new JT808_0x8103_0x0051();
jT808_0x8103_0x0051.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0051.ParamLength = reader.ReadByte();
jT808_0x8103_0x0051.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0051.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0051.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0051.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0051.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0051.ParamValue.ReadNumber()}]参数值[报警发送文本SMS开关]", jT808_0x8103_0x0051.ParamValue);
}

public JT808_0x8103_0x0051 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0051 jT808_0x8103_0x0051 = new JT808_0x8103_0x0051();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0052.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 报警拍摄开关,与位置信息汇报消息中的报警标志相对应,相应位为1 则相应报警时摄像头拍摄
/// </summary>
public class JT808_0x8103_0x0052 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0052>
public class JT808_0x8103_0x0052 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0052>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0052;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 报警拍摄开关,与位置信息汇报消息中的报警标志相对应,相应位为1 则相应报警时摄像头拍摄
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0052 jT808_0x8103_0x0052 = new JT808_0x8103_0x0052();
jT808_0x8103_0x0052.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0052.ParamLength = reader.ReadByte();
jT808_0x8103_0x0052.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0052.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0052.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0052.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0052.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0052.ParamValue.ReadNumber()}]参数值[报警拍摄开关]", jT808_0x8103_0x0052.ParamValue);
}

public JT808_0x8103_0x0052 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0052 jT808_0x8103_0x0052 = new JT808_0x8103_0x0052();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0053.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 报警拍摄存储标志,与位置信息汇报消息中的报警标志相对应,相应位为 1 则对相应报警时拍的照片进行存储,否则实时上传
/// </summary>
public class JT808_0x8103_0x0053 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0053>
public class JT808_0x8103_0x0053 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0053>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0053;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 报警拍摄存储标志,与位置信息汇报消息中的报警标志相对应,相应位为 1 则对相应报警时拍的照片进行存储,否则实时上传
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0053 jT808_0x8103_0x0053 = new JT808_0x8103_0x0053();
jT808_0x8103_0x0053.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0053.ParamLength = reader.ReadByte();
jT808_0x8103_0x0053.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0053.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0053.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0053.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0053.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0053.ParamValue.ReadNumber()}]参数值[报警拍摄存储标志]", jT808_0x8103_0x0053.ParamValue);
}

public JT808_0x8103_0x0053 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0053 jT808_0x8103_0x0053 = new JT808_0x8103_0x0053();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0054.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 关键标志,与位置信息汇报消息中的报警标志相对应,相应位为 1 则对相应报警为关键报警
/// </summary>
public class JT808_0x8103_0x0054 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0054>
public class JT808_0x8103_0x0054 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0054>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0054;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 关键标志,与位置信息汇报消息中的报警标志相对应,相应位为 1 则对相应报警为关键报警
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0054 jT808_0x8103_0x0054 = new JT808_0x8103_0x0054();
jT808_0x8103_0x0054.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0054.ParamLength = reader.ReadByte();
jT808_0x8103_0x0054.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0054.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0054.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0054.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0054.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0054.ParamValue.ReadNumber()}]参数值[关键标志]", jT808_0x8103_0x0054.ParamValue);
}

public JT808_0x8103_0x0054 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0054 jT808_0x8103_0x0054 = new JT808_0x8103_0x0054();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0055.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 最高速度,单位为公里每小时(km/h)
/// </summary>
public class JT808_0x8103_0x0055 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0055>
public class JT808_0x8103_0x0055 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0055>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0055;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 最高速度,单位为公里每小时(km/h)
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0055 jT808_0x8103_0x0055 = new JT808_0x8103_0x0055();
jT808_0x8103_0x0055.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0055.ParamLength = reader.ReadByte();
jT808_0x8103_0x0055.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0055.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0055.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0055.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0055.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0055.ParamValue.ReadNumber()}]参数值[最高速度km/h]", jT808_0x8103_0x0055.ParamValue);
}

public JT808_0x8103_0x0055 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0055 jT808_0x8103_0x0055 = new JT808_0x8103_0x0055();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0056.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 超速持续时间,单位为秒(s)
/// </summary>
public class JT808_0x8103_0x0056 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0056>
public class JT808_0x8103_0x0056 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0056>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0056;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 超速持续时间,单位为秒(s)
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0056 jT808_0x8103_0x0056 = new JT808_0x8103_0x0056();
jT808_0x8103_0x0056.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0056.ParamLength = reader.ReadByte();
jT808_0x8103_0x0056.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0056.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0056.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0056.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0056.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0056.ParamValue.ReadNumber()}]参数值[超速持续时间s]", jT808_0x8103_0x0056.ParamValue);
}

public JT808_0x8103_0x0056 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0056 jT808_0x8103_0x0056 = new JT808_0x8103_0x0056();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0057.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 连续驾驶时间门限,单位为秒(s)
/// </summary>
public class JT808_0x8103_0x0057 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0057>
public class JT808_0x8103_0x0057 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0057>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0057;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 连续驾驶时间门限,单位为秒(s)
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0057 jT808_0x8103_0x0057 = new JT808_0x8103_0x0057();
jT808_0x8103_0x0057.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0057.ParamLength = reader.ReadByte();
jT808_0x8103_0x0057.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0057.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0057.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0057.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0057.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0057.ParamValue.ReadNumber()}]参数值[连续驾驶时间门限s]", jT808_0x8103_0x0057.ParamValue);
}

public JT808_0x8103_0x0057 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0057 jT808_0x8103_0x0057 = new JT808_0x8103_0x0057();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0058.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 当天累计驾驶时间门限,单位为秒(s)
/// </summary>
public class JT808_0x8103_0x0058 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0058>
public class JT808_0x8103_0x0058 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0058>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0058;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 当天累计驾驶时间门限,单位为秒(s)
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0058 jT808_0x8103_0x0058 = new JT808_0x8103_0x0058();
jT808_0x8103_0x0058.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0058.ParamLength = reader.ReadByte();
jT808_0x8103_0x0058.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0058.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0058.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0058.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0058.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0058.ParamValue.ReadNumber()}]参数值[当天累计驾驶时间门限s]", jT808_0x8103_0x0058.ParamValue);
}

public JT808_0x8103_0x0058 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0058 jT808_0x8103_0x0058 = new JT808_0x8103_0x0058();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0059.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 最小休息时间,单位为秒(s)
/// </summary>
public class JT808_0x8103_0x0059 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0059>
public class JT808_0x8103_0x0059 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0059>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0059;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 最小休息时间,单位为秒(s)
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0059 jT808_0x8103_0x0059 = new JT808_0x8103_0x0059();
jT808_0x8103_0x0059.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0059.ParamLength = reader.ReadByte();
jT808_0x8103_0x0059.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0059.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0059.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0059.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0059.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0059.ParamValue.ReadNumber()}]参数值[最小休息时间s]", jT808_0x8103_0x0059.ParamValue);
}

public JT808_0x8103_0x0059 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0059 jT808_0x8103_0x0059 = new JT808_0x8103_0x0059();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x005A.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 最长停车时间,单位为秒(s)
/// </summary>
public class JT808_0x8103_0x005A : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x005A>
public class JT808_0x8103_0x005A : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x005A>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x005A;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 最长停车时间,单位为秒(s)
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x005A jT808_0x8103_0x005A = new JT808_0x8103_0x005A();
jT808_0x8103_0x005A.ParamId = reader.ReadUInt32();
jT808_0x8103_0x005A.ParamLength = reader.ReadByte();
jT808_0x8103_0x005A.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x005A.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x005A.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x005A.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x005A.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x005A.ParamValue.ReadNumber()}]参数值[最长停车时间s]", jT808_0x8103_0x005A.ParamValue);
}

public JT808_0x8103_0x005A Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x005A jT808_0x8103_0x005A = new JT808_0x8103_0x005A();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x005B.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 超速报警预警差值,单位为 1/10Km/h
/// </summary>
public class JT808_0x8103_0x005B : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x005B>
public class JT808_0x8103_0x005B : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x005B>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x005B;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 超速报警预警差值,单位为 1/10Km/h
/// </summary>
public ushort ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x005B jT808_0x8103_0x005B = new JT808_0x8103_0x005B();
jT808_0x8103_0x005B.ParamId = reader.ReadUInt32();
jT808_0x8103_0x005B.ParamLength = reader.ReadByte();
jT808_0x8103_0x005B.ParamValue = reader.ReadUInt16();
writer.WriteNumber($"[{ jT808_0x8103_0x005B.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x005B.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x005B.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x005B.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x005B.ParamValue.ReadNumber()}]参数值[超速报警预警差值1/10Km/h]", jT808_0x8103_0x005B.ParamValue);
}

public JT808_0x8103_0x005B Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x005B jT808_0x8103_0x005B = new JT808_0x8103_0x005B();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x005C.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 疲劳驾驶预警差值,单位为秒(s),>0
/// </summary>
public class JT808_0x8103_0x005C : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x005C>
public class JT808_0x8103_0x005C : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x005C>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x005C;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 疲劳驾驶预警差值,单位为秒(s),>0
/// </summary>
public ushort ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x005C jT808_0x8103_0x005C = new JT808_0x8103_0x005C();
jT808_0x8103_0x005C.ParamId = reader.ReadUInt32();
jT808_0x8103_0x005C.ParamLength = reader.ReadByte();
jT808_0x8103_0x005C.ParamValue = reader.ReadUInt16();
writer.WriteNumber($"[{ jT808_0x8103_0x005C.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x005C.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x005C.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x005C.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x005C.ParamValue.ReadNumber()}]参数值[疲劳驾驶预警差值s]", jT808_0x8103_0x005C.ParamValue);
}

public JT808_0x8103_0x005C Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x005C jT808_0x8103_0x005C = new JT808_0x8103_0x005C();


+ 18
- 3
src/JT808.Protocol/MessageBody/JT808_0x8103_0x005D.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -9,7 +12,7 @@ namespace JT808.Protocol.MessageBody
/// b7-b0: 碰撞时间,单位 4ms;
/// b15-b8:碰撞加速度,单位 0.1g,设置范围在:0-79 之间,默认为10。
/// </summary>
public class JT808_0x8103_0x005D : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x005D>
public class JT808_0x8103_0x005D : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x005D>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x005D;
/// <summary>
@@ -18,10 +21,22 @@ namespace JT808.Protocol.MessageBody
public override byte ParamLength { get; set; } = 2;
/// <summary>
/// 碰撞报警参数设置
/// b7-b0: 碰撞时间,单位 4ms;
/// b7-b0: 碰撞时间,单位4ms;
/// b15-b8:碰撞加速度,单位 0.1g,设置范围在:0-79 之间,默认为10。
/// </summary>
public ushort ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x005D jT808_0x8103_0x005D = new JT808_0x8103_0x005D();
jT808_0x8103_0x005D.ParamId = reader.ReadUInt32();
jT808_0x8103_0x005D.ParamLength = reader.ReadByte();
jT808_0x8103_0x005D.ParamValue = reader.ReadUInt16();
writer.WriteNumber($"[{ jT808_0x8103_0x005D.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x005D.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x005D.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x005D.ParamLength);
writer.WriteString($"[{ jT808_0x8103_0x005D.ParamValue.ReadNumber()}]参数值[碰撞报警参数设置]",$"碰撞时间:{(byte)jT808_0x8103_0x005D.ParamValue}(ms),碰撞加速度:{(byte)(jT808_0x8103_0x005D.ParamValue>>8)}(0.1g)");
}

public JT808_0x8103_0x005D Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x005D jT808_0x8103_0x005D = new JT808_0x8103_0x005D();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x005E.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -8,7 +11,7 @@ namespace JT808.Protocol.MessageBody
/// 侧翻报警参数设置:
/// 侧翻角度,单位 1 度,默认为 30 度
/// </summary>
public class JT808_0x8103_0x005E : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x005E>
public class JT808_0x8103_0x005E : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x005E>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x005E;
/// <summary>
@@ -20,6 +23,18 @@ namespace JT808.Protocol.MessageBody
/// 侧翻角度,单位 1 度,默认为 30 度
/// </summary>
public ushort ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x005E jT808_0x8103_0x005E = new JT808_0x8103_0x005E();
jT808_0x8103_0x005E.ParamId = reader.ReadUInt32();
jT808_0x8103_0x005E.ParamLength = reader.ReadByte();
jT808_0x8103_0x005E.ParamValue = reader.ReadUInt16();
writer.WriteNumber($"[{ jT808_0x8103_0x005E.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x005E.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x005E.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x005E.ParamLength);
writer.WriteString($"[{ jT808_0x8103_0x005E.ParamValue.ReadNumber()}]参数值[侧翻报警参数设置]",$"侧翻角度:{jT808_0x8103_0x005E.ParamValue}(度)" );
}

public JT808_0x8103_0x005E Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x005E jT808_0x8103_0x005E = new JT808_0x8103_0x005E();


+ 19
- 4
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0064.cs 查看文件

@@ -1,13 +1,16 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
{
/// <summary>
/// 定时拍照控制,见 表 13
/// 定时拍照控制,见 表 14
/// </summary>
public class JT808_0x8103_0x0064 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0064>
public class JT808_0x8103_0x0064 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0064>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0064;
/// <summary>
@@ -15,9 +18,21 @@ namespace JT808.Protocol.MessageBody
/// </summary>
public override byte ParamLength { get; set; } = 4;
/// <summary>
/// 定时拍照控制,见 表 13
/// 定时拍照控制,见 表 14
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0064 jT808_0x8103_0x0064 = new JT808_0x8103_0x0064();
jT808_0x8103_0x0064.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0064.ParamLength = reader.ReadByte();
jT808_0x8103_0x0064.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0064.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0064.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0064.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0064.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0064.ParamValue.ReadNumber()}]参数值[定时拍照控制,见表14]", jT808_0x8103_0x0064.ParamValue);
}

public JT808_0x8103_0x0064 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0064 jT808_0x8103_0x0064 = new JT808_0x8103_0x0064();


+ 19
- 4
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0065.cs 查看文件

@@ -1,13 +1,16 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
{
/// <summary>
/// 定距拍照控制,见 表 14
/// 定距拍照控制,见 表 15
/// </summary>
public class JT808_0x8103_0x0065 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0065>
public class JT808_0x8103_0x0065 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0065>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0065;
/// <summary>
@@ -15,9 +18,21 @@ namespace JT808.Protocol.MessageBody
/// </summary>
public override byte ParamLength { get; set; } = 4;
/// <summary>
/// 定距拍照控制,见 表 14
/// 定距拍照控制,见 表 15
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0065 jT808_0x8103_0x0065 = new JT808_0x8103_0x0065();
jT808_0x8103_0x0065.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0065.ParamLength = reader.ReadByte();
jT808_0x8103_0x0065.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0065.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0065.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0065.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0065.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0065.ParamValue.ReadNumber()}]参数值[定距拍照控制,见表15]", jT808_0x8103_0x0065.ParamValue);
}

public JT808_0x8103_0x0065 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0065 jT808_0x8103_0x0065 = new JT808_0x8103_0x0065();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0070.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 图像/视频质量,1-10,1 最好
/// </summary>
public class JT808_0x8103_0x0070 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0070>
public class JT808_0x8103_0x0070 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0070>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0070;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 图像/视频质量,1-10,1 最好
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0070 jT808_0x8103_0x0070 = new JT808_0x8103_0x0070();
jT808_0x8103_0x0070.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0070.ParamLength = reader.ReadByte();
jT808_0x8103_0x0070.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0070.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0070.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0070.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0070.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0070.ParamValue.ReadNumber()}]参数值[图像/视频质量,越小越好]", jT808_0x8103_0x0070.ParamValue);
}

public JT808_0x8103_0x0070 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0070 jT808_0x8103_0x0070 = new JT808_0x8103_0x0070();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0071.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 亮度,0-255
/// </summary>
public class JT808_0x8103_0x0071 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0071>
public class JT808_0x8103_0x0071 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0071>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0071;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 亮度,0-255
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0071 jT808_0x8103_0x0071 = new JT808_0x8103_0x0071();
jT808_0x8103_0x0071.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0071.ParamLength = reader.ReadByte();
jT808_0x8103_0x0071.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0071.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0071.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0071.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0071.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0071.ParamValue.ReadNumber()}]参数值[亮度]", jT808_0x8103_0x0071.ParamValue);
}

public JT808_0x8103_0x0071 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0071 jT808_0x8103_0x0071 = new JT808_0x8103_0x0071();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0072.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 对比度,0-127
/// </summary>
public class JT808_0x8103_0x0072 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0072>
public class JT808_0x8103_0x0072 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0072>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0072;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 对比度,0-127
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0072 jT808_0x8103_0x0072 = new JT808_0x8103_0x0072();
jT808_0x8103_0x0072.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0072.ParamLength = reader.ReadByte();
jT808_0x8103_0x0072.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0072.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0072.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0072.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0072.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0072.ParamValue.ReadNumber()}]参数值[对比度]", jT808_0x8103_0x0072.ParamValue);
}

public JT808_0x8103_0x0072 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0072 jT808_0x8103_0x0072 = new JT808_0x8103_0x0072();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0073.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 饱和度,0-127
/// </summary>
public class JT808_0x8103_0x0073 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0073>
public class JT808_0x8103_0x0073 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0073>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0073;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 饱和度,0-127
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0073 jT808_0x8103_0x0073 = new JT808_0x8103_0x0073();
jT808_0x8103_0x0073.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0073.ParamLength = reader.ReadByte();
jT808_0x8103_0x0073.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0073.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0073.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0073.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0073.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0073.ParamValue.ReadNumber()}]参数值[饱和度]", jT808_0x8103_0x0073.ParamValue);
}

public JT808_0x8103_0x0073 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0073 jT808_0x8103_0x0073 = new JT808_0x8103_0x0073();


+ 18
- 3
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0074.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 色度,0-255
/// </summary>
public class JT808_0x8103_0x0074 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0074>
public class JT808_0x8103_0x0074 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0074>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0074;
/// <summary>
@@ -15,9 +18,21 @@ namespace JT808.Protocol.MessageBody
/// </summary>
public override byte ParamLength { get; set; } = 4;
/// <summary>
/// 饱和度,0-127
/// 色度,0-255
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0074 jT808_0x8103_0x0074 = new JT808_0x8103_0x0074();
jT808_0x8103_0x0074.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0074.ParamLength = reader.ReadByte();
jT808_0x8103_0x0074.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0074.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0074.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0074.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0074.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0074.ParamValue.ReadNumber()}]参数值[色度]", jT808_0x8103_0x0074.ParamValue);
}

public JT808_0x8103_0x0074 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0074 jT808_0x8103_0x0074 = new JT808_0x8103_0x0074();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0080.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 车辆里程表读数,1/10km
/// </summary>
public class JT808_0x8103_0x0080 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0080>
public class JT808_0x8103_0x0080 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0080>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0080;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 车辆里程表读数,1/10km
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0080 jT808_0x8103_0x0080 = new JT808_0x8103_0x0080();
jT808_0x8103_0x0080.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0080.ParamLength = reader.ReadByte();
jT808_0x8103_0x0080.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0080.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0080.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0080.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0080.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0080.ParamValue.ReadNumber()}]参数值[车辆里程表读数1/10km]", jT808_0x8103_0x0080.ParamValue);
}

public JT808_0x8103_0x0080 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0080 jT808_0x8103_0x0080 = new JT808_0x8103_0x0080();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0081.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 车辆所在的省域 ID
/// </summary>
public class JT808_0x8103_0x0081 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0081>
public class JT808_0x8103_0x0081 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0081>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0081;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 车辆所在的省域 ID
/// </summary>
public ushort ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0081 jT808_0x8103_0x0081 = new JT808_0x8103_0x0081();
jT808_0x8103_0x0081.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0081.ParamLength = reader.ReadByte();
jT808_0x8103_0x0081.ParamValue = reader.ReadUInt16();
writer.WriteNumber($"[{ jT808_0x8103_0x0081.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0081.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0081.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0081.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0081.ParamValue.ReadNumber()}]参数值[车辆所在的省域ID]", jT808_0x8103_0x0081.ParamValue);
}

public JT808_0x8103_0x0081 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0081 jT808_0x8103_0x0081 = new JT808_0x8103_0x0081();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0082.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 车辆所在的市域 ID
/// </summary>
public class JT808_0x8103_0x0082 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0082>
public class JT808_0x8103_0x0082 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0082>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0082;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 车辆所在的市域 ID
/// </summary>
public ushort ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0082 jT808_0x8103_0x0082 = new JT808_0x8103_0x0082();
jT808_0x8103_0x0082.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0082.ParamLength = reader.ReadByte();
jT808_0x8103_0x0082.ParamValue = reader.ReadUInt16();
writer.WriteNumber($"[{ jT808_0x8103_0x0082.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0082.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0082.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0082.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0082.ParamValue.ReadNumber()}]参数值[车辆所在的市域ID]", jT808_0x8103_0x0082.ParamValue);
}

public JT808_0x8103_0x0082 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0082 jT808_0x8103_0x0082 = new JT808_0x8103_0x0082();


+ 18
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0083.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 公安交通管理部门颁发的机动车号牌
/// </summary>
public class JT808_0x8103_0x0083 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0083>
public class JT808_0x8103_0x0083 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0083>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0083;
/// <summary>
@@ -18,6 +21,19 @@ namespace JT808.Protocol.MessageBody
/// 公安交通管理部门颁发的机动车号牌
/// </summary>
public string ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0083 jT808_0x8103_0x0083 = new JT808_0x8103_0x0083();
jT808_0x8103_0x0083.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0083.ParamLength = reader.ReadByte();
var paramValue = reader.ReadVirtualArray(jT808_0x8103_0x0083.ParamLength);
jT808_0x8103_0x0083.ParamValue = reader.ReadString(jT808_0x8103_0x0083.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0083.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0083.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0083.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0083.ParamLength);
writer.WriteString($"[{paramValue.ToArray().ToHexString()}]参数值[公安交通管理部门颁发的机动车号牌]", jT808_0x8103_0x0083.ParamValue);
}

public JT808_0x8103_0x0083 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0083 jT808_0x8103_0x0083 = new JT808_0x8103_0x0083();


+ 16
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0084.cs 查看文件

@@ -1,4 +1,6 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;
@@ -8,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// 车牌颜色,按照 JT/T415-2006 的 5.4.12
/// </summary>
public class JT808_0x8103_0x0084 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0084>, IJT808_2019_Version
public class JT808_0x8103_0x0084 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0084>, IJT808_2019_Version, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0084;
/// <summary>
@@ -19,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// 车牌颜色,按照 JT/T415-2006 的 5.4.12
/// </summary>
public byte ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0084 jT808_0x8103_0x0084 = new JT808_0x8103_0x0084();
jT808_0x8103_0x0084.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0084.ParamLength = reader.ReadByte();
jT808_0x8103_0x0084.ParamValue = reader.ReadByte();
writer.WriteNumber($"[{ jT808_0x8103_0x0084.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0084.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0084.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0084.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0084.ParamValue.ReadNumber()}]参数值[车牌颜色,按照 JT/T415-2006 的 5.4.12]", jT808_0x8103_0x0084.ParamValue);
}

public JT808_0x8103_0x0084 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0084 jT808_0x8103_0x0084 = new JT808_0x8103_0x0084();


+ 22
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0090.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -11,7 +14,7 @@ namespace JT808.Protocol.MessageBody
/// bit2,0:禁用 GLONASS 定位, 1:启用 GLONASS 定位;
/// bit3,0:禁用 Galileo 定位, 1:启用 Galileo 定位。
/// </summary>
public class JT808_0x8103_0x0090 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0090>
public class JT808_0x8103_0x0090 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0090>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0090;
/// <summary>
@@ -26,6 +29,23 @@ namespace JT808.Protocol.MessageBody
/// bit3,0:禁用 Galileo 定位, 1:启用 Galileo 定位。
/// </summary>
public byte ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0090 jT808_0x8103_0x0090 = new JT808_0x8103_0x0090();
jT808_0x8103_0x0090.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0090.ParamLength = reader.ReadByte();
jT808_0x8103_0x0090.ParamValue = reader.ReadByte();
writer.WriteNumber($"[{ jT808_0x8103_0x0090.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0090.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0090.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0090.ParamLength);
writer.WriteStartArray($"[{ jT808_0x8103_0x0090.ParamValue.ReadNumber()}]参数值[GNSS定位模式]");
writer.WriteStringValue((jT808_0x8103_0x0090.ParamValue & 01) > 0 ? "启用GPS定位" : "禁用GPS定位");
writer.WriteStringValue((jT808_0x8103_0x0090.ParamValue & 02) > 0 ? "启用北斗定位" : "禁用北斗定位");
writer.WriteStringValue((jT808_0x8103_0x0090.ParamValue & 04) > 0 ? "启用GLONASS定位" : "禁用GLONASS定位");
writer.WriteStringValue((jT808_0x8103_0x0090.ParamValue & 08) > 0 ? "启用Galileo定位" : "禁用Galileo定位");
writer.WriteEndArray();
}

public JT808_0x8103_0x0090 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0090 jT808_0x8103_0x0090 = new JT808_0x8103_0x0090();


+ 18
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0091.cs 查看文件

@@ -1,5 +1,9 @@
using JT808.Protocol.Attributes;
using System;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -10,7 +14,7 @@ namespace JT808.Protocol.MessageBody
/// 0x02:19200;0x03:38400;
/// 0x04:57600;0x05:115200。
/// </summary>
public class JT808_0x8103_0x0091 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0091>
public class JT808_0x8103_0x0091 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0091>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0091;
/// <summary>
@@ -24,6 +28,18 @@ namespace JT808.Protocol.MessageBody
/// 0x04:57600;0x05:115200。
/// </summary>
public byte ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0091 jT808_0x8103_0x0091 = new JT808_0x8103_0x0091();
jT808_0x8103_0x0091.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0091.ParamLength = reader.ReadByte();
jT808_0x8103_0x0091.ParamValue = reader.ReadByte();
writer.WriteNumber($"[{ jT808_0x8103_0x0091.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0091.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0091.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0091.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0091.ParamValue.ReadNumber()}]参数值[GNSS波特率]",Math.Pow(4800, jT808_0x8103_0x0091.ParamValue));
}

public JT808_0x8103_0x0091 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0091 jT808_0x8103_0x0091 = new JT808_0x8103_0x0091();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0092.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -10,7 +13,7 @@ namespace JT808.Protocol.MessageBody
/// 0x02:2000ms;0x03:3000ms;
/// 0x04:4000ms。
/// </summary>
public class JT808_0x8103_0x0092 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0092>
public class JT808_0x8103_0x0092 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0092>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0092;
/// <summary>
@@ -24,6 +27,18 @@ namespace JT808.Protocol.MessageBody
/// 0x04:4000ms。
/// </summary>
public byte ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0092 jT808_0x8103_0x0092 = new JT808_0x8103_0x0092();
jT808_0x8103_0x0092.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0092.ParamLength = reader.ReadByte();
jT808_0x8103_0x0092.ParamValue = reader.ReadByte();
writer.WriteNumber($"[{ jT808_0x8103_0x0092.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0092.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0092.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0092.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0092.ParamValue.ReadNumber()}]GNSS模块详细定位数据输出频率ms", jT808_0x8103_0x0092.ParamValue==0?500: jT808_0x8103_0x0092.ParamValue*1000);
}

public JT808_0x8103_0x0092 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0092 jT808_0x8103_0x0092 = new JT808_0x8103_0x0092();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0093.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// GNSS 模块详细定位数据采集频率,单位为秒,默认为 1。
/// </summary>
public class JT808_0x8103_0x0093 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0093>
public class JT808_0x8103_0x0093 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0093>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0093;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// GNSS 模块详细定位数据采集频率,单位为秒,默认为 1。
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0093 jT808_0x8103_0x0093 = new JT808_0x8103_0x0093();
jT808_0x8103_0x0093.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0093.ParamLength = reader.ReadByte();
jT808_0x8103_0x0093.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0093.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0093.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0093.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0093.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0093.ParamValue.ReadNumber()}]参数值[GNSS模块详细定位数据采集频率s]", jT808_0x8103_0x0093.ParamValue);
}

public JT808_0x8103_0x0093 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0093 jT808_0x8103_0x0093 = new JT808_0x8103_0x0093();


+ 36
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0094.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -13,7 +16,7 @@ namespace JT808.Protocol.MessageBody
/// 0x0C,按累计距离上传,达到距离后自动停止上传;
/// 0x0D,按累计条数上传,达到上传条数后自动停止上传。
/// </summary>
public class JT808_0x8103_0x0094 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0094>
public class JT808_0x8103_0x0094 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0094>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0094;
/// <summary>
@@ -30,6 +33,37 @@ namespace JT808.Protocol.MessageBody
/// 0x0D,按累计条数上传,达到上传条数后自动停止上传。
/// </summary>
public byte ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0094 jT808_0x8103_0x0094 = new JT808_0x8103_0x0094();
jT808_0x8103_0x0094.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0094.ParamLength = reader.ReadByte();
jT808_0x8103_0x0094.ParamValue = reader.ReadByte();
writer.WriteNumber($"[{ jT808_0x8103_0x0094.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0094.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0094.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0094.ParamLength);
writer.WriteString($"[{ jT808_0x8103_0x0094.ParamValue.ReadNumber()}]参数值[GNSS模块详细定位数据上传方式]", GetUploadType( jT808_0x8103_0x0094.ParamValue));
string GetUploadType(byte num) {
switch (num)
{
case 0x00:
return "本地存储,不上传(默认值)";
case 0x01:
return "按时间间隔上传";
case 0x02:
return "按距离间隔上传";
case 0x0B:
return "按累计时间上传,达到传输时间后自动停止上传";
case 0x0C:
return "按累计距离上传,达到距离后自动停止上传";
case 0x0D:
return "按累计条数上传,达到上传条数后自动停止上传";
default:
return "未识别";
}
}
}

public JT808_0x8103_0x0094 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0094 jT808_0x8103_0x0094 = new JT808_0x8103_0x0094();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0095.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -12,7 +15,7 @@ namespace JT808.Protocol.MessageBody
/// 上传方式为 0x0C 时,单位为米;
/// 上传方式为 0x0D 时,单位为条。
/// </summary>
public class JT808_0x8103_0x0095 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0095>
public class JT808_0x8103_0x0095 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0095>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0095;
/// <summary>
@@ -28,6 +31,18 @@ namespace JT808.Protocol.MessageBody
/// 上传方式为 0x0D 时,单位为条。
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0095 jT808_0x8103_0x0095 = new JT808_0x8103_0x0095();
jT808_0x8103_0x0095.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0095.ParamLength = reader.ReadByte();
jT808_0x8103_0x0095.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0095.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0095.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0095.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0095.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0095.ParamValue.ReadNumber()}]参数值[GNSS模块详细定位数据上传设置]", jT808_0x8103_0x0095.ParamValue);
}

public JT808_0x8103_0x0095 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0095 jT808_0x8103_0x0095 = new JT808_0x8103_0x0095();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0100.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// CAN 总线通道 1 采集时间间隔(ms),0 表示不采集
/// </summary>
public class JT808_0x8103_0x0100 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0100>
public class JT808_0x8103_0x0100 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0100>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0100;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// CAN 总线通道 1 采集时间间隔(ms),0 表示不采集
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0100 jT808_0x8103_0x0100 = new JT808_0x8103_0x0100();
jT808_0x8103_0x0100.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0100.ParamLength = reader.ReadByte();
jT808_0x8103_0x0100.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0100.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0100.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0100.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0100.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0100.ParamValue.ReadNumber()}]参数值[CAN总线通道1 ,采集时间间隔(ms),0 表示不采集]", jT808_0x8103_0x0100.ParamValue);
}

public JT808_0x8103_0x0100 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0100 jT808_0x8103_0x0100 = new JT808_0x8103_0x0100();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0101.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// CAN 总线通道 1 上传时间间隔(s),0 表示不上传
/// </summary>
public class JT808_0x8103_0x0101 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0101>
public class JT808_0x8103_0x0101 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0101>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0101;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// CAN 总线通道 1 上传时间间隔(s),0 表示不上传
/// </summary>
public ushort ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0101 jT808_0x8103_0x0101 = new JT808_0x8103_0x0101();
jT808_0x8103_0x0101.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0101.ParamLength = reader.ReadByte();
jT808_0x8103_0x0101.ParamValue = reader.ReadUInt16();
writer.WriteNumber($"[{ jT808_0x8103_0x0101.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0101.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0101.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0101.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0101.ParamValue.ReadNumber()}]参数值[CAN总线通道1, 上传时间间隔(s),0 表示不上传]", jT808_0x8103_0x0101.ParamValue);
}

public JT808_0x8103_0x0101 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0101 jT808_0x8103_0x0101 = new JT808_0x8103_0x0101();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0102.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// CAN 总线通道 2 采集时间间隔(ms),0 表示不采集
/// </summary>
public class JT808_0x8103_0x0102 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0102>
public class JT808_0x8103_0x0102 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0102>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0102;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// CAN 总线通道 2 采集时间间隔(ms),0 表示不采集
/// </summary>
public uint ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0102 jT808_0x8103_0x0102 = new JT808_0x8103_0x0102();
jT808_0x8103_0x0102.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0102.ParamLength = reader.ReadByte();
jT808_0x8103_0x0102.ParamValue = reader.ReadUInt32();
writer.WriteNumber($"[{ jT808_0x8103_0x0102.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0102.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0102.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0102.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0102.ParamValue.ReadNumber()}]参数值[CAN 总线通道2, 采集时间间隔(ms),0 表示不采集]", jT808_0x8103_0x0102.ParamValue);
}

public JT808_0x8103_0x0102 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0102 jT808_0x8103_0x0102 = new JT808_0x8103_0x0102();


+ 17
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0103.cs 查看文件

@@ -1,5 +1,8 @@
using JT808.Protocol.Attributes;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -7,7 +10,7 @@ namespace JT808.Protocol.MessageBody
/// <summary>
/// CAN 总线通道 2 上传时间间隔(s),0 表示不上传
/// </summary>
public class JT808_0x8103_0x0103 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0103>
public class JT808_0x8103_0x0103 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0103>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0103;
/// <summary>
@@ -18,6 +21,18 @@ namespace JT808.Protocol.MessageBody
/// CAN 总线通道 2 上传时间间隔(s),0 表示不上传
/// </summary>
public ushort ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0103 jT808_0x8103_0x0103 = new JT808_0x8103_0x0103();
jT808_0x8103_0x0103.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0103.ParamLength = reader.ReadByte();
jT808_0x8103_0x0103.ParamValue = reader.ReadUInt16();
writer.WriteNumber($"[{ jT808_0x8103_0x0103.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0103.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0103.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0103.ParamLength);
writer.WriteNumber($"[{ jT808_0x8103_0x0103.ParamValue.ReadNumber()}]参数值[CAN 总线通道2,上传时间间隔(s),0 表示不上传]", jT808_0x8103_0x0103.ParamValue);
}

public JT808_0x8103_0x0103 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0103 jT808_0x8103_0x0103 = new JT808_0x8103_0x0103();


+ 25
- 2
src/JT808.Protocol/MessageBody/JT808_0x8103_0x0110.cs 查看文件

@@ -1,5 +1,10 @@
using JT808.Protocol.Attributes;
using System;
using System.Buffers.Binary;
using System.Text.Json;
using JT808.Protocol.Attributes;
using JT808.Protocol.Extensions;
using JT808.Protocol.Formatters;
using JT808.Protocol.Interfaces;
using JT808.Protocol.MessagePack;

namespace JT808.Protocol.MessageBody
@@ -12,7 +17,7 @@ namespace JT808.Protocol.MessageBody
/// bit29 表示数据采集方式,0:原始数据,1:采集区间的计算值;
/// bit28-bit0 表示 CAN 总线 ID。
/// </summary>
public class JT808_0x8103_0x0110 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0110>
public class JT808_0x8103_0x0110 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter<JT808_0x8103_0x0110>, IJT808Analyze
{
public override uint ParamId { get; set; } = 0x0110;
/// <summary>
@@ -28,6 +33,24 @@ namespace JT808.Protocol.MessageBody
/// bit28-bit0 表示 CAN 总线 ID。
/// </summary>
public byte[] ParamValue { get; set; }

public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config)
{
JT808_0x8103_0x0110 jT808_0x8103_0x0110 = new JT808_0x8103_0x0110();
jT808_0x8103_0x0110.ParamId = reader.ReadUInt32();
jT808_0x8103_0x0110.ParamLength = reader.ReadByte();
jT808_0x8103_0x0110.ParamValue = reader.ReadArray(jT808_0x8103_0x0110.ParamLength).ToArray();
writer.WriteNumber($"[ { jT808_0x8103_0x0110.ParamId.ReadNumber()}]参数ID", jT808_0x8103_0x0110.ParamId);
writer.WriteNumber($"[{jT808_0x8103_0x0110.ParamLength.ReadNumber()}]参数长度", jT808_0x8103_0x0110.ParamLength);
writer.WriteStartArray($"[{ jT808_0x8103_0x0110.ParamValue.ToHexString()}]参数值[CAN总线ID单独采集设置]");
writer.WriteNumber("此 ID 采集时间间隔(ms)", BinaryPrimitives.ReadUInt32BigEndian( jT808_0x8103_0x0110.ParamValue.AsSpan().Slice(0,4)));
writer.WriteString("CAN通道号", (jT808_0x8103_0x0110.ParamValue.AsSpan().Slice(4, 1).ToArray()[0]&0x01)==0? "CAN1" : "CAN2");
writer.WriteString("帧类型", (jT808_0x8103_0x0110.ParamValue.AsSpan().Slice(4, 1).ToArray()[0] & 0x02) == 0 ? "标准帧" : "扩展帧");
writer.WriteString("数据采集方式", (jT808_0x8103_0x0110.ParamValue.AsSpan().Slice(4, 1).ToArray()[0] & 0x04) == 0 ? "原始数据" : "采集区间的计算值");
writer.WriteNumber("CAN 总线 ID", BinaryPrimitives.ReadUInt32BigEndian(jT808_0x8103_0x0110.ParamValue.AsSpan().Slice(4, 4)) & 0x01FFFFFF);
writer.WriteEndArray();
}

public JT808_0x8103_0x0110 Deserialize(ref JT808MessagePackReader reader, IJT808Config config)
{
JT808_0x8103_0x0110 jT808_0x8103_0x0110 = new JT808_0x8103_0x0110();


正在加载...
取消
保存