@@ -108,11 +108,11 @@ | |||
<PrivateAssets>all</PrivateAssets> | |||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> | |||
</PackageReference> | |||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.4.0" /> | |||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.5.0" /> | |||
<PackageReference Include="NETStandard.Library" Version="2.0.3" /> | |||
<PackageReference Include="Newtonsoft.Json" Version="12.0.3" /> | |||
<PackageReference Include="System.Drawing.Common" Version="4.7.0" /> | |||
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="3.1.1" /> | |||
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="3.1.2" /> | |||
<PackageReference Include="System.Runtime.InteropServices.RuntimeInformation" Version="4.3.0" /> | |||
<PackageReference Include="xunit" Version="2.4.1" /> | |||
<PackageReference Include="xunit.runner.console" Version="2.4.1"> | |||
@@ -71,8 +71,8 @@ | |||
</PackageReference> | |||
<PackageReference Include="Microsoft.CSharp" Version="4.7.0" /> | |||
<PackageReference Include="System.Text.Encoding.CodePages" Version="4.7.0" /> | |||
<PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="3.1.1" /> | |||
<PackageReference Include="System.Text.Json" Version="4.7.0" /> | |||
<PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="3.1.2" /> | |||
<PackageReference Include="System.Text.Json" Version="4.7.1" /> | |||
</ItemGroup> | |||
<ItemGroup> | |||
@@ -198,6 +198,11 @@ | |||
电话回拨类型 | |||
</summary> | |||
</member> | |||
<member name="T:JT808.Protocol.Enums.JT808CameraResolutionType"> | |||
<summary> | |||
摄像头分辨率 | |||
</summary> | |||
</member> | |||
<member name="T:JT808.Protocol.Enums.JT808DirectionType"> | |||
<summary> | |||
方向类型 | |||
@@ -6511,14 +6516,7 @@ | |||
<member name="P:JT808.Protocol.MessageBody.JT808_0x8801.Resolution"> | |||
<summary> | |||
分辨率 | |||
0x01:320*240; | |||
0x02:640*480; | |||
0x03:800*600; | |||
0x04:1024*768; | |||
0x05:176*144;[Qcif]; | |||
0x06:352*288;[Cif]; | |||
0x07:704*288;[HALF D1]; | |||
0x08:704*576;[D1]; | |||
<see cref="T:JT808.Protocol.Enums.JT808CameraResolutionType"/> | |||
</summary> | |||
</member> | |||
<member name="P:JT808.Protocol.MessageBody.JT808_0x8801.VideoQuality"> | |||
@@ -1,4 +1,5 @@ | |||
using JT808.Protocol.Extensions; | |||
using JT808.Protocol.Enums; | |||
using JT808.Protocol.Extensions; | |||
using JT808.Protocol.Formatters; | |||
using JT808.Protocol.Interfaces; | |||
using JT808.Protocol.MessagePack; | |||
@@ -69,10 +70,11 @@ namespace JT808.Protocol.MessageBody | |||
value.EventItemCoding = reader.ReadByte(); | |||
value.StartTime = reader.ReadDateTime6(); | |||
value.EndTime = reader.ReadDateTime6(); | |||
writer.WriteNumber($"[{ value.MultimediaType.ReadNumber()}]多媒体类型", value.MultimediaType); | |||
JT808MultimediaType multimediaType = (JT808MultimediaType)value.MultimediaType; | |||
JT808EventItemCoding eventItemCoding = (JT808EventItemCoding)value.EventItemCoding; | |||
writer.WriteNumber($"[{ value.MultimediaType.ReadNumber()}]多媒体类型-{multimediaType.ToString()}", value.MultimediaType); | |||
writer.WriteNumber($"[{ value.ChannelId.ReadNumber()}]通道ID", value.ChannelId); | |||
writer.WriteNumber($"[{ value.EventItemCoding.ReadNumber()}]事件项编码", value.EventItemCoding); | |||
writer.WriteNumber($"[{ value.EventItemCoding.ReadNumber()}]事件项编码-{eventItemCoding.ToString()}", value.EventItemCoding); | |||
writer.WriteString($"[{ value.StartTime.ToString("yyMMddHHmmss")}]起始时间", value.StartTime.ToString("yyyy-MM-dd HH:mm:ss")); | |||
writer.WriteString($"[{ value.EndTime.ToString("yyMMddHHmmss")}]结束时间", value.EndTime.ToString("yyyy-MM-dd HH:mm:ss")); | |||
} | |||
@@ -1,4 +1,5 @@ | |||
using JT808.Protocol.Extensions; | |||
using JT808.Protocol.Enums; | |||
using JT808.Protocol.Extensions; | |||
using JT808.Protocol.Formatters; | |||
using JT808.Protocol.Interfaces; | |||
using JT808.Protocol.MessagePack; | |||
@@ -71,20 +72,22 @@ namespace JT808.Protocol.MessageBody | |||
public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config) | |||
{ | |||
JT808_0x8803 jT808_0X8803 = new JT808_0x8803(); | |||
jT808_0X8803.MultimediaType = reader.ReadByte(); | |||
jT808_0X8803.ChannelId = reader.ReadByte(); | |||
jT808_0X8803.EventItemCoding = reader.ReadByte(); | |||
jT808_0X8803.StartTime = reader.ReadDateTime6(); | |||
jT808_0X8803.EndTime = reader.ReadDateTime6(); | |||
jT808_0X8803.MultimediaDeleted = reader.ReadByte(); | |||
writer.WriteNumber($"[{ jT808_0X8803.MultimediaType.ReadNumber()}]多媒体类型", jT808_0X8803.MultimediaType); | |||
writer.WriteNumber($"[{ jT808_0X8803.ChannelId.ReadNumber()}]通道ID", jT808_0X8803.ChannelId); | |||
writer.WriteNumber($"[{ jT808_0X8803.EventItemCoding.ReadNumber()}]事件项编码", jT808_0X8803.EventItemCoding); | |||
writer.WriteString($"[{ jT808_0X8803.StartTime.ToString("yyMMddHHmmss")}]起始时间", jT808_0X8803.StartTime.ToString("yyyy-MM-dd HH:mm:ss")); | |||
writer.WriteString($"[{ jT808_0X8803.EndTime.ToString("yyMMddHHmmss")}]结束时间", jT808_0X8803.EndTime.ToString("yyyy-MM-dd HH:mm:ss")); | |||
writer.WriteNumber($"[{ jT808_0X8803.MultimediaDeleted.ReadNumber()}]删除标志", jT808_0X8803.MultimediaDeleted); | |||
JT808_0x8803 value = new JT808_0x8803(); | |||
value.MultimediaType = reader.ReadByte(); | |||
value.ChannelId = reader.ReadByte(); | |||
value.EventItemCoding = reader.ReadByte(); | |||
value.StartTime = reader.ReadDateTime6(); | |||
value.EndTime = reader.ReadDateTime6(); | |||
value.MultimediaDeleted = reader.ReadByte(); | |||
JT808MultimediaType multimediaType = (JT808MultimediaType)value.MultimediaType; | |||
JT808EventItemCoding eventItemCoding = (JT808EventItemCoding)value.EventItemCoding; | |||
JT808MultimediaDeleted multimediaDeleted = (JT808MultimediaDeleted)value.MultimediaDeleted; | |||
writer.WriteNumber($"[{ value.MultimediaType.ReadNumber()}]多媒体类型-{multimediaType.ToString()}", value.MultimediaType); | |||
writer.WriteNumber($"[{ value.ChannelId.ReadNumber()}]通道ID", value.ChannelId); | |||
writer.WriteNumber($"[{ value.EventItemCoding.ReadNumber()}]事件项编码-{eventItemCoding.ToString()}", value.EventItemCoding); | |||
writer.WriteString($"[{ value.StartTime.ToString("yyMMddHHmmss")}]起始时间", value.StartTime.ToString("yyyy-MM-dd HH:mm:ss")); | |||
writer.WriteString($"[{ value.EndTime.ToString("yyMMddHHmmss")}]结束时间", value.EndTime.ToString("yyyy-MM-dd HH:mm:ss")); | |||
writer.WriteNumber($"[{ value.MultimediaDeleted.ReadNumber()}]删除标志-{multimediaDeleted.ToString()}", value.MultimediaDeleted); | |||
} | |||
} | |||
} |
@@ -53,15 +53,34 @@ namespace JT808.Protocol.MessageBody | |||
public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config) | |||
{ | |||
JT808_0x8804 jT808_0X8804 = new JT808_0x8804(); | |||
jT808_0X8804.RecordCmd = (JT808RecordCmd)reader.ReadByte(); | |||
jT808_0X8804.RecordTime = reader.ReadUInt16(); | |||
jT808_0X8804.RecordSave = (JT808RecordSave)reader.ReadByte(); | |||
jT808_0X8804.AudioSampleRate = reader.ReadByte(); | |||
writer.WriteNumber($"[{ ((byte)(jT808_0X8804.RecordCmd)).ReadNumber()}]录音命令", (byte)jT808_0X8804.RecordCmd); | |||
writer.WriteNumber($"[{jT808_0X8804.RecordTime.ReadNumber()}]单位为秒(s)", jT808_0X8804.RecordTime); | |||
writer.WriteNumber($"[{((byte)jT808_0X8804.RecordSave).ReadNumber()}]保存标志", (byte)jT808_0X8804.RecordSave); | |||
writer.WriteNumber($"[{jT808_0X8804.AudioSampleRate.ReadNumber()}]音频采样率", jT808_0X8804.AudioSampleRate); | |||
JT808_0x8804 value = new JT808_0x8804(); | |||
value.RecordCmd = (JT808RecordCmd)reader.ReadByte(); | |||
value.RecordTime = reader.ReadUInt16(); | |||
value.RecordSave = (JT808RecordSave)reader.ReadByte(); | |||
value.AudioSampleRate = reader.ReadByte(); | |||
writer.WriteNumber($"[{ ((byte)(value.RecordCmd)).ReadNumber()}]录音命令-{value.RecordCmd.ToString()}", (byte)value.RecordCmd); | |||
writer.WriteNumber($"[{value.RecordTime.ReadNumber()}]单位为秒(s)", value.RecordTime); | |||
writer.WriteNumber($"[{((byte)value.RecordSave).ReadNumber()}]保存标志-{value.RecordSave.ToString()}", (byte)value.RecordSave); | |||
switch (value.AudioSampleRate) | |||
{ | |||
case 0: | |||
writer.WriteNumber($"[{value.AudioSampleRate.ReadNumber()}]音频采样率-8K", value.AudioSampleRate); | |||
break; | |||
case 1: | |||
writer.WriteNumber($"[{value.AudioSampleRate.ReadNumber()}]音频采样率-11K", value.AudioSampleRate); | |||
break; | |||
case 2: | |||
writer.WriteNumber($"[{value.AudioSampleRate.ReadNumber()}]音频采样率-23K", value.AudioSampleRate); | |||
break; | |||
case 3: | |||
writer.WriteNumber($"[{value.AudioSampleRate.ReadNumber()}]音频采样率-32K", value.AudioSampleRate); | |||
break; | |||
default: | |||
writer.WriteNumber($"[{value.AudioSampleRate.ReadNumber()}]音频采样率-保留", value.AudioSampleRate); | |||
break; | |||
} | |||
} | |||
} | |||
} |
@@ -1,4 +1,5 @@ | |||
using JT808.Protocol.Extensions; | |||
using JT808.Protocol.Enums; | |||
using JT808.Protocol.Extensions; | |||
using JT808.Protocol.Formatters; | |||
using JT808.Protocol.Interfaces; | |||
using JT808.Protocol.MessagePack; | |||
@@ -39,11 +40,12 @@ namespace JT808.Protocol.MessageBody | |||
public void Analyze(ref JT808MessagePackReader reader, Utf8JsonWriter writer, IJT808Config config) | |||
{ | |||
JT808_0x8805 jT808_0X8805 = new JT808_0x8805(); | |||
jT808_0X8805.MultimediaId = reader.ReadUInt32(); | |||
jT808_0X8805.MultimediaDeleted = reader.ReadByte(); | |||
writer.WriteNumber($"[{jT808_0X8805.MultimediaId.ReadNumber()}]多媒体ID", jT808_0X8805.MultimediaId); | |||
writer.WriteNumber($"[{jT808_0X8805.MultimediaDeleted.ReadNumber()}]删除标志", jT808_0X8805.MultimediaDeleted); | |||
JT808_0x8805 value = new JT808_0x8805(); | |||
value.MultimediaId = reader.ReadUInt32(); | |||
value.MultimediaDeleted = reader.ReadByte(); | |||
JT808MultimediaDeleted multimediaDeleted = (JT808MultimediaDeleted)value.MultimediaDeleted; | |||
writer.WriteNumber($"[{value.MultimediaId.ReadNumber()}]多媒体ID", value.MultimediaId); | |||
writer.WriteNumber($"[{value.MultimediaDeleted.ReadNumber()}]删除标志-{multimediaDeleted}", value.MultimediaDeleted); | |||
} | |||
} | |||
} |