From d42d5dc45c1bbe5bf930632fd6129368024ea741 Mon Sep 17 00:00:00 2001 From: root <295172551@qq.com> Date: Sat, 26 Jul 2025 01:19:02 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8A=A0=E4=B8=80=E4=B8=AA=20ProtocolMessageHa?= =?UTF-8?q?ndler?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Extensions/ServiceCollectionExtensions.cs | 2 +- .../Handlers/ProtocolMessageHandler.cs | 36 +++++++++++++++++++ 2 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 src/X1.WebSocket/Handlers/ProtocolMessageHandler.cs 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; + } + } +}