diff --git a/src/X1.WebSocket/Extensions/ServiceCollectionExtensions.cs b/src/X1.WebSocket/Extensions/ServiceCollectionExtensions.cs index c156ea4..87f3a94 100644 --- a/src/X1.WebSocket/Extensions/ServiceCollectionExtensions.cs +++ b/src/X1.WebSocket/Extensions/ServiceCollectionExtensions.cs @@ -30,7 +30,7 @@ public static class ServiceCollectionExtensions services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); - + services.AddSingleton(); // 注册后台服务 services.AddHostedService(); services.AddHostedService(); diff --git a/src/X1.WebSocket/Handlers/ProtocolMessageHandler.cs b/src/X1.WebSocket/Handlers/ProtocolMessageHandler.cs new file mode 100644 index 0000000..26a5f76 --- /dev/null +++ b/src/X1.WebSocket/Handlers/ProtocolMessageHandler.cs @@ -0,0 +1,36 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Text.Json; +using System.Threading.Tasks; +using CellularManagement.WebSocket.Models; +using Microsoft.Extensions.Logging; + +namespace CellularManagement.WebSocket.Handlers +{ + public class ProtocolMessageHandler : IWebSocketMessageHandler + { + private readonly ILogger _logger; + + public ProtocolMessageHandler(ILogger logger) + { + _logger = logger; + } + + public string MessageType => "Protocol"; + + public async Task HandleAsync(WebSocketMessage message) + { + _logger.LogDebug("收到仪表发送[Protocol]:{Data}", System.Text.Encoding.UTF8.GetString(message.Data)); + var response = new WebSocketMessage + { + ConnectionId = message.ConnectionId, + MessageType = System.Net.WebSockets.WebSocketMessageType.Text, + NeedQueue=false + }; + await Task.CompletedTask.ConfigureAwait(false); + return response; + } + } +}