From fb81e8812c416ef6197e676444d2977001e253b8 Mon Sep 17 00:00:00 2001 From: wenjy Date: Sat, 14 Sep 2024 08:52:40 +0800 Subject: [PATCH] =?UTF-8?q?change=20-=20=E5=88=A0=E9=99=A4=E5=A4=9A?= =?UTF-8?q?=E4=BD=99=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SlnMesnac.Mqtt/MqttClient.cs | 168 --------------------------- SlnMesnac.Mqtt/SlnMesnac.Mqtt.csproj | 17 --- 2 files changed, 185 deletions(-) delete mode 100644 SlnMesnac.Mqtt/MqttClient.cs delete mode 100644 SlnMesnac.Mqtt/SlnMesnac.Mqtt.csproj diff --git a/SlnMesnac.Mqtt/MqttClient.cs b/SlnMesnac.Mqtt/MqttClient.cs deleted file mode 100644 index 44baecf..0000000 --- a/SlnMesnac.Mqtt/MqttClient.cs +++ /dev/null @@ -1,168 +0,0 @@ -using System; -using System.Text; -using System.Threading.Tasks; -using System.Threading; -using MQTTnet.Client; -using System.Security.Authentication; -using MQTTnet; -using Microsoft.Extensions.Logging; - -#region << 版 本 注 释 >> -/*-------------------------------------------------------------------- -* 版权所有 (c) 2024 WenJY 保留所有权利。 -* CLR版本:4.0.30319.42000 -* 机器名称:LAPTOP-E0N2L34V -* 命名空间:SlnMesnac.Mqtt -* 唯一标识:496f8d2b-70e3-4a05-ae18-a9b0fcd06b82 -* -* 创建者:WenJY -* 电子邮箱:wenjy@mesnac.com -* 创建时间:2024-03-27 21:58:35 -* 版本:V1.0.0 -* 描述: -* -*-------------------------------------------------------------------- -* 修改人: -* 时间: -* 修改说明: -* -* 版本:V1.0.0 -*--------------------------------------------------------------------*/ -#endregion << 版 本 注 释 >> -namespace SlnMesnac.Mqtt -{ - /// - /// MQTT客户端 - /// - public class MqttClient - { - private ILogger _logger; - - private IMqttClient _client; - - public MqttClient(ILogger logger) - { - _logger = logger; - } - - /// - /// 链接服务器 - /// - /// - /// - /// - /// - /// - public async void Connect(string ip, int port, string clientId, string username, string password) - { - try - { - MqttClientOptions options = new MqttClientOptionsBuilder() - .WithTcpServer(ip, port) - .WithClientId(clientId) - .WithCredentials(username, password) - .WithTls(o => //开启ssl - { - o.CertificateValidationHandler = _ => true; - - o.SslProtocol = SslProtocols.Tls12; - }) - .Build(); - _client = new MqttFactory().CreateMqttClient(); - - _client.ApplicationMessageReceivedAsync += MqttClient_ApplicationMessageReceived; - - MqttClientConnectResult result = await _client.ConnectAsync(options); - - if (result != null) - { - if (result.ResultCode == MQTTnet.Client.MqttClientConnectResultCode.Success) - { - _logger.LogInformation($"连接服务器成功{ip}:{port}"); - } - else - { - _logger.LogInformation($"连接服务器失败"); - } - } - } - catch (Exception ex) - { - _logger.LogError("连接服务器异常",ex); - } - } - - /// - /// 断开链接 - /// - public void DisConnect() - { - _client.DisconnectAsync(); - _logger.LogInformation($"断开连接"); - } - - /// - /// 订阅主题 - /// - /// - public async void SubscriptionAsync(string topic) - { - try - { - var mqttFactory = new MqttFactory(); - var mqttSubscribeOptions = mqttFactory.CreateSubscribeOptionsBuilder() - .WithTopicFilter( - f => - { - f.WithTopic(topic); - }) - .Build(); - - MqttClientSubscribeResult result = await _client.SubscribeAsync(mqttSubscribeOptions, CancellationToken.None); - - _logger.LogInformation($"订阅主题:{topic}"); - } - catch (Exception ex) - { - _logger.LogError("订阅主题异常",ex); - } - } - - /// - /// 取消订阅 - /// - /// - public void Unsubscribe(string topic) - { - _client.UnsubscribeAsync(topic); - _logger.LogInformation($"取消订阅,主题:{topic}"); - } - - /// - /// 推送消息 - /// - /// - /// - public void Publish(string topic, string message) - { - try - { - var msg = new MqttApplicationMessageBuilder().WithTopic(topic).WithPayload(message) - .Build(); - _client.PublishAsync(msg, CancellationToken.None); - _logger.LogInformation($"向服务端推送成功,主题:{topic};内容:{message}"); - } - catch (Exception ex) - { - _logger.LogError("向服务端推送消息异常",ex); - } - } - - private async Task MqttClient_ApplicationMessageReceived(MqttApplicationMessageReceivedEventArgs eventArgs) - { - var info = $"接收到主题:{eventArgs.ApplicationMessage.Topic}的消息,内容:{Encoding.UTF8.GetString(eventArgs.ApplicationMessage.Payload)}"; - _logger.LogInformation(info); - } - - } -} diff --git a/SlnMesnac.Mqtt/SlnMesnac.Mqtt.csproj b/SlnMesnac.Mqtt/SlnMesnac.Mqtt.csproj deleted file mode 100644 index 659191d..0000000 --- a/SlnMesnac.Mqtt/SlnMesnac.Mqtt.csproj +++ /dev/null @@ -1,17 +0,0 @@ - - - - netstandard2.1 - enable - - - - - - - - - - - -