提交 4205a8a5 编写于 作者: 麦壳饼's avatar 麦壳饼

fix mqtt publish msg to client and add "npm rebuild node-sass"

上级 37912c49
......@@ -29,8 +29,8 @@ namespace IoTSharp
/// built-in or IP、HostName
/// </summary>
public string MqttBroker { get; set; } = "built-in";
public string UserName { get; set; } = "root";
public string Password { get; set; } = "kissme";
public string UserName { get; set; } = "";
public string Password { get; set; } = "";
public int Port { get; set; } = 1883;
}
public class MqttBrokerSetting
......
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
namespace IoTSharp.Controllers
{
[Route("api/[controller]")]
public class SampleDataController : Controller
{
private static string[] Summaries = new[]
{
"Freezing", "Bracing", "Chilly", "Cool", "Mild", "Warm", "Balmy", "Hot", "Sweltering", "Scorching"
};
[HttpGet("[action]")]
public IEnumerable<WeatherForecast> WeatherForecasts()
{
var rng = new Random();
return Enumerable.Range(1, 5).Select(index => new WeatherForecast
{
DateFormatted = DateTime.Now.AddDays(index).ToString("d"),
TemperatureC = rng.Next(-20, 55),
Summary = Summaries[rng.Next(Summaries.Length)]
});
}
public class WeatherForecast
{
public string DateFormatted { get; set; }
public int TemperatureC { get; set; }
public string Summary { get; set; }
public int TemperatureF
{
get
{
return 32 + (int)(TemperatureC / 0.5556);
}
}
}
}
}
......@@ -142,6 +142,6 @@ namespace IoTSharp
};
}
}
}
......@@ -17,11 +17,13 @@ namespace IoTSharp.Handlers
public class MqttEventsHandler
{
ILogger<MqttEventsHandler> Logger { get; set; }
ApplicationDbContext _dbContext;
public MqttEventsHandler(ILogger<MqttEventsHandler> _logger, ApplicationDbContext dbContext)
readonly ApplicationDbContext _dbContext;
readonly IMqttServerEx _serverEx;
public MqttEventsHandler(ILogger<MqttEventsHandler> _logger, ApplicationDbContext dbContext,IMqttServerEx serverEx )
{
Logger = _logger;
_dbContext = dbContext;
_serverEx = serverEx;
}
static long clients = 0;
......@@ -29,7 +31,7 @@ namespace IoTSharp.Handlers
{
Logger.LogInformation($"Client [{e.ClientId}] connected");
clients++;
Task.Run(() => ((IMqttServer)sender).PublishAsync("$SYS/broker/clients/total", clients.ToString()));
Task.Run(() => _serverEx.PublishAsync("$SYS/broker/clients/total", clients.ToString()));
}
static DateTime uptime = DateTime.MinValue;
internal void Server_Started(object sender, EventArgs e)
......@@ -50,7 +52,7 @@ namespace IoTSharp.Handlers
if (!lstTopics.ContainsKey(e.ApplicationMessage.Topic))
{
lstTopics.Add(e.ApplicationMessage.Topic, 1);
Task.Run(() => ((IMqttServer)sender).PublishAsync("$SYS/broker/subscriptions/count", lstTopics.Count.ToString()));
Task.Run(() => _serverEx.PublishAsync("$SYS/broker/subscriptions/count", lstTopics.Count.ToString()));
}
else
{
......@@ -68,17 +70,17 @@ namespace IoTSharp.Handlers
{
var mename = typeof(MqttEventsHandler).Assembly.GetName();
var mqttnet = typeof(MqttClientSubscribedTopicEventArgs).Assembly.GetName();
Task.Run(() => ((IMqttServer)sender).PublishAsync("$SYS/broker/version", $"{mename.Name}V{mename.Version.ToString()},{mqttnet.Name}.{mqttnet.Version.ToString()}"));
Task.Run(() => _serverEx.PublishAsync("$SYS/broker/version", $"{mename.Name}V{mename.Version.ToString()},{mqttnet.Name}.{mqttnet.Version.ToString()}"));
}
else if (e.TopicFilter.Topic.StartsWith("$SYS/broker/uptime"))
{
Task.Run(() => ((IMqttServer)sender).PublishAsync("$SYS/broker/uptime", uptime.ToString()));
Task.Run(() => _serverEx.PublishAsync("$SYS/broker/uptime", uptime.ToString()));
}
}
else
{
Subscribed++;
Task.Run(() => ((IMqttServer)sender).PublishAsync("$SYS/broker/subscriptions/count", Subscribed.ToString()));
Task.Run(() => _serverEx.PublishAsync("$SYS/broker/subscriptions/count", Subscribed.ToString()));
}
......@@ -90,7 +92,7 @@ namespace IoTSharp.Handlers
if (!e.TopicFilter.StartsWith("$SYS/"))
{
Subscribed--;
Task.Run(() => ((IMqttServer)sender).PublishAsync("$SYS/broker/subscriptions/count", Subscribed.ToString()));
Task.Run(() => _serverEx.PublishAsync("$SYS/broker/subscriptions/count", Subscribed.ToString()));
}
}
public static string MD5Sum(string text) => BitConverter.ToString(MD5.Create().ComputeHash(Encoding.UTF8.GetBytes(text))).Replace("-", "");
......
......@@ -76,6 +76,8 @@
<Error Condition="'$(ErrorCode)' != '0'" Text="Node.js is required to build and run this project. To continue, please install Node.js from https://nodejs.org/, and then restart your command prompt or IDE." />
<Message Importance="high" Text="Restoring dependencies using 'npm'. This may take several minutes..." />
<Exec WorkingDirectory="$(SpaRoot)" Command="npm install" />
<Exec WorkingDirectory="$(SpaRoot)" Command="npm rebuild node-sass" />
</Target>
<Target Name="PublishRunWebpack" AfterTargets="ComputeFilesToPublish">
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册