Пример #1
0
 public JT808CustomMessageHandlerImpl(
     ILoggerFactory loggerFactory,
     IJT808Config jT808Config) : base(
         jT808Config)
 {
     logger = loggerFactory.CreateLogger <JT808CustomMessageHandlerImpl>();
     //添加自定义消息
     HandlerDict.Add(0x9999, Msg0x9999);
 }
 public JT808CustomMessageHandlerImpl(
     ILoggerFactory loggerFactory,
     IJT808MsgLogging jT808MsgLogging,
     JT808TransmitService jT808TransmitService,
     IJT808Config jT808Config) : base(jT808Config)
 {
     this.jT808TransmitService = jT808TransmitService;
     this.jT808MsgLogging      = jT808MsgLogging;
     logger = loggerFactory.CreateLogger <JT808CustomMessageHandlerImpl>();
     //添加自定义消息
     HandlerDict.Add(0x9999, Msg0x9999);
 }
 protected void CreateRoute(string url, Func <JT808HttpRequest, JT808HttpResponse> func)
 {
     if (!HandlerDict.ContainsKey(url))
     {
         HandlerDict.Add(url, func);
     }
     else
     {
         // 替换
         HandlerDict[url] = func;
     }
 }
 /// <summary>
 ///
 /// </summary>
 /// <param name="request">请求数据</param>
 /// <param name="session">当前会话</param>
 /// <returns>应答消息数据</returns>
 public virtual byte[] Processor(JT808HeaderPackage request, IJT808Session session)
 {
     if (HandlerDict.TryGetValue(request.Header.MsgId, out var func))
     {
         return(func(request, session));
     }
     else
     {
         //处理不了的消息统一回复通用应答
         return(CommonReply(request, session));
     }
 }
Пример #5
0
 public JT808MessageHandlerImpl(
     ILoggerFactory loggerFactory,
     JT808TransmitService jT808TransmitService,
     IJT808MsgLogging jT808MsgLogging,
     IOptionsMonitor <JT808Configuration> jT808ConfigurationOptionsMonitor, IJT808MsgProducer msgProducer, IJT808MsgReplyLoggingProducer msgReplyLoggingProducer, IJT808Config jT808Config)
     : base(jT808Config)
 {
     this.jT808TransmitService = jT808TransmitService;
     this.jT808MsgLogging      = jT808MsgLogging;
     logger = loggerFactory.CreateLogger <JT808MessageHandlerImpl>();
     //添加自定义消息
     HandlerDict.Add(0x9999, Msg0x9999);
 }
Пример #6
0
 /// <summary>
 /// 消息处理
 /// </summary>
 /// <param name="request">请求数据</param>
 /// <param name="session">当前会话</param>
 /// <returns>应答消息数据</returns>
 public virtual byte[] Processor(JT808HeaderPackage request, IJT808Session session)
 {
     if (HandlerDict.TryGetValue(request.Header.MsgId, out var func))
     {
         if (JT808ConfigurationOptionsMonitor.CurrentValue.FilterMsgIdHandlerForQueue != null)
         {
             // 网关不做消息业务处理,往队列发送
             if (JT808ConfigurationOptionsMonitor.CurrentValue.FilterMsgIdHandlerForQueue.Contains(request.Header.MsgId))
             {
                 if (MsgProducer != null)
                 {
                     MsgProducer.ProduceAsync(request.Header.TerminalPhoneNo, request.OriginalData.ToArray());
                 }
                 return(default);
Пример #7
0
 public JT808NormalReplyMessageHandlerImpl(
     JT808TransmitService jT808TransmitService,
     IJT808MsgLogging jT808MsgLogging,
     IJT808Traffic jT808Traffic,
     ILoggerFactory loggerFactory,
     IJT808Config jT808Config) : base(jT808Config)
 {
     this.jT808TransmitService = jT808TransmitService;
     this.jT808Traffic         = jT808Traffic;
     this.jT808MsgLogging      = jT808MsgLogging;
     logger = loggerFactory.CreateLogger("JT808NormalReplyMessageHandlerImpl");
     //添加自定义消息
     HandlerDict.Add(0x9999, Msg0x9999);
 }
 //private readonly JT808TransmitService jT808TransmitService;
 public JT808CustomMessageHandlerImpl(
     IOptionsMonitor <JT808Configuration> jT808ConfigurationOptionsMonitor,
     //JT808TransmitService jT808TransmitService,
     IJT808MsgLogging jT808MsgLogging,
     //IJT808Traffic jT808Traffic,
     ILoggerFactory loggerFactory,
     IJT808Config jT808Config) : base(jT808ConfigurationOptionsMonitor, jT808Config)
 {
     //this.jT808TransmitService = jT808TransmitService;
     //this.jT808Traffic = jT808Traffic;
     this.jT808MsgLogging = jT808MsgLogging;
     logger = loggerFactory.CreateLogger <JT808CustomMessageHandlerImpl>();
     //添加自定义消息
     HandlerDict.Add(0x9999, Msg0x9999);
 }
 public JT808QueueReplyMessageHandlerImpl(IJT808Config jT808Config, IJT808MsgReplyProducer jT808MsgReplyProducer) : base(jT808Config, jT808MsgReplyProducer)
 {
     //添加自定义消息
     HandlerDict.Add(0x9999, Msg0x9999);
 }