using Microsoft.AspNetCore.Mvc; using MQTTnet.Protocol; using ZR.Common.MqttHelper; using ZR.Service.mqtt; namespace ZR.Admin.WebApi.Controllers { /// /// agv 相关接口 /// [Route("/mqtt")] public class MqttController : BaseController { private readonly MqttService _mqttService; public MqttController(MqttService mqttService) { _mqttService = mqttService; } /// /// 1. 发布信息 /// /// 主题 /// 信息 /// [HttpPost("publish")] public async Task PublishMessage(string topic, string payload) { try { // 发布消息到MQTT代理服务器 await _mqttService.PublishAsync( topic, payload, MqttQualityOfServiceLevel.AtLeastOnce, false ); return Ok("消息已发布"); } catch (Exception ex) { return StatusCode(500, $"发布消息失败: {ex.Message}"); } } } }