From a97ec6cf1611e6a621b29820fb2243e0c231e81a Mon Sep 17 00:00:00 2001 From: waterliu99 Date: Thu, 1 Jul 2021 10:17:45 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=B8=80=E4=B8=8B8300json?= =?UTF-8?q?=E8=A7=A3=E6=9E=90=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MessageBody/JT808_0x0200Test.cs | 4 ++-- .../MessageBody/JT808_0x8300.cs | 22 ++++++++++++++----- 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/src/JT808.Protocol.Test/MessageBody/JT808_0x0200Test.cs b/src/JT808.Protocol.Test/MessageBody/JT808_0x0200Test.cs index 778de49..3261cdb 100644 --- a/src/JT808.Protocol.Test/MessageBody/JT808_0x0200Test.cs +++ b/src/JT808.Protocol.Test/MessageBody/JT808_0x0200Test.cs @@ -312,9 +312,9 @@ namespace JT808.Protocol.Test.MessageBody [Fact] public void Test5_3() { - byte[] bytes = "7e0100402d01003000067906ff000000003730393639455632350000000000000000000000000000000030303030363739090000000000000000cf7e".ToHexBytes(); + byte[] bytes = "7E0102400C01003000068109024A3130303330303030363831857E".ToHexBytes(); var jT808Package = JT808Serializer.Deserialize(bytes,JT808Version.JTT2013Force); - jT808Package.Header.ProtocolVersion = 0;//修改成 2013协议标识 + jT808Package.Header.MessageBodyProperty.VersionFlag = false;//修改成 2013协议标识 var newBytes = JT808Serializer.Serialize(jT808Package);//重新序列化 var jt808PackageNew = JT808Serializer.Deserialize(newBytes);//验证是否修改标识符成功 } diff --git a/src/JT808.Protocol/MessageBody/JT808_0x8300.cs b/src/JT808.Protocol/MessageBody/JT808_0x8300.cs index b8b6072..949bad1 100644 --- a/src/JT808.Protocol/MessageBody/JT808_0x8300.cs +++ b/src/JT808.Protocol/MessageBody/JT808_0x8300.cs @@ -90,25 +90,35 @@ namespace JT808.Protocol.MessageBody writer.WriteString($"[bit4]{textFlagBits[4]}", "-"); writer.WriteString($"[bit3]{textFlagBits[3]}", "终端TTS播读"); writer.WriteString($"[bit2]{textFlagBits[2]}", "终端显示器显示"); - var bit0And1= textFlagBits.Slice(0, 2).ToString(); + var bit0And1= textFlagBits.Slice(0, 2).ToString().Reverse(); switch (bit0And1) { case "01": - writer.WriteString($"[bit0]{textFlagBits[0]}", "服务"); + writer.WriteString($"[bit0~1]{textFlagBits[0]}", "服务"); break; case "10": - writer.WriteString($"[bit0]{textFlagBits[0]}", "紧急"); + writer.WriteString($"[bit0~1]{textFlagBits[0]}", "紧急"); break; case "11": - writer.WriteString($"[bit0]{textFlagBits[0]}", "通知"); + writer.WriteString($"[bit0~1]{textFlagBits[0]}", "通知"); break; case "00": - writer.WriteString($"[bit0]{textFlagBits[0]}", "保留"); + writer.WriteString($"[bit0~1]{textFlagBits[0]}", "保留"); break; } writer.WriteEndObject(); value.TextType = reader.ReadByte(); - writer.WriteNumber($"[{ value.TextType.ReadNumber()}]文本类型-{(value.TextType==1? "通知":"服务")}", value.TextType); + if (value.TextType == 1) + { + writer.WriteNumber($"[{ value.TextType.ReadNumber()}]文本类型-通知", value.TextType); + } + else if (value.TextType == 2) + { + writer.WriteNumber($"[{ value.TextType.ReadNumber()}]文本类型-服务", value.TextType); + } + else { + writer.WriteNumber($"[{ value.TextType.ReadNumber()}]文本类型-未设置}", value.TextType); + } } else {