diff --git a/OpenAuth.WebApi/Model/mqtt/MqttHostedService.cs b/OpenAuth.WebApi/Model/mqtt/MqttHostedService.cs index 97e14d0..4a77bdf 100644 --- a/OpenAuth.WebApi/Model/mqtt/MqttHostedService.cs +++ b/OpenAuth.WebApi/Model/mqtt/MqttHostedService.cs @@ -26,22 +26,24 @@ namespace OpenAuth.WebApi.Model.mqtt handlers, server: "175.27.168.120", port: 6011, - clientId: "mqtt_client_1581", + clientId: "mqtt_client_1582", username: "sdhc", password: "" ); //查询网关,订阅主题 var topics = new List(); - var gatewayList = await _app.GetGatewaysnList(); + var gatewayList = await _app.GetGatewaysnList(); foreach (var gateway in gatewayList) { topics.AddRange(new[] { - $"thing/product/{gateway}/osd", + $"thing/product/{gateway}/osd", $"thing/product/{gateway}/events", $"thing/product/{gateway}/requests", $"thing/product/{gateway}/services_reply", + $"thing/product/{gateway}/drc/up", + $"thing/product/{gateway}/drc/down", $"thing/product/{gateway}/state" }); } diff --git a/OpenAuth.WebApi/Model/mqtt/ThingDrcHandler.cs b/OpenAuth.WebApi/Model/mqtt/ThingDrcHandler.cs new file mode 100644 index 0000000..42f9f9e --- /dev/null +++ b/OpenAuth.WebApi/Model/mqtt/ThingDrcHandler.cs @@ -0,0 +1,27 @@ +using Infrastructure.CloudSdk.mqttmessagecenter; +using OpenAuth.App.ServiceApp; +using OpenAuth.WebApi.Model.mqtt.ModelResponse; + +namespace OpenAuth.WebApi.Model.mqtt +{ + public class ThingDrcHandler : IMqttMessageHandler + { + private readonly ILogger _logger; + public ThingDrcHandler(ILogger logger) + { + _logger = logger; + } + + public bool CanHandle(string topic) + { + return topic.Contains("/drc"); + } + + public Task HandleAsync(string topic, string payload) + { + _logger.LogError($"[osd] Topic={topic}, Payload={payload}"); + Console.WriteLine($"[osd] Topic={topic}, Payload={payload}"); + return Task.CompletedTask; + } + } +} diff --git a/OpenAuth.WebApi/Model/mqtt/ThingEventHandler.cs b/OpenAuth.WebApi/Model/mqtt/ThingEventHandler.cs index dc37f13..d58c94e 100644 --- a/OpenAuth.WebApi/Model/mqtt/ThingEventHandler.cs +++ b/OpenAuth.WebApi/Model/mqtt/ThingEventHandler.cs @@ -24,7 +24,7 @@ namespace OpenAuth.WebApi.Model.mqtt public bool CanHandle(string topic) { - return topic.Contains("/events1"); + return topic.Contains("/events"); } public Task HandleAsync(string topic, string payload) diff --git a/OpenAuth.WebApi/Model/mqtt/ThingRequestHandler.cs b/OpenAuth.WebApi/Model/mqtt/ThingRequestHandler.cs index 1b2dd50..400d1d7 100644 --- a/OpenAuth.WebApi/Model/mqtt/ThingRequestHandler.cs +++ b/OpenAuth.WebApi/Model/mqtt/ThingRequestHandler.cs @@ -175,6 +175,7 @@ namespace OpenAuth.WebApi.Model.mqtt } } } + uavsn = uavsn == "" ? "1581F8HGX254V00A0BUY" : uavsn; _manageApp.AddDronePort(lasaDronePort); _manageApp.AddLasaUav(lasaUav); var requestData = new @@ -188,12 +189,12 @@ namespace OpenAuth.WebApi.Model.mqtt { new { - err_code = 210231, + err_code = 0, sn = dronesn }, new { - err_code = 210231, + err_code = 0, sn = uavsn } } diff --git a/OpenAuth.WebApi/Startup.cs b/OpenAuth.WebApi/Startup.cs index 6937acb..12cb679 100644 --- a/OpenAuth.WebApi/Startup.cs +++ b/OpenAuth.WebApi/Startup.cs @@ -331,6 +331,7 @@ namespace OpenAuth.WebApi services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); + services.AddSingleton(); services.AddHostedService();