drc订阅

main
zhangbin 3 months ago
parent 0c798d8b22
commit df5e69a132

@ -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<string>();
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"
});
}

@ -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<ThingDrcHandler> _logger;
public ThingDrcHandler(ILogger<ThingDrcHandler> 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;
}
}
}

@ -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)

@ -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
}
}

@ -331,6 +331,7 @@ namespace OpenAuth.WebApi
services.AddSingleton<IMqttMessageHandler, ThingServiceHandler>();
services.AddSingleton<IMqttMessageHandler, ThingOsdHandler>();
services.AddSingleton<IMqttMessageHandler, ThingEventHandler>();
services.AddSingleton<IMqttMessageHandler, ThingDrcHandler>();
services.AddHostedService<MqttHostedService>();

Loading…
Cancel
Save