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)); } }
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); }
/// <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);
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); }