Files
DMS/DMS.WPF/Services/Processors/MqttPublishProcessor.cs

40 lines
1.5 KiB
C#
Raw Normal View History

2025-07-18 19:15:29 +08:00
using System.Threading.Tasks;
2025-07-26 10:05:43 +08:00
using DMS.Core.Models;
2025-07-18 19:15:29 +08:00
namespace DMS.Services.Processors
2025-07-18 19:15:29 +08:00
{
/// <summary>
/// 负责将变量数据发布到MQTT的处理器。
/// </summary>
public class MqttPublishProcessor : IVariableProcessor
{
2025-07-26 10:05:43 +08:00
// private readonly MqttBackgroundService _mqttBackgroundService;
//
// public MqttPublishProcessor(MqttBackgroundService mqttBackgroundService)
// {
// _mqttBackgroundService = mqttBackgroundService;
// }
2025-07-18 19:15:29 +08:00
/// <summary>
/// 处理单个变量上下文如果有关联的MQTT配置则将其推送到发送队列。
/// </summary>
/// <param name="context">包含变量及其元数据的上下文对象。</param>
public async Task ProcessAsync(VariableContext context)
{
2025-07-26 10:05:43 +08:00
// var variable = context.Data;
// if (variable?.VariableMqtts == null || variable.VariableMqtts.Count == 0)
// {
// return; // 没有关联的MQTT配置直接返回
// }
//
// // 遍历所有关联的MQTT配置并将其推入发送队列
// foreach (var variableMqtt in variable.VariableMqtts)
// {
// // 确保VariableMqtt对象中包含了最新的Variable数据
// variableMqtt.Variable = variable;
// await _mqttBackgroundService.SendVariableAsync(variableMqtt);
// }
2025-07-18 19:15:29 +08:00
}
}
}