From 0e0b086ed0f3155d92f217480f5468d1869e6725 Mon Sep 17 00:00:00 2001 From: "SmallChi(Koike)" <564952747@qq.com> Date: Tue, 2 Feb 2021 10:25:37 +0800 Subject: [PATCH] =?UTF-8?q?1.=E5=8E=BB=E6=8E=89=E6=B6=88=E6=81=AFId?= =?UTF-8?q?=E6=9E=9A=E4=B8=BE=E4=BE=9D=E8=B5=96=E7=9A=84=E7=89=B9=E6=80=A7?= =?UTF-8?q?=EF=BC=8C=E4=BD=BF=E7=94=A8=E5=85=B7=E4=BD=93=E6=B6=88=E6=81=AF?= =?UTF-8?q?=E4=BD=93=E7=94=9F=E6=88=90T4=E6=A8=A1=E6=9D=BF=202.=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E5=AD=97=E6=AE=B5=E9=AA=8C=E8=AF=81=E6=89=A9=E5=B1=95?= =?UTF-8?q?=EF=BC=8C=E7=94=A8=E4=BA=8E=E5=8D=8F=E8=AE=AE=E9=95=BF=E5=BA=A6?= =?UTF-8?q?=E9=AA=8C=E8=AF=81=203.=E5=AE=8C=E5=96=84=E9=83=A8=E5=88=86?= =?UTF-8?q?=E6=96=B9=E6=B3=95=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Extensions/JT808EnumExtensionsTest.cs | 34 +- .../JT808ValidationExtensionsTest.cs | 77 + .../JT808.Protocol.Test.csproj | 1 + .../JT808SerializerTest.cs | 2 +- .../MessageBody/JT808_0x0001Test.cs | 4 +- .../JT808_0x8103_0x0075.cs | 2 +- src/JT808.Protocol.Test/Simples/Demo4.cs | 2 +- src/JT808.Protocol.Test/Simples/Demo6.cs | 2 +- .../Attributes/JT808BodiesTypeAttribute.cs | 14 - .../JT808MsgIdDescriptionAttribute.cs | 20 - .../Buffers/JT808BufferWriter.cs | 3 +- .../DependencyInjectionExtensions.cs | 3 + src/JT808.Protocol/Enums/JT808ErrorCode.cs | 11 +- src/JT808.Protocol/Enums/JT808MsgId.cs | 175 +- .../Enums/JT808PlatformResult.cs | 3 + src/JT808.Protocol/Enums/JT808PositionType.cs | 15 + .../Enums/JT808UpgradeResult.cs | 9 + src/JT808.Protocol/Enums/JT808UpgradeType.cs | 9 + src/JT808.Protocol/Enums/JT808Version.cs | 9 + .../Exceptions/JT808Exception.cs | 32 +- .../Extensions/JT808AnalyzeExtensions.cs | 10 + .../Extensions/JT808ConfigExtensions.cs | 39 +- .../Extensions/JT808EnumExtensions.cs | 4 +- .../Extensions/JT808HexExtensions.cs | 154 +- .../JT808PackageExtensionsTemplate.cs | 4869 +++++++++-------- .../JT808PackageExtensionsTemplate.tt | 83 +- .../Extensions/JT808ValidationExtensions.cs | 67 + .../Formatters/IJT808FormatterFactory.cs | 11 + .../Formatters/IJT808MessagePackFormatter.cs | 24 +- src/JT808.Protocol/Interfaces/IJT808Config.cs | 3 + .../Interfaces/IJT808ExternalRegister.cs | 7 + .../Internal/JT808FormatterFactory.cs | 2 +- .../Internal/JT808MsgIdFactory.cs | 2 +- src/JT808.Protocol/JT808.Protocol.csproj | 7 +- src/JT808.Protocol/JT808.Protocol.xml | 1239 ++++- src/JT808.Protocol/JT808Constants.cs | 4 +- .../JT808HeaderMessageBodyProperty.cs | 2 +- src/JT808.Protocol/JT808Serializer.cs | 14 +- .../MessageBody/JT808_0x0001.cs | 6 +- .../MessageBody/JT808_0x0003.cs | 2 +- .../MessageBody/JT808_0x0200_0x04.cs | 2 +- .../MessageBody/JT808_0x0200_0x05.cs | 2 +- .../MessageBody/JT808_0x0200_0x06.cs | 2 +- .../MessageBody/JT808_0x0200_0x2B.cs | 2 +- .../MessageBody/JT808_0x0200_0x30.cs | 2 +- .../MessageBody/JT808_0x0302.cs | 2 +- .../MessageBody/JT808_0x0700.cs | 4 +- .../MessageBody/JT808_0x0900.cs | 2 +- .../MessageBody/JT808_0x0901.cs | 4 +- .../MessageBody/JT808_0x8103.cs | 2 +- .../MessageBody/JT808_0x8103_0x0001.cs | 2 +- .../MessageBody/JT808_0x8103_0x0002.cs | 2 +- .../MessageBody/JT808_0x8103_0x0003.cs | 2 +- .../MessageBody/JT808_0x8103_0x0004.cs | 2 +- .../MessageBody/JT808_0x8103_0x0005.cs | 2 +- .../MessageBody/JT808_0x8103_0x0006.cs | 2 +- .../MessageBody/JT808_0x8103_0x0007.cs | 2 +- .../MessageBody/JT808_0x8103_0x0010.cs | 2 +- .../MessageBody/JT808_0x8103_0x0011.cs | 2 +- .../MessageBody/JT808_0x8103_0x0012.cs | 2 +- .../MessageBody/JT808_0x8103_0x0013.cs | 2 +- .../MessageBody/JT808_0x8103_0x0014.cs | 2 +- .../MessageBody/JT808_0x8103_0x0015.cs | 2 +- .../MessageBody/JT808_0x8103_0x0016.cs | 2 +- .../MessageBody/JT808_0x8103_0x0017.cs | 2 +- .../MessageBody/JT808_0x8103_0x0018.cs | 2 +- .../MessageBody/JT808_0x8103_0x0019.cs | 2 +- .../MessageBody/JT808_0x8103_0x001A.cs | 2 +- .../MessageBody/JT808_0x8103_0x001B.cs | 2 +- .../MessageBody/JT808_0x8103_0x001C.cs | 2 +- .../MessageBody/JT808_0x8103_0x001D.cs | 2 +- .../MessageBody/JT808_0x8103_0x0020.cs | 2 +- .../MessageBody/JT808_0x8103_0x0021.cs | 2 +- .../MessageBody/JT808_0x8103_0x0022.cs | 2 +- .../MessageBody/JT808_0x8103_0x0023.cs | 2 +- .../MessageBody/JT808_0x8103_0x0024.cs | 2 +- .../MessageBody/JT808_0x8103_0x0025.cs | 2 +- .../MessageBody/JT808_0x8103_0x0026.cs | 2 +- .../MessageBody/JT808_0x8103_0x0027.cs | 2 +- .../MessageBody/JT808_0x8103_0x0028.cs | 2 +- .../MessageBody/JT808_0x8103_0x0029.cs | 2 +- .../MessageBody/JT808_0x8103_0x002C.cs | 2 +- .../MessageBody/JT808_0x8103_0x002D.cs | 2 +- .../MessageBody/JT808_0x8103_0x002E.cs | 2 +- .../MessageBody/JT808_0x8103_0x002F.cs | 2 +- .../MessageBody/JT808_0x8103_0x0030.cs | 6 +- .../MessageBody/JT808_0x8103_0x0031.cs | 2 +- .../MessageBody/JT808_0x8103_0x0032.cs | 2 +- .../MessageBody/JT808_0x8103_0x0040.cs | 2 +- .../MessageBody/JT808_0x8103_0x0041.cs | 2 +- .../MessageBody/JT808_0x8103_0x0042.cs | 2 +- .../MessageBody/JT808_0x8103_0x0043.cs | 2 +- .../MessageBody/JT808_0x8103_0x0044.cs | 2 +- .../MessageBody/JT808_0x8103_0x0045.cs | 2 +- .../MessageBody/JT808_0x8103_0x0046.cs | 2 +- .../MessageBody/JT808_0x8103_0x0047.cs | 2 +- .../MessageBody/JT808_0x8103_0x0048.cs | 2 +- .../MessageBody/JT808_0x8103_0x0049.cs | 2 +- .../MessageBody/JT808_0x8103_0x0050.cs | 2 +- .../MessageBody/JT808_0x8103_0x0051.cs | 2 +- .../MessageBody/JT808_0x8103_0x0052.cs | 2 +- .../MessageBody/JT808_0x8103_0x0053.cs | 2 +- .../MessageBody/JT808_0x8103_0x0054.cs | 2 +- .../MessageBody/JT808_0x8103_0x0055.cs | 2 +- .../MessageBody/JT808_0x8103_0x0056.cs | 2 +- .../MessageBody/JT808_0x8103_0x0057.cs | 2 +- .../MessageBody/JT808_0x8103_0x0058.cs | 2 +- .../MessageBody/JT808_0x8103_0x0059.cs | 2 +- .../MessageBody/JT808_0x8103_0x005A.cs | 2 +- .../MessageBody/JT808_0x8103_0x005B.cs | 2 +- .../MessageBody/JT808_0x8103_0x005C.cs | 2 +- .../MessageBody/JT808_0x8103_0x005D.cs | 2 +- .../MessageBody/JT808_0x8103_0x005E.cs | 2 +- .../MessageBody/JT808_0x8103_0x0064.cs | 2 +- .../MessageBody/JT808_0x8103_0x0065.cs | 2 +- .../MessageBody/JT808_0x8103_0x0070.cs | 2 +- .../MessageBody/JT808_0x8103_0x0071.cs | 2 +- .../MessageBody/JT808_0x8103_0x0072.cs | 2 +- .../MessageBody/JT808_0x8103_0x0073.cs | 2 +- .../MessageBody/JT808_0x8103_0x0074.cs | 2 +- .../MessageBody/JT808_0x8103_0x0080.cs | 2 +- .../MessageBody/JT808_0x8103_0x0081.cs | 2 +- .../MessageBody/JT808_0x8103_0x0082.cs | 2 +- .../MessageBody/JT808_0x8103_0x0083.cs | 2 +- .../MessageBody/JT808_0x8103_0x0084.cs | 2 +- .../MessageBody/JT808_0x8103_0x0090.cs | 2 +- .../MessageBody/JT808_0x8103_0x0091.cs | 2 +- .../MessageBody/JT808_0x8103_0x0092.cs | 2 +- .../MessageBody/JT808_0x8103_0x0093.cs | 2 +- .../MessageBody/JT808_0x8103_0x0094.cs | 2 +- .../MessageBody/JT808_0x8103_0x0095.cs | 2 +- .../MessageBody/JT808_0x8103_0x0100.cs | 2 +- .../MessageBody/JT808_0x8103_0x0101.cs | 2 +- .../MessageBody/JT808_0x8103_0x0102.cs | 2 +- .../MessageBody/JT808_0x8103_0x0103.cs | 2 +- .../MessageBody/JT808_0x8103_0x0110.cs | 6 +- .../MessageBody/JT808_0x8300.cs | 2 +- .../MessagePack/JT808MessagePackReader.cs | 201 +- .../MessagePack/JT808MessagePackWriter.cs | 244 +- .../Metadata/JT808SplitPackageProperty.cs | 11 +- 140 files changed, 4739 insertions(+), 2899 deletions(-) create mode 100644 src/JT808.Protocol.Test/Extensions/JT808ValidationExtensionsTest.cs delete mode 100644 src/JT808.Protocol/Attributes/JT808BodiesTypeAttribute.cs delete mode 100644 src/JT808.Protocol/Attributes/JT808MsgIdDescriptionAttribute.cs create mode 100644 src/JT808.Protocol/Extensions/JT808ValidationExtensions.cs diff --git a/src/JT808.Protocol.Test/Extensions/JT808EnumExtensionsTest.cs b/src/JT808.Protocol.Test/Extensions/JT808EnumExtensionsTest.cs index 86abbb3..91a1302 100644 --- a/src/JT808.Protocol.Test/Extensions/JT808EnumExtensionsTest.cs +++ b/src/JT808.Protocol.Test/Extensions/JT808EnumExtensionsTest.cs @@ -1,6 +1,11 @@ using JT808.Protocol.Enums; using JT808.Protocol.Extensions; +using JT808.Protocol.Interfaces; +using System; using System.Collections.Generic; +using System.Diagnostics; +using System.Linq; +using System.Reflection; using Xunit; namespace JT808.Protocol.Test.Extensions { @@ -8,8 +13,7 @@ namespace JT808.Protocol.Test.Extensions { [Fact] public void Test1() - { - + { var list0 = JT808EnumExtensions.GetEnumTypes(5, 32); var list1 = JT808EnumExtensions.GetEnumTypes(16, 32); var list2 = JT808EnumExtensions.GetEnumTypes(18, 32); @@ -24,5 +28,31 @@ namespace JT808.Protocol.Test.Extensions Assert.Equal(list4, new List() { JT808Alarm.紧急报警_触动报警开关后触发, JT808Alarm.超速报警,JT808Alarm.疲劳驾驶, JT808Alarm.危险预警, JT808Alarm.GNSS模块发生故障 }); Assert.Equal(list5, new List() { JT808Alarm.紧急报警_触动报警开关后触发, JT808Alarm.超速报警, JT808Alarm.疲劳驾驶, JT808Alarm.危险预警, JT808Alarm.GNSS模块发生故障, JT808Alarm.非法开门报警 }); } + + [Fact] + public void Test2() + { + var types = Enum.GetNames(typeof(JT808MsgId)); + var bodyTypes = Assembly.GetAssembly(typeof(JT808Package)).GetTypes().Where(w => w.BaseType == typeof(JT808Bodies)).ToList(); + Assert.Equal(types.Length, bodyTypes.Count); + } + + [Fact] + public void Test3() + { + var types = Enum.GetNames(typeof(JT808MsgId)); + var bodyTypes = Assembly.GetAssembly(typeof(JT808Package)).GetTypes().Where(w => w.BaseType == typeof(JT808Bodies)).ToList(); + foreach (var type in bodyTypes) + { + var instance = Activator.CreateInstance(type); + if(instance is JT808Bodies jT808Bodies) + { + string code = $"0x{jT808Bodies.MsgId.ToString("X2").PadLeft(4, '0')}"; + string name = jT808Bodies.Description; + Debug.WriteLine(type.FullName); + } + } + Assert.Equal(types.Length, bodyTypes.Count); + } } } diff --git a/src/JT808.Protocol.Test/Extensions/JT808ValidationExtensionsTest.cs b/src/JT808.Protocol.Test/Extensions/JT808ValidationExtensionsTest.cs new file mode 100644 index 0000000..e197129 --- /dev/null +++ b/src/JT808.Protocol.Test/Extensions/JT808ValidationExtensionsTest.cs @@ -0,0 +1,77 @@ +using JT808.Protocol.Enums; +using JT808.Protocol.Exceptions; +using JT808.Protocol.Extensions; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Xunit; + +namespace JT808.Protocol.Test.Extensions +{ + public class JT808ValidationExtensionsTest + { + [Fact] + public void Test1() + { + string str = "SmallChi"; + str.ValiString(nameof(str), 8); + } + + [Fact] + public void Test2() + { + string str = "SmallChi"; + var ex=Assert.Throws(() => + { + str.ValiString(nameof(str),4); + }); + Assert.Equal(JT808ErrorCode.VailLength, ex.ErrorCode); + Assert.Equal("str:8>fixed[4]", ex.Message); + } + + [Fact] + public void Test3() + { + string str = "SmallChi"; + var ex = Assert.Throws(() => + { + str.ValiString(nameof(str), 16); + }); + Assert.Equal(JT808ErrorCode.NotEnoughLength, ex.ErrorCode); + Assert.Equal("str:8(() => + { + arr.ValiBytes(nameof(arr), 6); + }); + Assert.Equal(JT808ErrorCode.VailLength, ex.ErrorCode); + Assert.Equal("arr:7>fixed[6]", ex.Message); + } + + [Fact] + public void Test6() + { + byte[] arr = new byte[7]; + var ex = Assert.Throws(() => + { + arr.ValiBytes(nameof(arr), 8); + }); + Assert.Equal(JT808ErrorCode.NotEnoughLength, ex.ErrorCode); + Assert.Equal("arr:7 + diff --git a/src/JT808.Protocol.Test/JT808SerializerTest.cs b/src/JT808.Protocol.Test/JT808SerializerTest.cs index cbc1b95..7c124eb 100644 --- a/src/JT808.Protocol.Test/JT808SerializerTest.cs +++ b/src/JT808.Protocol.Test/JT808SerializerTest.cs @@ -47,7 +47,7 @@ namespace JT808.Protocol.Test { ReplyMsgId = Enums.JT808MsgId.终端心跳.ToUInt16Value(), ReplyMsgNum = 1000, - JT808TerminalResult = Enums.JT808TerminalResult.Success + TerminalResult = Enums.JT808TerminalResult.Success } }; var hexSpan = jT808Serializer.SerializeReadOnlySpan(jT808Package); diff --git a/src/JT808.Protocol.Test/MessageBody/JT808_0x0001Test.cs b/src/JT808.Protocol.Test/MessageBody/JT808_0x0001Test.cs index 911c38e..c996195 100644 --- a/src/JT808.Protocol.Test/MessageBody/JT808_0x0001Test.cs +++ b/src/JT808.Protocol.Test/MessageBody/JT808_0x0001Test.cs @@ -23,7 +23,7 @@ namespace JT808.Protocol.Test.MessageBody { ReplyMsgId = Enums.JT808MsgId.终端心跳.ToUInt16Value(), ReplyMsgNum = 1000, - JT808TerminalResult = Enums.JT808TerminalResult.Success + TerminalResult = Enums.JT808TerminalResult.Success } }; //"7E 00 01 00 05 01 23 45 67 89 00 04 B3 03 E8 00 02 00 D3 7E" @@ -42,7 +42,7 @@ namespace JT808.Protocol.Test.MessageBody JT808_0x0001 JT808Bodies = (JT808_0x0001)jT808Package.Bodies; Assert.Equal(Enums.JT808MsgId.终端心跳.ToUInt16Value(), JT808Bodies.ReplyMsgId); Assert.Equal(1000, JT808Bodies.ReplyMsgNum); - Assert.Equal(Enums.JT808TerminalResult.Success, JT808Bodies.JT808TerminalResult); + Assert.Equal(Enums.JT808TerminalResult.Success, JT808Bodies.TerminalResult); } [Fact] diff --git a/src/JT808.Protocol.Test/MessageBody/JT808_0x8103CustomIdExtensions/JT808_0x8103_0x0075.cs b/src/JT808.Protocol.Test/MessageBody/JT808_0x8103CustomIdExtensions/JT808_0x8103_0x0075.cs index 348ffae..243ebe4 100644 --- a/src/JT808.Protocol.Test/MessageBody/JT808_0x8103CustomIdExtensions/JT808_0x8103_0x0075.cs +++ b/src/JT808.Protocol.Test/MessageBody/JT808_0x8103CustomIdExtensions/JT808_0x8103_0x0075.cs @@ -1,4 +1,4 @@ -using JT808.Protocol.Attributes; + using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; using JT808.Protocol.Extensions; diff --git a/src/JT808.Protocol.Test/Simples/Demo4.cs b/src/JT808.Protocol.Test/Simples/Demo4.cs index 80c9e3a..1d303f7 100644 --- a/src/JT808.Protocol.Test/Simples/Demo4.cs +++ b/src/JT808.Protocol.Test/Simples/Demo4.cs @@ -9,7 +9,7 @@ using System.Text; using Xunit; using JT808.Protocol.Formatters; using JT808.Protocol.MessagePack; -using JT808.Protocol.Attributes; + using Newtonsoft.Json.Linq; using Newtonsoft.Json; using JT808.Protocol.Internal; diff --git a/src/JT808.Protocol.Test/Simples/Demo6.cs b/src/JT808.Protocol.Test/Simples/Demo6.cs index 4d30007..d934579 100644 --- a/src/JT808.Protocol.Test/Simples/Demo6.cs +++ b/src/JT808.Protocol.Test/Simples/Demo6.cs @@ -10,7 +10,7 @@ using Xunit; using JT808.Protocol.Formatters; using Microsoft.Extensions.DependencyInjection; using JT808.Protocol.MessagePack; -using JT808.Protocol.Attributes; + using JT808.Protocol.Internal; namespace JT808.Protocol.Test.Simples diff --git a/src/JT808.Protocol/Attributes/JT808BodiesTypeAttribute.cs b/src/JT808.Protocol/Attributes/JT808BodiesTypeAttribute.cs deleted file mode 100644 index 0c286d6..0000000 --- a/src/JT808.Protocol/Attributes/JT808BodiesTypeAttribute.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System; - -namespace JT808.Protocol.Attributes -{ - [AttributeUsage(AttributeTargets.Field, Inherited = false, AllowMultiple = false)] - public sealed class JT808BodiesTypeAttribute : Attribute - { - public JT808BodiesTypeAttribute(Type jT808BodiesType) - { - JT808BodiesType = jT808BodiesType; - } - public Type JT808BodiesType { get; } - } -} diff --git a/src/JT808.Protocol/Attributes/JT808MsgIdDescriptionAttribute.cs b/src/JT808.Protocol/Attributes/JT808MsgIdDescriptionAttribute.cs deleted file mode 100644 index e89d027..0000000 --- a/src/JT808.Protocol/Attributes/JT808MsgIdDescriptionAttribute.cs +++ /dev/null @@ -1,20 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Text; - -namespace JT808.Protocol.Attributes -{ - [AttributeUsage(AttributeTargets.Field, Inherited = false, AllowMultiple = false)] - public sealed class JT808MsgIdDescriptionAttribute : Attribute - { - public string Code { get; set; } - - public string Name { get; set; } - - public JT808MsgIdDescriptionAttribute(string code, string name) - { - Code = code; - Name = name; - } - } -} diff --git a/src/JT808.Protocol/Buffers/JT808BufferWriter.cs b/src/JT808.Protocol/Buffers/JT808BufferWriter.cs index 536e04a..60354f7 100644 --- a/src/JT808.Protocol/Buffers/JT808BufferWriter.cs +++ b/src/JT808.Protocol/Buffers/JT808BufferWriter.cs @@ -3,7 +3,8 @@ namespace JT808.Protocol.Buffers { /// - /// + /// + /// ref System.Buffers.Writer /// ref partial struct JT808BufferWriter { diff --git a/src/JT808.Protocol/DependencyInjectionExtensions.cs b/src/JT808.Protocol/DependencyInjectionExtensions.cs index c14d81e..85c46e2 100644 --- a/src/JT808.Protocol/DependencyInjectionExtensions.cs +++ b/src/JT808.Protocol/DependencyInjectionExtensions.cs @@ -7,6 +7,9 @@ using System.Text; namespace JT808.Protocol { + /// + /// + /// public static class DependencyInjectionExtensions { public static IJT808Builder AddJT808Configure(this IServiceCollection services, IJT808Config jT808Config) diff --git a/src/JT808.Protocol/Enums/JT808ErrorCode.cs b/src/JT808.Protocol/Enums/JT808ErrorCode.cs index 3b4ac49..8d4e85a 100644 --- a/src/JT808.Protocol/Enums/JT808ErrorCode.cs +++ b/src/JT808.Protocol/Enums/JT808ErrorCode.cs @@ -3,11 +3,11 @@ public enum JT808ErrorCode { /// - /// 校验和不相等 + /// JT808校验和不相等 /// CheckCodeNotEqual = 1001, /// - /// 校验和不相等 + /// JT19056校验和不相等 /// CarDVRCheckCodeNotEqual = 1002, /// @@ -18,7 +18,10 @@ /// 消息体解析错误 /// BodiesParseError = 1004, - GetAttributeError = 1005, + /// + /// 验证长度 + /// + VailLength = 1005, /// /// 没有实现对应的类型 /// @@ -29,7 +32,7 @@ NotEnoughLength = 1007, /// /// 没有全局注册格式化器 - /// + /// IJT808MessagePackFormatter /// NotGlobalRegisterFormatterAssembly = 1008, /// diff --git a/src/JT808.Protocol/Enums/JT808MsgId.cs b/src/JT808.Protocol/Enums/JT808MsgId.cs index ab1a106..7be3255 100644 --- a/src/JT808.Protocol/Enums/JT808MsgId.cs +++ b/src/JT808.Protocol/Enums/JT808MsgId.cs @@ -1,5 +1,4 @@ -using JT808.Protocol.Attributes; -using JT808.Protocol.MessageBody; +using JT808.Protocol.MessageBody; namespace JT808.Protocol.Enums { @@ -12,498 +11,356 @@ namespace JT808.Protocol.Enums /// 终端通用应答 /// 0x0001 /// - [JT808BodiesType(typeof(JT808_0x0001))] - [JT808MsgIdDescription("0x0001", "终端通用应答")] 终端通用应答 = 0x0001, /// /// 平台通用应答 /// 0x8001 /// - [JT808BodiesType(typeof(JT808_0x8001))] - [JT808MsgIdDescription("0x8001", "平台通用应答")] 平台通用应答 = 0x8001, /// /// 终端心跳 /// 0x0002 /// - [JT808BodiesType(typeof(JT808_0x0002))] - [JT808MsgIdDescription("0x0002", "终端心跳")] 终端心跳 = 0x0002, /// /// 补传分包请求 /// 0x8003 /// - [JT808BodiesType(typeof(JT808_0x8003))] - [JT808MsgIdDescription("0x8003", "补传分包请求")] 补传分包请求 = 0x8003, /// /// 终端注册 /// 0x0100 /// - [JT808BodiesType(typeof(JT808_0x0100))] - [JT808MsgIdDescription("0x0100", "终端注册")] 终端注册 = 0x0100, /// /// 终端注册应答 /// 0x8100 /// - [JT808BodiesType(typeof(JT808_0x8100))] - [JT808MsgIdDescription("0x8100", "终端注册应答")] 终端注册应答 = 0x8100, /// /// 终端注销 /// 0x0003 /// - [JT808BodiesType(typeof(JT808_0x0003))] - [JT808MsgIdDescription("0x0003", "终端注销")] 终端注销 = 0x0003, /// /// 终端鉴权 /// 0x0102 /// - [JT808BodiesType(typeof(JT808_0x0102))] - [JT808MsgIdDescription("0x0102", "终端鉴权")] 终端鉴权 = 0x0102, /// /// 设置终端参数 /// 0x8103 /// - [JT808BodiesType(typeof(JT808_0x8103))] - [JT808MsgIdDescription("0x8103", "设置终端参数")] 设置终端参数 = 0x8103, /// /// 查询终端参数 /// 0x8104 /// - [JT808BodiesType(typeof(JT808_0x8104))] - [JT808MsgIdDescription("0x8104", "查询终端参数")] 查询终端参数 = 0x8104, /// /// 查询终端参数应答 /// 0x0104 /// - [JT808BodiesType(typeof(JT808_0x0104))] - [JT808MsgIdDescription("0x0104", "查询终端参数应答")] 查询终端参数应答 = 0x0104, /// /// 终端控制 /// 0x8105 /// - [JT808BodiesType(typeof(JT808_0x8105))] - [JT808MsgIdDescription("0x8105", "终端控制")] 终端控制 = 0x8105, /// /// 查询指定终端参数 /// 0x8106 /// - [JT808BodiesType(typeof(JT808_0x8106))] - [JT808MsgIdDescription("0x8106", "查询指定终端参数")] 查询指定终端参数 = 0x8106, /// /// 查询终端属性 /// 0x8107 /// - [JT808BodiesType(typeof(JT808_0x8107))] - [JT808MsgIdDescription("0x8107", "查询终端属性")] 查询终端属性 = 0x8107, /// /// 查询终端属性应答 /// 0x0107 /// - [JT808BodiesType(typeof(JT808_0x0107))] - [JT808MsgIdDescription("0x0107", "查询终端属性应答")] 查询终端属性应答 = 0x0107, /// /// 下发终端升级包 /// 0x8108 /// - [JT808BodiesType(typeof(JT808_0x8108))] - [JT808MsgIdDescription("0x8108", "下发终端升级包")] 下发终端升级包 = 0x8108, /// /// 终端升级结果通知 /// 0x0108 /// - [JT808BodiesType(typeof(JT808_0x0108))] - [JT808MsgIdDescription("0x0108", "终端升级结果通知")] 终端升级结果通知 = 0x0108, /// /// 位置信息汇报 /// 0x0200 /// - [JT808BodiesType(typeof(JT808_0x0200))] - [JT808MsgIdDescription("0x0200", "位置信息汇报")] 位置信息汇报 = 0x0200, /// /// 位置信息查询 /// 0x8201 /// - [JT808BodiesType(typeof(JT808_0x8201))] - [JT808MsgIdDescription("0x8201", "位置信息查询")] 位置信息查询 = 0x8201, /// /// 位置信息查询应答 /// 0x0201 /// - [JT808BodiesType(typeof(JT808_0x0201))] - [JT808MsgIdDescription("0x0201", "位置信息查询应答")] 位置信息查询应答 = 0x0201, /// /// 临时位置跟踪控制 /// 0x8202 /// - [JT808BodiesType(typeof(JT808_0x8202))] - [JT808MsgIdDescription("0x8202", "临时位置跟踪控制")] 临时位置跟踪控制 = 0x8202, /// /// 人工确认报警消息 /// 0x8203 /// - [JT808BodiesType(typeof(JT808_0x8203))] - [JT808MsgIdDescription("0x8203", "人工确认报警消息")] 人工确认报警消息 = 0x8203, /// /// 文本信息下发 /// 0x8300 /// - [JT808BodiesType(typeof(JT808_0x8300))] - [JT808MsgIdDescription("0x8300", "文本信息下发")] 文本信息下发 = 0x8300, /// /// 事件设置 /// 0x8301 /// - [JT808BodiesType(typeof(JT808_0x8301))] - [JT808MsgIdDescription("0x8301", "事件设置")] 事件设置 = 0x8301, /// /// 事件报告 /// 0x0301 /// - [JT808BodiesType(typeof(JT808_0x0301))] - [JT808MsgIdDescription("0x0301", "事件报告")] 事件报告 = 0x0301, /// /// 提问下发 /// 0x8302 /// - [JT808BodiesType(typeof(JT808_0x8302))] - [JT808MsgIdDescription("0x8302", "提问下发")] 提问下发 = 0x8302, /// /// 提问应答 /// 0x0302 /// - [JT808BodiesType(typeof(JT808_0x0302))] - [JT808MsgIdDescription("0x8302", "提问应答")] 提问应答 = 0x0302, /// /// 信息点播菜单设置 /// 0x8303 /// - [JT808BodiesType(typeof(JT808_0x8303))] - [JT808MsgIdDescription("0x8303", "信息点播菜单设置")] 信息点播菜单设置 = 0x8303, /// /// 信息点播/取消 /// 0x0303 /// - [JT808BodiesType(typeof(JT808_0x0303))] - [JT808MsgIdDescription("0x0303", "信息点播或取消")] 信息点播_取消 = 0x0303, /// /// 信息服务 /// 0x8304 /// - [JT808BodiesType(typeof(JT808_0x8304))] - [JT808MsgIdDescription("0x8304", "信息服务")] 信息服务 = 0x8304, /// /// 电话回拨 /// 0x8400 /// - [JT808BodiesType(typeof(JT808_0x8400))] - [JT808MsgIdDescription("0x8400", "电话回拨")] 电话回拨 = 0x8400, /// /// 设置电话本 /// 0x8401 /// - [JT808BodiesType(typeof(JT808_0x8401))] - [JT808MsgIdDescription("0x8401", "设置电话本")] 设置电话本 = 0x8401, /// /// 车辆控制 /// 0x8500 /// - [JT808BodiesType(typeof(JT808_0x8500))] - [JT808MsgIdDescription("0x8500", "车辆控制")] 车辆控制 = 0x8500, /// /// 车辆控制应答 /// 0x0500 /// - [JT808BodiesType(typeof(JT808_0x0500))] - [JT808MsgIdDescription("0x0500", "车辆控制应答")] 车辆控制应答 = 0x0500, /// /// 设置圆形区域 /// 0x8600 /// - [JT808BodiesType(typeof(JT808_0x8600))] - [JT808MsgIdDescription("0x8600", "设置圆形区域")] 设置圆形区域 = 0x8600, /// /// 删除圆形区域 /// 0x8601 /// - [JT808BodiesType(typeof(JT808_0x8601))] - [JT808MsgIdDescription("0x8601", "删除圆形区域")] 删除圆形区域 = 0x8601, /// /// 设置矩形区域 /// 0x8602 /// - [JT808BodiesType(typeof(JT808_0x8602))] - [JT808MsgIdDescription("0x8602", "设置矩形区域")] 设置矩形区域 = 0x8602, /// /// 删除矩形区域 /// 0x8603 /// - [JT808BodiesType(typeof(JT808_0x8603))] - [JT808MsgIdDescription("0x8603", "删除矩形区域")] 删除矩形区域 = 0x8603, /// /// 设置多边形区域 /// 0x8604 /// - [JT808BodiesType(typeof(JT808_0x8604))] - [JT808MsgIdDescription("0x8604", "设置多边形区域")] 设置多边形区域 = 0x8604, /// /// 删除多边形区域 /// 0x8605 /// - [JT808BodiesType(typeof(JT808_0x8605))] - [JT808MsgIdDescription("0x8605", "删除多边形区域")] 删除多边形区域 = 0x8605, /// /// 设置路线 /// 0x8606 /// - [JT808BodiesType(typeof(JT808_0x8606))] - [JT808MsgIdDescription("0x8606", "设置路线")] 设置路线 = 0x8606, /// /// 删除路线 /// 0x8607 /// - [JT808BodiesType(typeof(JT808_0x8607))] - [JT808MsgIdDescription("0x8607", "删除路线")] 删除路线 = 0x8607, - ///// - ///// 行驶记录仪数据采集命令 - ///// 0x8700 - ///// - //[JT808BodiesType(typeof(JT808_0x8700))] - //[JT808MsgIdDescription("0x8700", "行驶记录仪数据采集命令")] - //行驶记录仪数据采集命令 = 0x8700, - ///// - ///// 行驶记录仪数据上传 - ///// 0x0700 - ///// - //[JT808BodiesType(typeof(JT808_0x0700))] - //[JT808MsgIdDescription("0x0700", "行驶记录仪数据上传")] - //行驶记录仪数据上传 = 0x0700, - ///// - ///// 行驶记录仪参数下传命令 - ///// 0x8701 - ///// - //[JT808BodiesType(typeof(JT808_0x8701))] - //[JT808MsgIdDescription("0x8701", "行驶记录仪参数下传命令")] - //行驶记录仪参数下传命令 = 0x8701, + /// + /// 行驶记录仪数据采集命令 + /// 0x8700 + /// + 行驶记录仪数据采集命令 = 0x8700, + /// + /// 行驶记录仪数据上传 + /// 0x0700 + /// + 行驶记录仪数据上传 = 0x0700, + /// + /// 行驶记录仪参数下传命令 + /// 0x8701 + /// + 行驶记录仪参数下传命令 = 0x8701, /// /// 电子运单上报 /// 0x0701 /// - [JT808BodiesType(typeof(JT808_0x0701))] - [JT808MsgIdDescription("0x0701", "电子运单上报")] 电子运单上报 = 0x0701, /// /// 驾驶员身份信息采集上报 /// 0x0702 /// - [JT808BodiesType(typeof(JT808_0x0702))] - [JT808MsgIdDescription("0x0702", "驾驶员身份信息采集上报")] 驾驶员身份信息采集上报 = 0x0702, /// /// 上报驾驶员身份信息请求 /// 0x8702 /// - [JT808BodiesType(typeof(JT808_0x8702))] - [JT808MsgIdDescription("0x8702", "上报驾驶员身份信息请求")] 上报驾驶员身份信息请求 = 0x8702, /// /// 定位数据批量上传 /// 0x0704 /// - [JT808BodiesType(typeof(JT808_0x0704))] - [JT808MsgIdDescription("0x0704", "定位数据批量上传")] 定位数据批量上传 = 0x0704, /// /// CAN总线数据上传 /// 0x0705 /// - [JT808BodiesType(typeof(JT808_0x0705))] - [JT808MsgIdDescription("0x0705", "CAN总线数据上传")] CAN总线数据上传 = 0x0705, /// /// 多媒体事件信息上传 /// 0x0800 /// - [JT808BodiesType(typeof(JT808_0x0800))] - [JT808MsgIdDescription("0x0800", "多媒体事件信息上传")] 多媒体事件信息上传 = 0x0800, /// /// 多媒体数据上传 /// 0x0801 /// - [JT808BodiesType(typeof(JT808_0x0801))] - [JT808MsgIdDescription("0x0801", "多媒体数据上传")] 多媒体数据上传 = 0x0801, /// /// 多媒体数据上传应答 /// 0x8800 /// - [JT808BodiesType(typeof(JT808_0x8800))] - [JT808MsgIdDescription("0x8800", "多媒体数据上传应答")] 多媒体数据上传应答 = 0x8800, /// /// 摄像头立即拍摄命令 /// 0x8801 /// - [JT808BodiesType(typeof(JT808_0x8801))] - [JT808MsgIdDescription("0x8801", "摄像头立即拍摄命令")] 摄像头立即拍摄命令 = 0x8801, /// /// 摄像头立即拍摄命令应答 /// 0x0805 /// - [JT808BodiesType(typeof(JT808_0x0805))] - [JT808MsgIdDescription("0x0805", "摄像头立即拍摄命令应答")] 摄像头立即拍摄命令应答 = 0x0805, /// /// 存储多媒体数据检索 /// 0x8802 /// - [JT808BodiesType(typeof(JT808_0x8802))] - [JT808MsgIdDescription("0x8802", "存储多媒体数据检索")] 存储多媒体数据检索 = 0x8802, /// /// 存储多媒体数据上传 /// 0x8803 /// - [JT808BodiesType(typeof(JT808_0x8803))] - [JT808MsgIdDescription("0x8803", "存储多媒体数据上传")] 存储多媒体数据上传 = 0x8803, /// /// 录音开始命令 /// 0x8804 /// - [JT808BodiesType(typeof(JT808_0x8804))] - [JT808MsgIdDescription("0x8804", "录音开始命令")] 录音开始命令 = 0x8804, /// /// 单条存储多媒体数据检索上传命令 /// 0x8805 /// - [JT808BodiesType(typeof(JT808_0x8805))] - [JT808MsgIdDescription("0x8804", "单条存储多媒体数据检索上传命令")] 单条存储多媒体数据检索上传命令 = 0x8805, /// /// 数据下行透传 /// 0x8900 /// - [JT808BodiesType(typeof(JT808_0x8900))] - [JT808MsgIdDescription("0x8900", "数据下行透传")] 数据下行透传 = 0x8900, /// /// 数据上行透传 /// 0x0900 /// - [JT808BodiesType(typeof(JT808_0x0900))] - [JT808MsgIdDescription("0x0900", "数据上行透传")] 数据上行透传 = 0x0900, /// /// 数据压缩上报 /// 0x0901 /// - [JT808BodiesType(typeof(JT808_0x0901))] - [JT808MsgIdDescription("0x0901", "数据压缩上报")] 数据压缩上报 = 0x0901, /// /// 平台RSA公钥 /// 0x8A00 /// - [JT808BodiesType(typeof(JT808_0x8A00))] - [JT808MsgIdDescription("0x8A00", "平台RSA公钥")] 平台RSA公钥 = 0x8A00, /// /// 终端RSA公钥 /// 0x0A00 /// - [JT808BodiesType(typeof(JT808_0x0A00))] - [JT808MsgIdDescription("0x0A00", "终端RSA公钥")] 终端RSA公钥 = 0x0A00, /// /// 查询服务器时间请求 /// 0x0004 /// - [JT808BodiesType(typeof(JT808_0x0004))] - [JT808MsgIdDescription("0x0004", "查询服务器时间请求")] 查询服务器时间请求 = 0x0004, /// /// 查询服务器时间应答 /// 0x8004 /// - [JT808BodiesType(typeof(JT808_0x8004))] - [JT808MsgIdDescription("0x8004", "查询服务器时间应答")] 查询服务器时间应答 = 0x8004, /// /// 终端补传分包请求 /// 0x0005 /// - [JT808BodiesType(typeof(JT808_0x0005))] - [JT808MsgIdDescription("0x0005", "终端补传分包请求")] 终端补传分包请求 = 0x0005, /// /// 链路检测 /// 0x8204 /// - [JT808BodiesType(typeof(JT808_0x8204))] - [JT808MsgIdDescription("0x8204", "链路检测")] 链路检测 = 0x8204, /// /// 查询区域或线路数据 /// 0x8608 /// - [JT808BodiesType(typeof(JT808_0x8608))] - [JT808MsgIdDescription("0x8608", "查询区域或线路数据")] 查询区域或线路数据 = 0x8608, /// /// 查询区域或线路数据应答 /// 0x0608 /// - [JT808BodiesType(typeof(JT808_0x0608))] - [JT808MsgIdDescription("0x0608", "查询区域或线路数据应答")] 查询区域或线路数据应答 = 0x0608, /// /// 存储多媒体数据检索应答 /// 0x0802 /// - [JT808BodiesType(typeof(JT808_0x0802))] - [JT808MsgIdDescription("0x0802", "存储多媒体数据检索应答")] 存储多媒体数据检索应答 = 0x0802, } } diff --git a/src/JT808.Protocol/Enums/JT808PlatformResult.cs b/src/JT808.Protocol/Enums/JT808PlatformResult.cs index 32a12e1..4fb6bdd 100644 --- a/src/JT808.Protocol/Enums/JT808PlatformResult.cs +++ b/src/JT808.Protocol/Enums/JT808PlatformResult.cs @@ -1,5 +1,8 @@ namespace JT808.Protocol.Enums { + /// + /// 返回结果 + /// public enum JT808PlatformResult : byte { /// diff --git a/src/JT808.Protocol/Enums/JT808PositionType.cs b/src/JT808.Protocol/Enums/JT808PositionType.cs index 6cac532..2e54e71 100644 --- a/src/JT808.Protocol/Enums/JT808PositionType.cs +++ b/src/JT808.Protocol/Enums/JT808PositionType.cs @@ -5,10 +5,25 @@ /// public enum JT808PositionType : byte { + /// + /// 无特定位置 + /// 无特定位置 = 0x00, + /// + /// 圆形区域 + /// 圆形区域 = 0x01, + /// + /// 矩形区域 + /// 矩形区域 = 0x02, + /// + /// 多边形区域 + /// 多边形区域 = 0x03, + /// + /// 路段 + /// 路段 = 0x04 } } diff --git a/src/JT808.Protocol/Enums/JT808UpgradeResult.cs b/src/JT808.Protocol/Enums/JT808UpgradeResult.cs index d5272c8..a67cc80 100644 --- a/src/JT808.Protocol/Enums/JT808UpgradeResult.cs +++ b/src/JT808.Protocol/Enums/JT808UpgradeResult.cs @@ -5,8 +5,17 @@ /// public enum JT808UpgradeResult : byte { + /// + /// 成功 + /// 成功 = 0, + /// + /// 失败 + /// 失败 = 1, + /// + /// 取消 + /// 取消 = 2, } } diff --git a/src/JT808.Protocol/Enums/JT808UpgradeType.cs b/src/JT808.Protocol/Enums/JT808UpgradeType.cs index ec95f9e..2a0ac74 100644 --- a/src/JT808.Protocol/Enums/JT808UpgradeType.cs +++ b/src/JT808.Protocol/Enums/JT808UpgradeType.cs @@ -5,8 +5,17 @@ /// public enum JT808UpgradeType : byte { + /// + /// 终端 + /// 终端 = 0, + /// + /// 道路运输证IC卡读卡器 + /// 道路运输证IC卡读卡器 = 12, + /// + /// 北斗卫星定位模块 + /// 北斗卫星定位模块 = 52, } } diff --git a/src/JT808.Protocol/Enums/JT808Version.cs b/src/JT808.Protocol/Enums/JT808Version.cs index 60e4143..1685029 100644 --- a/src/JT808.Protocol/Enums/JT808Version.cs +++ b/src/JT808.Protocol/Enums/JT808Version.cs @@ -4,9 +4,18 @@ using System.Text; namespace JT808.Protocol.Enums { + /// + /// JT808版本号 + /// public enum JT808Version:byte { + /// + /// 2013 + /// JTT2013=1, + /// + /// 2019 + /// JTT2019=2, } } diff --git a/src/JT808.Protocol/Exceptions/JT808Exception.cs b/src/JT808.Protocol/Exceptions/JT808Exception.cs index ac5b680..d5609d4 100644 --- a/src/JT808.Protocol/Exceptions/JT808Exception.cs +++ b/src/JT808.Protocol/Exceptions/JT808Exception.cs @@ -3,29 +3,51 @@ using System; namespace JT808.Protocol.Exceptions { + /// + /// JT808异常处理类 + /// [Serializable] public class JT808Exception : Exception { + /// + /// + /// + /// public JT808Exception(JT808ErrorCode errorCode) : base(errorCode.ToString()) { ErrorCode = errorCode; } - + /// + /// + /// + /// + /// public JT808Exception(JT808ErrorCode errorCode, string message) : base(message) { ErrorCode = errorCode; } - + /// + /// + /// + /// + /// public JT808Exception(JT808ErrorCode errorCode, Exception ex) : base(ex.Message, ex) { ErrorCode = errorCode; } - - public JT808Exception(JT808ErrorCode errorCode, string message, Exception ex) : base(ex.Message, ex) + /// + /// + /// + /// + /// + /// + public JT808Exception(JT808ErrorCode errorCode, string message, Exception ex) : base(message, ex) { ErrorCode = errorCode; } - + /// + /// JT808统一错误码 + /// public JT808ErrorCode ErrorCode { get; } } } diff --git a/src/JT808.Protocol/Extensions/JT808AnalyzeExtensions.cs b/src/JT808.Protocol/Extensions/JT808AnalyzeExtensions.cs index dc339b6..b37c03c 100644 --- a/src/JT808.Protocol/Extensions/JT808AnalyzeExtensions.cs +++ b/src/JT808.Protocol/Extensions/JT808AnalyzeExtensions.cs @@ -7,8 +7,18 @@ using System.Text.Json; namespace JT808.Protocol.Extensions { + /// + /// JT808分析器扩展 + /// public static class JT808AnalyzeExtensions { + /// + /// + /// + /// + /// + /// + /// public static void Analyze(this object instance, ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config) { if(instance is IJT808Analyze analyze) diff --git a/src/JT808.Protocol/Extensions/JT808ConfigExtensions.cs b/src/JT808.Protocol/Extensions/JT808ConfigExtensions.cs index f913192..d7b789b 100644 --- a/src/JT808.Protocol/Extensions/JT808ConfigExtensions.cs +++ b/src/JT808.Protocol/Extensions/JT808ConfigExtensions.cs @@ -7,10 +7,19 @@ using System.Collections.Concurrent; namespace JT808.Protocol { + /// + /// JT808配置扩展 + /// public static class JT808ConfigExtensions { private readonly static ConcurrentDictionary jT808SerializerDict = new ConcurrentDictionary(StringComparer.OrdinalIgnoreCase); private readonly static ConcurrentDictionary jT808CarDVRSerializer = new ConcurrentDictionary(StringComparer.OrdinalIgnoreCase); + /// + /// 通过类型获取对应的消息序列化器 + /// + /// + /// + /// public static object GetMessagePackFormatterByType(this IJT808Config jT808Config,Type type) { if (!jT808Config.FormatterFactory.FormatterDict.TryGetValue(type.GUID, out var formatter)) @@ -19,6 +28,12 @@ namespace JT808.Protocol } return formatter; } + /// + /// 通过类型获取对应的消息分析器 + /// + /// + /// + /// public static object GetAnalyzeByType(this IJT808Config jT808Config, Type type) { if (!jT808Config.FormatterFactory.FormatterDict.TryGetValue(type.GUID, out var analyze)) @@ -27,14 +42,31 @@ namespace JT808.Protocol } return analyze; } + /// + /// 获取对应的消息序列化器 + /// + /// + /// + /// public static IJT808MessagePackFormatter GetMessagePackFormatter(this IJT808Config jT808Config) { return (IJT808MessagePackFormatter)GetMessagePackFormatterByType(jT808Config,typeof(T)); } + /// + /// 获取对应的消息分析器 + /// + /// + /// + /// public static IJT808Analyze GetAnalyze(this IJT808Config jT808Config) { return (IJT808Analyze)GetAnalyzeByType(jT808Config, typeof(T)); } + /// + /// 获取JT19056序列化器 + /// + /// + /// public static JT808CarDVRSerializer GetCarDVRSerializer(this IJT808Config jT808Config) { if(!jT808CarDVRSerializer.TryGetValue(jT808Config.ConfigId,out var serializer)) @@ -43,7 +75,12 @@ namespace JT808.Protocol jT808CarDVRSerializer.TryAdd(jT808Config.ConfigId, serializer); } return serializer; - } + } + /// + /// 获取JT808序列化器 + /// + /// + /// public static JT808Serializer GetSerializer(this IJT808Config jT808Config) { if(!jT808SerializerDict.TryGetValue(jT808Config.ConfigId,out var serializer)) diff --git a/src/JT808.Protocol/Extensions/JT808EnumExtensions.cs b/src/JT808.Protocol/Extensions/JT808EnumExtensions.cs index 7b6d193..1d4844d 100644 --- a/src/JT808.Protocol/Extensions/JT808EnumExtensions.cs +++ b/src/JT808.Protocol/Extensions/JT808EnumExtensions.cs @@ -116,7 +116,7 @@ namespace JT808.Protocol.Extensions /// /// 获取DisplayNameAttribute特性枚举值的描述 /// - /// 枚举值 + /// 枚举值 /// public static string GetDisplayName(this Enum value) { @@ -127,7 +127,7 @@ namespace JT808.Protocol.Extensions /// /// 获取DisplayNameAttribute特性枚举及描述 /// - /// + /// /// public static Dictionary GetDisplayNameAttributeDictionary(this Enum value) { diff --git a/src/JT808.Protocol/Extensions/JT808HexExtensions.cs b/src/JT808.Protocol/Extensions/JT808HexExtensions.cs index 6d10953..f288e2c 100644 --- a/src/JT808.Protocol/Extensions/JT808HexExtensions.cs +++ b/src/JT808.Protocol/Extensions/JT808HexExtensions.cs @@ -8,11 +8,59 @@ namespace JT808.Protocol.Extensions /// public static partial class JT808BinaryExtensions { + /// + /// 16进制数组转16进制字符串 + /// + /// + /// public static string ToHexString(this byte[] source) { return HexUtil.DoHexDump(source, 0, source.Length).ToUpper(); } + /// + /// 16进制字符串转16进制数组 + /// + /// + /// + public static byte[] ToHexBytes(this string hexString) + { + hexString = hexString.Replace(" ", ""); + byte[] buf = new byte[hexString.Length / 2]; + ReadOnlySpan readOnlySpan = hexString.AsSpan(); + for (int i = 0; i < hexString.Length; i++) + { + if (i % 2 == 0) + { + buf[i / 2] = Convert.ToByte(readOnlySpan.Slice(i, 2).ToString(), 16); + } + } + return buf; + } + + /// + /// 从内存块中读取16进制字符串 + /// + /// + /// + /// + /// + public static string ReadHexStringLittle(ReadOnlySpan read, ref int offset, int len) + { + //ReadOnlySpan source = read.Slice(offset, len); + string hex = HexUtil.DoHexDump(read, offset, len); + offset += len; + return hex; + } + + /// + /// 将16进制字符串写入对应数组中 + /// + /// + /// + /// + /// + /// public static int WriteHexStringLittle(byte[] bytes, int offset, string data, int len) { if (data == null) data = ""; @@ -41,86 +89,120 @@ namespace JT808.Protocol.Extensions } return length; } - /// - /// 16进制字符串转16进制数组 + /// /// - /// - /// + /// + /// /// - public static byte[] ToHexBytes(this string hexString) - { - hexString = hexString.Replace(" ", ""); - byte[] buf = new byte[hexString.Length / 2]; - ReadOnlySpan readOnlySpan = hexString.AsSpan(); - for (int i = 0; i < hexString.Length; i++) - { - if (i % 2 == 0) - { - buf[i / 2] = Convert.ToByte(readOnlySpan.Slice(i, 2).ToString(), 16); - } - } - return buf; - } - - public static string ReadHexStringLittle(ReadOnlySpan read, ref int offset, int len) - { - //ReadOnlySpan source = read.Slice(offset, len); - string hex = HexUtil.DoHexDump(read, offset, len); - offset += len; - return hex; - } - public static string ReadNumber(this byte value, string format = "X2") { return value.ToString(format); } + /// + /// + /// + /// + /// + /// public static string ReadNumber(this int value, string format = "X8") { return value.ToString(format); } + /// + /// + /// + /// + /// public static string ReadNumber(this uint value, string format = "X8") { return value.ToString(format); } + /// + /// + /// + /// + /// public static string ReadNumber(this long value, string format = "X16") { return value.ToString(format); } + /// + /// + /// + /// + /// public static string ReadNumber(this ulong value, string format="X16") { return value.ToString(format); } + /// + /// + /// + /// + /// public static string ReadNumber(this short value, string format = "X4") { return value.ToString(format); } + /// + /// + /// + /// + /// public static string ReadNumber(this ushort value, string format = "X4") { return value.ToString(format); } + /// + /// + /// + /// + /// public static ReadOnlySpan ReadBinary(this ushort value) { return System.Convert.ToString(value, 2).PadLeft(16, '0').AsSpan(); } + /// + /// + /// + /// + /// public static ReadOnlySpan ReadBinary(this short value) { return System.Convert.ToString(value, 2).PadLeft(16, '0').AsSpan(); } + /// + /// + /// + /// + /// public static ReadOnlySpan ReadBinary(this uint value) { return System.Convert.ToString(value, 2).PadLeft(32, '0').AsSpan(); } + /// + /// + /// + /// + /// public static ReadOnlySpan ReadBinary(this int value) { return System.Convert.ToString(value, 2).PadLeft(32, '0').AsSpan(); } + /// + /// + /// + /// + /// public static ReadOnlySpan ReadBinary(this byte value) { return System.Convert.ToString(value, 2).PadLeft(8, '0').AsSpan(); } } - + /// + /// + /// public static class HexUtil { static readonly char[] HexdumpTable = new char[256 * 4]; @@ -133,7 +215,13 @@ namespace JT808.Protocol.Extensions HexdumpTable[(i << 1) + 1] = digits[i & 0x0F]; } } - + /// + /// + /// + /// + /// + /// + /// public static string DoHexDump(ReadOnlySpan buffer, int fromIndex, int length) { if (length == 0) @@ -150,7 +238,13 @@ namespace JT808.Protocol.Extensions } return new string(buf); } - + /// + /// + /// + /// + /// + /// + /// public static string DoHexDump(byte[] array, int fromIndex, int length) { if (length == 0) diff --git a/src/JT808.Protocol/Extensions/JT808PackageExtensionsTemplate.cs b/src/JT808.Protocol/Extensions/JT808PackageExtensionsTemplate.cs index c23bcae..7740aa9 100644 --- a/src/JT808.Protocol/Extensions/JT808PackageExtensionsTemplate.cs +++ b/src/JT808.Protocol/Extensions/JT808PackageExtensionsTemplate.cs @@ -2,2387 +2,2496 @@ namespace JT808.Protocol.Extensions { + /// + /// todo:source-generators正式发布以后将T4模板换掉 + /// https://devblogs.microsoft.com/dotnet/introducing-c-source-generators/ + /// public static partial class JT808PackageExtensions { - /// - /// 0x0001 - 终端通用应答 - /// auto-generated - /// - public static JT808Package Create_终端通用应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0001 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0001 - 终端通用应答 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0001 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0001 - 终端通用应答 - /// auto-generated 2019 version - /// - public static JT808Package Create_终端通用应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0001 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0001 - 终端通用应答 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0001 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0002 - 终端心跳 - /// auto-generated - /// - public static JT808Package Create_终端心跳(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0002 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0002 - 终端心跳 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0002 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0002 - 终端心跳 - /// auto-generated 2019 version - /// - public static JT808Package Create_终端心跳_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0002 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0002 - 终端心跳 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0002 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0003 - 终端注销 - /// auto-generated - /// - public static JT808Package Create_终端注销(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0003 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0003 - 终端注销 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0003 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0003 - 终端注销 - /// auto-generated 2019 version - /// - public static JT808Package Create_终端注销_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0003 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0003 - 终端注销 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0003 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0004 - 查询服务器时间请求 - /// auto-generated - /// - public static JT808Package Create_查询服务器时间请求(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0004 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0004 - 查询服务器时间请求 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0004 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0004 - 查询服务器时间请求 - /// auto-generated 2019 version - /// - public static JT808Package Create_查询服务器时间请求_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0004 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0004 - 查询服务器时间请求 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0004 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0005 - 终端补传分包请求 - /// auto-generated - /// - public static JT808Package Create_终端补传分包请求(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0005 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0005 - 终端补传分包请求 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0005 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0005 - 终端补传分包请求 - /// auto-generated 2019 version - /// - public static JT808Package Create_终端补传分包请求_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0005 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0005 - 终端补传分包请求 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0005 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0100 - 终端注册 - /// auto-generated - /// - public static JT808Package Create_终端注册(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0100 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0100 - 终端注册 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0100 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0100 - 终端注册 - /// auto-generated 2019 version - /// - public static JT808Package Create_终端注册_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0100 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0100 - 终端注册 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0100 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0102 - 终端鉴权 - /// auto-generated - /// - public static JT808Package Create_终端鉴权(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0102 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0102 - 终端鉴权 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0102 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0102 - 终端鉴权 - /// auto-generated 2019 version - /// - public static JT808Package Create_终端鉴权_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0102 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0102 - 终端鉴权 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0102 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0104 - 查询终端参数应答 - /// auto-generated - /// - public static JT808Package Create_查询终端参数应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0104 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0104 - 查询终端参数应答 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0104 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0104 - 查询终端参数应答 - /// auto-generated 2019 version - /// - public static JT808Package Create_查询终端参数应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0104 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0104 - 查询终端参数应答 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0104 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0107 - 查询终端属性应答 - /// auto-generated - /// - public static JT808Package Create_查询终端属性应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0107 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0107 - 查询终端属性应答 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0107 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0107 - 查询终端属性应答 - /// auto-generated 2019 version - /// - public static JT808Package Create_查询终端属性应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0107 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0107 - 查询终端属性应答 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0107 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0108 - 终端升级结果通知 - /// auto-generated - /// - public static JT808Package Create_终端升级结果通知(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0108 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0108 - 终端升级结果通知 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0108 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0108 - 终端升级结果通知 - /// auto-generated 2019 version - /// - public static JT808Package Create_终端升级结果通知_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0108 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0108 - 终端升级结果通知 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0108 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0200 - 位置信息汇报 - /// auto-generated - /// - public static JT808Package Create_位置信息汇报(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0200 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0200 - 位置信息汇报 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0200 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0200 - 位置信息汇报 - /// auto-generated 2019 version - /// - public static JT808Package Create_位置信息汇报_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0200 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0200 - 位置信息汇报 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0200 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0201 - 位置信息查询应答 - /// auto-generated - /// - public static JT808Package Create_位置信息查询应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0201 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0201 - 位置信息查询应答 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0201 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0201 - 位置信息查询应答 - /// auto-generated 2019 version - /// - public static JT808Package Create_位置信息查询应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0201 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0201 - 位置信息查询应答 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0201 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0301 - 事件报告 - /// auto-generated - /// - public static JT808Package Create_事件报告(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0301 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0301 - 事件报告 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0301 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0301 - 事件报告 - /// auto-generated 2019 version - /// - public static JT808Package Create_事件报告_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0301 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0301 - 事件报告 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0301 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8302 - 提问应答 - /// auto-generated - /// - public static JT808Package Create_提问应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0302 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8302 - 提问应答 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0302 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8302 - 提问应答 - /// auto-generated 2019 version - /// - public static JT808Package Create_提问应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0302 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8302 - 提问应答 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0302 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0303 - 信息点播或取消 - /// auto-generated - /// - public static JT808Package Create_信息点播或取消(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0303 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0303 - 信息点播或取消 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0303 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0303 - 信息点播或取消 - /// auto-generated 2019 version - /// - public static JT808Package Create_信息点播或取消_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0303 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0303 - 信息点播或取消 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0303 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0500 - 车辆控制应答 - /// auto-generated - /// - public static JT808Package Create_车辆控制应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0500 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0500 - 车辆控制应答 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0500 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0500 - 车辆控制应答 - /// auto-generated 2019 version - /// - public static JT808Package Create_车辆控制应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0500 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0500 - 车辆控制应答 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0500 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0608 - 查询区域或线路数据应答 - /// auto-generated - /// - public static JT808Package Create_查询区域或线路数据应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0608 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0608 - 查询区域或线路数据应答 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0608 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0608 - 查询区域或线路数据应答 - /// auto-generated 2019 version - /// - public static JT808Package Create_查询区域或线路数据应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0608 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0608 - 查询区域或线路数据应答 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0608 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0701 - 电子运单上报 - /// auto-generated - /// - public static JT808Package Create_电子运单上报(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0701 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0701 - 电子运单上报 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0701 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0701 - 电子运单上报 - /// auto-generated 2019 version - /// - public static JT808Package Create_电子运单上报_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0701 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0701 - 电子运单上报 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0701 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0702 - 驾驶员身份信息采集上报 - /// auto-generated - /// - public static JT808Package Create_驾驶员身份信息采集上报(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0702 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0702 - 驾驶员身份信息采集上报 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0702 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0702 - 驾驶员身份信息采集上报 - /// auto-generated 2019 version - /// - public static JT808Package Create_驾驶员身份信息采集上报_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0702 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0702 - 驾驶员身份信息采集上报 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0702 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0704 - 定位数据批量上传 - /// auto-generated - /// - public static JT808Package Create_定位数据批量上传(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0704 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0704 - 定位数据批量上传 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0704 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0704 - 定位数据批量上传 - /// auto-generated 2019 version - /// - public static JT808Package Create_定位数据批量上传_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0704 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0704 - 定位数据批量上传 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0704 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0705 - CAN总线数据上传 - /// auto-generated - /// - public static JT808Package Create_CAN总线数据上传(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0705 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0705 - CAN总线数据上传 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0705 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0705 - CAN总线数据上传 - /// auto-generated 2019 version - /// - public static JT808Package Create_CAN总线数据上传_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0705 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0705 - CAN总线数据上传 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0705 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0800 - 多媒体事件信息上传 - /// auto-generated - /// - public static JT808Package Create_多媒体事件信息上传(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0800 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0800 - 多媒体事件信息上传 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0800 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0800 - 多媒体事件信息上传 - /// auto-generated 2019 version - /// - public static JT808Package Create_多媒体事件信息上传_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0800 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0800 - 多媒体事件信息上传 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0800 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0801 - 多媒体数据上传 - /// auto-generated - /// - public static JT808Package Create_多媒体数据上传(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0801 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0801 - 多媒体数据上传 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0801 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0801 - 多媒体数据上传 - /// auto-generated 2019 version - /// - public static JT808Package Create_多媒体数据上传_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0801 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0801 - 多媒体数据上传 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0801 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0802 - 存储多媒体数据检索应答 - /// auto-generated - /// - public static JT808Package Create_存储多媒体数据检索应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0802 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0802 - 存储多媒体数据检索应答 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0802 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0802 - 存储多媒体数据检索应答 - /// auto-generated 2019 version - /// - public static JT808Package Create_存储多媒体数据检索应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0802 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0802 - 存储多媒体数据检索应答 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0802 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0805 - 摄像头立即拍摄命令应答 - /// auto-generated - /// - public static JT808Package Create_摄像头立即拍摄命令应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0805 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0805 - 摄像头立即拍摄命令应答 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0805 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0805 - 摄像头立即拍摄命令应答 - /// auto-generated 2019 version - /// - public static JT808Package Create_摄像头立即拍摄命令应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0805 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0805 - 摄像头立即拍摄命令应答 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0805 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0900 - 数据上行透传 - /// auto-generated - /// - public static JT808Package Create_数据上行透传(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0900 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0900 - 数据上行透传 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0900 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0900 - 数据上行透传 - /// auto-generated 2019 version - /// - public static JT808Package Create_数据上行透传_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0900 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0900 - 数据上行透传 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0900 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0901 - 数据压缩上报 - /// auto-generated - /// - public static JT808Package Create_数据压缩上报(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0901 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0901 - 数据压缩上报 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0901 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0901 - 数据压缩上报 - /// auto-generated 2019 version - /// - public static JT808Package Create_数据压缩上报_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0901 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0901 - 数据压缩上报 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0901 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x0A00 - 终端RSA公钥 - /// auto-generated - /// - public static JT808Package Create_终端RSA公钥(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0A00 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0A00 - 终端RSA公钥 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0A00 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0A00 - 终端RSA公钥 - /// auto-generated 2019 version - /// - public static JT808Package Create_终端RSA公钥_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0A00 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x0A00 - 终端RSA公钥 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0A00 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8001 - 平台通用应答 - /// auto-generated - /// - public static JT808Package Create_平台通用应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8001 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8001 - 平台通用应答 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8001 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8001 - 平台通用应答 - /// auto-generated 2019 version - /// - public static JT808Package Create_平台通用应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8001 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8001 - 平台通用应答 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8001 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8003 - 补传分包请求 - /// auto-generated - /// - public static JT808Package Create_补传分包请求(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8003 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8003 - 补传分包请求 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8003 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8003 - 补传分包请求 - /// auto-generated 2019 version - /// - public static JT808Package Create_补传分包请求_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8003 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8003 - 补传分包请求 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8003 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8004 - 查询服务器时间应答 - /// auto-generated - /// - public static JT808Package Create_查询服务器时间应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8004 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8004 - 查询服务器时间应答 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8004 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8004 - 查询服务器时间应答 - /// auto-generated 2019 version - /// - public static JT808Package Create_查询服务器时间应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8004 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8004 - 查询服务器时间应答 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8004 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8100 - 终端注册应答 - /// auto-generated - /// - public static JT808Package Create_终端注册应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8100 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8100 - 终端注册应答 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8100 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8100 - 终端注册应答 - /// auto-generated 2019 version - /// - public static JT808Package Create_终端注册应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8100 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8100 - 终端注册应答 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8100 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8103 - 设置终端参数 - /// auto-generated - /// - public static JT808Package Create_设置终端参数(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8103 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8103 - 设置终端参数 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8103 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8103 - 设置终端参数 - /// auto-generated 2019 version - /// - public static JT808Package Create_设置终端参数_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8103 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8103 - 设置终端参数 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8103 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8104 - 查询终端参数 - /// auto-generated - /// - public static JT808Package Create_查询终端参数(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8104 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8104 - 查询终端参数 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8104 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8104 - 查询终端参数 - /// auto-generated 2019 version - /// - public static JT808Package Create_查询终端参数_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8104 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8104 - 查询终端参数 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8104 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8105 - 终端控制 - /// auto-generated - /// - public static JT808Package Create_终端控制(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8105 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8105 - 终端控制 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8105 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8105 - 终端控制 - /// auto-generated 2019 version - /// - public static JT808Package Create_终端控制_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8105 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8105 - 终端控制 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8105 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8106 - 查询指定终端参数 - /// auto-generated - /// - public static JT808Package Create_查询指定终端参数(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8106 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8106 - 查询指定终端参数 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8106 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8106 - 查询指定终端参数 - /// auto-generated 2019 version - /// - public static JT808Package Create_查询指定终端参数_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8106 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8106 - 查询指定终端参数 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8106 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8107 - 查询终端属性 - /// auto-generated - /// - public static JT808Package Create_查询终端属性(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8107 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8107 - 查询终端属性 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8107 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8107 - 查询终端属性 - /// auto-generated 2019 version - /// - public static JT808Package Create_查询终端属性_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8107 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8107 - 查询终端属性 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8107 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8108 - 下发终端升级包 - /// auto-generated - /// - public static JT808Package Create_下发终端升级包(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8108 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8108 - 下发终端升级包 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8108 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8108 - 下发终端升级包 - /// auto-generated 2019 version - /// - public static JT808Package Create_下发终端升级包_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8108 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8108 - 下发终端升级包 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8108 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8201 - 位置信息查询 - /// auto-generated - /// - public static JT808Package Create_位置信息查询(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8201 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8201 - 位置信息查询 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8201 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8201 - 位置信息查询 - /// auto-generated 2019 version - /// - public static JT808Package Create_位置信息查询_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8201 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8201 - 位置信息查询 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8201 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8202 - 临时位置跟踪控制 - /// auto-generated - /// - public static JT808Package Create_临时位置跟踪控制(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8202 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8202 - 临时位置跟踪控制 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8202 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8202 - 临时位置跟踪控制 - /// auto-generated 2019 version - /// - public static JT808Package Create_临时位置跟踪控制_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8202 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8202 - 临时位置跟踪控制 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8202 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8203 - 人工确认报警消息 - /// auto-generated - /// - public static JT808Package Create_人工确认报警消息(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8203 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8203 - 人工确认报警消息 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8203 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8203 - 人工确认报警消息 - /// auto-generated 2019 version - /// - public static JT808Package Create_人工确认报警消息_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8203 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8203 - 人工确认报警消息 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8203 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8204 - 链路检测 - /// auto-generated - /// - public static JT808Package Create_链路检测(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8204 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8204 - 链路检测 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8204 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8204 - 链路检测 - /// auto-generated 2019 version - /// - public static JT808Package Create_链路检测_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8204 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8204 - 链路检测 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8204 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8300 - 文本信息下发 - /// auto-generated - /// - public static JT808Package Create_文本信息下发(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8300 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8300 - 文本信息下发 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8300 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8300 - 文本信息下发 - /// auto-generated 2019 version - /// - public static JT808Package Create_文本信息下发_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8300 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8300 - 文本信息下发 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8300 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8301 - 事件设置 - /// auto-generated - /// - public static JT808Package Create_事件设置(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8301 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8301 - 事件设置 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8301 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8301 - 事件设置 - /// auto-generated 2019 version - /// - public static JT808Package Create_事件设置_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8301 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8301 - 事件设置 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8301 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8302 - 提问下发 - /// auto-generated - /// - public static JT808Package Create_提问下发(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8302 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8302 - 提问下发 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8302 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8302 - 提问下发 - /// auto-generated 2019 version - /// - public static JT808Package Create_提问下发_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8302 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8302 - 提问下发 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8302 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8303 - 信息点播菜单设置 - /// auto-generated - /// - public static JT808Package Create_信息点播菜单设置(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8303 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8303 - 信息点播菜单设置 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8303 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8303 - 信息点播菜单设置 - /// auto-generated 2019 version - /// - public static JT808Package Create_信息点播菜单设置_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8303 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8303 - 信息点播菜单设置 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8303 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8304 - 信息服务 - /// auto-generated - /// - public static JT808Package Create_信息服务(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8304 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8304 - 信息服务 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8304 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8304 - 信息服务 - /// auto-generated 2019 version - /// - public static JT808Package Create_信息服务_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8304 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8304 - 信息服务 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8304 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8400 - 电话回拨 - /// auto-generated - /// - public static JT808Package Create_电话回拨(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8400 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8400 - 电话回拨 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8400 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8400 - 电话回拨 - /// auto-generated 2019 version - /// - public static JT808Package Create_电话回拨_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8400 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8400 - 电话回拨 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8400 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8401 - 设置电话本 - /// auto-generated - /// - public static JT808Package Create_设置电话本(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8401 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8401 - 设置电话本 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8401 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8401 - 设置电话本 - /// auto-generated 2019 version - /// - public static JT808Package Create_设置电话本_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8401 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8401 - 设置电话本 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8401 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8500 - 车辆控制 - /// auto-generated - /// - public static JT808Package Create_车辆控制(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8500 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8500 - 车辆控制 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8500 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8500 - 车辆控制 - /// auto-generated 2019 version - /// - public static JT808Package Create_车辆控制_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8500 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8500 - 车辆控制 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8500 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8600 - 设置圆形区域 - /// auto-generated - /// - public static JT808Package Create_设置圆形区域(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8600 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8600 - 设置圆形区域 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8600 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8600 - 设置圆形区域 - /// auto-generated 2019 version - /// - public static JT808Package Create_设置圆形区域_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8600 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8600 - 设置圆形区域 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8600 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8601 - 删除圆形区域 - /// auto-generated - /// - public static JT808Package Create_删除圆形区域(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8601 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8601 - 删除圆形区域 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8601 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8601 - 删除圆形区域 - /// auto-generated 2019 version - /// - public static JT808Package Create_删除圆形区域_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8601 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8601 - 删除圆形区域 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8601 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8602 - 设置矩形区域 - /// auto-generated - /// - public static JT808Package Create_设置矩形区域(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8602 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8602 - 设置矩形区域 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8602 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8602 - 设置矩形区域 - /// auto-generated 2019 version - /// - public static JT808Package Create_设置矩形区域_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8602 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8602 - 设置矩形区域 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8602 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8603 - 删除矩形区域 - /// auto-generated - /// - public static JT808Package Create_删除矩形区域(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8603 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8603 - 删除矩形区域 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8603 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8603 - 删除矩形区域 - /// auto-generated 2019 version - /// - public static JT808Package Create_删除矩形区域_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8603 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8603 - 删除矩形区域 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8603 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8604 - 设置多边形区域 - /// auto-generated - /// - public static JT808Package Create_设置多边形区域(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8604 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8604 - 设置多边形区域 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8604 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8604 - 设置多边形区域 - /// auto-generated 2019 version - /// - public static JT808Package Create_设置多边形区域_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8604 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8604 - 设置多边形区域 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8604 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8605 - 删除多边形区域 - /// auto-generated - /// - public static JT808Package Create_删除多边形区域(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8605 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8605 - 删除多边形区域 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8605 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8605 - 删除多边形区域 - /// auto-generated 2019 version - /// - public static JT808Package Create_删除多边形区域_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8605 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8605 - 删除多边形区域 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8605 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8606 - 设置路线 - /// auto-generated - /// - public static JT808Package Create_设置路线(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8606 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8606 - 设置路线 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8606 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8606 - 设置路线 - /// auto-generated 2019 version - /// - public static JT808Package Create_设置路线_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8606 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8606 - 设置路线 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8606 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8607 - 删除路线 - /// auto-generated - /// - public static JT808Package Create_删除路线(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8607 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8607 - 删除路线 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8607 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8607 - 删除路线 - /// auto-generated 2019 version - /// - public static JT808Package Create_删除路线_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8607 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8607 - 删除路线 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8607 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8608 - 查询区域或线路数据 - /// auto-generated - /// - public static JT808Package Create_查询区域或线路数据(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8608 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8608 - 查询区域或线路数据 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8608 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8608 - 查询区域或线路数据 - /// auto-generated 2019 version - /// - public static JT808Package Create_查询区域或线路数据_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8608 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8608 - 查询区域或线路数据 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8608 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8702 - 上报驾驶员身份信息请求 - /// auto-generated - /// - public static JT808Package Create_上报驾驶员身份信息请求(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8702 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8702 - 上报驾驶员身份信息请求 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8702 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8702 - 上报驾驶员身份信息请求 - /// auto-generated 2019 version - /// - public static JT808Package Create_上报驾驶员身份信息请求_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8702 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8702 - 上报驾驶员身份信息请求 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8702 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8800 - 多媒体数据上传应答 - /// auto-generated - /// - public static JT808Package Create_多媒体数据上传应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8800 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8800 - 多媒体数据上传应答 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8800 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8800 - 多媒体数据上传应答 - /// auto-generated 2019 version - /// - public static JT808Package Create_多媒体数据上传应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8800 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8800 - 多媒体数据上传应答 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8800 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8801 - 摄像头立即拍摄命令 - /// auto-generated - /// - public static JT808Package Create_摄像头立即拍摄命令(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8801 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8801 - 摄像头立即拍摄命令 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8801 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8801 - 摄像头立即拍摄命令 - /// auto-generated 2019 version - /// - public static JT808Package Create_摄像头立即拍摄命令_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8801 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8801 - 摄像头立即拍摄命令 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8801 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8802 - 存储多媒体数据检索 - /// auto-generated - /// - public static JT808Package Create_存储多媒体数据检索(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8802 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8802 - 存储多媒体数据检索 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8802 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8802 - 存储多媒体数据检索 - /// auto-generated 2019 version - /// - public static JT808Package Create_存储多媒体数据检索_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8802 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8802 - 存储多媒体数据检索 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8802 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8803 - 存储多媒体数据上传 - /// auto-generated - /// - public static JT808Package Create_存储多媒体数据上传(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8803 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8803 - 存储多媒体数据上传 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8803 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8803 - 存储多媒体数据上传 - /// auto-generated 2019 version - /// - public static JT808Package Create_存储多媒体数据上传_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8803 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8803 - 存储多媒体数据上传 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8803 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8804 - 录音开始命令 - /// auto-generated - /// - public static JT808Package Create_录音开始命令(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8804 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8804 - 录音开始命令 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8804 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8804 - 录音开始命令 - /// auto-generated 2019 version - /// - public static JT808Package Create_录音开始命令_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8804 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8804 - 录音开始命令 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8804 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8804 - 单条存储多媒体数据检索上传命令 - /// auto-generated - /// - public static JT808Package Create_单条存储多媒体数据检索上传命令(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8805 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8804 - 单条存储多媒体数据检索上传命令 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8805 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8804 - 单条存储多媒体数据检索上传命令 - /// auto-generated 2019 version - /// - public static JT808Package Create_单条存储多媒体数据检索上传命令_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8805 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8804 - 单条存储多媒体数据检索上传命令 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8805 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8900 - 数据下行透传 - /// auto-generated - /// - public static JT808Package Create_数据下行透传(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8900 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8900 - 数据下行透传 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8900 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8900 - 数据下行透传 - /// auto-generated 2019 version - /// - public static JT808Package Create_数据下行透传_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8900 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8900 - 数据下行透传 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8900 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - /// - /// 0x8A00 - 平台RSA公钥 - /// auto-generated - /// - public static JT808Package Create_平台RSA公钥(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8A00 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8A00 - 平台RSA公钥 - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8A00 bodies) - { - return Create(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8A00 - 平台RSA公钥 - /// auto-generated 2019 version - /// - public static JT808Package Create_平台RSA公钥_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8A00 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } - - /// - /// 0x8A00 - 平台RSA公钥 - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8A00 bodies) - { - return Create2019(msgId,terminalPhoneNo,bodies); - } + /// + /// 0x0001 - 终端通用应答 + /// auto-generated + /// + public static JT808Package Create_终端通用应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0001 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0001 - 终端通用应答 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0001 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0001 - 终端通用应答 + /// auto-generated 2019 version + /// + public static JT808Package Create_终端通用应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0001 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0001 - 终端通用应答 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0001 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0002 - 终端心跳 + /// auto-generated + /// + public static JT808Package Create_终端心跳(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0002 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0002 - 终端心跳 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0002 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0002 - 终端心跳 + /// auto-generated 2019 version + /// + public static JT808Package Create_终端心跳_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0002 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0002 - 终端心跳 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0002 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0003 - 终端注销 + /// auto-generated + /// + public static JT808Package Create_终端注销(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0003 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0003 - 终端注销 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0003 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0003 - 终端注销 + /// auto-generated 2019 version + /// + public static JT808Package Create_终端注销_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0003 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0003 - 终端注销 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0003 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0004 - 查询服务器时间请求 + /// auto-generated + /// + public static JT808Package Create_查询服务器时间请求(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0004 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0004 - 查询服务器时间请求 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0004 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0004 - 查询服务器时间请求 + /// auto-generated 2019 version + /// + public static JT808Package Create_查询服务器时间请求_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0004 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0004 - 查询服务器时间请求 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0004 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0005 - 终端补传分包请求 + /// auto-generated + /// + public static JT808Package Create_终端补传分包请求(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0005 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0005 - 终端补传分包请求 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0005 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0005 - 终端补传分包请求 + /// auto-generated 2019 version + /// + public static JT808Package Create_终端补传分包请求_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0005 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0005 - 终端补传分包请求 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0005 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0100 - 终端注册 + /// auto-generated + /// + public static JT808Package Create_终端注册(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0100 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0100 - 终端注册 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0100 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0100 - 终端注册 + /// auto-generated 2019 version + /// + public static JT808Package Create_终端注册_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0100 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0100 - 终端注册 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0100 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0102 - 终端鉴权 + /// auto-generated + /// + public static JT808Package Create_终端鉴权(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0102 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0102 - 终端鉴权 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0102 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0102 - 终端鉴权 + /// auto-generated 2019 version + /// + public static JT808Package Create_终端鉴权_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0102 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0102 - 终端鉴权 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0102 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0104 - 查询终端参数应答 + /// auto-generated + /// + public static JT808Package Create_查询终端参数应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0104 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0104 - 查询终端参数应答 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0104 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0104 - 查询终端参数应答 + /// auto-generated 2019 version + /// + public static JT808Package Create_查询终端参数应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0104 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0104 - 查询终端参数应答 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0104 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0107 - 查询终端属性应答 + /// auto-generated + /// + public static JT808Package Create_查询终端属性应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0107 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0107 - 查询终端属性应答 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0107 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0107 - 查询终端属性应答 + /// auto-generated 2019 version + /// + public static JT808Package Create_查询终端属性应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0107 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0107 - 查询终端属性应答 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0107 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0108 - 终端升级结果通知 + /// auto-generated + /// + public static JT808Package Create_终端升级结果通知(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0108 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0108 - 终端升级结果通知 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0108 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0108 - 终端升级结果通知 + /// auto-generated 2019 version + /// + public static JT808Package Create_终端升级结果通知_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0108 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0108 - 终端升级结果通知 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0108 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0200 - 位置信息汇报 + /// auto-generated + /// + public static JT808Package Create_位置信息汇报(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0200 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0200 - 位置信息汇报 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0200 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0200 - 位置信息汇报 + /// auto-generated 2019 version + /// + public static JT808Package Create_位置信息汇报_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0200 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0200 - 位置信息汇报 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0200 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0201 - 位置信息查询应答 + /// auto-generated + /// + public static JT808Package Create_位置信息查询应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0201 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0201 - 位置信息查询应答 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0201 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0201 - 位置信息查询应答 + /// auto-generated 2019 version + /// + public static JT808Package Create_位置信息查询应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0201 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0201 - 位置信息查询应答 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0201 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0301 - 事件报告 + /// auto-generated + /// + public static JT808Package Create_事件报告(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0301 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0301 - 事件报告 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0301 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0301 - 事件报告 + /// auto-generated 2019 version + /// + public static JT808Package Create_事件报告_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0301 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0301 - 事件报告 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0301 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0302 - 提问应答 + /// auto-generated + /// + public static JT808Package Create_提问应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0302 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0302 - 提问应答 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0302 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0302 - 提问应答 + /// auto-generated 2019 version + /// + public static JT808Package Create_提问应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0302 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0302 - 提问应答 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0302 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0303 - 信息点播_取消 + /// auto-generated + /// + public static JT808Package Create_信息点播_取消(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0303 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0303 - 信息点播_取消 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0303 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0303 - 信息点播_取消 + /// auto-generated 2019 version + /// + public static JT808Package Create_信息点播_取消_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0303 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0303 - 信息点播_取消 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0303 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0500 - 车辆控制应答 + /// auto-generated + /// + public static JT808Package Create_车辆控制应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0500 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0500 - 车辆控制应答 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0500 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0500 - 车辆控制应答 + /// auto-generated 2019 version + /// + public static JT808Package Create_车辆控制应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0500 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0500 - 车辆控制应答 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0500 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0608 - 查询区域或线路数据应答 + /// auto-generated + /// + public static JT808Package Create_查询区域或线路数据应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0608 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0608 - 查询区域或线路数据应答 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0608 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0608 - 查询区域或线路数据应答 + /// auto-generated 2019 version + /// + public static JT808Package Create_查询区域或线路数据应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0608 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0608 - 查询区域或线路数据应答 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0608 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0700 - 行驶记录仪数据上传 + /// auto-generated + /// + public static JT808Package Create_行驶记录仪数据上传(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0700 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0700 - 行驶记录仪数据上传 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0700 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0700 - 行驶记录仪数据上传 + /// auto-generated 2019 version + /// + public static JT808Package Create_行驶记录仪数据上传_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0700 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0700 - 行驶记录仪数据上传 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0700 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0701 - 电子运单上报 + /// auto-generated + /// + public static JT808Package Create_电子运单上报(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0701 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0701 - 电子运单上报 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0701 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0701 - 电子运单上报 + /// auto-generated 2019 version + /// + public static JT808Package Create_电子运单上报_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0701 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0701 - 电子运单上报 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0701 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0702 - 驾驶员身份信息采集上报 + /// auto-generated + /// + public static JT808Package Create_驾驶员身份信息采集上报(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0702 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0702 - 驾驶员身份信息采集上报 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0702 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0702 - 驾驶员身份信息采集上报 + /// auto-generated 2019 version + /// + public static JT808Package Create_驾驶员身份信息采集上报_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0702 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0702 - 驾驶员身份信息采集上报 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0702 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0704 - 定位数据批量上传 + /// auto-generated + /// + public static JT808Package Create_定位数据批量上传(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0704 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0704 - 定位数据批量上传 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0704 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0704 - 定位数据批量上传 + /// auto-generated 2019 version + /// + public static JT808Package Create_定位数据批量上传_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0704 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0704 - 定位数据批量上传 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0704 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0705 - CAN总线数据上传 + /// auto-generated + /// + public static JT808Package Create_CAN总线数据上传(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0705 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0705 - CAN总线数据上传 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0705 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0705 - CAN总线数据上传 + /// auto-generated 2019 version + /// + public static JT808Package Create_CAN总线数据上传_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0705 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0705 - CAN总线数据上传 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0705 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0800 - 多媒体事件信息上传 + /// auto-generated + /// + public static JT808Package Create_多媒体事件信息上传(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0800 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0800 - 多媒体事件信息上传 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0800 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0800 - 多媒体事件信息上传 + /// auto-generated 2019 version + /// + public static JT808Package Create_多媒体事件信息上传_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0800 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0800 - 多媒体事件信息上传 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0800 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0801 - 多媒体数据上传 + /// auto-generated + /// + public static JT808Package Create_多媒体数据上传(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0801 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0801 - 多媒体数据上传 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0801 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0801 - 多媒体数据上传 + /// auto-generated 2019 version + /// + public static JT808Package Create_多媒体数据上传_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0801 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0801 - 多媒体数据上传 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0801 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0802 - 存储多媒体数据检索应答 + /// auto-generated + /// + public static JT808Package Create_存储多媒体数据检索应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0802 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0802 - 存储多媒体数据检索应答 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0802 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0802 - 存储多媒体数据检索应答 + /// auto-generated 2019 version + /// + public static JT808Package Create_存储多媒体数据检索应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0802 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0802 - 存储多媒体数据检索应答 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0802 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0805 - 摄像头立即拍摄命令应答 + /// auto-generated + /// + public static JT808Package Create_摄像头立即拍摄命令应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0805 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0805 - 摄像头立即拍摄命令应答 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0805 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0805 - 摄像头立即拍摄命令应答 + /// auto-generated 2019 version + /// + public static JT808Package Create_摄像头立即拍摄命令应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0805 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0805 - 摄像头立即拍摄命令应答 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0805 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0900 - 数据上行透传 + /// auto-generated + /// + public static JT808Package Create_数据上行透传(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0900 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0900 - 数据上行透传 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0900 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0900 - 数据上行透传 + /// auto-generated 2019 version + /// + public static JT808Package Create_数据上行透传_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0900 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0900 - 数据上行透传 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0900 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0901 - 数据压缩上报 + /// auto-generated + /// + public static JT808Package Create_数据压缩上报(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0901 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0901 - 数据压缩上报 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0901 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0901 - 数据压缩上报 + /// auto-generated 2019 version + /// + public static JT808Package Create_数据压缩上报_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0901 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0901 - 数据压缩上报 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0901 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x0A00 - 终端RSA公钥 + /// auto-generated + /// + public static JT808Package Create_终端RSA公钥(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0A00 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0A00 - 终端RSA公钥 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0A00 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0A00 - 终端RSA公钥 + /// auto-generated 2019 version + /// + public static JT808Package Create_终端RSA公钥_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0A00 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x0A00 - 终端RSA公钥 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x0A00 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8001 - 平台通用应答 + /// auto-generated + /// + public static JT808Package Create_平台通用应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8001 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8001 - 平台通用应答 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8001 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8001 - 平台通用应答 + /// auto-generated 2019 version + /// + public static JT808Package Create_平台通用应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8001 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8001 - 平台通用应答 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8001 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8003 - 补传分包请求 + /// auto-generated + /// + public static JT808Package Create_补传分包请求(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8003 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8003 - 补传分包请求 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8003 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8003 - 补传分包请求 + /// auto-generated 2019 version + /// + public static JT808Package Create_补传分包请求_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8003 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8003 - 补传分包请求 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8003 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8004 - 查询服务器时间应答 + /// auto-generated + /// + public static JT808Package Create_查询服务器时间应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8004 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8004 - 查询服务器时间应答 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8004 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8004 - 查询服务器时间应答 + /// auto-generated 2019 version + /// + public static JT808Package Create_查询服务器时间应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8004 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8004 - 查询服务器时间应答 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8004 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8100 - 终端注册应答 + /// auto-generated + /// + public static JT808Package Create_终端注册应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8100 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8100 - 终端注册应答 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8100 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8100 - 终端注册应答 + /// auto-generated 2019 version + /// + public static JT808Package Create_终端注册应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8100 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8100 - 终端注册应答 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8100 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8103 - 设置终端参数 + /// auto-generated + /// + public static JT808Package Create_设置终端参数(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8103 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8103 - 设置终端参数 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8103 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8103 - 设置终端参数 + /// auto-generated 2019 version + /// + public static JT808Package Create_设置终端参数_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8103 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8103 - 设置终端参数 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8103 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8104 - 查询终端参数 + /// auto-generated + /// + public static JT808Package Create_查询终端参数(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8104 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8104 - 查询终端参数 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8104 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8104 - 查询终端参数 + /// auto-generated 2019 version + /// + public static JT808Package Create_查询终端参数_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8104 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8104 - 查询终端参数 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8104 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8105 - 终端控制 + /// auto-generated + /// + public static JT808Package Create_终端控制(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8105 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8105 - 终端控制 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8105 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8105 - 终端控制 + /// auto-generated 2019 version + /// + public static JT808Package Create_终端控制_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8105 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8105 - 终端控制 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8105 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8106 - 查询指定终端参数 + /// auto-generated + /// + public static JT808Package Create_查询指定终端参数(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8106 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8106 - 查询指定终端参数 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8106 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8106 - 查询指定终端参数 + /// auto-generated 2019 version + /// + public static JT808Package Create_查询指定终端参数_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8106 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8106 - 查询指定终端参数 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8106 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8107 - 查询终端属性 + /// auto-generated + /// + public static JT808Package Create_查询终端属性(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8107 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8107 - 查询终端属性 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8107 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8107 - 查询终端属性 + /// auto-generated 2019 version + /// + public static JT808Package Create_查询终端属性_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8107 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8107 - 查询终端属性 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8107 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8108 - 下发终端升级包 + /// auto-generated + /// + public static JT808Package Create_下发终端升级包(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8108 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8108 - 下发终端升级包 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8108 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8108 - 下发终端升级包 + /// auto-generated 2019 version + /// + public static JT808Package Create_下发终端升级包_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8108 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8108 - 下发终端升级包 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8108 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8201 - 位置信息查询 + /// auto-generated + /// + public static JT808Package Create_位置信息查询(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8201 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8201 - 位置信息查询 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8201 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8201 - 位置信息查询 + /// auto-generated 2019 version + /// + public static JT808Package Create_位置信息查询_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8201 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8201 - 位置信息查询 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8201 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8202 - 临时位置跟踪控制 + /// auto-generated + /// + public static JT808Package Create_临时位置跟踪控制(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8202 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8202 - 临时位置跟踪控制 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8202 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8202 - 临时位置跟踪控制 + /// auto-generated 2019 version + /// + public static JT808Package Create_临时位置跟踪控制_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8202 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8202 - 临时位置跟踪控制 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8202 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8203 - 人工确认报警消息 + /// auto-generated + /// + public static JT808Package Create_人工确认报警消息(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8203 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8203 - 人工确认报警消息 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8203 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8203 - 人工确认报警消息 + /// auto-generated 2019 version + /// + public static JT808Package Create_人工确认报警消息_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8203 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8203 - 人工确认报警消息 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8203 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8204 - 链路检测 + /// auto-generated + /// + public static JT808Package Create_链路检测(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8204 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8204 - 链路检测 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8204 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8204 - 链路检测 + /// auto-generated 2019 version + /// + public static JT808Package Create_链路检测_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8204 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8204 - 链路检测 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8204 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8300 - 文本信息下发 + /// auto-generated + /// + public static JT808Package Create_文本信息下发(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8300 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8300 - 文本信息下发 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8300 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8300 - 文本信息下发 + /// auto-generated 2019 version + /// + public static JT808Package Create_文本信息下发_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8300 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8300 - 文本信息下发 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8300 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8301 - 事件设置 + /// auto-generated + /// + public static JT808Package Create_事件设置(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8301 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8301 - 事件设置 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8301 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8301 - 事件设置 + /// auto-generated 2019 version + /// + public static JT808Package Create_事件设置_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8301 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8301 - 事件设置 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8301 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8302 - 提问下发 + /// auto-generated + /// + public static JT808Package Create_提问下发(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8302 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8302 - 提问下发 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8302 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8302 - 提问下发 + /// auto-generated 2019 version + /// + public static JT808Package Create_提问下发_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8302 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8302 - 提问下发 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8302 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8303 - 信息点播菜单设置 + /// auto-generated + /// + public static JT808Package Create_信息点播菜单设置(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8303 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8303 - 信息点播菜单设置 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8303 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8303 - 信息点播菜单设置 + /// auto-generated 2019 version + /// + public static JT808Package Create_信息点播菜单设置_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8303 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8303 - 信息点播菜单设置 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8303 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8304 - 信息服务 + /// auto-generated + /// + public static JT808Package Create_信息服务(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8304 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8304 - 信息服务 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8304 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8304 - 信息服务 + /// auto-generated 2019 version + /// + public static JT808Package Create_信息服务_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8304 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8304 - 信息服务 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8304 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8400 - 电话回拨 + /// auto-generated + /// + public static JT808Package Create_电话回拨(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8400 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8400 - 电话回拨 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8400 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8400 - 电话回拨 + /// auto-generated 2019 version + /// + public static JT808Package Create_电话回拨_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8400 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8400 - 电话回拨 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8400 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8401 - 设置电话本 + /// auto-generated + /// + public static JT808Package Create_设置电话本(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8401 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8401 - 设置电话本 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8401 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8401 - 设置电话本 + /// auto-generated 2019 version + /// + public static JT808Package Create_设置电话本_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8401 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8401 - 设置电话本 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8401 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8500 - 车辆控制 + /// auto-generated + /// + public static JT808Package Create_车辆控制(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8500 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8500 - 车辆控制 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8500 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8500 - 车辆控制 + /// auto-generated 2019 version + /// + public static JT808Package Create_车辆控制_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8500 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8500 - 车辆控制 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8500 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8600 - 设置圆形区域 + /// auto-generated + /// + public static JT808Package Create_设置圆形区域(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8600 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8600 - 设置圆形区域 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8600 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8600 - 设置圆形区域 + /// auto-generated 2019 version + /// + public static JT808Package Create_设置圆形区域_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8600 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8600 - 设置圆形区域 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8600 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8601 - 删除圆形区域 + /// auto-generated + /// + public static JT808Package Create_删除圆形区域(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8601 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8601 - 删除圆形区域 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8601 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8601 - 删除圆形区域 + /// auto-generated 2019 version + /// + public static JT808Package Create_删除圆形区域_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8601 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8601 - 删除圆形区域 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8601 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8602 - 设置矩形区域 + /// auto-generated + /// + public static JT808Package Create_设置矩形区域(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8602 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8602 - 设置矩形区域 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8602 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8602 - 设置矩形区域 + /// auto-generated 2019 version + /// + public static JT808Package Create_设置矩形区域_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8602 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8602 - 设置矩形区域 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8602 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8603 - 删除矩形区域 + /// auto-generated + /// + public static JT808Package Create_删除矩形区域(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8603 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8603 - 删除矩形区域 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8603 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8603 - 删除矩形区域 + /// auto-generated 2019 version + /// + public static JT808Package Create_删除矩形区域_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8603 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8603 - 删除矩形区域 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8603 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8604 - 设置多边形区域 + /// auto-generated + /// + public static JT808Package Create_设置多边形区域(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8604 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8604 - 设置多边形区域 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8604 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8604 - 设置多边形区域 + /// auto-generated 2019 version + /// + public static JT808Package Create_设置多边形区域_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8604 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8604 - 设置多边形区域 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8604 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8605 - 删除多边形区域 + /// auto-generated + /// + public static JT808Package Create_删除多边形区域(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8605 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8605 - 删除多边形区域 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8605 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8605 - 删除多边形区域 + /// auto-generated 2019 version + /// + public static JT808Package Create_删除多边形区域_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8605 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8605 - 删除多边形区域 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8605 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8606 - 设置路线 + /// auto-generated + /// + public static JT808Package Create_设置路线(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8606 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8606 - 设置路线 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8606 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8606 - 设置路线 + /// auto-generated 2019 version + /// + public static JT808Package Create_设置路线_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8606 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8606 - 设置路线 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8606 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8607 - 删除路线 + /// auto-generated + /// + public static JT808Package Create_删除路线(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8607 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8607 - 删除路线 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8607 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8607 - 删除路线 + /// auto-generated 2019 version + /// + public static JT808Package Create_删除路线_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8607 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8607 - 删除路线 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8607 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8608 - 查询区域或线路数据 + /// auto-generated + /// + public static JT808Package Create_查询区域或线路数据(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8608 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8608 - 查询区域或线路数据 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8608 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8608 - 查询区域或线路数据 + /// auto-generated 2019 version + /// + public static JT808Package Create_查询区域或线路数据_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8608 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8608 - 查询区域或线路数据 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8608 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8700 - 行驶记录数据采集命令 + /// auto-generated + /// + public static JT808Package Create_行驶记录数据采集命令(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8700 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8700 - 行驶记录数据采集命令 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8700 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8700 - 行驶记录数据采集命令 + /// auto-generated 2019 version + /// + public static JT808Package Create_行驶记录数据采集命令_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8700 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8700 - 行驶记录数据采集命令 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8700 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8701 - 行驶记录参数下传命令 + /// auto-generated + /// + public static JT808Package Create_行驶记录参数下传命令(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8701 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8701 - 行驶记录参数下传命令 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8701 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8701 - 行驶记录参数下传命令 + /// auto-generated 2019 version + /// + public static JT808Package Create_行驶记录参数下传命令_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8701 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8701 - 行驶记录参数下传命令 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8701 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8702 - 上报驾驶员身份信息请求 + /// auto-generated + /// + public static JT808Package Create_上报驾驶员身份信息请求(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8702 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8702 - 上报驾驶员身份信息请求 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8702 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8702 - 上报驾驶员身份信息请求 + /// auto-generated 2019 version + /// + public static JT808Package Create_上报驾驶员身份信息请求_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8702 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8702 - 上报驾驶员身份信息请求 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8702 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8800 - 多媒体数据上传应答 + /// auto-generated + /// + public static JT808Package Create_多媒体数据上传应答(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8800 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8800 - 多媒体数据上传应答 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8800 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8800 - 多媒体数据上传应答 + /// auto-generated 2019 version + /// + public static JT808Package Create_多媒体数据上传应答_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8800 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8800 - 多媒体数据上传应答 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8800 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8801 - 摄像头立即拍摄命令 + /// auto-generated + /// + public static JT808Package Create_摄像头立即拍摄命令(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8801 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8801 - 摄像头立即拍摄命令 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8801 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8801 - 摄像头立即拍摄命令 + /// auto-generated 2019 version + /// + public static JT808Package Create_摄像头立即拍摄命令_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8801 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8801 - 摄像头立即拍摄命令 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8801 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8802 - 存储多媒体数据检索 + /// auto-generated + /// + public static JT808Package Create_存储多媒体数据检索(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8802 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8802 - 存储多媒体数据检索 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8802 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8802 - 存储多媒体数据检索 + /// auto-generated 2019 version + /// + public static JT808Package Create_存储多媒体数据检索_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8802 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8802 - 存储多媒体数据检索 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8802 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8803 - 存储多媒体数据上传命令 + /// auto-generated + /// + public static JT808Package Create_存储多媒体数据上传命令(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8803 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8803 - 存储多媒体数据上传命令 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8803 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8803 - 存储多媒体数据上传命令 + /// auto-generated 2019 version + /// + public static JT808Package Create_存储多媒体数据上传命令_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8803 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8803 - 存储多媒体数据上传命令 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8803 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8804 - 录音开始命令 + /// auto-generated + /// + public static JT808Package Create_录音开始命令(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8804 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8804 - 录音开始命令 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8804 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8804 - 录音开始命令 + /// auto-generated 2019 version + /// + public static JT808Package Create_录音开始命令_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8804 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8804 - 录音开始命令 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8804 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8805 - 单条存储多媒体数据检索上传命令 + /// auto-generated + /// + public static JT808Package Create_单条存储多媒体数据检索上传命令(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8805 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8805 - 单条存储多媒体数据检索上传命令 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8805 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8805 - 单条存储多媒体数据检索上传命令 + /// auto-generated 2019 version + /// + public static JT808Package Create_单条存储多媒体数据检索上传命令_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8805 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8805 - 单条存储多媒体数据检索上传命令 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8805 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8900 - 数据下行透传 + /// auto-generated + /// + public static JT808Package Create_数据下行透传(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8900 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8900 - 数据下行透传 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8900 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8900 - 数据下行透传 + /// auto-generated 2019 version + /// + public static JT808Package Create_数据下行透传_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8900 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8900 - 数据下行透传 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8900 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + /// + /// 0x8A00 - 平台RSA公钥 + /// auto-generated + /// + public static JT808Package Create_平台RSA公钥(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8A00 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8A00 - 平台RSA公钥 + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8A00 bodies) + { + return Create(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8A00 - 平台RSA公钥 + /// auto-generated 2019 version + /// + public static JT808Package Create_平台RSA公钥_2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8A00 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } + + /// + /// 0x8A00 - 平台RSA公钥 + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,JT808.Protocol.MessageBody.JT808_0x8A00 bodies) + { + return Create2019(msgId,terminalPhoneNo,bodies); + } } } \ No newline at end of file diff --git a/src/JT808.Protocol/Extensions/JT808PackageExtensionsTemplate.tt b/src/JT808.Protocol/Extensions/JT808PackageExtensionsTemplate.tt index 17eb616..3186ee8 100644 --- a/src/JT808.Protocol/Extensions/JT808PackageExtensionsTemplate.tt +++ b/src/JT808.Protocol/Extensions/JT808PackageExtensionsTemplate.tt @@ -6,65 +6,70 @@ <#@ import namespace="JT808.Protocol" #> <#@ import namespace="JT808.Protocol.Enums" #> <#@ import namespace="JT808.Protocol.Extensions" #> -<#@ import namespace="JT808.Protocol.Attributes" #> <#@ import namespace="System.Linq" #> <#@ import namespace="System.Text" #> <#@ import namespace="System.Collections.Generic" #> <#@ import namespace="System.Reflection" #> <#@ output extension=".cs" #> <# - var types=Enum.GetNames(typeof(JT808MsgId)); + var types=Assembly.GetAssembly(typeof(JT808Package)).GetTypes().Where(w => w.BaseType == typeof(JT808Bodies)).ToList(); #> using JT808.Protocol.Enums; namespace JT808.Protocol.Extensions { + /// + /// todo:source-generators正式发布以后将T4模板换掉 + /// https://devblogs.microsoft.com/dotnet/introducing-c-source-generators/ + /// public static partial class JT808PackageExtensions { <# - foreach (var item in types) + foreach (var type in types) { - JT808MsgId msgId = item.ToEnum(); - JT808BodiesTypeAttribute jT808BodiesTypeAttribute = msgId.GetAttribute(); - JT808MsgIdDescriptionAttribute jT808MsgIdDescriptionAttribute = msgId.GetAttribute(); - + var instance = Activator.CreateInstance(type); + if(instance is JT808Bodies jT808Bodies) + { + string code = $"0x{jT808Bodies.MsgId.ToString("X2").PadLeft(4, '0')}"; + string name = jT808Bodies.Description; #> - /// - /// <#= jT808MsgIdDescriptionAttribute.Code #> - <#= jT808MsgIdDescriptionAttribute.Name #> - /// auto-generated - /// - public static JT808Package Create_<#= jT808MsgIdDescriptionAttribute.Name #>(this JT808MsgId msgId, string terminalPhoneNo,<#= jT808BodiesTypeAttribute.JT808BodiesType.FullName #> bodies) - { - return Create<<#= jT808BodiesTypeAttribute.JT808BodiesType.FullName#>>(msgId,terminalPhoneNo,bodies); - } + /// + /// <#= code #> - <#= name #> + /// auto-generated + /// + public static JT808Package Create_<#= name #>(this JT808MsgId msgId, string terminalPhoneNo,<#= type.FullName #> bodies) + { + return Create<<#= type.FullName#>>(msgId,terminalPhoneNo,bodies); + } - /// - /// <#= jT808MsgIdDescriptionAttribute.Code #> - <#= jT808MsgIdDescriptionAttribute.Name #> - /// auto-generated - /// - public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,<#= jT808BodiesTypeAttribute.JT808BodiesType.FullName #> bodies) - { - return Create<<#= jT808BodiesTypeAttribute.JT808BodiesType.FullName#>>(msgId,terminalPhoneNo,bodies); - } + /// + /// <#= code #> - <#= name #> + /// auto-generated + /// + public static JT808Package Create(this JT808MsgId msgId, string terminalPhoneNo,<#= type.FullName #> bodies) + { + return Create<<#= type.FullName#>>(msgId,terminalPhoneNo,bodies); + } - /// - /// <#= jT808MsgIdDescriptionAttribute.Code #> - <#= jT808MsgIdDescriptionAttribute.Name #> - /// auto-generated 2019 version - /// - public static JT808Package Create_<#= jT808MsgIdDescriptionAttribute.Name #>_2019(this JT808MsgId msgId, string terminalPhoneNo,<#= jT808BodiesTypeAttribute.JT808BodiesType.FullName #> bodies) - { - return Create2019<<#= jT808BodiesTypeAttribute.JT808BodiesType.FullName#>>(msgId,terminalPhoneNo,bodies); - } + /// + /// <#= code #> - <#= name #> + /// auto-generated 2019 version + /// + public static JT808Package Create_<#= name #>_2019(this JT808MsgId msgId, string terminalPhoneNo,<#= type.FullName #> bodies) + { + return Create2019<<#= type.FullName#>>(msgId,terminalPhoneNo,bodies); + } - /// - /// <#= jT808MsgIdDescriptionAttribute.Code #> - <#= jT808MsgIdDescriptionAttribute.Name #> - /// auto-generated 2019 version - /// - public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,<#= jT808BodiesTypeAttribute.JT808BodiesType.FullName #> bodies) - { - return Create2019<<#= jT808BodiesTypeAttribute.JT808BodiesType.FullName#>>(msgId,terminalPhoneNo,bodies); - } + /// + /// <#= code #> - <#= name #> + /// auto-generated 2019 version + /// + public static JT808Package Create2019(this JT808MsgId msgId, string terminalPhoneNo,<#= type.FullName #> bodies) + { + return Create2019<<#= type.FullName#>>(msgId,terminalPhoneNo,bodies); + } <# + } } #> } diff --git a/src/JT808.Protocol/Extensions/JT808ValidationExtensions.cs b/src/JT808.Protocol/Extensions/JT808ValidationExtensions.cs new file mode 100644 index 0000000..21a1f3a --- /dev/null +++ b/src/JT808.Protocol/Extensions/JT808ValidationExtensions.cs @@ -0,0 +1,67 @@ +using JT808.Protocol.Enums; +using JT808.Protocol.Exceptions; +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; + +namespace JT808.Protocol.Extensions +{ + /// + /// 验证长度扩展方法 + /// + public static partial class JT808ValidationExtensions + { + /// + /// 验证字符串长度 + /// + /// + /// + /// + public static void ValiString(this string value,in string fieldName, in int fixedLength) + { + vali(value.Length, fieldName, fixedLength); + } + + /// + /// 验证数组长度 + /// + /// + /// + /// + public static void ValiBytes(this byte[] value,in string fieldName, in int fixedLength) + { + vali(value.Length, fieldName, fixedLength); + } + + + /// + /// 验证集合长度 + /// + /// + /// + /// + public static void ValiList(this IEnumerable value, in string fieldName, in int fixedLength) + { + vali(value.Count(), fieldName, fixedLength); + } + + /// + /// 验证 + /// + /// + /// + /// + private static void vali(in int length,in string fieldName, in int fixedLength) + { + if (length > fixedLength) + { + throw new JT808Exception(JT808ErrorCode.VailLength, $"{fieldName}:{length}>fixed[{fixedLength}]"); + } + else if (length < fixedLength) + { + throw new JT808Exception(JT808ErrorCode.NotEnoughLength, $"{fieldName}:{length} + /// 序列化工厂 + /// public interface IJT808FormatterFactory: IJT808ExternalRegister { + /// + /// + /// IDictionary FormatterDict { get;} + /// + /// + /// + /// + /// IJT808FormatterFactory SetMap() where TIJT808Formatter : IJT808Formatter; } diff --git a/src/JT808.Protocol/Formatters/IJT808MessagePackFormatter.cs b/src/JT808.Protocol/Formatters/IJT808MessagePackFormatter.cs index 9d49e44..ea1d6da 100644 --- a/src/JT808.Protocol/Formatters/IJT808MessagePackFormatter.cs +++ b/src/JT808.Protocol/Formatters/IJT808MessagePackFormatter.cs @@ -1,15 +1,31 @@ -using System; -using JT808.Protocol.Interfaces; -using JT808.Protocol.MessagePack; +using JT808.Protocol.MessagePack; namespace JT808.Protocol.Formatters { + /// + /// 序列化器接口 + /// + /// public interface IJT808MessagePackFormatter : IJT808Formatter { + /// + /// + /// + /// + /// + /// void Serialize(ref JT808MessagePackWriter writer, T value, IJT808Config config); + /// + /// + /// + /// + /// + /// T Deserialize(ref JT808MessagePackReader reader, IJT808Config config); } - + /// + /// + /// public interface IJT808Formatter { diff --git a/src/JT808.Protocol/Interfaces/IJT808Config.cs b/src/JT808.Protocol/Interfaces/IJT808Config.cs index 4ed3e29..4681fa4 100644 --- a/src/JT808.Protocol/Interfaces/IJT808Config.cs +++ b/src/JT808.Protocol/Interfaces/IJT808Config.cs @@ -10,6 +10,9 @@ namespace JT808.Protocol { public interface IJT808Config { + /// + /// 配置ID + /// string ConfigId { get; } /// /// 消息流水号 diff --git a/src/JT808.Protocol/Interfaces/IJT808ExternalRegister.cs b/src/JT808.Protocol/Interfaces/IJT808ExternalRegister.cs index 52242c5..3e72e9a 100644 --- a/src/JT808.Protocol/Interfaces/IJT808ExternalRegister.cs +++ b/src/JT808.Protocol/Interfaces/IJT808ExternalRegister.cs @@ -5,8 +5,15 @@ using System.Text; namespace JT808.Protocol.Interfaces { + /// + /// 外部注册 + /// public interface IJT808ExternalRegister { + /// + /// + /// + /// void Register(Assembly externalAssembly); } } diff --git a/src/JT808.Protocol/Internal/JT808FormatterFactory.cs b/src/JT808.Protocol/Internal/JT808FormatterFactory.cs index 6843c99..0ea834d 100644 --- a/src/JT808.Protocol/Internal/JT808FormatterFactory.cs +++ b/src/JT808.Protocol/Internal/JT808FormatterFactory.cs @@ -1,4 +1,4 @@ -using JT808.Protocol.Attributes; + using JT808.Protocol.Enums; using JT808.Protocol.Exceptions; using JT808.Protocol.Formatters; diff --git a/src/JT808.Protocol/Internal/JT808MsgIdFactory.cs b/src/JT808.Protocol/Internal/JT808MsgIdFactory.cs index c732519..d8ab2fc 100644 --- a/src/JT808.Protocol/Internal/JT808MsgIdFactory.cs +++ b/src/JT808.Protocol/Internal/JT808MsgIdFactory.cs @@ -1,4 +1,4 @@ -using JT808.Protocol.Attributes; + using JT808.Protocol.Enums; using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; diff --git a/src/JT808.Protocol/JT808.Protocol.csproj b/src/JT808.Protocol/JT808.Protocol.csproj index 00f5060..510c3f8 100644 --- a/src/JT808.Protocol/JT808.Protocol.csproj +++ b/src/JT808.Protocol/JT808.Protocol.csproj @@ -15,7 +15,7 @@ https://github.com/SmallChi/JT808/blob/master/LICENSE JT808.Protocol.xml false - 2.3.5 + 2.3.6 LICENSE latest true @@ -67,7 +67,7 @@ - + @@ -91,4 +91,7 @@ + + + diff --git a/src/JT808.Protocol/JT808.Protocol.xml b/src/JT808.Protocol/JT808.Protocol.xml index 1f9f0f5..e090168 100644 --- a/src/JT808.Protocol/JT808.Protocol.xml +++ b/src/JT808.Protocol/JT808.Protocol.xml @@ -6,7 +6,8 @@ - + + ref System.Buffers.Writer @@ -14,6 +15,11 @@ 编码之前的写入位置 + + + + + 报警标志 @@ -220,12 +226,12 @@ - 校验和不相等 + JT808校验和不相等 - 校验和不相等 + JT19056校验和不相等 @@ -238,6 +244,11 @@ 消息体解析错误 + + + 验证长度 + + 没有实现对应的类型 @@ -248,7 +259,12 @@ 长度不够 - + + + 没有全局注册格式化器 + IJT808MessagePackFormatter + + 经纬度错误 @@ -581,6 +597,24 @@ 0x8607 + + + 行驶记录仪数据采集命令 + 0x8700 + + + + + 行驶记录仪数据上传 + 0x0700 + + + + + 行驶记录仪参数下传命令 + 0x8701 + + 电子运单上报 @@ -763,6 +797,11 @@ 假如是其他地方打来要改成打 +886912345678 + + + 返回结果 + + 成功/确认 @@ -793,6 +832,31 @@ 位置类型 + + + 无特定位置 + + + + + 圆形区域 + + + + + 矩形区域 + + + + + 多边形区域 + + + + + 路段 + + 录音命令 @@ -843,11 +907,108 @@ 升级结果 + + + 成功 + + + + + 失败 + + + + + 取消 + + 升级类型 + + + 终端 + + + + + 道路运输证IC卡读卡器 + + + + + 北斗卫星定位模块 + + + + + JT808版本号 + + + + + 2013 + + + + + 2019 + + + + + JT808异常处理类 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + JT808统一错误码 + + + + + JT808分析器扩展 + + + + + + + + + + + 枚举扩展 @@ -925,14 +1086,14 @@ 获取DisplayNameAttribute特性枚举值的描述 - 枚举值 + 枚举值 获取DisplayNameAttribute特性枚举及描述 - + @@ -959,12 +1120,146 @@ ref:"www.codeproject.com/tips/447938/high-performance-csharp-byte-array-to-hex-string-t" + + + 16进制数组转16进制字符串 + + + + 16进制字符串转16进制数组 - + + + + + 从内存块中读取16进制字符串 + + + + + + + + + 将16进制字符串写入对应数组中 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -975,6 +1270,12 @@ ref:MessagePack.Formatters.DynamicObjectTypeFallbackFormatter + + + todo:source-generators正式发布以后将T4模板换掉 + https://devblogs.microsoft.com/dotnet/introducing-c-source-generators/ + + 0x0001 - 终端通用应答 @@ -1289,49 +1590,49 @@ - 0x8302 - 提问应答 + 0x0302 - 提问应答 auto-generated - 0x8302 - 提问应答 + 0x0302 - 提问应答 auto-generated - 0x8302 - 提问应答 + 0x0302 - 提问应答 auto-generated 2019 version - 0x8302 - 提问应答 + 0x0302 - 提问应答 auto-generated 2019 version - + - 0x0303 - 信息点播或取消 + 0x0303 - 信息点播_取消 auto-generated - 0x0303 - 信息点播或取消 + 0x0303 - 信息点播_取消 auto-generated - + - 0x0303 - 信息点播或取消 + 0x0303 - 信息点播_取消 auto-generated 2019 version - 0x0303 - 信息点播或取消 + 0x0303 - 信息点播_取消 auto-generated 2019 version @@ -1383,6 +1684,30 @@ auto-generated 2019 version + + + 0x0700 - 行驶记录仪数据上传 + auto-generated + + + + + 0x0700 - 行驶记录仪数据上传 + auto-generated + + + + + 0x0700 - 行驶记录仪数据上传 + auto-generated 2019 version + + + + + 0x0700 - 行驶记录仪数据上传 + auto-generated 2019 version + + 0x0701 - 电子运单上报 @@ -2391,6 +2716,54 @@ auto-generated 2019 version + + + 0x8700 - 行驶记录数据采集命令 + auto-generated + + + + + 0x8700 - 行驶记录数据采集命令 + auto-generated + + + + + 0x8700 - 行驶记录数据采集命令 + auto-generated 2019 version + + + + + 0x8700 - 行驶记录数据采集命令 + auto-generated 2019 version + + + + + 0x8701 - 行驶记录参数下传命令 + auto-generated + + + + + 0x8701 - 行驶记录参数下传命令 + auto-generated + + + + + 0x8701 - 行驶记录参数下传命令 + auto-generated 2019 version + + + + + 0x8701 - 行驶记录参数下传命令 + auto-generated 2019 version + + 0x8702 - 上报驾驶员身份信息请求 @@ -2487,27 +2860,27 @@ auto-generated 2019 version - + - 0x8803 - 存储多媒体数据上传 + 0x8803 - 存储多媒体数据上传命令 auto-generated - 0x8803 - 存储多媒体数据上传 + 0x8803 - 存储多媒体数据上传命令 auto-generated - + - 0x8803 - 存储多媒体数据上传 + 0x8803 - 存储多媒体数据上传命令 auto-generated 2019 version - 0x8803 - 存储多媒体数据上传 + 0x8803 - 存储多媒体数据上传命令 auto-generated 2019 version @@ -2537,25 +2910,25 @@ - 0x8804 - 单条存储多媒体数据检索上传命令 + 0x8805 - 单条存储多媒体数据检索上传命令 auto-generated - 0x8804 - 单条存储多媒体数据检索上传命令 + 0x8805 - 单条存储多媒体数据检索上传命令 auto-generated - 0x8804 - 单条存储多媒体数据检索上传命令 + 0x8805 - 单条存储多媒体数据检索上传命令 auto-generated 2019 version - 0x8804 - 单条存储多媒体数据检索上传命令 + 0x8805 - 单条存储多媒体数据检索上传命令 auto-generated 2019 version @@ -2607,20 +2980,163 @@ auto-generated 2019 version - + - 压缩接口 + 验证长度扩展方法 - + - 分包策略 - 注意:处理808的分包读取完流需要先进行转义在进行分包 + 验证字符串长度 + + + - + - 只用来标识2019版本增删改情况 + 验证数组长度 + + + + + + + + 验证集合长度 + + + + + + + + 验证 + + + + + + + + JT808配置扩展 + + + + + 通过类型获取对应的消息序列化器 + + + + + + + + 通过类型获取对应的消息分析器 + + + + + + + + 获取对应的消息序列化器 + + + + + + + + 获取对应的消息分析器 + + + + + + + + 获取JT19056序列化器 + + + + + + + 获取JT808序列化器 + + + + + + + 序列化工厂 + + + + + + + + + + + + + + + + + 序列化器接口 + + + + + + + + + + + + + + + + + + + + + + + + + + + 压缩接口 + + + + + 外部注册 + + + + + + + + + + + 分包策略 + 注意:处理808的分包读取完流需要先进行转义在进行分包 + + + + + 只用来标识2019版本增删改情况 @@ -2643,6 +3159,11 @@ 记录仪工厂 + + + 配置ID + + 消息流水号 @@ -3015,10 +3536,14 @@ - 紧急报警时汇报距离间隔,单位为米(m),>0 + 紧急报警时汇报距离间隔,单位为米(m)>0 + + + + + 拐点补传角度小于180 - 电子围栏半径(非法位移阈值),单位为米 @@ -3469,6 +3994,27 @@ 808版本号 + + + JT808序列化器 + + + + + + + + + + + + + + + + + + 用于负载或者分布式的时候,在网关只需要解到头部。 @@ -4544,7 +5090,7 @@ - + 结果 0:成功/确认;1:失败;2:消息有误;3:不支持 @@ -5167,7 +5713,7 @@ - 行驶记录数据上传 + 行驶记录仪数据上传 0x0700 @@ -5506,7 +6052,7 @@ 未压缩消息体 压缩消息体为需要压缩的消息经过 GZIP 压缩算法后的消息 - 可实现 自定义压缩算法 + 可实现 refJT808.Protocol.IJT808ICompress 自定义压缩算法 @@ -6153,13 +6699,21 @@ 紧急报警时汇报距离间隔,单位为米(m),>0 - + + + 拐点补传角度,小于180 + + 数据 长度 - + + + 拐点补传角度,小于180 + + 电子围栏半径(非法位移阈值),单位为米 @@ -7974,6 +8528,31 @@ RSA 公钥{e,n}中的 n + + + JT808消息读取器 + + + + + 读取buffer + + + + + 原数据 + + + + + 读取到的数量 + + + + + JT808版本号 + + 是否进行解码操作 @@ -7986,7 +8565,8 @@ 解码(转义还原),计算校验和 - + + 默认JT808Version.JTT2013 @@ -8000,135 +8580,631 @@ + + + 计算的校验码 + + + + + 实际获取的校验码 + + + + + 验证码是否正确 + + + + + 读取标识头 + + + + + + 读取尾标识 + + + + + + 读取有符号位的两字节数值类型 + + + + + + 读取无符号位的两字节数值类型 + + + + + + 读取无符号位的四字节数值类型 + + + + + + 读取有符号位的四字节数值类型 + + + + + + 读取无符号位的八字节数值类型 + + + + + + 读取有符号位的八字节数值类型 + + + + + + 读取一个字节 + + + + + + 读取一个字符 + + + + + + 虚拟读取一个字节,不计入内存偏移量 + + + + + + 虚拟读取一个数组,不计入内存偏移量 + + + + + + + 虚拟读取无符号位的两字节数值类型,不计入内存偏移量 + + + + + + 虚拟读取有符号位的两字节数值类型,不计入内存偏移量 + + + + + + 虚拟读取无符号位的四字节数值类型,不计入内存偏移量 + + + + + + 虚拟读取有符号位的四字节数值类型,不计入内存偏移量 + + + + + + 虚拟读取无符号位的八字节数值类型,不计入内存偏移量 + + + + + + 虚拟读取有符号位的八字节数值类型,不计入内存偏移量 + + + - 数字编码 大端模式、高位在前 + 读取数字编码 + 大端模式、高位在前 + + + + + + 读取固定大小的内存块 + + + + + + + 读取固定大小的内存块 + + + + + + + + 读取GBK字符串编码 + + + + + + + 读取ASCII编码 + + + + + 读取剩余数据体内容为字符串模式 + + + + + + 读取16进制编码 + + + - yyMMddHHmmss + 读取六字节日期,yyMMddHHmmss - >D2: 10 X2:16 + >D2: 10 X2:16 - yyMMddHHmmss + 读取可空类型的六字节日期,yyMMddHHmmss - >D2: 10 X2:16 + >D2: 10 X2:16 - HH-mm-ss-msms - HH-mm-ss-fff + 读取五字节日期,HH-mm-ss-msms|HH-mm-ss-fff D2: 10 X2:16 - HH-mm-ss-msms - HH-mm-ss-fff + 读取可空类型的五字节日期,HH-mm-ss-msms|HH-mm-ss-fff D2: 10 X2:16 - YYYYMMDD + 读取四字节日期,YYYYMMDD D2: 10 X2:16 - YYYYMMDD + 读取可空类型的四字节日期,YYYYMMDD D2: 10 X2:16 - YYMMDD + 读取三字节日期,YYMMDD D2: 10 X2:16 - YYMMDD + 读取可空类型的三字节日期,YYMMDD D2: 10 X2:16 + + + 读取UTC时间类型 + + + + + + 读取BCD编码 + + + + + + + + 读取数量大小的内存块 + + + + + + + 虚拟读取数量大小的内存块,不计入内存偏移量 + + + + + + + 读取数据体内存块 + + + + + + + 读取一整串字符串到\0结束 + + + + + + 虚拟读取一整串字符串到\0结束,不计入内存偏移量 + + + + + + 读取剩余数据体内容长度 + + + + + + 跳过多少字节 + + + + + + 读取JT19056校验码 + + + + + + + JT808消息写入器 + + + + + JT808版本号 + + + + + + + 内存块 + 版本号:默认2013 + + + + 编码后的数组 + + + + + + 编码后的内存块 + + + + + + 获取实际写入的内存块 + + + + + + 获取实际写入的数组 + + + + + + 写入头标识 + + + + + 写入尾标识 + + + + + 写入空标识,0x00 + + + + + + 跳过多少字节数 + + + 跳过前的内存位置 + + + + 跳过多少字节数 + + + 跳过前的内存位置 + 用什么数值填充跳过的内存块 + + + + 写入一个字符 + + + + + + 写入一个字节 + + + + + + 写入两个字节的有符号数值类型 + + + + + + 写入两个字节的无符号数值类型 + + + + + + 写入四个字节的有符号数值类型 + + + + + + 写入四个字节的无符号数值类型 + + + + + + 写入八个字节的无符号数值类型 + + + + + + 写入八个字节的有符号数值类型 + + + + + + 写入字符串 + + + + + + 写入数组 + + + + + + 根据内存定位,反写两个字节的无符号数值类型 + + + + + + + 根据内存定位,反写两个字节的有符号数值类型 + + + + + + + 根据内存定位,反写四个字节的有符号数值类型 + + + + + + + 根据内存定位,反写四个字节的无符号数值类型 + + + + + + + 根据内存定位,反写八个字节的有符号数值类型 + + + + + + + 根据内存定位,反写八个字节的无符号数值类型 + + + + + + + 根据内存定位,反写1个字节的数值类型 + + + + + + + 根据内存定位,反写BCD编码数据 + + + + + + + + 根据内存定位,反写一串字符串数据 + + + + + + + 根据内存定位,反写一组数组数据 + + + + - yyMMddHHmmss + 写入六个字节的日期类型,yyMMddHHmmss - yyMMddHHmmss + 写入六个字节的可空日期类型,yyMMddHHmmss - HH-mm-ss-msms - HH-mm-ss-fff + 写入五个字节的日期类型,HH-mm-ss-msms或HH-mm-ss-fff - HH-mm-ss-msms - HH-mm-ss-fff + 写入五个字节的可空日期类型,HH-mm-ss-msms或HH-mm-ss-fff + + + 写入UTC日期类型 + + + - YYYYMMDD - BCD[4] - 数据形如:20200101 + 写入四个字节的日期类型,YYYYMMDD BCD[4] 数据形如:20200101 - YYYYMMDD - BCD[4] - 数据形如:20200101 + 写入四个字节的可空日期类型,YYYYMMDD BCD[4]数据形如:20200101 - YYMMDD - BCD[4] - 数据形如:20200101 + 写入三个字节的日期类型,YYMMDD 数据形如:20200101 - YYMMDD - BCD[4] - 数据形如:20200101 + 写入三个字节的可空日期类型,YYMMDD 数据形如:20200101 + + + 将指定内存块进行或运算并写入一个字节 + + + + + + + 将指定内存块进行或运算并写入一个字节 + + + + + + 将内存块进行或运算并写入一个字节 + + + + + 写入BCD编码数据 + + + + + + + 写入Hex编码数据 + + + + + + + 写入ASCII编码数据 + + + + + + 将内存块进行808转义处理 + + + + + 将内存块进行808转义处理 + + - 数字编码 大端模式、高位在前 + 写入数值类型,数字编码 大端模式、高位在前 + + + 将字符串写入并写入一个\0作为结尾 + + + + + + 获取当前内存块写入的位置 + + + + + + 写入JT19056校验码 + + + Can属性 @@ -8501,5 +9577,20 @@ 分包属性 + + + 当前页 + + + + + 分页总数 + + + + + 分包数据 + + diff --git a/src/JT808.Protocol/JT808Constants.cs b/src/JT808.Protocol/JT808Constants.cs index 456c9aa..2c5db09 100644 --- a/src/JT808.Protocol/JT808Constants.cs +++ b/src/JT808.Protocol/JT808Constants.cs @@ -153,11 +153,11 @@ namespace JT808.Protocol /// public const uint JT808_0x8103_0x002E = 0x002E; /// - /// 紧急报警时汇报距离间隔,单位为米(m),>0 + /// 紧急报警时汇报距离间隔,单位为米(m)>0 /// public const uint JT808_0x8103_0x002F = 0x002F; /// - /// 拐点补传角度,<180 + /// 拐点补传角度小于180 /// public const uint JT808_0x8103_0x0030 = 0x0030; /// diff --git a/src/JT808.Protocol/JT808HeaderMessageBodyProperty.cs b/src/JT808.Protocol/JT808HeaderMessageBodyProperty.cs index 004558c..5ca730a 100644 --- a/src/JT808.Protocol/JT808HeaderMessageBodyProperty.cs +++ b/src/JT808.Protocol/JT808HeaderMessageBodyProperty.cs @@ -1,4 +1,4 @@ -using JT808.Protocol.Attributes; + using JT808.Protocol.Enums; using JT808.Protocol.Formatters; using System; diff --git a/src/JT808.Protocol/JT808Serializer.cs b/src/JT808.Protocol/JT808Serializer.cs index bd5b07d..57d4768 100644 --- a/src/JT808.Protocol/JT808Serializer.cs +++ b/src/JT808.Protocol/JT808Serializer.cs @@ -11,20 +11,32 @@ using System.Text.Json; namespace JT808.Protocol { + /// + /// JT808序列化器 + /// public class JT808Serializer { private readonly static JT808Package jT808Package = new JT808Package(); + /// + /// + /// + /// public JT808Serializer(IJT808Config jT808Config) { this.jT808Config = jT808Config; } - + /// + /// + /// public JT808Serializer():this(new DefaultGlobalConfig()) { } + /// + /// + /// public string SerializerId => jT808Config.ConfigId; private readonly IJT808Config jT808Config; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x0001.cs b/src/JT808.Protocol/MessageBody/JT808_0x0001.cs index 73d598f..a6741b6 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x0001.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x0001.cs @@ -30,14 +30,14 @@ namespace JT808.Protocol.MessageBody /// 结果 /// 0:成功/确认;1:失败;2:消息有误;3:不支持 /// - public JT808TerminalResult JT808TerminalResult { get; set; } + public JT808TerminalResult TerminalResult { get; set; } public JT808_0x0001 Deserialize(ref JT808MessagePackReader reader, IJT808Config config) { JT808_0x0001 jT808_0X0001 = new JT808_0x0001(); jT808_0X0001.ReplyMsgNum = reader.ReadUInt16(); jT808_0X0001.ReplyMsgId = reader.ReadUInt16(); - jT808_0X0001.JT808TerminalResult = (JT808TerminalResult)reader.ReadByte(); + jT808_0X0001.TerminalResult = (JT808TerminalResult)reader.ReadByte(); return jT808_0X0001; } @@ -45,7 +45,7 @@ namespace JT808.Protocol.MessageBody { writer.WriteUInt16(value.ReplyMsgNum); writer.WriteUInt16(value.ReplyMsgId); - writer.WriteByte((byte)value.JT808TerminalResult); + writer.WriteByte((byte)value.TerminalResult); } public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config) diff --git a/src/JT808.Protocol/MessageBody/JT808_0x0003.cs b/src/JT808.Protocol/MessageBody/JT808_0x0003.cs index fa7c088..79f0419 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x0003.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x0003.cs @@ -12,6 +12,6 @@ public override ushort MsgId { get; } = 0x0003; - public override string Description => "终端注销请求"; + public override string Description => "终端注销"; } } diff --git a/src/JT808.Protocol/MessageBody/JT808_0x0200_0x04.cs b/src/JT808.Protocol/MessageBody/JT808_0x0200_0x04.cs index 25915e8..c5575bd 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x0200_0x04.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x0200_0x04.cs @@ -1,4 +1,4 @@ -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x0200_0x05.cs b/src/JT808.Protocol/MessageBody/JT808_0x0200_0x05.cs index 27d57e4..a06e8dc 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x0200_0x05.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x0200_0x05.cs @@ -1,4 +1,4 @@ -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x0200_0x06.cs b/src/JT808.Protocol/MessageBody/JT808_0x0200_0x06.cs index 1449121..789d3a4 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x0200_0x06.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x0200_0x06.cs @@ -1,4 +1,4 @@ -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x0200_0x2B.cs b/src/JT808.Protocol/MessageBody/JT808_0x0200_0x2B.cs index 925333f..af63776 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x0200_0x2B.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x0200_0x2B.cs @@ -1,4 +1,4 @@ -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x0200_0x30.cs b/src/JT808.Protocol/MessageBody/JT808_0x0200_0x30.cs index 6b16cfe..bdbbd4a 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x0200_0x30.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x0200_0x30.cs @@ -1,4 +1,4 @@ -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x0302.cs b/src/JT808.Protocol/MessageBody/JT808_0x0302.cs index 198336c..afb1985 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x0302.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x0302.cs @@ -1,4 +1,4 @@ -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x0700.cs b/src/JT808.Protocol/MessageBody/JT808_0x0700.cs index 8085d9e..3b13973 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x0700.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x0700.cs @@ -9,13 +9,13 @@ using System.Text.Json; namespace JT808.Protocol.MessageBody { /// - /// 行驶记录数据上传 + /// 行驶记录仪数据上传 /// 0x0700 /// public class JT808_0x0700 : JT808Bodies, IJT808MessagePackFormatter, IJT808Analyze { public override ushort MsgId { get; } = 0x0700; - public override string Description => "行驶记录数据上传"; + public override string Description => "行驶记录仪数据上传"; /// /// 应答流水号 /// diff --git a/src/JT808.Protocol/MessageBody/JT808_0x0900.cs b/src/JT808.Protocol/MessageBody/JT808_0x0900.cs index 93322af..3b69391 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x0900.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x0900.cs @@ -1,4 +1,4 @@ -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x0901.cs b/src/JT808.Protocol/MessageBody/JT808_0x0901.cs index ed54da1..6138813 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x0901.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x0901.cs @@ -1,4 +1,4 @@ -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; @@ -22,7 +22,7 @@ namespace JT808.Protocol.MessageBody /// /// 未压缩消息体 /// 压缩消息体为需要压缩的消息经过 GZIP 压缩算法后的消息 - /// 可实现 自定义压缩算法 + /// 可实现 refJT808.Protocol.IJT808ICompress 自定义压缩算法 /// public byte[] UnCompressMessage { get; set; } diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103.cs index db7b853..891278f 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103.cs @@ -1,4 +1,4 @@ -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0001.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0001.cs index 50e0cde..619d63f 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0001.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0001.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0002.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0002.cs index c9b4833..eb77fc5 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0002.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0002.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0003.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0003.cs index 566b8b9..87b5bc4 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0003.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0003.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0004.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0004.cs index cb72418..9e4df08 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0004.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0004.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0005.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0005.cs index 1b7d16b..337aae6 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0005.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0005.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0006.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0006.cs index 1e67966..d2657e8 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0006.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0006.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0007.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0007.cs index 2bb2d43..28afe34 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0007.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0007.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0010.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0010.cs index c58f89a..24cdb6a 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0010.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0010.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0011.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0011.cs index 8f8a2dc..58e99b0 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0011.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0011.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0012.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0012.cs index 5123d6b..8dcb9b2 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0012.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0012.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0013.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0013.cs index 828e6c3..7f1659b 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0013.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0013.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0014.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0014.cs index 5e967f0..3f8995c 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0014.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0014.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0015.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0015.cs index c1be654..406d3d9 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0015.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0015.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0016.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0016.cs index 6544871..7180873 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0016.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0016.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0017.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0017.cs index 4c73221..eb4e48c 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0017.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0017.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0018.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0018.cs index 23ddcb5..14994e8 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0018.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0018.cs @@ -1,4 +1,4 @@ -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0019.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0019.cs index 64ec2c6..bd4cd73 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0019.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0019.cs @@ -1,4 +1,4 @@ -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x001A.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x001A.cs index 9aa7192..57d11b4 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x001A.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x001A.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x001B.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x001B.cs index ee01f75..7d236da 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x001B.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x001B.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x001C.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x001C.cs index acf13d3..6620a24 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x001C.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x001C.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x001D.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x001D.cs index 6b7b62a..dfebc6c 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x001D.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x001D.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0020.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0020.cs index 2c0acba..04ca6ce 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0020.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0020.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0021.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0021.cs index d9fe8b4..b35837e 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0021.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0021.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0022.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0022.cs index c052529..ec5e0eb 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0022.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0022.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0023.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0023.cs index f7cf949..ab178b0 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0023.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0023.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0024.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0024.cs index 8a03975..25bedfd 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0024.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0024.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0025.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0025.cs index 6a8b920..bffbb1a 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0025.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0025.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0026.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0026.cs index 7fc8e97..08ce8d3 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0026.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0026.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0027.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0027.cs index d8c73d7..a1148a8 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0027.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0027.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0028.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0028.cs index e26656f..565aceb 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0028.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0028.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0029.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0029.cs index 87dcc78..15c290b 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0029.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0029.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x002C.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x002C.cs index f888335..ebad832 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x002C.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x002C.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x002D.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x002D.cs index 9fdf37a..bb44f92 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x002D.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x002D.cs @@ -1,4 +1,4 @@ -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x002E.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x002E.cs index c4aa2ac..4325467 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x002E.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x002E.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x002F.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x002F.cs index 60d937f..0484188 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x002F.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x002F.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0030.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0030.cs index 791052b..790c9fe 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0030.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0030.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; @@ -8,7 +8,7 @@ using JT808.Protocol.MessagePack; namespace JT808.Protocol.MessageBody { /// - /// 拐点补传角度,<180 + /// 拐点补传角度,小于180 /// public class JT808_0x8103_0x0030 : JT808_0x8103_BodyBase, IJT808MessagePackFormatter, IJT808Analyze { @@ -18,7 +18,7 @@ namespace JT808.Protocol.MessageBody /// public override byte ParamLength { get; set; } = 4; /// - /// 拐点补传角度,<180 + /// 拐点补传角度,小于180 /// public uint ParamValue { get; set; } diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0031.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0031.cs index 40c31cd..c4f8ed0 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0031.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0031.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0032.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0032.cs index cdcd144..4003513 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0032.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0032.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0040.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0040.cs index 6629505..a57a7ff 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0040.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0040.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0041.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0041.cs index 1a4874a..ea82ce5 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0041.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0041.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0042.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0042.cs index f50aa49..cd82f19 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0042.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0042.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0043.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0043.cs index a9adbd0..dc54b09 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0043.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0043.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0044.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0044.cs index 55b56b3..77a1d40 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0044.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0044.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0045.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0045.cs index 0a194cc..613a3fc 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0045.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0045.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0046.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0046.cs index 128eac2..a9c931a 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0046.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0046.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0047.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0047.cs index 423dc4e..d87b81f 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0047.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0047.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0048.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0048.cs index 4634fd1..3f4968e 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0048.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0048.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0049.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0049.cs index fa9e84e..915bf74 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0049.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0049.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0050.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0050.cs index be33859..7f5a20f 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0050.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0050.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0051.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0051.cs index 765a882..24e1864 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0051.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0051.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0052.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0052.cs index c1e1a54..6e7a18c 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0052.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0052.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0053.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0053.cs index 5f0aca1..0f37e77 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0053.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0053.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0054.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0054.cs index 79af57c..d841843 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0054.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0054.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0055.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0055.cs index 92a0bdf..3caa430 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0055.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0055.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0056.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0056.cs index 6cee5ab..e18117a 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0056.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0056.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0057.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0057.cs index 0637518..75cb623 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0057.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0057.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0058.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0058.cs index f4dad2b..38627fa 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0058.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0058.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0059.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0059.cs index 4584ea4..914bd92 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0059.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0059.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x005A.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x005A.cs index 259ad46..12b03d0 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x005A.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x005A.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x005B.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x005B.cs index ff563bd..20e050a 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x005B.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x005B.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x005C.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x005C.cs index 4b61f11..d407452 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x005C.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x005C.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x005D.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x005D.cs index 521b43a..97dcba2 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x005D.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x005D.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x005E.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x005E.cs index a3e6f0f..f6bfc95 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x005E.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x005E.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0064.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0064.cs index e55fbfa..dbcaeef 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0064.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0064.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0065.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0065.cs index ec978da..c6e5f65 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0065.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0065.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0070.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0070.cs index 26aacee..e56bcd2 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0070.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0070.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0071.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0071.cs index 602d975..569e549 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0071.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0071.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0072.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0072.cs index 73349d8..27f3ae3 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0072.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0072.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0073.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0073.cs index 0eacbc6..b266b75 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0073.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0073.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0074.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0074.cs index 63cad28..c165f2b 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0074.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0074.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0080.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0080.cs index 3e51214..82a77d3 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0080.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0080.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0081.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0081.cs index 89bda97..1a7f94e 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0081.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0081.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0082.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0082.cs index 08920a3..32811d2 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0082.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0082.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0083.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0083.cs index 2e4c6c7..35256a6 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0083.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0083.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0084.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0084.cs index 0835b6d..5d0310d 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0084.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0084.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0090.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0090.cs index 48b5c5e..09c4162 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0090.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0090.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0091.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0091.cs index 7c66de1..4e6fe84 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0091.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0091.cs @@ -1,6 +1,6 @@ using System; using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0092.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0092.cs index eb8500e..9f1d6d5 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0092.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0092.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0093.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0093.cs index 483230d..8ff35f5 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0093.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0093.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0094.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0094.cs index a4a36fe..6b594f6 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0094.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0094.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0095.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0095.cs index 216e0e3..32242ee 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0095.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0095.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0100.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0100.cs index 6815f2b..e428e75 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0100.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0100.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0101.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0101.cs index f5dbf11..7ddbca7 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0101.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0101.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0102.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0102.cs index 3b92840..49f090d 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0102.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0102.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0103.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0103.cs index 5c5c2ce..1aec752 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0103.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0103.cs @@ -1,5 +1,5 @@ using System.Text.Json; -using JT808.Protocol.Attributes; + using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; using JT808.Protocol.Interfaces; diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0110.cs b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0110.cs index 8b8e9a4..04fa4d5 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0110.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8103_0x0110.cs @@ -1,7 +1,7 @@ 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; @@ -85,9 +85,9 @@ namespace JT808.Protocol.MessageBody public void Serialize(ref JT808MessagePackWriter writer, JT808_0x8103_0x0110 value, IJT808Config config) { writer.WriteUInt32(value.ParamId); - writer.WriteByte((byte)value.ParamLength); + writer.WriteByte(value.ParamLength); writer.WriteUInt32(value.CollectTimeInterval); - var temp = (uint)((value.ChannelNo << 31) | (value.FrameType << 30) | (value.CollectWay )<< 29 | (value.BusId& 0x01FFFFFF)); + var temp = (uint)(value.ChannelNo << 31 | value.FrameType << 30 | value.CollectWay << 29 | (int)(value.BusId& 0x01FFFFFF)); writer.WriteUInt32(temp); } } diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8300.cs b/src/JT808.Protocol/MessageBody/JT808_0x8300.cs index 1e46940..e1a9ed4 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8300.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8300.cs @@ -1,4 +1,4 @@ -using JT808.Protocol.Attributes; + using JT808.Protocol.Enums; using JT808.Protocol.Extensions; using JT808.Protocol.Formatters; diff --git a/src/JT808.Protocol/MessagePack/JT808MessagePackReader.cs b/src/JT808.Protocol/MessagePack/JT808MessagePackReader.cs index ed5c9a3..4aec354 100644 --- a/src/JT808.Protocol/MessagePack/JT808MessagePackReader.cs +++ b/src/JT808.Protocol/MessagePack/JT808MessagePackReader.cs @@ -13,11 +13,26 @@ using System.Text; namespace JT808.Protocol.MessagePack { + /// + /// JT808消息读取器 + /// public ref struct JT808MessagePackReader { + /// + /// 读取buffer + /// public ReadOnlySpan Reader { get; private set; } + /// + /// 原数据 + /// public ReadOnlySpan SrcBuffer { get; } + /// + /// 读取到的数量 + /// public int ReaderCount { get; private set; } + /// + /// JT808版本号 + /// public JT808Version Version { get; set; } private byte _calculateCheckXorCode; private byte _realCheckXorCode; @@ -34,7 +49,8 @@ namespace JT808.Protocol.MessagePack /// /// 解码(转义还原),计算校验和 /// - /// + /// + /// 默认JT808Version.JTT2013 public JT808MessagePackReader(ReadOnlySpan srcBuffer, JT808Version version = JT808Version.JTT2013) { SrcBuffer = srcBuffer; @@ -124,77 +140,160 @@ namespace JT808.Protocol.MessagePack Reader = allocateBuffer.Slice(0, offset); _decoded = true; } + /// + /// 计算的校验码 + /// public byte CalculateCheckXorCode => _calculateCheckXorCode; + /// + /// 实际获取的校验码 + /// public byte RealCheckXorCode => _realCheckXorCode; + /// + /// 验证码是否正确 + /// public bool CheckXorCodeVali => _checkXorCodeVali; + /// + /// 读取标识头 + /// + /// public byte ReadStart()=> ReadByte(); + /// + /// 读取尾标识 + /// + /// public byte ReadEnd()=> ReadByte(); + /// + /// 读取有符号位的两字节数值类型 + /// + /// public short ReadInt16() { return BinaryPrimitives.ReadInt16BigEndian(GetReadOnlySpan(2)); } + /// + /// 读取无符号位的两字节数值类型 + /// + /// public ushort ReadUInt16() { return BinaryPrimitives.ReadUInt16BigEndian(GetReadOnlySpan(2)); } + /// + /// 读取无符号位的四字节数值类型 + /// + /// public uint ReadUInt32() { return BinaryPrimitives.ReadUInt32BigEndian(GetReadOnlySpan(4)); } + /// + /// 读取有符号位的四字节数值类型 + /// + /// public int ReadInt32() { return BinaryPrimitives.ReadInt32BigEndian(GetReadOnlySpan(4)); } + /// + /// 读取无符号位的八字节数值类型 + /// + /// public ulong ReadUInt64() { return BinaryPrimitives.ReadUInt64BigEndian(GetReadOnlySpan(8)); } + /// + /// 读取有符号位的八字节数值类型 + /// + /// public long ReadInt64() { return BinaryPrimitives.ReadInt64BigEndian(GetReadOnlySpan(8)); } + /// + /// 读取一个字节 + /// + /// public byte ReadByte() { return GetReadOnlySpan(1)[0]; } + /// + /// 读取一个字符 + /// + /// public char ReadChar() { return (char)GetReadOnlySpan(1)[0]; } + /// + /// 虚拟读取一个字节,不计入内存偏移量 + /// + /// public byte ReadVirtualByte() { return GetVirtualReadOnlySpan(1)[0]; } + /// + /// 虚拟读取一个数组,不计入内存偏移量 + /// + /// + /// public ReadOnlySpan ReadVirtualArray(int count) { return GetVirtualReadOnlySpan(count); } + /// + /// 虚拟读取无符号位的两字节数值类型,不计入内存偏移量 + /// + /// public ushort ReadVirtualUInt16() { return BinaryPrimitives.ReadUInt16BigEndian(GetVirtualReadOnlySpan(2)); } + /// + /// 虚拟读取有符号位的两字节数值类型,不计入内存偏移量 + /// + /// public short ReadVirtualInt16() { return BinaryPrimitives.ReadInt16BigEndian(GetVirtualReadOnlySpan(2)); } + /// + /// 虚拟读取无符号位的四字节数值类型,不计入内存偏移量 + /// + /// public uint ReadVirtualUInt32() { return BinaryPrimitives.ReadUInt32BigEndian(GetVirtualReadOnlySpan(4)); } + /// + /// 虚拟读取有符号位的四字节数值类型,不计入内存偏移量 + /// + /// public int ReadVirtualInt32() { return BinaryPrimitives.ReadInt32BigEndian(GetVirtualReadOnlySpan(4)); } + /// + /// 虚拟读取无符号位的八字节数值类型,不计入内存偏移量 + /// + /// public ulong ReadVirtualUInt64() { return BinaryPrimitives.ReadUInt64BigEndian(GetVirtualReadOnlySpan(8)); } + /// + /// 虚拟读取有符号位的八字节数值类型,不计入内存偏移量 + /// + /// public long ReadVirtualInt64() { return BinaryPrimitives.ReadInt64BigEndian(GetVirtualReadOnlySpan(8)); } /// - /// 数字编码 大端模式、高位在前 + /// 读取数字编码 + /// 大端模式、高位在前 /// /// public string ReadBigNumber(int len) @@ -208,30 +307,60 @@ namespace JT808.Protocol.MessagePack } return result.ToString(); } + /// + /// 读取固定大小的内存块 + /// + /// + /// public ReadOnlySpan ReadArray(int len) { return GetReadOnlySpan(len).Slice(0, len); } + /// + /// 读取固定大小的内存块 + /// + /// + /// + /// public ReadOnlySpan ReadArray(int start,int end) { return Reader.Slice(start,end); } + /// + /// 读取GBK字符串编码 + /// + /// + /// public string ReadString(int len) { var readOnlySpan = GetReadOnlySpan(len); string value = JT808Constants.Encoding.GetString(readOnlySpan.Slice(0, len).ToArray()); return value.Trim('\0'); } + /// + /// 读取ASCII编码 + /// + /// + /// public string ReadASCII(int len) { var readOnlySpan = GetReadOnlySpan(len); string value = Encoding.ASCII.GetString(readOnlySpan.Slice(0, len).ToArray()); return value; } + /// + /// 读取剩余数据体内容为字符串模式 + /// + /// public string ReadRemainStringContent() { return ReadString(ReadCurrentRemainContentLength()); } + /// + /// 读取16进制编码 + /// + /// + /// public string ReadHex(int len) { var readOnlySpan = GetReadOnlySpan(len); @@ -239,9 +368,9 @@ namespace JT808.Protocol.MessagePack return hex; } /// - /// yyMMddHHmmss + /// 读取六字节日期,yyMMddHHmmss /// - /// >D2: 10 X2:16 + /// >D2: 10 X2:16 public DateTime ReadDateTime6(string format = "X2") { DateTime d; @@ -263,9 +392,9 @@ namespace JT808.Protocol.MessagePack return d; } /// - /// yyMMddHHmmss + /// 读取可空类型的六字节日期,yyMMddHHmmss /// - /// >D2: 10 X2:16 + /// >D2: 10 X2:16 public DateTime? ReadDateTimeNull6(string format = "X2") { DateTime? d; @@ -288,8 +417,7 @@ namespace JT808.Protocol.MessagePack return d; } /// - /// HH-mm-ss-msms - /// HH-mm-ss-fff + /// 读取五字节日期,HH-mm-ss-msms|HH-mm-ss-fff /// /// D2: 10 X2:16 public DateTime ReadDateTime5(string format = "X2") @@ -317,8 +445,7 @@ namespace JT808.Protocol.MessagePack return d; } /// - /// HH-mm-ss-msms - /// HH-mm-ss-fff + /// 读取可空类型的五字节日期,HH-mm-ss-msms|HH-mm-ss-fff /// /// D2: 10 X2:16 public DateTime? ReadDateTimeNull5(string format = "X2") @@ -351,7 +478,7 @@ namespace JT808.Protocol.MessagePack return d; } /// - /// YYYYMMDD + /// 读取四字节日期,YYYYMMDD /// /// D2: 10 X2:16 public DateTime ReadDateTime4(string format = "X2") @@ -375,7 +502,7 @@ namespace JT808.Protocol.MessagePack return d; } /// - /// YYYYMMDD + /// 读取可空类型的四字节日期,YYYYMMDD /// /// D2: 10 X2:16 public DateTime? ReadDateTimeNull4(string format = "X2") @@ -400,7 +527,7 @@ namespace JT808.Protocol.MessagePack return d; } /// - /// YYMMDD + /// 读取三字节日期,YYMMDD /// /// D2: 10 X2:16 public DateTime ReadDateTime3(string format = "X2") @@ -421,7 +548,7 @@ namespace JT808.Protocol.MessagePack return d; } /// - /// YYMMDD + /// 读取可空类型的三字节日期,YYMMDD /// /// D2: 10 X2:16 public DateTime? ReadDateTimeNull3(string format = "X2") @@ -444,6 +571,10 @@ namespace JT808.Protocol.MessagePack } return d; } + /// + /// 读取UTC时间类型 + /// + /// public DateTime ReadUTCDateTime() { DateTime d; @@ -464,6 +595,12 @@ namespace JT808.Protocol.MessagePack } return d; } + /// + /// 读取BCD编码 + /// + /// + /// + /// public string ReadBCD(int len , bool trim = true) { int count = len / 2; @@ -482,15 +619,30 @@ namespace JT808.Protocol.MessagePack return bcdSb.ToString(); } } + /// + /// 读取数量大小的内存块 + /// + /// + /// private ReadOnlySpan GetReadOnlySpan(int count) { ReaderCount += count; return Reader.Slice(ReaderCount - count); } + /// + /// 虚拟读取数量大小的内存块,不计入内存偏移量 + /// + /// + /// public ReadOnlySpan GetVirtualReadOnlySpan(int count) { return Reader.Slice(ReaderCount, count); } + /// + /// 读取数据体内存块 + /// + /// + /// public ReadOnlySpan ReadContent(int count=0) { if (_decoded) @@ -508,6 +660,10 @@ namespace JT808.Protocol.MessagePack return Reader.Slice(ReaderCount); } } + /// + /// 读取一整串字符串到\0结束 + /// + /// public string ReadStringEndChar0() { var remainSpans = Reader.Slice(ReaderCount, ReadCurrentRemainContentLength()); @@ -515,12 +671,20 @@ namespace JT808.Protocol.MessagePack string value = JT808Constants.Encoding.GetString(ReadArray(length).ToArray()); return value.Trim('\0'); } + /// + /// 虚拟读取一整串字符串到\0结束,不计入内存偏移量 + /// + /// public string ReadVirtualStringEndChar0() { var remainSpans = Reader.Slice(ReaderCount); string value = JT808Constants.Encoding.GetString(GetVirtualReadOnlySpan(remainSpans.IndexOf((byte)'\0') + 1).ToArray()); return value.Trim('\0'); } + /// + /// 读取剩余数据体内容长度 + /// + /// public int ReadCurrentRemainContentLength() { if (_decoded) @@ -533,10 +697,19 @@ namespace JT808.Protocol.MessagePack return Reader.Length - ReaderCount; } } + /// + /// 跳过多少字节 + /// + /// public void Skip(int count=1) { ReaderCount += count; } + /// + /// 读取JT19056校验码 + /// + /// + /// public (byte CalculateXorCheckCode, byte RealXorCheckCode) ReadCarDVRCheckCode(int currentPosition) { var reader = Reader.Slice(currentPosition, ReaderCount - currentPosition); diff --git a/src/JT808.Protocol/MessagePack/JT808MessagePackWriter.cs b/src/JT808.Protocol/MessagePack/JT808MessagePackWriter.cs index dbaa9dc..dfb7d81 100644 --- a/src/JT808.Protocol/MessagePack/JT808MessagePackWriter.cs +++ b/src/JT808.Protocol/MessagePack/JT808MessagePackWriter.cs @@ -7,36 +7,70 @@ using System.Text; namespace JT808.Protocol.MessagePack { + /// + /// JT808消息写入器 + /// public ref struct JT808MessagePackWriter { private JT808BufferWriter writer; + /// + /// JT808版本号 + /// public JT808Version Version { get; set; } + /// + /// + /// + /// 内存块 + /// 版本号:默认2013 public JT808MessagePackWriter(Span buffer, JT808Version version= JT808Version.JTT2013) { this.writer = new JT808BufferWriter(buffer); Version = version; } + /// + /// 编码后的数组 + /// + /// public byte[] FlushAndGetEncodingArray() { return writer.Written.Slice(writer.BeforeCodingWrittenPosition).ToArray(); } - + /// + /// 编码后的内存块 + /// + /// public ReadOnlySpan FlushAndGetEncodingReadOnlySpan() { return writer.Written.Slice(writer.BeforeCodingWrittenPosition); } - + /// + /// 获取实际写入的内存块 + /// + /// public ReadOnlySpan FlushAndGetRealReadOnlySpan() { return writer.Written; } - + /// + /// 获取实际写入的数组 + /// + /// public byte[] FlushAndGetRealArray() { return writer.Written.ToArray(); } + /// + /// 写入头标识 + /// public void WriteStart()=> WriteByte(JT808Package.BeginFlag); + /// + /// 写入尾标识 + /// public void WriteEnd() => WriteByte(JT808Package.EndFlag); + /// + /// 写入空标识,0x00 + /// + /// public void Nil(out int position) { position = writer.WrittenCount; @@ -44,6 +78,11 @@ namespace JT808.Protocol.MessagePack span[0] = 0x00; writer.Advance(1); } + /// + /// 跳过多少字节数 + /// + /// + /// 跳过前的内存位置 public void Skip(int count, out int position) { position = writer.WrittenCount; @@ -54,6 +93,12 @@ namespace JT808.Protocol.MessagePack } writer.Advance(count); } + /// + /// 跳过多少字节数 + /// + /// + /// 跳过前的内存位置 + /// 用什么数值填充跳过的内存块 public void Skip(int count,out int position, byte fullValue = 0x00) { position = writer.WrittenCount; @@ -64,70 +109,169 @@ namespace JT808.Protocol.MessagePack } writer.Advance(count); } + /// + /// 写入一个字符 + /// + /// public void WriteChar(char value) { var span = writer.Free; span[0] = (byte)value; writer.Advance(1); } + /// + /// 写入一个字节 + /// + /// public void WriteByte(byte value) { var span = writer.Free; span[0] = value; writer.Advance(1); } + /// + /// 写入两个字节的有符号数值类型 + /// + /// public void WriteInt16(short value) { BinaryPrimitives.WriteInt16BigEndian(writer.Free, value); writer.Advance(2); } + /// + /// 写入两个字节的无符号数值类型 + /// + /// public void WriteUInt16(ushort value) { BinaryPrimitives.WriteUInt16BigEndian(writer.Free, value); writer.Advance(2); } + /// + /// 写入四个字节的有符号数值类型 + /// + /// public void WriteInt32(int value) { BinaryPrimitives.WriteInt32BigEndian(writer.Free, value); writer.Advance(4); } + /// + /// 写入四个字节的无符号数值类型 + /// + /// + public void WriteUInt32(uint value) + { + BinaryPrimitives.WriteUInt32BigEndian(writer.Free, value); + writer.Advance(4); + } + /// + /// 写入八个字节的无符号数值类型 + /// + /// public void WriteUInt64(ulong value) { BinaryPrimitives.WriteUInt64BigEndian(writer.Free, value); writer.Advance(8); } - public void WriteUInt32(uint value) + /// + /// 写入八个字节的有符号数值类型 + /// + /// + public void WriteInt64(long value) { - BinaryPrimitives.WriteUInt32BigEndian(writer.Free, value); - writer.Advance(4); + BinaryPrimitives.WriteInt64BigEndian(writer.Free, value); + writer.Advance(8); } + /// + /// 写入字符串 + /// + /// public void WriteString(string value) { byte[] codeBytes = JT808Constants.Encoding.GetBytes(value); codeBytes.CopyTo(writer.Free); writer.Advance(codeBytes.Length); } + /// + /// 写入数组 + /// + /// public void WriteArray(ReadOnlySpan src) { src.CopyTo(writer.Free); writer.Advance(src.Length); } + /// + /// 根据内存定位,反写两个字节的无符号数值类型 + /// + /// + /// public void WriteUInt16Return(ushort value, int position) { BinaryPrimitives.WriteUInt16BigEndian(writer.Written.Slice(position, 2), value); } + /// + /// 根据内存定位,反写两个字节的有符号数值类型 + /// + /// + /// + public void WriteInt16Return(short value, int position) + { + BinaryPrimitives.WriteInt16BigEndian(writer.Written.Slice(position, 2), value); + } + /// + /// 根据内存定位,反写四个字节的有符号数值类型 + /// + /// + /// public void WriteInt32Return(int value, int position) { BinaryPrimitives.WriteInt32BigEndian(writer.Written.Slice(position, 4), value); } + /// + /// 根据内存定位,反写四个字节的无符号数值类型 + /// + /// + /// public void WriteUInt32Return(uint value, int position) { BinaryPrimitives.WriteUInt32BigEndian(writer.Written.Slice(position, 4), value); } + + /// + /// 根据内存定位,反写八个字节的有符号数值类型 + /// + /// + /// + public void WriteInt64Return(long value, int position) + { + BinaryPrimitives.WriteInt64BigEndian(writer.Written.Slice(position, 8), value); + } + /// + /// 根据内存定位,反写八个字节的无符号数值类型 + /// + /// + /// + public void WriteUInt64Return(ulong value, int position) + { + BinaryPrimitives.WriteUInt64BigEndian(writer.Written.Slice(position, 8), value); + } + /// + /// 根据内存定位,反写1个字节的数值类型 + /// + /// + /// public void WriteByteReturn(byte value, int position) { writer.Written[position] = value; } + /// + /// 根据内存定位,反写BCD编码数据 + /// + /// + /// + /// public void WriteBCDReturn(string value,int len, int position) { string bcdText = value ?? ""; @@ -146,17 +290,27 @@ namespace JT808.Protocol.MessagePack startIndex += 2; } } + /// + /// 根据内存定位,反写一串字符串数据 + /// + /// + /// public void WriteStringReturn(string value, int position) { Span codeBytes = JT808Constants.Encoding.GetBytes(value); codeBytes.CopyTo(writer.Written.Slice(position)); } + /// + /// 根据内存定位,反写一组数组数据 + /// + /// + /// public void WriteArrayReturn(ReadOnlySpan src, int position) { src.CopyTo(writer.Written.Slice(position)); } /// - /// yyMMddHHmmss + /// 写入六个字节的日期类型,yyMMddHHmmss /// /// /// @@ -172,7 +326,7 @@ namespace JT808.Protocol.MessagePack writer.Advance(6); } /// - /// yyMMddHHmmss + /// 写入六个字节的可空日期类型,yyMMddHHmmss /// /// /// @@ -200,8 +354,7 @@ namespace JT808.Protocol.MessagePack writer.Advance(6); } /// - /// HH-mm-ss-msms - /// HH-mm-ss-fff + /// 写入五个字节的日期类型,HH-mm-ss-msms或HH-mm-ss-fff /// /// /// @@ -217,8 +370,7 @@ namespace JT808.Protocol.MessagePack writer.Advance(5); } /// - /// HH-mm-ss-msms - /// HH-mm-ss-fff + /// 写入五个字节的可空日期类型,HH-mm-ss-msms或HH-mm-ss-fff /// /// /// @@ -244,6 +396,10 @@ namespace JT808.Protocol.MessagePack } writer.Advance(5); } + /// + /// 写入UTC日期类型 + /// + /// public void WriteUTCDateTime(DateTime value) { ulong totalSecends = (ulong)(value.AddHours(-8) - JT808Constants.UTCBaseTime).TotalSeconds; @@ -257,9 +413,7 @@ namespace JT808.Protocol.MessagePack writer.Advance(8); } /// - /// YYYYMMDD - /// BCD[4] - /// 数据形如:20200101 + /// 写入四个字节的日期类型,YYYYMMDD BCD[4] 数据形如:20200101 /// /// /// @@ -275,9 +429,7 @@ namespace JT808.Protocol.MessagePack } /// - /// YYYYMMDD - /// BCD[4] - /// 数据形如:20200101 + /// 写入四个字节的可空日期类型,YYYYMMDD BCD[4]数据形如:20200101 /// /// /// @@ -303,9 +455,7 @@ namespace JT808.Protocol.MessagePack } /// - /// YYMMDD - /// BCD[4] - /// 数据形如:20200101 + /// 写入三个字节的日期类型,YYMMDD 数据形如:20200101 /// /// /// @@ -319,9 +469,7 @@ namespace JT808.Protocol.MessagePack } /// - /// YYMMDD - /// BCD[4] - /// 数据形如:20200101 + /// 写入三个字节的可空日期类型,YYMMDD 数据形如:20200101 /// /// /// @@ -342,6 +490,11 @@ namespace JT808.Protocol.MessagePack } writer.Advance(3); } + /// + /// 将指定内存块进行或运算并写入一个字节 + /// + /// + /// public void WriteXor(int start, int end) { if (start > end) @@ -358,6 +511,10 @@ namespace JT808.Protocol.MessagePack span[0] = result; writer.Advance(1); } + /// + /// 将指定内存块进行或运算并写入一个字节 + /// + /// public void WriteXor(int start) { if(writer.WrittenCount< start) @@ -374,6 +531,9 @@ namespace JT808.Protocol.MessagePack span[0] = result; writer.Advance(1); } + /// + /// 将内存块进行或运算并写入一个字节 + /// public void WriteXor() { if (writer.WrittenCount < 1) @@ -391,6 +551,11 @@ namespace JT808.Protocol.MessagePack span[0] = result; writer.Advance(1); } + /// + /// 写入BCD编码数据 + /// + /// + /// public void WriteBCD(string value, int len) { string bcdText = value ?? ""; @@ -411,6 +576,11 @@ namespace JT808.Protocol.MessagePack } writer.Advance(byteIndex); } + /// + /// 写入Hex编码数据 + /// + /// + /// public void WriteHex(string value, int len) { value = value ?? ""; @@ -440,6 +610,10 @@ namespace JT808.Protocol.MessagePack } writer.Advance(byteIndex); } + /// + /// 写入ASCII编码数据 + /// + /// public void WriteASCII(string value) { var spanFree = writer.Free; @@ -447,6 +621,9 @@ namespace JT808.Protocol.MessagePack bytes.CopyTo(spanFree); writer.Advance(bytes.Length); } + /// + /// 将内存块进行808转义处理 + /// public void WriteFullEncode() { var tmpSpan = writer.Written; @@ -472,6 +649,9 @@ namespace JT808.Protocol.MessagePack } writer.Advance(tempOffset); } + /// + /// 将内存块进行808转义处理 + /// internal void WriteEncode() { var tmpSpan = writer.Written; @@ -500,7 +680,7 @@ namespace JT808.Protocol.MessagePack writer.Advance(tempOffset); } /// - /// 数字编码 大端模式、高位在前 + /// 写入数值类型,数字编码 大端模式、高位在前 /// /// /// @@ -515,17 +695,27 @@ namespace JT808.Protocol.MessagePack } writer.Advance(len); } - + /// + /// 将字符串写入并写入一个\0作为结尾 + /// + /// public void WriteStringEndChar0(string value) { WriteString(value); WriteChar('\0'); } - + /// + /// 获取当前内存块写入的位置 + /// + /// public int GetCurrentPosition() { return writer.WrittenCount; } + /// + /// 写入JT19056校验码 + /// + /// public void WriteCarDVRCheckCode(int currentPosition) { var carDVRPackage = writer.Written.Slice(currentPosition, writer.WrittenCount- currentPosition); diff --git a/src/JT808.Protocol/Metadata/JT808SplitPackageProperty.cs b/src/JT808.Protocol/Metadata/JT808SplitPackageProperty.cs index 959953b..858fbd5 100644 --- a/src/JT808.Protocol/Metadata/JT808SplitPackageProperty.cs +++ b/src/JT808.Protocol/Metadata/JT808SplitPackageProperty.cs @@ -5,10 +5,17 @@ /// public struct JT808SplitPackageProperty { + /// + /// 当前页 + /// public int PackgeIndex { get; set; } - + /// + /// 分页总数 + /// public int PackgeCount { get; set; } - + /// + /// 分包数据 + /// public byte[] Data { get; set; } } }