浏览代码

1.更新808模块代码

2.增加请求原包数据属性
tags/v1.0.0
SmallChi 6 年前
父节点
当前提交
aa33ccbc54
共有 4 个文件被更改,包括 13 次插入5 次删除
  1. +2
    -2
      src/JT808.DotNetty.sln
  2. +5
    -1
      src/JT808.DotNetty/Handlers/JT808ServerHandler.cs
  3. +5
    -1
      src/JT808.DotNetty/Metadata/JT808Request.cs
  4. +1
    -1
      src/JT808.Protocol

+ 2
- 2
src/JT808.DotNetty.sln 查看文件

@@ -1,7 +1,7 @@
 
Microsoft Visual Studio Solution File, Format Version 12.00 Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 16
VisualStudioVersion = 16.0.28407.52
# Visual Studio 15
VisualStudioVersion = 15.0.28307.168
MinimumVisualStudioVersion = 10.0.40219.1 MinimumVisualStudioVersion = 10.0.40219.1
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JT808.DotNetty", "JT808.DotNetty\JT808.DotNetty.csproj", "{80C7F67E-6B7C-4178-8726-ADD3695622DD}" Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JT808.DotNetty", "JT808.DotNetty\JT808.DotNetty.csproj", "{80C7F67E-6B7C-4178-8726-ADD3695622DD}"
EndProject EndProject


+ 5
- 1
src/JT808.DotNetty/Handlers/JT808ServerHandler.cs 查看文件

@@ -50,6 +50,9 @@ namespace JT808.DotNetty.Handlers
try try
{ {
jT808SourcePackageDispatcher?.SendAsync(msg); jT808SourcePackageDispatcher?.SendAsync(msg);
//在压力大的情况下可以只解析到头部
//然后根据具体的消息Id通过队列去进行消费
//JT808HeaderPackage jT808HeaderPackage = JT808Serializer.Deserialize<JT808HeaderPackage>(msg);
JT808Package jT808Package = JT808Serializer.Deserialize(msg); JT808Package jT808Package = JT808Serializer.Deserialize(msg);
jT808AtomicCounterService.MsgSuccessIncrement(); jT808AtomicCounterService.MsgSuccessIncrement();
if (logger.IsEnabled(LogLevel.Debug)) if (logger.IsEnabled(LogLevel.Debug))
@@ -60,7 +63,8 @@ namespace JT808.DotNetty.Handlers
Func<JT808Request, JT808Response> handlerFunc; Func<JT808Request, JT808Response> handlerFunc;
if (handler.HandlerDict.TryGetValue(jT808Package.Header.MsgId, out handlerFunc)) if (handler.HandlerDict.TryGetValue(jT808Package.Header.MsgId, out handlerFunc))
{ {
JT808Response jT808Response = handlerFunc(new JT808Request(jT808Package));
//JT808Response jT808Response = handlerFunc(new JT808Request(jT808HeaderPackage, msg));
JT808Response jT808Response = handlerFunc(new JT808Request(jT808Package, msg));
if (jT808Response != null) if (jT808Response != null)
{ {
if (!jT808TransmitAddressFilterService.ContainsKey(ctx.Channel.RemoteAddress)) if (!jT808TransmitAddressFilterService.ContainsKey(ctx.Channel.RemoteAddress))


+ 5
- 1
src/JT808.DotNetty/Metadata/JT808Request.cs 查看文件

@@ -9,13 +9,17 @@ namespace JT808.DotNetty.Metadata
{ {
public JT808Package Package { get; set; } public JT808Package Package { get; set; }


public byte[] OriginalPackage { get;}

public JT808Request() public JT808Request()
{ {


} }
public JT808Request(JT808Package package)

public JT808Request(JT808Package package, byte[] originalPackage)
{ {
Package = package; Package = package;
OriginalPackage = originalPackage;
} }
} }
} }

+ 1
- 1
src/JT808.Protocol

@@ -1 +1 @@
Subproject commit 98d718a8d76527201c036f5f63157a21c594c88f
Subproject commit 5c8215dcad9fb833743bd58431b8021647474c21

正在加载...
取消
保存